Paying US suppliers from Brazil or Mexico with stablecoins: a worked timeline (2026)
An illustrative timeline for paying a US supplier from Brazil or Mexico: Pix or SPEI in, ACH or wire out, plus a flow table and documents checklist.
A Brazilian or Mexican company pays a US supplier by sending local currency over Pix or SPEI, letting the provider convert it, and having the supplier receive dollars by ACH or wire. The local leg takes minutes, the US leg takes up to about 2 business days, and the supplier sees an ordinary dollar transfer.
This post is the timeline view, as of November 2026. The full explanation of the flow is in how Brazilian and Mexican companies pay US suppliers with stablecoins, which this post does not repeat. A stablecoin is a digital dollar token such as USDC that carries the value between the two legs. For the model, see what a stablecoin payouts API is.
Key takeaways
- Pix payins arrive in up to 5 minutes and SPEI payins in up to 10, per BlindPay's cut-off times reference.
- US payouts take about 2 business days by ACH and about 1 business day by wire, and RTP is instant, per BlindPay's bank accounts docs.
- USD payouts pass through an
on_holdcompliance review, and a hold can take up to 30 days to resolve. - In Brazil, a stablecoin payment abroad is treated as an FX operation, and transfers of 10,000 USD or more to or from a company-controlled wallet are reported to COAF.
- Keep the supplier invoice with both quotes: it is your record of why the payment was made.
What does the payment look like on a timeline?
Illustrative example: a Brazilian importer pays a Texas supplier on a Monday morning. Times are invented to show the order of events, not promised performance, and no rates or fees are shown.
| When | Event | Who acts | Status or check |
|---|---|---|---|
| Mon 09:00 | Supplier invoice approved, bank details verified by phone | Importer finance | Invoice stored with the payment record |
| Mon 09:05 | Payout quote created to the supplier's US account, fees set to be added on top | Importer system | Quote locks rate and fees for 5 minutes |
| Mon 09:08 | Payin quote created in reais for the USDC amount needed | Importer system | Quote locks for 5 minutes |
| Mon 09:09 | Pix payin created, Pix code paid from the company bank app | Importer finance | Payin processing |
| Mon 09:14 | Pix deposit confirmed, USDC arrives in the wallet (Pix payins arrive in up to 5 minutes) | Provider | payin.complete webhook |
| Mon 09:20 | Payout executed | Importer system | processing, then on_hold for review |
| Mon to Tue | Compliance review of the USD payout | Provider | on_hold, then released |
| Wed (about 2 business days by ACH) | Dollars land in the supplier's account | Supplier bank | payout.complete webhook |
The two quotes are separate prices taken minutes apart. Run the payout quote first, so you know how much USDC you need, then fund that amount with the payin. A Mexican company follows the same order, with a SPEI payin that arrives in up to 10 minutes. Add a day if you choose ACH on a Friday, and expect a compliance review on any USD payout.
What is the flow, leg by leg?
Two legs, each with its own rail, speed and check.
| Leg | Payer | Rail | Currency | Speed (BlindPay docs) | Compliance step |
|---|---|---|---|---|---|
| 1a, Brazil in | Company | Pix | BRL | Payin up to 5 minutes | KYB on the company, FX purpose documented |
| 1b, Mexico in | Company | SPEI | MXN | Payin up to 10 minutes | KYB on the company, AML identification |
| 2a, US out, fast | Provider on the company's behalf | RTP | USD | Instant | Standard on-hold review, RTP-eligible routing number |
| 2b, US out, common | Provider | Wire | USD | About 1 business day | On-hold review, supplier details checked |
| 2c, US out, widest reach | Provider | ACH | USD | About 2 business days | On-hold review, supplier details checked |
| 2d, non-US supplier | Provider | SWIFT (POBO/COBO) | USD | About 2 business days, up to 5 in the network reference | Starts on_hold until documents are approved |
BlindPay runs both legs in one API, and for cross-border wires it runs SWIFT payments and collections on behalf of (POBO/COBO), with UETR tracking and MT103 confirmations. Wire and ACH payouts also need the beneficiary's routing number, account number, account type and address, plus the compliance fields in the bank accounts docs. A related flow, a US company paying Brazil and Mexico, is in paying suppliers in Brazil and Mexico from a US bank account.
What are Brazil's FX and reporting rules for this payment?
Brazil treats it as an FX operation, so the payment needs a documented purpose and an authorized provider.
The Central Bank of Brazil published Resolutions 519, 520 and 521 on 10 November 2025, and they took effect on 2 February 2026. Resolution BCB 521 brings international payments and transfers with virtual assets inside the foreign exchange rules.
- Document the purpose. The invoice or contract with the US supplier is the reason for the operation.
- Use an authorized provider. Ask whether it holds the right authorization, or is lawfully inside the transitional regime.
- Watch the wallet in the middle. Resolution BCB 591 has authorized institutions report transfers of 10,000 USD or more to or from a company-controlled wallet to COAF. Brazil's self-custody wallet rule explains the declaration.
The wider picture, including the later resolutions, is in Brazil's stablecoin rules for payout teams. For invoicing, see invoice in local currency, settle in USDC.
What is the Mexico AML context?
No stablecoin-specific law, strict anti-money laundering, and banks that stay out of virtual assets. As of November 2026:
- Banxico Circular 4/2019 lets banks and fintech institutions use virtual assets only in internal operations, with prior approval, so the company's bank sends pesos and the conversion happens at a provider.
- Exchanging virtual assets habitually and professionally is a "vulnerable activity" under the federal anti-money laundering law.
- A peso-stablecoin bill filed on 6 May 2026 was still in committee on 3 November 2026, per LatAm Rails.
The SPEI side is explained in USDC to MXN over SPEI.
What documents should you keep for each payment?
Eight items, stored under one payment reference.
- The supplier invoice or contract, with the amount in dollars.
- The supplier's legal name and US bank details: routing number, account number, account type, address.
- A NAICS industry code when the supplier is a business.
- The recipient relationship, set to
vendor_or_supplier. - Your company's KYB file with owners, kept current.
- Both quote IDs and the payout ID, so the Pix or SPEI payin ties to the payout.
- The wallet used between the legs, and its custody type.
- Webhook records for
payin.completeandpayout.complete, and any review notes.
On the wallet: BlindPay operates as a non-custodial payment processor for payout flows from customer-controlled wallets: you authorize the exact amount and BlindPay executes that single transaction. If a payout cannot be delivered after the stablecoins are collected, BlindPay refunds them to the quote's refund wallet, or to the sending wallet when none is set; on Pix and other non-USD local rails the refund is automatic, while USD payouts and payouts whose review times out are refunded after an operator review. Optional BlindPay-managed wallets (beta) are custodial when you choose that path.
Who pays the fees, and what do they depend on?
You pick through the quote. With cover_fees false, fees come out of the dollars the supplier receives, and with true they are added on top, so the supplier gets the full invoice.
BlindPay combines a monthly plan (platform access) with per-transaction fees that vary by rail and network and are disclosed only in the live quote before execute. BlindPay does not publish a static flat rate card; always cite the quote's fee breakdown rather than a fixed bps number. There is no setup fee and no monthly minimum, and development instances are always free. See stablecoin payout API pricing. The Federal Reserve's FEDS Note of 30 March 2026 describes why intermediaries add time, opacity and repeated checks to traditional cross-border payments.
What goes wrong, and what do you do?
- Quote expires. Quotes last 5 minutes. Re-quote and use an Idempotency-Key so a retry cannot create a duplicate.
- Payin not received. Check the payin status before paying again.
- Payout on hold. Holds can take up to 30 days, and a timed-out hold fails the payout. A failed or stuck payout is not refunded automatically in every case: contact support@blindpay.com.
- Wrong supplier details. A rejected transfer ends as
failedorrefunded. Verify bank details by a second channel before the first payment.
Test all of it on a development instance: payouts complete automatically, a request_amount of 66600 forces failed, and 77700 forces refunded.
Methodology and sources
External sources: Resolution BCB 521, Resolution BCB 591, Banxico Circular 4/2019, the Mexican anti-money laundering law, LatAm Rails, 3 November 2026, and the Federal Reserve FEDS Note, 30 March 2026. BlindPay facts come from the bank accounts, payouts, payout quotes, billing, idempotency and cut-off times docs. BlindPay publishes this article, and the timeline is illustrative.
What to do next
Talk to BlindPay about Latin America to US flows, or start by running one supplier invoice through a development instance with the payout quickstart and the payin quickstart, then compare the quotes with your bank's FX remittance.
This article is general information, not legal advice.
FAQ
More payments articles
See all payments articlesHow to collect payments from Latin America in stablecoins (Pix and SPEI)
How to collect payments from Brazil and Mexico in stablecoins: Pix to USDC, SPEI to USDC, plus TED, Transfers, PSE, and Bre-B payin rails.
From stablecoin to local bank: when to cash out over Pix, SPEI, ACH, SEPA, or SWIFT instead of using a card
When a stablecoin card is the wrong tool and a local bank payout fits: rent, payroll, invoices. Each rail compared, plus how a payout API flow works.
How importers and exporters collect cross-border payments with virtual USD accounts and stablecoins
A virtual USD account for exporters: overseas buyers pay by ACH, wire or SWIFT, the deposit becomes a stablecoin, and a local payout follows.