Overview
Mental model of the offramp in three entities. Bob deposits USDT, receives BRL via Pix.
Offramp is the operation that converts USDT to BRL and delivers the BRL to the end customer via Pix. The mental model has three entities.
In three sentences
- You obtain a quote for the current USDT → BRL rate.
- You accept the quote and create a conversion, which receives an on-chain deposit address.
- The end customer deposits USDT to that address and BlendFi settles the BRL via Pix to the registered key.
The conversion is the central entity. It represents the full operation, from rate acceptance to Pix settlement, and is the resource you read and act on throughout the rest of the integration.
The lifecycle in three steps
1. POST /v1/quotes → quote valid for 5 minutes
2. POST /v1/quotes/:id/accept → creates the conversion; 15-minute deposit window
3. end customer deposits USDT → automatic Pix settlement; webhook announces the outcomeIf the deposit arrives at the exact amount within the window, the conversion proceeds straight to completed with no further action on your side. If the amount diverges or the window expires with a deposit present, the conversion enters standby, and you decide between liquidating at the received amount or handling case by case. The standby path has its own page at Standby and manual liquidation.
Term conventions
Recurring vocabulary in this section. Identifiers in backticks are API field names and are never translated.
| Prose term | Meaning | Identifier |
|---|---|---|
| quote | Immutable rate snapshot, valid for 5 minutes | quote, quote_id |
| conversion | Partner-visible operation, from accept to settlement | conversion, conversion_id |
| standby | State where the conversion received a divergent amount or expired with a deposit | status standby |
| liquidate | Trigger final execution in standby at the actually-received amount | /liquidate endpoint |
| funded | Conversion that received the exact amount within the window | status funded |
| received amount | Sum of on-chain deposits credited to the conversion | received_amount |
Next steps
- Quote: what a quote carries and what it does not do.
- Conversion: the central entity and its states.
- Per-user, per-type lock: the rule of one open conversion per end customer.
- Tutorial: integrating offramp from scratch: end-to-end example.
