Skip to main content
A BRL virtual account gives your customer a PIX key and a reusable BR code (PIX Copia e Cola). PIX payments to it convert to the Autoramp’s stablecoin.

Who can get one

Requirements

  • The customer is Active and fiat_deposit.brl.pix reads Active in GET /api/customers/{customer_id}/abilities. See Before you create a virtual account.
  • The customer is an individual. brl.pix can read Active for a business, but a business can’t open a BRL Autoramp.
  • The customer has no other BRL Autoramp that isn’t Cancelled or Rejected. To move to a new stablecoin or wallet, edit or cancel the existing Autoramp first.
  • KYC data the PIX provider needs: date of birth and email address, plus a CPF for customers who live in Brazil. Customers who live elsewhere are identified by the number on their identity document.

Create a BRL virtual account

In the dashboard, click New Virtual Account on the Onramp card under Routes and pick BRL. Through the API:
POST /api/autoramps requires an Idempotency-Key header. A missing key returns 400. Only successful responses are cached, so a retry after an error runs again. See Idempotency.
The Autoramp stays Authorized until the PIX provider approves the customer’s KYC, then moves to Approved. BRL Autoramps have no provisioning cutoff: they don’t move to Rejected after 72 hours like other Autoramps.

What your customer sees

An Approved BRL Autoramp returns one Pix entry in deposit_rails:

BR codes with your own reference

To tag a payment, generate a BR code that carries your reference, and optionally a fixed amount, with POST /api/autoramps/{autoramp_id}/br-code. The Autoramp must be Approved.
200 OK
The BR codes in these examples are shortened. Calling it again with the same parameters returns the same code. An Autoramp that isn’t Approved returns 400 with "Autoramp is not approved".

Third-party deposits and pay by reference

PIX accounts accept payments from third parties, but you can’t create a BRL Autoramp flagged as third-party, and BRL Autoramps don’t support pay by reference. In production, fiat_deposit.brl.pix_thirdparty reads Unavailable. Sandbox reports it as Active, but sandbox doesn’t support third-party PIX either. To tell payments apart, use a BR code with your own reference.

Timing

The transaction follows the usual transaction statuses.

Fees

The Autoramp’s fee profile decides the fees on each deposit. See Fees on a deposit.

What can go wrong

Sandbox

Approve the Autoramp with PUT /api/sandbox/autoramp/{id} and simulate a deposit with POST /api/sandbox/transaction. In sandbox, POST /api/autoramps/{autoramp_id}/br-code returns a placeholder (sandbox-br-code- plus your reference), not a scannable code. See Test the full flow in Sandbox.