# Introduction ## Failure Codes and Messages Only Applicable for Payment Intents and Charges (V1) The `failure_code` and `failure_message` parameters listed below are only applicable for Payment Intents and their associated Charges (V1). In the case that a Payment Intent or an associated Charge fails, Belvo updates the resource and provides a `failure_code` and `failure_message` to help you understand what went wrong. Below is a comprehensive table of all possible failure codes and their corresponding messages: | Failure Code | Failure Message (EN Only) | | --- | --- | | `AMOUNT_OVER_LIMIT` | The payment amount or number of payments exceeds limits. | | `BENEFICIARY_ACCOUNT_BLOCKED` | The beneficiary bank account is blocked. | | `BENEFICIARY_ACCOUNT_CLOSED` | The beneficiary bank account is closed. | | `BENEFICIARY_ACCOUNT_ERROR` | The Charge could not be completed due to an unexpected error in the beneficiary account. | | `BENEFICIARY_ACCOUNT_NUMBER_INVALID` | The beneficiary bank account number is invalid or non-existent. | | `BENEFICIARY_ACCOUNT_TYPE_INVALID` | The beneficiary bank account type does not allow this type of action. | | `BENEFICIARY_ACCOUNT_TYPE_NOT_SUPPORTED` | The transaction type is not supported or authorized by the beneficiary account. | | `BENEFICIARY_BANK_REJECTED_CHARGE` | The Charge was rejected by the beneficiary's institution. | | `BENEFICIARY_CANCELLED_RECURRING_PAYMENT` | The beneficiary cancelled the recurring payment schedule. | | `BENEFICIARY_IDENTIFIER_INVALID` | The beneficiary's CPF or CNPJ is incorrect. | | `BENEFICIARY_IDENTIFIER_MISMATCH` | The beneficiary's CPF or CNPJ does not match the account holder. | | `CHARGE_SETTLEMENT_FAILED` | An error occurred while processing the Charge settlement. | | `CHARGE_SETTLEMENT_TIMEOUT` | The Charge could not be completed due to a timeout. | | `DUPLICATE_BENEFICIARY_CHARGE` | A duplicate Charge was detected for the same beneficiary. | | `FRAUD_SUSPECTED` | The Charge was rejected due to suspected fraud. | | `INSUFFICIENT_FUNDS` | The payer account had insufficient funds to make the payment. | | `PAYER_ACCOUNT_TIMEOUT_ERROR` | The Charge settlement failed due to a timeout in the payer account. | | `PAYER_BLOCKED_BY_REGULATORY_REASON` | The Charge was rejected because the payer is blocked for regulatory reasons. | ## Status Codes and Messages Only Applicable for Payment Authorizations and Charges (V2) The `status_reason_code` and `status_reason_message` parameters are only applicable for Payment Authorizations and their associated Charges (V2). When a Payment Authorization or an associated Charge encounters an error, Belvo updates the `status` of the given resource. Additionally, Belvo also provides detailed information regarding the status change in the `status_reason_code` and `status_reason_message` parameters to help you understand what went wrong. Below is a comprehensive table of all possible status reason codes and their corresponding messages: | Status Reason Code | Status Reason Message (EN Only) | | --- | --- | | `ACCOUNT_NOT_ALLOWED` | The payer account does not allow payments. | | `AMOUNT_OVER_LIMIT` | The amount exceeds the maximum limit for the account. | | `AUTHORIZATION_EXPIRED` | The Payment Authorization was not completed within the allowed period. | | `BANK_USER_MISMATCH` | The authenticated bank user differed from the paying user. | | `BENEFICIARY_ACCOUNT_BLOCKED` | The beneficiary bank account is blocked. | | `BENEFICIARY_ACCOUNT_CLOSED` | The beneficiary bank account is closed. | | `BENEFICIARY_ACCOUNT_ERROR` | The Charge could not be completed due to an unexpected error in the beneficiary account. | | `BENEFICIARY_ACCOUNT_NUMBER_INVALID` | The beneficiary bank account number is invalid or non-existent. | | `BENEFICIARY_ACCOUNT_TYPE_INVALID` | The beneficiary bank account type does not allow this type of action. | | `BENEFICIARY_ACCOUNT_TYPE_NOT_SUPPORTED` | The transaction type is not supported or authorized by the beneficiary account. | | `BENEFICIARY_BANK_REJECTED_CHARGE` | The Charge was rejected by the beneficiary's institution. | | `BENEFICIARY_CANCELLED_RECURRING_PAYMENT` | The beneficiary cancelled the recurring payment schedule. | | `BENEFICIARY_IDENTIFIER_INVALID` | The beneficiary's CPF or CNPJ is incorrect. | | `BENEFICIARY_IDENTIFIER_MISMATCH` | The beneficiary's CPF or CNPJ does not match the account holder. | | `BENEFICIARY_REVOKED_AUTHORIZATION` | The beneficiary revoked the Payment Authorization. | | `CANCELLATION_NOT_ALLOWED_CHARGE` | The Charge is in a status that does not allow cancellation. | | `CANCELLATION_NOT_ALLOWED_PAYMENT_AUTHORIZATION` | The Payment Authorization is in a status that does not allow cancellation. | | `CANCELLED_WHILE_PENDING` | The Charge was cancelled while it was in the PENDING status. | | `CANCELLED_WHILE_SCHEDULED` | The Charge was cancelled while it was in the SCHEDULED status. | | `CHARGE_EXCEEDS_AUTHORIZED_AMOUNT` | The Charge amount exceeded the limits defined in the Payment Authorization. | | `CHARGE_PERIOD_LIMIT_REACHED` | The number of Charges exceeded the total allowed for the period, as defined in the Payment Authorization. | | `CHARGE_SETTLEMENT_FAILED` | An error occurred while processing the Charge settlement. | | `CHARGE_SETTLEMENT_TIMEOUT` | The Charge could not be completed due to a timeout. | | `DUPLICATE_BENEFICIARY_CHARGE` | A duplicate Charge was detected for the same beneficiary. | | `FRAUD_SUSPECTED` | The Charge was rejected due to suspected fraud. | | `IDENTIFIER_MISMATCH` | The Payment Authorization Customer Identifier does not match the account owner identifier in the institution. | | `INSUFFICIENT_FUNDS` | Insufficient funds in the payer's bank account. | | `INSUFFICIENT_PERMISSION` | The payer associated with the Payment Authorization does not have sufficient permissions to perform actions for the account. | | `INVALID_AMOUNT_QRCODE` | The value sent is not valid for the QR Code entered, or the QR Code used to initiate the payment is not valid. | | `INVALID_CHARGE` | This Charge cannot be processed because the Charge has expired, passed its due date, or has an invalid status. | | `INVALID_PAYMENT_AUTHORIZATION` | The Payment Authorization is in a final state and cannot be used for further Charges. | | `NO_REASON_PROVIDED` | No error reason was provided by the institution. | | `OPEN_FINANCE_NETWORK_FAILURE` | One of the following:- The payment was refused by the SPI system. - There was a failure in the SPI infrastructure. - There was a failure in the DICT infrastructure. - There was a failure in the PKI infrastructure. - There was a failure in the receiving PSP infrastructure. - There was a failure in the account holder infrastructure. | | `OUTSIDE_ALLOWED_TIMEFRAME` | The scheduling attempt was made outside the permitted period and was not accepted by the institution. | | `PARTIALLY_ACCEPTED_PAYMENT_AUTHORIZATION` | The Payment Authorization must be accepted by all owners of the account. | | `PAYER_ACCOUNT_TIMEOUT_ERROR` | The Charge settlement failed due to a timeout in the payer account. | | `PAYER_BLOCKED_BY_REGULATORY_REASON` | The Charge was rejected because the payer is blocked for regulatory reasons. | | `PAYER_REVOKED_AUTHORIZATION` | The payer revoked the Payment Authorization. | | `PAYMENT_CONSENT_MISMATCH` | The information provided for this Charge differs from the associated Payment Authorization. | | `PAYMENT_NOT_COMPLETED_CONSENT_EXPIRED` | The Charge was not completed within the authorized time. | | `PAYMENT_REFUSED_BY_HOLDER` | The payer refused the Charge. | | `PAYMENT_SCHEDULING_FAILURE` | The institution failed to schedule the payment. | | `REJECTED_UNKNOWN` | The Payment Authorization was rejected for unknown reasons. | | `REVOKED_PAYMENT_AUTHORIZATION` | The Charge is associated with a Payment Authorization that was revoked. | | `REVOKED_UNKNOWN` | The Payment Authorization was revoked for unknown reasons. | | `SAME_ORIGIN_DESTINATION_ACCOUNTS` | The beneficiary and payer accounts are the same. | | `SETTLEMENT_LIMIT_REACHED` | The maximum number of attempts to settle the Charge in the institution was reached. | | `SYSTEM_ERROR` | The request could not be completed due to a system error. | | `UNEXPECTED_ERROR` | One of the following:- An unexpected error occurred while processing the Charge. - An unexpected error occurred while processing the Payment Authorization. | | `USER_DAILY_LIMIT_REACHED` | The user's maximum daily limit for the account was reached. | | `USER_PERIOD_LIMIT_REACHED` | The user's maximum limit for the account and for the period was reached. | | `USER_REJECTED` | The payer rejected the Payment Authorization. |