Códigos de Erro

A GoPag API utiliza códigos de status HTTP padronizados e retorna detalhes adicionais no corpo da resposta seguindo o padrão RFC 7807 (Problem Details).

Estrutura de Erro

Todas as respostas de erro seguem este formato:

{
  "type": "https://httpstatuses.com/400",
  "title": "Bad Request",
  "status": 400,
  "detail": "Field payment_type is required",
  "trace_id": "a1b2c3"
}

Campos

Campo
Tipo
Descrição

type

string

URI que identifica o tipo de erro

title

string

Resumo legível do erro

status

integer

Código de status HTTP

detail

string

Descrição detalhada do erro

trace_id

string

ID único para rastreamento (6 caracteres)

Códigos de Status HTTP

2xx - Sucesso

200 OK

Requisição bem-sucedida.

201 Created

Recurso criado com sucesso.

4xx - Erros do Cliente

400 Bad Request

Requisição inválida ou mal formatada.

Exemplos:

Causas comuns:

  • Campo obrigatório ausente

  • Formato de campo inválido (ex: ID não hexadecimal de 32 chars)

  • Campos inesperados na requisição

  • Valor fora do intervalo permitido

  • Tipo de dado incorreto

Solução:

  • Verifique os campos obrigatórios

  • Valide formatos antes de enviar

  • Remova campos não documentados

  • Consulte a documentação do endpoint

401 Unauthorized

Não autenticado ou credenciais inválidas.

Exemplos:

Causas comuns:

  • Token OAuth expirado (após 1 hora)

  • Token inválido ou ausente

  • certSerialNumber não corresponde ao marketplace_id

  • Tentando acessar seller de outro marketplace

  • Certificado mTLS inválido

Solução:

  • Obtenha um novo token OAuth 2.0

  • Verifique o marketplace_id na URL

  • Confirme que o seller pertence ao seu marketplace

  • Valide seu certificado mTLS

403 Forbidden

Autenticado, mas sem permissão para acessar o recurso.

Causas comuns:

  • Tentando acessar recursos de outro marketplace

  • Permissões insuficientes no client_id

Solução:

  • Verifique se o recurso pertence ao seu marketplace

  • Entre em contato com suporte para revisar permissões

404 Not Found

Recurso não encontrado.

Causas comuns:

  • ID incorreto na URL

  • Recurso foi deletado

  • Recurso pertence a outro marketplace

Solução:

  • Verifique o ID do recurso

  • Confirme que o recurso existe

  • Verifique se está usando o marketplace_id correto

429 Too Many Requests

Rate limit excedido.

Solução:

  • Adicione cache de respostas

  • Otimize número de requisições

  • Entre em contato com o suporte

5xx - Erros do Servidor

500 Internal Server Error

Erro interno do servidor.

Causas comuns:

  • Erro inesperado no servidor

  • Falha na comunicação com gateway de pagamento

Solução:

  • Tente novamente após alguns segundos

  • Se persistir, reporte usando o trace_id

501 Not Implemented

Funcionalidade ainda não implementada.

Causas comuns:

  • Usando payment_locale que ainda não está ativo (PINPAD, MPOS, Tap to Pay, Link Payment)

Solução:

  • Use payment_locale: "api" (ou omita o campo)

  • Aguarde disponibilidade da funcionalidade

  • Entre em contato com suporte para roadmap

502 Bad Gateway

Erro na comunicação com serviço externo.

Causas comuns:

  • Gateway de pagamento indisponível

  • Timeout na comunicação

  • Erro de rede

Solução:

  • Tente novamente após alguns segundos

  • Implemente retry com backoff exponencial

  • Se persistir, reporte o trace_id

503 Service Unavailable

Serviço temporariamente indisponível.

Causas comuns:

  • Manutenção programada

  • Alta carga no sistema

Solução:

  • Aguarde e tente novamente

  • Respeite o header Retry-After

Erros Específicos de Negócio

Validação de Transação

Erro do Gateway de Pagamento

Quando o gateway retorna erro, a API repassa a mensagem:

Tratamento de Erros - Melhores Práticas

1. Sempre Verifique o Status HTTP

2. Log do Trace ID

3. Mensagens Amigáveis para Usuário

Trace ID para Suporte

Sempre que reportar um problema ao suporte, inclua:

O trace_id permite que nossa equipe rastreie o que aconteceu de forma facilitada.

Próximos Passos

Atualizado