Boleto payments
Learn how to accept Boleto, a common payment method in Brazil.
Mise en garde
Stripe automatically presents your customers payment method options by evaluating their currency, payment method restrictions, and other parameters. We recommend that you configure your payment methods from the Stripe Dashboard using the instructions in Accept a payment.
If you want to continue manually configuring the payment methods you present to your customers with Checkout, use this guide. Otherwise, update your integration to configure payment methods in the Dashboard.
Boleto is a single use payment method where customers are required to take additional steps to complete their payment. Customers pay by using a Boleto voucher with a generated number either in ATMs, banks, bank portals or authorized agencies.
Determine compatibility
A Checkout Session must satisfy all of the following conditions to support Boleto payments:
- Prices for all line items must be in the same currency. If you have line items in different currencies, create separate Checkout Sessions for each currency.
- You can only use one-time line items (recurring subscription plans are not supported).
Accept a payment
Note
Build an integration to accept a payment with Checkout before using this guide.
Use this guide to learn how to enable Boleto—it shows the differences between accepting a card payment and using Boleto.
Enable Boleto as a payment method
When creating a new Checkout Session, you need to:
- Add
boleto
to the list ofpayment_
method_ types - Make sure all your
line_
use theitems brl
currency.
Additional payment method options
You can specify an optional expires_
parameter in the payment method options for your Session
that sets the number of calendar days before a Boleto voucher expires. For example, if you create a Boleto voucher on Monday and you set expires_
to 2, the Boleto voucher expires on Wednesday at 23:59 America/Sao_Paulo (UTC-3) time. If you set it to 0, the Boleto voucher expires at the end of the day. The expires_
parameter can be set from 0 to 60 days. The default is 3 days. You can customize the default expiration days on your account in the Payment methods settings
Redirect to Stripe hosted voucher page
Note
Unlike card payments, the customer won’t be redirected to the success_url with Boleto payment.
After submitting the Checkout form successfully, the customer is redirected to the hosted_
. The customer can copy the Boleto number or download the voucher PDF from the hosted voucher page.
Stripe sends a payment_intent.requires_action event when a Boleto voucher is created successfully. If you need to email your customers the voucher link, you can locate the hosted_
in payment_intent.next_action.boleto_display_details. Learn more about how to monitor a PaymentIntent with webhooks.
Stripe allows customization of customer-facing UIs on the Branding Settings page. The following brand settings can be applied to the voucher:
- Icon—your brand image and public business name
- Accent color—used as the color of the Copy Number button
- Brand color—used as the background color
Fulfill your orders
Because Boleto is a delayed notification payment method, you need to use a method such as webhooks to monitor the payment status and handle order fulfillment. Learn more about setting up webhooks and fulfilling orders.
The following events are sent when the payment status changes:
Event Name | Description | Next steps |
---|---|---|
The customer has successfully submitted the Checkout form. Stripe has generated the Boleto voucher. You can choose to email the | Wait for the customer to pay the Boleto. | |
checkout.session.async_payment_succeeded | The customer has successfully paid the Boleto. The PaymentIntent transitions to succeeded . | Fulfill the goods or services that the customer purchased. |
checkout.session.async_payment_failed | The Boleto voucher has expired, or the payment has failed for some other reason. The PaymentIntent returns to a status of requires_ . | Contact the customer via email and request that they place a new order. |
Test your integration
When testing your Checkout integration, select Boleto as the payment method and click the Pay button.
Description | |
---|---|
| Simulates a Boleto voucher which a customer pays after 3 minutes and the Example: fulaninho@example.com |
| Simulates a Boleto voucher which a customer pays immediately and the Example: succeed_immediately@example.com |
| Simulates a Boleto voucher which expires before a customer pays and the The Example: expire_immediately@example.com |
| Simulates a Boleto voucher which expires before a customer pays and the The Example: expire_with_delay@example.com |
| Simulates a Boleto voucher which never succeeds; it expires according to the Example: fill_never@example.com |
Tax ID | Description |
---|---|
CPF CNPJ | In test mode, set |
Handle refunds
Boleto payments can’t be refunded. Some merchants have created a separate process to credit their customers who reach out directly.
Handle disputes
Boleto payments can’t be disputed by the customer.