A double-decker sandwich swaps USDC for EURC on-chain, then cashes out in euros. How it works, what it costs per BIS Working Paper 1385, and when it fits.
A double-decker stablecoin sandwich moves money across borders with two stablecoins: dollars become USDC, USDC is swapped on-chain for EURC (a euro stablecoin), and EURC is redeemed for euros. The currency exchange happens on a blockchain. BIS Working Paper 1385 (October 2026) finds the on-chain rate near mid-market, but liquidity is thin and fiat access still needs intermediaries.
The single-layer version is the standard pattern: fiat in, one dollar stablecoin across, fiat out. What is a stablecoin sandwich? covers it. This page looks at the variant with a second stablecoin, using the cost data in BIS Working Paper 1385, summarized in what the BIS "competing rails" paper found.
Key takeaways
It replaces the off-chain FX step with an on-chain swap between two fiat-pegged stablecoins.
The BIS paper writes the flow as Fiat USD to USDC to EURC to Fiat EUR. In its worked example (Section 6.2.3):
EURC is Circle's euro stablecoin. Circle describes it as "backed 100% by euro" and "MiCA-compliant." For what MiCA requires of euro stablecoins, see MiCA stablecoin rules explained.
By a formula, and arbitrage keeps it close to the market.
Most DEXs use automated market makers (AMMs): pools holding two tokens, priced by the ratio of their reserves. Uniswap's documentation describes Uniswap as an automated market maker, "a set of smart contracts" that manages pools of two tokens and "updates prices based on pool state." In the constant-product model the BIS paper describes, a pool with x USDC and y EURC implies a EUR/USD price of y divided by x. Every trade changes the reserves and so the price. Arbitrageurs buy whichever side is cheap compared with traditional FX, which pulls the on-chain rate back toward the market, "subject to gas costs and liquidity depth."
That last clause is the catch. A small pool moves more per trade, so a large swap gets a worse average price. That is slippage.
Four things, per the BIS paper: the FX cost in the stablecoin-to-stablecoin rate, the DEX protocol fee, blockchain gas fees for each on-chain step, and fiat on- and off-ramp fees at both ends.
The paper's numbers:
The paper's conclusion is that even with a near-mid rate, "the accumulation of protocol fees, multiple gas payments, and fixed fiat withdrawal charges can generate a nontrivial all-in spread."
Different steps, different owners of the risk. The table compares three routes for sending dollars to a euro bank account.
| Route | Steps the sender runs | Where FX happens | Who holds the wallet | Main costs |
|---|---|---|---|---|
| Payout API, USDC to SEPA (BlindPay) | Request a quote, send USDC, execute | At the provider, locked in the quote | The sender's own wallet, or an optional managed wallet | Per-transaction fees disclosed in the quote |
| Single-layer sandwich via exchanges | Buy USDC, transfer to a second exchange, sell for EUR, withdraw | Centralized exchange order book | Exchange accounts at both ends | Trading fees, gas, fixed withdrawal fee |
| Double-decker sandwich via a DEX | Buy USDC, move to self-custody, swap to EURC, move to an off-ramp, redeem | DEX pool, on-chain | Self-custody wallet | Protocol fee, several gas fees, withdrawal fee |
The BIS paper's single-layer example used one exchange to buy USDC and another to sell it for euros, with a 1% trading fee, about $0.19 of Ethereum gas, and a €1 SEPA withdrawal fee. Its double-decker example swaps that order book for a pool. Neither removes the fiat edges.
Because almost all on-chain FX volume sits in one pair.
The paper reports that only the USD to EUR stablecoin pair shows meaningful DEX activity, averaging about $15 million a day. "Most non-USD stablecoin pairs have negligible trading volume on DEXs, limiting their practical relevance for cross-currency transfers at present." Centralized exchanges add about $185 million a day for USD stablecoins against the euro. Traditional FX turns over about $2.7 trillion a day in EUR-linked instruments.
So the double-decker route is mostly a euro story today. For a supplier in Brazil or Mexico, there is no deep on-chain BRL or MXN pool to swap into, and the conversion happens at the off-ramp. Our page on onchain liquidity vs off-ramp liquidity covers why a deep pool and a deep payout are different things.
No. It moves price discovery on-chain. It doesn't move fiat on-chain.
DEXs don't accept bank deposits, pay out to bank accounts, run KYC, or hold banking relationships, so the paper notes users still rely on centralized exchanges, crypto-focused banks, or third-party ramp providers at both ends. Its verdict: the double-decker sandwich "decentralizes the FX price discovery mechanism," but "centralized entities, such as CEXs, remain essential for fiat currency access."
There is also operational load. Self-custody means managing keys, holding native tokens for gas, and getting networks right. The BIS paper notes that sending tokens to an incompatible address or the wrong network can mean permanent loss. The Federal Reserve's March 2026 FEDS Note makes a related point from the other side: even with stablecoins, large banks may keep a role in holding foreign-currency stablecoin inventories and running compliance across jurisdictions.
In narrow cases. Use this checklist.
If the goal is simply to pay a euro invoice into a bank account, the off-ramp route has fewer steps and fewer places to make a mistake. How to off-ramp USDC to euros over SEPA walks through it, and the SEPA countries list shows where a payout can land.
BlindPay converts USDC to EUR at the off-ramp and pays out over SEPA to bank accounts across the SEPA zone. You request a payout quote for a specific bank account, and the quote locks the exchange rate and fees for 5 minutes and shows the exact euro amount the recipient receives (payout quotes). Whichever supported network you send USDC from, the SEPA crypto leg runs on Polygon, and the conversion to euros happens inside the payout (payment methods). SEPA payouts take about 1 to 2 business days. BlindPay combines a monthly plan with per-transaction fees that vary by rail and network, disclosed in the live quote before execute.
Take one euro payment you make often. Price it three ways in the same minute: a payout API quote for USDC to SEPA, an exchange-to-exchange route, and a USDC to EURC swap plus redemption. Count every fee and the number of steps your team runs, then pick the route with the most euros delivered per hour of work.
Always cheaper? No intermediaries? Recipient needs a wallet? 10 common claims about cross-border stablecoin payments, checked against the Fed and the BIS.
Seven places blockchain payments beat bank rails: contractor payroll, remittances, B2B suppliers, marketplaces, 24/7 treasury, bill pay, and PSP payouts.
The dates that turned stablecoins from a trading tool into cross-border payment rails: USDC, Pix, MiCA, the GENIUS Act, ISO 20022, and Visa settlement.