Erros e status

Todo erro da API vem num envelope JSON com código estável e mensagem em português.

Envelope de erro

4xx / 5xx
{
  "error": {
    "code": "invalid_amount",
    "message": "amount_cents deve ser um inteiro positivo (em centavos)"
  }
}

Programe contra o campo code (estável); a message é para humanos e pode mudar.

Códigos de erro

ParâmetroTipoDescrição
unauthorized401Chave ausente, inválida ou revogada — ou tipo errado de credencial para a rota.
invalid_body400JSON malformado ou com campos desconhecidos.
invalid_amount400amount_cents ausente, zero ou negativo.
invalid_limit400limit não numérico ou negativo na listagem.
not_found404Recurso inexistente — ou de outra conta (não vazamos existência).
not_simulatable403simulate-payment fora do sandbox.
internal_error500Falha inesperada do nosso lado. Tente de novo em instantes.

Status de cobrança

ParâmetroTipoDescrição
pendingstatusCriada, aguardando pagamento.
paidstatusPaga. O paid_at marca o momento da confirmação.
expiredstatusExpirou sem pagamento.
failedstatusFalhou no provedor.