Pular para o conteúdo principal

Como abrir uma recuperação de fundos (MED) usando a API?

Para abrir uma recuperação de fundos (MED) usando a API, você deverá fazer uma chamada POST para o endpoint /api/v1/funds-recovery, autenticando com o seu AppID no header Authorization.

Como parte do BODY da requisição, esperamos o envio dos seguintes itens:

  • transactionEndToEndId: O endToEndId da transação Pix enviada pela sua conta que você deseja recuperar.
  • situationType: O tipo de situação que motivou a recuperação de fundos. Os valores possíveis são:
    • SCAM: golpe (ex: falsa venda, falso boleto, engenharia social)
    • ACCOUNT_TAKEOVER: invasão de conta
    • COERCION: coação (ex: sequestro, extorsão)
    • FRAUDULENT_ACCESS: acesso fraudulento às credenciais
    • OTHER: outro tipo de fraude
    • UNKNOWN: tipo de fraude desconhecido
  • details: A descrição detalhada do ocorrido. Quanto mais contexto, melhor para a análise.
cuidado

Só é possível abrir uma recuperação de fundos por transação. A transação precisa ter sido enviada pela sua conta e não pode ter sido rejeitada.

Exemplo

O body da sua requisição será semelhante a este exemplo:

{
"transactionEndToEndId": "E31680151202606101530AbCdEf12345",
"situationType": "SCAM",
"details": "Pagamento realizado para um falso vendedor. Após o pagamento, o vendedor parou de responder e não entregou o produto."
}

Após efetuar a requisição, se tudo ocorreu bem, o status code da requisição será 201 e no body da resposta retornaremos a recuperação de fundos criada:

{
"rootTransactionId": "E31680151202606101530AbCdEf12345",
"situationType": "SCAM",
"reportDetails": "Pagamento realizado para um falso vendedor. Após o pagamento, o vendedor parou de responder e não entregou o produto.",
"dictId": "3e760cd5-39b2-45da-8ab6-b212cf205568",
"status": "CREATED",
"direction": "SENT",
"reporterParticipant": "31680151",
"creationTime": "2026-06-11T00:30:00.000Z",
"lastModified": "2026-06-11T00:30:00.000Z",
"events": [],
"createdAt": "2026-06-11T00:30:00.000Z",
"updatedAt": "2026-06-11T00:30:00.000Z"
}
dica

Guarde o campo dictId — ele é o identificador da recuperação de fundos e será usado nos endpoints de consulta e cancelamento.

Possíveis erros

StatusMotivo
400Body inválido (campo faltando ou situationType fora dos valores aceitos)
401AppID inválido ou ausente
403Sua conta não possui a funcionalidade MED API ou o AppID não possui o escopo necessário
404Transação não encontrada para a sua conta
422Já existe uma recuperação de fundos para a transação, a transação foi rejeitada ou o pedido foi recusado pelo Banco Central

Em caso de erro, o body da resposta terá o formato:

{
"error": "FundsRecovery already exists for transaction E31680151202606101530AbCdEf12345"
}

Exemplos em código

curl --request POST \
--url https://api.woovi.com/api/v1/funds-recovery \
--header 'Authorization: AUTHORIZATION' \
--header 'content-type: application/json' \
--data '{"transactionEndToEndId": "E31680151202606101530AbCdEf12345", "situationType": "SCAM", "details": "Pagamento realizado para um falso vendedor."}'