Skip to main content

Error Scenarios

This guide outlines potential errors that may occur during enrollment creation, payment scheduling, payment processing, and payment retries.

Pix Automático operates in partnership with users' banks through the Brazilian Central Bank's environment. As such, there are synchronous error scenarios triggered by EBANX, in accordance with the Central Bank's guidelines. These are identified by error codes starting with "BP", such as "BP-UE-03" or "BP-DR-57".

Additionally, there are asynchronous errors that may originate from the user's bank, often related to account status or operational issues. Both types of errors are listed below.


Enrollment Csreation errors

As detailed in the Variable Enrollments and Fixed Enrollments sections, you can create a new enrollment by calling the ws/userenrollment API, or the ws/direct API if the enrollment is accompanied by an instant payment.

If your enrollment creation is unsuccessful, you may encounter the following errors:

CodeError MessageDescription
BP-UE-03Field %field_name% is required for pix-automaticoThe field mentioned in %field_name% is required and cannot be left null during enrollment creation.
BP-UE-06Field enrollment.country must be a valid country abbreviationThis field is mandatory and cannot be null during enrollment creation. It must contain a valid country abbreviation.
BP-UE-07Field payment_type_code is requiredThe field must be filled with "pix-automatico".
BP-UE-08Field payment_type_code must be validThe field must be filled with "pix-automatico".
BP-UE-09The given payment_type_code is not enabled for this countryThe field payment_type_code must be "pix-automatico" and country must be "BR".
BP-UE-10Payment type not enabled in full mode for merchantPix Automático payment type must be enabled in your EBANX Dashboard.
BP-UE-16This enrollment code already exists, please generate another enrollment code for the customermerchant_enrollment_code must be unique. You cannot reuse the same enrollment code.
BP-UE-23Field enrollment.subscription.frequency is requiredThis field is required and cannot be left null during enrollment creation. Available frequencies: weekly, monthly, quarterly, semi-annual, annual.
BP-UE-24Field enrollment.subscription.start_date must be a future dateThe start_date must be a future date, as it marks when the first payment in the subscription will be charged. It cannot be in the past.

Payment Scheduling errors


After your customer authorizes the enrollment creation, scheduling a recurring payment is straightforward and can be done through the EBANX Direct API.

If a payment scheduling attempt fails, you can review the error details and try again, if applicable.

To increase your chances of a successful payment, avoid the errors listed below. These scenarios are returned synchronously by EBANX in the response to your payment request, meaning the payment will not be created.

CodeError MessageDescription
BP-DR-57Parameter is in an invalid format: due_date. Correct Format: dd/MM/yyyyThe expected billing date must follow the format DD/MM/YYYY.
BP-DR-58Invalid due_date for pix-automatico: max interval 10 daysThe expected billing date must be between 2 and 10 days after the current date (DD/MM/YYYY).
BP-DR-59Invalid due_date for pix-automatico: min interval 2 daysThe expected billing date must be between 2 and 10 days after the current date (DD/MM/YYYY).
BP-DR-60Max one payment per cycleOnly one payment can be scheduled per cycle. The cycle starts on the start_date and repeats based on the frequency defined during enrollment.
BP-DR-182Enrollment is not accepted, Cannot transactThis error occurs if the enrollment status is not accepted. Payments can only be created for active enrollments.

There are other failure scenarios of validations that occur on payer bank enviroment and are returned to you assyncronously. Your customer's bank has up to two hours to either confirm or reject a payment scheduling attempt. For the cases below, you will receive a payment status notification. The payment that was PE(pending), will be cancelled and turn into CA. On the query, you will be able to check the reason in the field payment.decline_reason.

Decline ReasonDescription
Payment declined as the amount exceeds the maximum threshold defined by the payer.For each enrollment, the customer can set a maximum amount for recurring payments and can update it over time. This limit cannot be lower than the max_amount_floor defined by the merchant during enrollment creation. Neither the merchant nor EBANX will have visibility into the exact amount chosen by the customer or any updates. We will only know if a payment was rejected due to reaching this limit.
User account is closedIf the user's bank account is closed and they can no longer make transactions, the payment will fail. In most cases, the enrollment will be canceled shortly after the account is closed.
External service not available, try againThe user's bank was unavailable and did not respond to our payment scheduling attempt.

Payment Processing errors

At this point, you have scheduled the payment and its status is PE. It will be processed by the customer's bank on the due_date set in the request.

If a payment attempt fails, EBANX will send a notification to inform you of the failure. There are three possible failure scenarios for Pix Automático:

  • Insufficient funds in the customer’s enrolled account (no available balance).
  • Insufficient Pix Automático limit: The customer has set a daily transaction limit that was exceeded.
  • Operational failure: An issue occurred within the bank system.

However, the specific reason for the failure is not disclosed by the customer's bank. Due to data protection regulations, the Central Bank has defined strict communication rules that prevent detailed responses. As a result, when you query a payment, you will only receive a generic attempt_response: Payment failed due to insufficient funds or limit restrictions in the user's account

The same applies to retry attempts, which are listed under the payment_attempts node in the query response. If a retry fails, it will also include an attempt_response.

note

What happens on the customer Bank system and UX:

The bank's first attempt window is between 12:00 AM and 8:00 AM BRT. If the attempt fails, the bank notifies users explaining the reason and suggesting actions such as topping up their account or adjusting transaction limits. Customers are expected to take these actions before the intraday retry attempts.

Intraday retry attempts are intiated by the banks and occur a second window, between 6:00 PM and 9:00 PM BRT. Banks can process as many intraday retries as needed, but at least one is mandatory.

If the payment is not confirmed by 9:00 PM BRT, EBANX will consider it unsuccessful and notify merchant. After this notification, you may send a retry request to be processed the next day. The retry you requested will follow the same two-window process as the original payment on the previous day.

Payment Retry errors

Payment retries for Pix Automatico have strict rules that at this point you have already known: It is possible to request up to three retries within a seven-day window, with a maximum of one retry per day.

If one of this rules is violated, you may see the errors below:

CodeError MessageDescription
BP-R-3Payment is not pendingPayments that are already confirmed (CO) or were cancelled (CA) can not be retried, only pending (PE) payments are allowed to be retried.
BP-R-4Payment is not eligible for retryIn the enrollment creation, the retry policy was configured to disallow retries, or the 7-day retry window has passed, making retries no longer possible
BP-R-5Payment was retried todayThere is a maximum of one retry per day
BP-R-6Payment has no available retriesThe maximum of three retries was reached

Still need help?

Help Image

We hope this article was helpful. If you still have questions, you can explore the following options: