Skip to main content

Overview

Boleto Bancario is a widely used payment method in Brazil that generates a bank slip (boleto) with a barcode. Customers can pay the boleto at bank branches, ATMs, online banking portals, or authorized payment agents. It is especially important for reaching unbanked and underbanked populations who may not have credit cards. Key characteristics:
  • Asynchronous: Payment is not instant; customers pay after receiving the boleto
  • Wide reach: Accepted at any bank in Brazil
  • No chargebacks: Boleto payments cannot be disputed like card transactions
  • Settlement delay: Typically 1-3 business days after the customer pays

Requirements

Creating a Boleto Payment

Handling the Response

A successful Boleto creation returns status PENDING with boleto details:

Displaying the Boleto

Provide multiple ways for the customer to access the boleto:
  1. PDF link: Direct the customer to the boleto.url to view and print the bank slip
  2. Barcode: Display the barcode for scanning at bank branches or ATMs
  3. Digitable line: Show the numeric code for manual entry in online banking apps
Send the boleto URL to the customer via email as a backup. Customers may not complete payment immediately and will need access to the boleto later.

Expiration and Late Payment

Boletos have a due date, typically 3-5 business days from creation. After the due date:
  • Some banks accept late payments with additional fees (juros and multa)
  • Behavior varies by provider and bank
  • If the boleto is not paid, the payment status transitions to EXPIRED
Do not fulfill orders until you receive a payment.succeeded webhook. Boleto creation does not guarantee payment.

Settlement Timeline

Total time from creation to settlement can range from 2-10 business days.

Webhook Events

Common Issues

Response Handling

Synchronous Response

Boleto payments return PENDING status with a ticket URL:
Provide the customer with the boleto URL (printable PDF) or the barcode line for bank app payment.

Webhook Events

Boleto settlement can take 1-3 business days after the customer pays. Use webhooks for definitive payment confirmation.