Title
Create new category
Edit page index title
Edit category
Edit link
Error Codes (Payments)
Description
During Bre-B payment processing, the result of an operation is not determined only by the HTTP response code.
HTTP response codes indicate whether the request was received or processed at the API communication level. However, the functional result of the transaction is returned inside the JSON response body.
For this reason, integrators must validate the payment status fields returned in the JSON response, mainly:
xxxxxxxxxx{ "error": { "error_code": "B101", "error_description": "Payment rejected by the MOL with code B101" }- status_code: Indicates the functional status of the operation. For example:
ACTCorRJCT. - error_code: Specific code that indicates the reason for the result or rejection.
- error_description: Functional or technical detail associated with the result.
Status interpretation
| Status Code | Meaning | Description |
|---|---|---|
| ACTC | Accepted | The transaction was successfully accepted. |
| RJCT | Rejected | The transaction was rejected due to a validation, business rule, participant issue, or ecosystem condition. |
Credit Transfer Response Codes
The following codes apply to Credit Transfer operations.
These responses are returned inside the JSON response body and should not be interpreted only based on the HTTP status code:
| Status Reason Code | Status Code | Operation | Description |
|---|---|---|---|
U000 | ACTC | Credit Transfer | Successful operation. |
U120 | RJCT | Network Management | Inbound channel signed out. |
U119 | RJCT | Credit Transfer | Session validation failed. |
U111 | RJCT | Credit Transfer | Minimum amount check failed. The minimum allowed value is 1. |
U112 | RJCT | Credit Transfer | Maximum amount check failed. |
U125 | RJCT | Credit Transfer | Inbound bank classifier not found. |
U126 | RJCT | Credit Transfer | Outbound bank ID cannot be determined. |
U122 | RJCT | Credit Transfer | Inbound bank is not active. |
U204 | RJCT | Credit Transfer | Liquidity position state not found. |
U272 | RJCT | Credit Transfer | Rejected due to rules for originating or receiving payments. |
U908 | RJCT | Credit Transfer | Validation error related to participant lock status, participant configuration, account data, message structure, or required transaction fields. See section "Errors Associate with U908" for more details. |
Errors associated with U908
The U908 code groups different rejection scenarios related to business validations, configuration, participants, accounts, or message structure.
Participant validations
| Status Reason Code | Status Code | Description |
|---|---|---|
U908 | RJCT | Debtor not found in CUD Account table. |
U908 | RJCT | Creditor not found in CUD Account table. |
U908 | RJCT | Invalid transaction: debtor participant is inactive. |
U908 | RJCT | Invalid transaction: creditor participant is inactive. |
U908 | RJCT | Invalid transaction: receiving participant is locked. |
U908 | RJCT | Invalid transaction: originating participant is locked. |
U908 | RJCT | Invalid transaction: originating and receiving participants are locked. |
U908 | RJCT | The account of the source participant and the account of the destination participant do not exist. |
Debtor Validations
| Status Reason Code | Status Code | Description |
|---|---|---|
U908 | RJCT | Debtor Agent ID must be 1 to 9 characters. |
U908 | RJCT | Debtor Account ID must exist and be 1 to 34 characters. |
U908 | RJCT | Debtor Account data must be registered in the dictionary. |
U908 | RJCT | Debtor name is required and must be 1 to 140 characters. |
U908 | RJCT | Debtor ID must be 1 to 18 alphanumeric characters. |
U908 | RJCT | Debtor must be registered in the dictionary. |
Creditor Validations
| Status Reason Code | Status Code | Description |
|---|---|---|
U908 | RJCT | Creditor Agent ID must be 1 to 9 characters. |
U908 | RJCT | Creditor Account ID must exist and be 1 to 34 characters. |
U908 | RJCT | Creditor Account data must be registered in the dictionary. |
U908 | RJCT | Creditor name is required and must be 1 to 140 characters. |
U908 | RJCT | Creditor ID must be 1 to 18 alphanumeric characters. |
U908 | RJCT | Creditor data must be registered in the dictionary. |
Message and Transaction Structure Validations
| Status Reson Code | Status Code | Description |
|---|---|---|
U908 | RJCT | InstdAgt Name field must be a type registered in the dictionary. |
U908 | RJCT | InstgAgt Name field must be a type registered in the dictionary. |
U908 | RJCT | NbOfTxs must be 1. |
U908 | RJCT | SttlmMtd must be CLRG. |
U908 | RJCT | Amount value is a mandatory field. |
U908 | RJCT | Currency code must be COP. |
U908 | RJCT | Transaction ID must be unique and comply with the expected format. |
U908 | RJCT | EndToEndId must match the Transaction ID. |
Transaction Status Inquiry Response Codes
These codes apply to transaction status inquiries, associated with the status update for a payment calls.
| Status Reason Code | Status Code | Operation | Description |
|---|---|---|---|
U000 | ACTC | Payment Status Request | Request processed successfully. |
U106 | RJCT | Payment Status Request | Transaction not found. |
U103 | RJCT | Payment Status Request | Tenant undefined validation. |
Additional Bre-B Ecosystem Error Code List
| Status Reason Code | Status Code | Operation | Description |
|---|---|---|---|
B001 | RJCT | Credit Transfer | Time-out declared by the Originating SPBVI. |
B002 | RJCT | Credit Transfer | Time-out declared by the Receiving SPBVI. |
B301 | RJCT | Credit Transfer | Time-out declared by the Originating SPBVI during a payment status inquiry. |
B302 | RJCT | Credit Transfer | Time-out declared by the Receiving SPBVI during a payment status inquiry. |
B101 | RJCT | Credit Transfer | Error in the receiving financial consumer account validations. |
B102 | RJCT | Credit Transfer | Invalid receiving customer account number. |
B103 | RJCT | Credit Transfer | Incorrect receiving customer identification. |
B104 | RJCT | Credit Transfer | Incorrect receiving customer payment method type. |
B105 | RJCT | Credit Transfer | Receiving customer account does not exist. |
B106 | RJCT | Credit Transfer | Rejected due to risk control or suspected fraud. |
B107 | RJCT | Credit Transfer | Exceeds the maximum amount allowed for low-value, ordinary, or inclusive deposits. |
B108 | RJCT | Credit Transfer | Exceeds the maximum amount allowed by the SPBVI. |
B109 | RJCT | Credit Transfer | Exceeds the maximum amount allowed by the receiving Participant. |
What is an SPBVI?
In Bre-B, SPBVI refers to system participants authorized to operate under the instant low-value payments scheme(i.e., participating regulated entities) that originate or receive transactions.
In practice:
- Originating SPBVI: the participant (entity) that sends/initiates the payment.
- Receiving SPBVI: the participant (entity) that receives the payment (where the beneficiary’s account/payment instrument is held).
Therefore, for time-out errors:
- if it says “time-out declared by the Originating SPBVI”, the unavailability/latency is attributed to the originating participant side;
- if it says “time-out declared by the Receiving SPBVI”, it is attributed to the receiving participant side.