Error Codes

Errors are JSON with status: "error" and a message. Most also carry an error_code. Branch on the HTTP status and error_code; message is for humans and is sometimes in Portuguese.

{
  "status": "error",
  "message": "Amount exceeds the refundable balance.",
  "error_code": "AMOUNT_EXCEEDS_REFUNDABLE",
  "remaining_refundable": 87.21
}

Errors without error_code

HTTPBodyWhereMeaning
400{"error": "Token ou Secret ausentes", ...}Alltoken or secret missing.
401Token ou Secret inválidosAllWrong credentials.
401Usuário sem permissões. Fale com seu gerente.AllAccount blocked or not approved.
401O depósito mínimo é de R$ ... / O depósito máximo é de R$ ...POST /wallet/deposit/paymentAmount outside the platform deposit limits.
403Credenciais sandbox não podem ...PIX charge, /pixout, /crypto/*Sandbox credentials on a real money endpoint.
422Erro de validação / Validation failed with errorsAll POSTField validation.
429Muitas requisições. Tente novamente mais tarde./pixoutPer IP limit (1 per minute).
400, 404, 500Portuguese messages/crypto/*See Crypto withdrawal.

Platform error codes

error_codeHTTPEndpointsMeaning and action
REFUND_ONLY403All except refund endpointsAccount limited to refunds. Only POST /wallet/card/refund and GET /wallet/card/refund/{refundId} work.
RATE_LIMITED429/pixout, /wallet/card/charge, /wallet/card/confirmToo many requests. On /pixout, wait 60 seconds between attempts.
VALIDATION_ERROR422/pixoutInvalid fields. See errors.
INSUFFICIENT_BALANCE401/pixoutBRL balance below the amount.
INSUFFICIENT_BALANCE_FOR_FEE401 or 422 (depends on the acquirer)/pixoutBalance does not cover amount plus fee.
DAILY_LIMIT_EXCEEDED401/pixoutDaily number of PIX-OUT reached.
MINIMUM_AMOUNT_NOT_MET401/pixoutBelow the platform minimum.
MAXIMUM_AMOUNT_EXCEEDED401/pixoutAbove the platform maximum.
ACQUIRER_NOT_CONFIGURED500/pixoutAccount routing problem. Contact support.
INTERNAL_ERROR500/pixoutUnexpected error. Check the balance and callbacks before retrying.
RAPDYN_API_ERROR422PIX chargeThe PIX acquirer rejected the charge. message has the reason.
RAPDYN_UNEXPECTED_RESPONSE422PIX chargeThe PIX acquirer returned an unexpected response. Retry later.
CARD_NOT_AVAILABLE403Card charge, /wallet/card/charge, /wallet/card/confirmCard payments not enabled for the account.
AMOUNT_BELOW_MINIMUM422Card charge, /wallet/card/chargeBelow USD 5.00.
STRIPE_ACCOUNT_NOT_READY422Card charge, /wallet/card/chargeCard onboarding incomplete for this environment.
INVALID_WALLET422Card chargewallet must be apple_pay or google_pay.
INVALID_CARD_NUMBER422/wallet/card/chargeCard number fails the Luhn check.
RAW_CARD_NOT_ENABLED422/wallet/card/chargeRaw card access not enabled. Use the hosted checkout or contact support.
PM_CREATE_FAILED422/wallet/card/chargeUnexpected error creating the payment method. No charge was made.
PI_CREATE_FAILED422/wallet/card/chargeUnexpected error creating the charge. Check the status before retrying.
CARD_TESTING_BLOCKED429/wallet/card/chargeThis card is temporarily blocked after repeated failures.
CARD_VELOCITY_BLOCKED429/wallet/card/chargeThis card is temporarily blocked after too many approvals. Use another card.
STRIPE_TEMPORARILY_UNAVAILABLE503/wallet/card/chargeCard processor unreachable. No charge was made. Retry with the same idempotency key.
cvc_check_failed422/wallet/card/chargeThe issuer reported a wrong CVC.
NOT_FOUND404/wallet/card/confirmNo charge with that payment_intent_id on your account.
CONFIRM_FAILED422/wallet/card/confirmUnexpected error confirming. Check the status before retrying.
TRANSACTION_NOT_FOUND404/wallet/card/refundNo charge with that id under your credentials and environment.
NOT_REFUNDABLE422/wallet/card/refundCharge is not paid or partially_refunded.
ALREADY_REFUNDED422/wallet/card/refundNothing left to refund.
AMOUNT_EXCEEDS_REFUNDABLE422/wallet/card/refundAmount larger than what is left. See remaining_refundable.
REFUND_FAILED422/wallet/card/refundProcessor rejected the refund. See message.
REFUND_NOT_FOUND404GET /wallet/card/refund/{refundId}Malformed id, unknown refund, or refund of another account or environment.

Card decline codes

On card declines (HTTP 422 from /wallet/card/charge or /wallet/card/confirm), error_code is the issuer decline code when there is one, otherwise the processor error code. The same values appear in failure_code on the status endpoint and in cancelled callbacks. message is never empty.

CodeMeaningRetry with the same card?
insufficient_fundsInsufficient funds.Later, or another card.
card_declined, generic_decline, do_not_honor, no_action_takenDeclined by the issuer.Ask for another card.
call_issuerCustomer must contact the issuer.No.
lost_card, stolen_card, pickup_cardCard reported lost or stolen.Never.
fraudulent, merchant_blacklist, security_violationDeclined as suspected fraud or for security reasons.Never.
expired_card, invalid_expiry_month, invalid_expiry_yearExpiry problem.Fix the data.
incorrect_cvc, invalid_cvcCVC problem.Fix the data.
incorrect_number, invalid_numberCard number problem.Fix the data.
incorrect_zipPostal code mismatch.Fix the data.
service_not_allowed, transaction_not_allowed, card_not_supported, not_permitted, restricted_cardThe card does not allow this purchase.Ask for another card.
currency_not_supportedThe card does not support USD.Ask for another card.
withdrawal_count_limit_exceededCard limit reached.Later, or another card.
processing_error, try_again_laterTemporary issuer or network error.Yes, after a short wait.
approve_with_idCould not be authorized.Yes, once.
revocation_of_authorizationAuthorization revoked.No.
authentication_required3D Secure required and not completed.Run 3D Secure.
payment_intent_authentication_failure3D Secure failed.Ask the customer to try again.
amount_too_large, amount_too_smallAmount outside the processor limits.Change the amount.
balance_insufficientInsufficient funds.Later.
expiredHosted checkout session ended without payment (callbacks and status only).Create a new charge.
payment_intent_canceled, payment_failedGeneric failure on confirm.Create a new charge.

Other processor codes can appear. Treat unknown codes as a decline and show message.


Did this page help you?