Skip to main content
Toda requisição que falha devolve um objeto error e um status HTTP coerente com a falha.
Campos opcionais aparecem quando se aplicam: Use error.code e error.meta.errorCode para decidir o que fazer. Não interprete message.

Códigos HTTP

Violações de regra de negócio são 400 e de schema são 422. Isso importa nas retentativas: um 422 falha sempre com o mesmo payload, enquanto um 400 pode passar quando o estado mudar.

Erros de validação

Falhas de schema retornam 422 com o código VALIDATION_FAILED. details agrupa os problemas pela parte da requisição (body, query, params, headers) e cada item traz o caminho do campo.
path é um array e aponta para estruturas aninhadas (por exemplo ["splits", 1, "account"]). Todos os problemas vêm de uma vez.

Erros nos SDKs

O pacote Node.js lança UpagError com message, code, statusCode, details e meta. O upag-js lança objetos com type (api_error, validation_error, authentication_error, network_error, client_error, three_d_secure_error), além de message, statusCode, code e details.
Node.js SDK
Veja SDK Node.js e SDK browser.

Erros de cartão e 3D Secure

Recusas da adquirente não são erro HTTP: a cobrança volta com status: "failed" e failureCode. Veja Cobranças.