Pular para o conteúdo principal
Deixe o Midaz consultar o Tracer sobre uma transação antes que qualquer saldo se mova.

Participantes


  • Sua instituição. Seu sistema cria, confirma e cancela as transações no Midaz.
  • Midaz. O ledger. Ele consulta o Tracer antes de mover qualquer saldo e confirma ou libera a capacidade que o Tracer reserva.
  • Tracer. Avalia suas regras ativas, reserva capacidade nos seus limites de gastos e devolve a decisão ao Midaz.

Antes de começar


Diagrama


Transação

Verificar transações do Midaz com o Tracer: Transação

Transação pendente

Verificar transações do Midaz com o Tracer: Transação pendente

Como saber que terminou


O Midaz devolveu a transação, ou a transação pendente confirmada ou cancelada.

Regras


  • As rotas de transação v1 não chamam o Tracer. Em um ledger no modo enforce, o Ledger HTTP v1 recusa com 0574 uma transação que movimenta saldos.
  • No modo advisory, o Midaz chama o Tracer e nunca bloqueia a transação.
  • No modo enforce, quando o Tracer não responde a tempo, tracer.failPosture decide. Com open, a transação segue sem a verificação. Com closed, o Midaz rejeita a transação.
  • Quando nenhuma regra casa, o Tracer não aplica a decisão padrão neste caminho.
  • O Tracer registra cada decisão como uma validação com o transactionId da transação. Encontre-a com GET /v1/validations e transaction_id. Para ler as retenções de limite da transação, chame GET /v1/validations/{validation_id}/reservations.
  • O Tracer verifica as contas de origem que o Midaz envia, cada uma com o segmento, o portfólio e o valor que sai dela, e para no primeiro DENY. O valor inclui as tarifas. Uma origem que o Tracer recusa recusa a transação inteira. A validação de uma transação com mais de uma origem lista o resultado de cada origem em sources.
  • O Tracer recebe apenas valores de metadados escalares, como texto. Compare esses valores como strings nas regras deste caminho.
  • Um estorno conta nos seus limites de gastos. O Tracer não aplica suas regras a ele.
  • Se uma confirmação ou uma liberação não chega ao Tracer, o resultado da transação não muda.
  • Uma requisição pode pular a verificação do Tracer com skip.tracer apenas quando a configuração do ledger overrides.allowTracerSkip é true.

O que pode dar errado


Os códigos 0177, 0531, 0532, 0535 e 0178 vêm apenas de um ledger no modo enforce. A lista de erros do Midaz descreve cada código.

Relacionados