Respostas, erros e timeouts

Interprete o resultado em camadas e evite duplicidades quando a resposta for inconclusiva.

O código HTTP indica o resultado da chamada à API. Para saber o que aconteceu com o pagamento, confira também o estado da Venda e da Transação.

Uma requisição aceita com sucesso pode criar uma cobrança que ainda está aguardando pagamento. Da mesma forma, um timeout não prova que a operação falhou.

O que consultar

  1. Código HTTP: a requisição foi recebida e tratada conforme o contrato do endpoint?
  2. Venda: qual é a situação da cobrança?
  3. Transação: qual é o resultado da tentativa ou operação?
  4. Estado detalhado: o que indica detailed_status, quando retornado?
⚠️

HTTP 2xx não confirma aprovação financeira

Uma resposta de sucesso indica que a chamada foi processada conforme o endpoint. Consulte a Venda e a Transação para saber se o pagamento foi aprovado, recusado ou ainda está pendente.

Erro da API, recusa ou falta de resposta?

SituaçãoO que significaComo agir
Resposta 4xxPode haver problema na requisição, autenticação, estado do recurso ou regra da operação.Leia o erro retornado e corrija a causa antes de tentar novamente.
Transação REFUSEDA requisição pode ter sido válida, mas o pagamento foi recusado.Trate como resultado da operação financeira.
Timeout ou conexão interrompidaNão é possível saber apenas pela conexão se a operação foi executada.Em caso de indisponibilidade de comunicação (timeout por exemplo), consulte o status do recurso antes de repetir a operação, evitando possíveis duplicidades (lembrando que temos chave de idempotencia em algumas rotas). Se necessário, acione o suporte.

Quando a resposta não chega

flowchart TD
    A["E-commerce envia uma requisição de pagamento"]
    B{"A API retornou uma resposta?"}
    C["Interpretar o HTTP e o estado da Venda e da Transação"]
    D["Não assumir que houve sucesso nem falha"]
    E["Consultar o recurso pelos identificadores disponíveis"]
    F{"A situação do recurso foi encontrada?"}
    G["Continuar o fluxo com base no estado atual"]
    H["Seguir o procedimento de reconciliação ou suporte do endpoint"]

    A --> B
    B -->|Sim| C
    B -->|Não| D --> E --> F
    F -->|Sim| G
    F -->|Não| H

    classDef default fill:#1c2026,stroke:#434b57,color:#f0f2f5
    classDef decision fill:#243249,stroke:#568af6,color:#fff
    class B,F decision

Evite repetir uma operação com efeito financeiro enquanto não souber se a primeira tentativa foi processada.

📘

Identificador para suporte

Se a resposta de erro incluir correlation_uuid, guarde esse valor nos logs. Ele ajuda a localizar e investigar a ocorrência.


Did this page help you?