O MED 2.0 é uma exigência do BACEN para participantes do Pix. O plugin implementa o fluxo de Recuperação de Fundos, então você pode atender a essa exigência pela sua conexão indireta com o BTG.
Conceitos
Ciclo de vida e status
Uma Recuperação de Fundos passa pelos seguintes estados:
Endpoints
Todos os endpoints de Recuperação de Fundos ficam no domínio DICT.
Criar uma recuperação de fundos
Regras de validação
O plugin trata um
maxTransactions ou maxHops igual a 0 como não enviado. Ele recusa qualquer outro valor de minTransactionAmount, maxTransactions ou maxHops fora dessas regras com PIX-0004. O BTG define o limite superior de maxTransactions. Quando o BTG recusa um parâmetro do grafo de rastreamento, o plugin retorna PIX-0295, e o objeto fields pode trazer a faixa que o BTG aceita.
Uma chamada bem-sucedida retorna HTTP 201. A resposta contém a nova recuperação de fundos e os dados do seu grafo de rastreamento. O plugin persiste o registro localmente com status CREATED.
Grafo de rastreamento
O plugin busca o grafo de rastreamento no BTG a cada chamada. O grafo não tem estado local. Ele lista as pessoas, contas e transações do fluxo de fraude, com o valor devolvível de cada transação.
parameters: os parâmetros de geração do grafopersons[]: pessoas físicas e jurídicas envolvidasaccounts[]: contas do fluxo, com o ISPB do participante de cada umatransactions[]: transações Pix com valores, valores devolvíveis etransactionDepth, a profundidade da transação no grafo (a transação raiz é1)
trackingGraphParameters da chamada de criação. Os parâmetros de consulta min_transaction_amount, max_transactions, hop_window e max_hops estão obsoletos, e o grafo não os usa.
Solicitar devoluções
Quando a recuperação chega a
ANALYSED, solicite a devolução dos fundos bloqueados:
REFUNDING e retorna HTTP 200. Acompanhe o status de cada devolução com Listar devoluções.
Header X-Purpose (transferências MED 2.0)
As transferências de devolução do MED 2.0 devem carregar uma finalidade de transação. O endpoint de cash-out aceita um header
X-Purpose opcional que o plugin envia ao BTG como transactionType.
As respostas de transferência também trazem o valor de
purpose (Consultar uma transferência Pix e os endpoints de listagem). Os registros existentes assumem TRANSFER como padrão.
Campos de correlação
Duas entidades existentes carregam um campo
bacenFundsRecoveryId que liga uma disputa à recuperação que a originou:
- Relatos de infração: Consultar um relato de infração e o endpoint de listagem
- Solicitações de devolução: Consultar uma solicitação de devolução e o endpoint de listagem
transactionDepth: a profundidade da transação do relato no grafo de rastreamento do DICT, em que a transação raiz é 1. O DICT define esse valor. Quando o DICT não o envia, o campo fica ausente.
Webhooks
Dois webhooks de entrada do BTG conduzem o fluxo de Recuperação de Fundos. Cada um produz um evento de saída correspondente para o seu sistema:
Os dois usam
flowType: DICT. Veja o guia de Webhooks para formato do envelope, novas tentativas e roteamento.
Evento de entidade de recuperação de fundos:
body.event do ciclo de vida: FUNDS_RECOVERY_ANALYSED, FUNDS_RECOVERY_COMPLETED, FUNDS_RECOVERY_INFORMATION_UPDATED, FUNDS_RECOVERY_CANCELLED.
Aviso de descontinuação
Próximos passos
- Operações de devolução: Devoluções parciais distribuídas e desbloqueio de devoluções travadas
- Webhooks: Envelope de evento, novas tentativas e roteamento
- Domínios principais: MED: Conceitos de disputa e devolução do MED
- Referência da API: Documentação completa da API

