Skip to content

Defesa MED

Use este endpoint quando um MED ou infração PIX exigir resposta do cliente antes do prazo informado no webhook.

http
POST /api/external/med/{id}/defense
Content-Type: application/json
Authorization: ApiKey {client_id}:{client_secret}
hmac: {assinatura_hmac_sha512}

Permissão exigida: payment:write.

O {id} é o identificador do bloqueio/caso MED retornado em GET /api/external/med, GET /api/external/med/{id} ou nos webhooks de infração. A requisição é POST, portanto deve seguir a mesma regra de HMAC-SHA512 dos demais endpoints de escrita.

Body

json
{
  "defense_text": "Cliente confirmou a operação e enviou comprovante do atendimento.",
  "evidence": [
    {
      "type": "whatsapp",
      "url": "https://seu-dominio.example/evidencias/med-123.png",
      "description": "Print da conversa com confirmação do titular",
      "source": "whatsapp",
      "filename": "conversa-med-123.png",
      "received_at": "2026-06-02T13:30:00Z"
    }
  ]
}
CampoTipoObrigatórioDescrição
defense_textstringSimTexto da defesa e contexto da contestação
evidencearrayNãoEvidências ou referências recebidas por API, e-mail, WhatsApp, suporte ou outro canal
evidence[].typestringNãourl, document, image, screenshot, email, whatsapp ou other
evidence[].urlstringCondicionalURL http ou https para evidência hospedada pelo cliente
evidence[].descriptionstringCondicionalDescrição da evidência quando não houver URL
evidence[].sourcestringNãoOrigem da evidência, como email, whatsapp, support ou external_api
evidence[].filenamestringNãoNome de referência do arquivo
evidence[].received_atstringNãoData/hora em que a evidência foi recebida

Cada item de evidence deve conter ao menos url ou description. A API aceita até 10 evidências por submissão.

Evidências

A API externa registra o texto da defesa e referências de evidência. Upload binário de anexos fica nos portais Minha Konta, onde os arquivos são armazenados para análise, consulta e auditoria futura.

Resposta

json
{
  "worked": true,
  "status": "defense_submitted",
  "med_id": "3f1e2c41-c269-4fa8-a151-49e739f8d37d",
  "block_id": "3f1e2c41-c269-4fa8-a151-49e739f8d37d",
  "evidence_count": 1,
  "defense_submitted_at": "2026-06-02T16:30:12Z"
}

Webhook

Após registrar a defesa, a Minha Konta envia pix.infraction.defense_submitted para os webhooks habilitados.

O encerramento do caso chega depois em pix.infraction.resolved. Use analysis_result para saber o desfecho:

analysis_resultInterpretação
AGREEDContestação aceita e devolução executada
DISAGREEDDefesa aceita ou contestação rejeitada, sem devolução
nullCaso cancelado ou sem decisão aplicável

Erros comuns

StatusMotivo
400defense_text ausente, JSON inválido, evidência inválida ou URL fora do padrão aceito
401API Key ou HMAC ausente/inválido
403IP fora da whitelist ou API Key sem payment:write
404MED não encontrado para a conta da API Key
409MED não está em estado que permite defesa

Veja também Infrações PIX e MED para o fluxo completo de webhooks, prazos, bloqueio cautelar e reconciliação.

Minha Konta Instituição de Pagamento - ISPB 39929224