Skip to main content

Breb Payment Flow

Breb enables payments via bank transfer using a QR code or transfer key. The buyer scans the QR or enters the key in their banking app to complete the payment.

How it works

1

Create order

Call POST /v1/orders with the buyer’s id_number, id_type, and the Breb gateway ID.
2

Display QR code and key

The response includes a qr_code (base64-encoded image) and a key (text string). Display both to the buyer — the QR code for scanning, and the key as a fallback for manual entry.
3

Buyer completes transfer

The buyer opens their banking app, scans the QR code or enters the transfer key, and confirms the payment.
4

Payment confirmed

Once the transfer is completed, the order status changes to confirmed. You receive a webhook notification, or you can poll for the status.

Required fields

Like Daviplata, Breb only accepts the following document types: CC (ID 1), CE (ID 2), and TI (ID 3).

Example request

Example response

Displaying the QR code

The qr_code field contains a base64-encoded PNG image. To display it in HTML:
Display the key value as text alongside the QR code so the buyer can copy and paste it if they prefer not to scan.

Important notes

  • The buyer completes payment asynchronously (like Nequi), so you must rely on webhooks or polling for confirmation.
  • Breb requires the same national ID fields as Daviplata, and only accepts CC, CE, and TI document types.
  • The QR code and key have a limited validity window. If expired, cancel the order and create a new one.