Your developers in São Paulo bill in reais, and your revenue arrives in USDC. Moving it through an exchange and a Brazilian bank adds a day and a stack of forms.
Converting USDC to BRL through Yativo turns that into one payout. You lock a quote, and your recipient gets Brazilian reais on their Pix key in under 30 minutes.
Brazil is the largest stablecoin market in the region. Chainalysis reports US$318.8 billion in crypto value received in Brazil from July 2024 to June 2025, with over 90% of flows tied to stablecoins. Brazilians also made 79.8 billion Pix transactions in 2025.
This guide shows how USDC to BRL conversion works on Yativo, which local rails you can use, and what to collect from recipients. It ends with dashboard steps and a full API example.
What It Means to Convert USDC to BRL and Pay Out Locally
Converting USDC to BRL means turning a dollar-backed stablecoin balance into Brazilian reais that lands in a real local account. People call this an off-ramp. The hard part is not the conversion itself. It is getting the money to the right bank account or Pix key quickly and at a known rate.
Most businesses that hold USDC want one of two outcomes. They want to pay someone in Brazil, such as a supplier, a contractor or an employee. Or they want to move their own treasury into BRL for local costs.
Yativo handles both with one flow. You hold USDC or USD in your float balance. When you send a payout, Yativo converts the value and a licensed local payout partner credits BRL over a local rail such as Pix, Pix QR and bank transfer.
Why Converting USDC to BRL Through an Exchange Is Harder Than It Looks
Selling USDC on an exchange looks simple on screen. In practice it adds steps between your balance and your recipient.
Two hops instead of one. You sell on the exchange, withdraw BRL to your own bank, then send a second transfer to the recipient. Each hop adds time, limits and another point of failure.
Spreads and withdrawal fees stack up. The quoted price on an order book is rarely what you net after spreads and withdrawal charges. Sending small amounts across borders already costs an average of 6.36% of the amount sent, according to the World Bank.
Banks may question the funds. Some banks ask for extra documents when money arrives from a crypto exchange. That review can freeze the payment you needed to make today.
Foreign exchange rules now cover crypto. Since February 2, 2026, international payments with virtual assets fall under Brazil’s foreign exchange rules, per the central bank. A regulated payout path keeps you on the right side of them.
We break down more of these costs in the hidden costs of international payments.
How USDC to BRL Conversion Works with Yativo
Yativo is payment infrastructure, not a bank or an exchange. We use stablecoins as the settlement layer, and a licensed local payout partner delivers the BRL on a domestic rail.
- You fund your Yativo float balance with a fiat or stablecoin deposit, such as USDC.
- You request a quote that shows the rate, the fees and the exact BRL amount.
- Yativo settles the payout value on-chain with a licensed local payout partner in Brazil.
- The partner converts the stablecoin to BRL and sends a local payment to the recipient’s bank account or Pix key.
- Your recipient sees Brazilian reais in their account like any other domestic credit.
Your recipient does not need a crypto wallet. They never see or touch stablecoins. On their side, the payment looks like a normal local BRL transfer.
On the local side, the Banco Central do Brasil says Pix moves money between accounts in seconds, at any hour and on any day. For the wider picture, read our overview of the on-ramp and off-ramp API for businesses and how to receive international payments in stablecoins.
Local Rails for USDC to BRL Payouts
Pix is the featured rail for USDC to BRL. Brazil also has bank transfer, Pix QR and pay-on-behalf-of options. Each rail has its own deep dive: Pix payouts, Pix QR code payouts and Brazil local bank transfer payouts.
Pix (gateway ID 494)
Gateway 494 pays reais to any Pix key. It is the fastest way to turn USDC into BRL for contractors, sellers and suppliers.
Required details: the fields returned by the form for gateway 494, such as the recipient tax ID (CPF or CNPJ) and the Pix key.
Settlement time: Under 30 minutes.
Limits: 26 BRL minimum and 260,000 BRL maximum per payout in our catalog.
Best for: contractor and creator payouts, marketplace sellers and urgent supplier payments.
Pay with QR (Pix QR) (gateway ID 903)
Gateway 903 pays a Pix QR code issued by the recipient. Use it when an invoice arrives with a QR instead of a key.
Settlement time: Under 30 minutes.
Limits: 10 BRL minimum and 1,000,000 BRL maximum per payout in our catalog.
Bank Transfer (BRL) (gateway ID 495)
Gateway 495 pays a Brazilian bank account by branch and account number. It suits recipients who do not use Pix keys.
Settlement time: Banking hours only. Payouts sent outside Brazilian banking hours credit on the next banking window.
Limits: 1 BRL minimum and 260,000,000 BRL maximum per payout in our catalog.
POBO (Local)
POBO (Local), gateway 1049, pays BRL on behalf of your business. SWIFT (POBO), gateway 1106, delivers BRL through SWIFT, and SWIFT 547 delivers USD. Any gateway with POBO in its name requires a POBO endorsement on your account.
Settlement time: T+1 (next business day) for all three.
What You Need Before Your First USDC to BRL Payout
The form in your dashboard, or the authenticated GET /beneficiary/form/show/494 call, is the authoritative field list. For field details, see API documentation. Collect the items below before you send.
- A verified Yativo business account. KYB must be complete before you can pay out.
- A funded balance. Deposit USDC or fiat into your float balance. USDC deposits credit your balance once confirmed on-chain.
- The customer record, if you are a fintech. Payouts made on behalf of a customer need that customer’s ID.
- The Pix key. The central bank recognizes five key types: mobile phone, email, CPF, CNPJ and a random key.
- The CPF or CNPJ. Brazilian payouts match the tax ID to the account holder.
- A payment reference. An invoice number or payroll period helps the recipient reconcile the credit.
Pix Offramp (897), Bank Transfer Offramp (898) and Pix Withdrawal (1276) are alternative active gateways for BRL. 897 and 1276 pay Pix keys, and 898 pays bank accounts during banking hours only.
How to Convert USDC to BRL and Pay Out via Yativo
Option 1: Dashboard (for manual payouts)
- Fund your Yativo float balance with either a fiat or a stablecoin deposit, such as USDC.
- Go to Transfer in your Yativo dashboard.
- Select the float wallet you are paying with, for example USD, EUR, MXN or whichever balance you funded.
- Choose the customer you are paying on behalf of. This step is necessary for fintechs that run payouts on behalf of their customers.
- Choose Brazil as the destination and Pix as the payout method.
- Enter the recipient details the payout form asks for, such as the recipient CPF or CNPJ and their Pix key.
- Enter the amount in USD or BRL.
- Review the quote: exchange rate, fees, delivery time and the exact BRL amount your recipient receives.
- Confirm with your PIN and 2FA.
- Track the payout in real time and download the receipt for your records.
Option 2: API (for automated and bulk payouts)
Every endpoint below is in the Yativo API documentation. Production calls go to https://api.yativo.com/api/v1, and the sandbox runs at https://smtp.yativo.com/api/v1.
Authenticate every request with the X-Api-Key and X-Api-Secret headers. Each key only works from the server IPs listed on it. These keys replaced bearer tokens, as covered in our October update. Every POST also needs a unique Idempotency-Key header.
Step 1. Generate a USDC deposit address on Solana to fund your balance:
POST https://api.yativo.com/api/v1/crypto/create-wallet
X-Api-Key: $YATIVO_API_KEY
X-Api-Secret: $YATIVO_API_SECRET
Idempotency-Key: ea2f39cf-5728-4198-9c21-8f2ab336c21c
Content-Type: application/json
{
"currency": "USDC_SOL"
}
Step 2. List the payout methods available for Brazil:
curl "https://api.yativo.com/api/v1/payment-methods/payout?country=BRA" \
-H "X-Api-Key: $YATIVO_API_KEY" \
-H "X-Api-Secret: $YATIVO_API_SECRET" \
-H "Accept: application/json"
Pix carries gateway ID 494. Always read the ID from the live response instead of hardcoding it.
Step 3. Fetch the required fields for that gateway:
GET https://api.yativo.com/api/v1/beneficiary/form/show/494
X-Api-Key: $YATIVO_API_KEY
X-Api-Secret: $YATIVO_API_SECRET
The response lists every required field and its accepted values. Build your payment_data object from it.
Step 4. Create the beneficiary. Replace the placeholder with the fields the form returned:
POST https://api.yativo.com/api/v1/beneficiaries/payment-methods/
X-Api-Key: $YATIVO_API_KEY
X-Api-Secret: $YATIVO_API_SECRET
Idempotency-Key: a4ba42a8-bcd2-4baa-8d1c-004efda0ddf7
Content-Type: application/json
{
"gateway_id": 494,
"nickname": "Silva Dev Ltda",
"currency": "BRL",
"customer_id": "e8caa491-57b6-4c39-9e3a-d2c97e47fbf0",
"payment_data": {
"{field_from_form}": "{value}"
}
}
Step 5. Lock your BRL rate. Quotes hold for 5 minutes:
POST https://api.yativo.com/api/v1/exchange-rate
X-Api-Key: $YATIVO_API_KEY
X-Api-Secret: $YATIVO_API_SECRET
Idempotency-Key: 07246003-590b-4513-b65f-71d22ec6739f
Content-Type: application/json
{
"from_currency": "USD",
"to_currency": "BRL",
"method_id": 494,
"method_type": "payout",
"amount": 1200
}
Step 6. Initiate the payout from your balance:
POST https://api.yativo.com/api/v1/wallet/payout
X-Api-Key: $YATIVO_API_KEY
X-Api-Secret: $YATIVO_API_SECRET
Idempotency-Key: 3f68e6ed-c242-4a9b-a1bd-12bb95cc96d8
Content-Type: application/json
{
"debit_wallet": "USD",
"amount": 1200,
"payment_method_id": 9291,
"customer_id": "e8caa491-57b6-4c39-9e3a-d2c97e47fbf0",
"quote_id": "4a72ecf8-6c8a-4e38-9971-8aabe9f785ed"
}
Use the id from the beneficiary response as payment_method_id. For bulk runs, repeat the call per beneficiary, as described on our payouts page.
Yativo vs an Exchange vs a SWIFT Wire for USDC to BRL
| Yativo off-ramp | Exchange sale + bank withdrawal | SWIFT wire | |
| Steps to reach the recipient | One payout | Sell, withdraw, then transfer again | One wire through correspondent banks |
| Settlement | Under 30 minutes | Depends on the exchange and your bank | T+1 or longer |
| BRL amount known upfront | Yes, in the quote | Only after the trade and fees | Often not, intermediaries may deduct fees |
| Recipient needs crypto | No | No, but you need an exchange account | No |
| Best for | Paying people in Brazil from USDC | Occasional personal conversions | Large payments with no local rail |
Best Practices for Converting USDC to BRL
Lock the rate on large payouts. Quotes hold for 5 minutes, so request one right before you approve a big BRL payment.
Validate details at onboarding. Check account formats in your own form before you save a beneficiary. Most failed payouts start with a typo.
Match the name to the account. Use the exact legal name the bank account or Pix key is registered under. Mismatches can trigger compliance holds.
Keep a USDC buffer. Hold enough balance for your next payout cycle so on-chain confirmation time never delays a payment run.
Prefer Pix outside banking hours. Bank Transfer 495 only moves during Brazilian banking hours, while Pix runs around the clock.
Use idempotency keys everywhere. A unique Idempotency-Key on every POST stops a retry from sending the same payout twice.
Frequently Asked Questions
Does my recipient need a crypto wallet to receive BRL?
No. Your recipient gets Brazilian reais in their normal bank account or Pix key. They never touch USDC, and the credit looks like any other domestic payment.
Is converting USDC to BRL this way legal and compliant?
Yes, when it runs through regulated infrastructure. Yativo is registered with FinCEN as a Money Services Business, registration number 31000270723339. A licensed local payout partner handles the BRL leg. Your own tax and reporting duties still apply, so confirm them with your advisor.
How long does a USDC to BRL payout take?
Pix payouts settle in under 30 minutes. Bank Transfer 495 runs only during Brazilian banking hours. POBO and SWIFT options settle T+1.
What exchange rate do I get when I convert USDC to BRL?
You see the rate, the fees and the exact BRL amount before you confirm. Quotes from the exchange-rate endpoint hold for 5 minutes, so you can lock a rate before you approve a large payout.
Do I need an exchange account to convert USDC to BRL?
No. You deposit USDC into your Yativo balance and pay out directly on a local rail. There is no separate exchange order, withdrawal request or bank transfer to manage.
Which Pix key should I ask for?
Any of the five types works. A CPF or CNPJ key is the most stable, because phone numbers and emails change more often.
Start Converting USDC to BRL with Yativo
More than 90% of Brazil’s US$318.8 billion in crypto inflows is tied to stablecoins. Yativo turns your USDC into BRL on any Pix key through a licensed local payout partner in under 30 minutes. Book a demo to set up your first BRL payout, or contact sales if you already know your monthly volume.
Sources
- Chainalysis: Latin America Emerges as a Crypto Powerhouse Amid Volatile Growth
- Época Negócios: BC projeta novidades do Pix para os próximos anos
- Banco Central do Brasil: Pix
- BCB: Manual Operacional do DICT
- BCB (via Poder360): Banco Central regulamenta o uso de ativos virtuais
- World Bank: Remittance Prices Worldwide
- Yativo: Yativo API Documentation
- Yativo: Safer API access, three new virtual accounts and new payment links