[{"data":1,"prerenderedAt":1159},["ShallowReactive",2],{"content-\u002Fresources\u002Fmore\u002Fbatch-stablecoin-payouts-live-quotes":3,"resources-category-batch-stablecoin-payouts-live-quotes":619},{"id":4,"title":5,"authors":6,"body":7,"categories":6,"category":568,"categoryType":6,"compare":6,"contributors":6,"date":569,"description":570,"extension":571,"faq":572,"howto":588,"isBlog":609,"isChangelog":609,"meta":610,"navigation":612,"path":613,"pillar":609,"products":6,"rawbody":614,"role":6,"seo":615,"seoTitle":616,"stem":617,"thumbnail":6,"updated":569,"__hash__":618},"content\u002Fresources\u002Fmore\u002Fbatch-stablecoin-payouts-live-quotes.md","How to run batch payouts with live quotes: one quote per payout, expiry, and rate drift",null,{"type":8,"value":9,"toc":556},"minimark",[10,14,17,23,51,56,63,70,79,83,86,165,168,172,175,181,198,206,210,213,256,264,268,274,282,350,369,372,376,379,403,406,491,504,508,511,526,544,548],[11,12,13],"p",{},"To run a batch of payouts with live quotes, treat each payout as its own quote-then-execute pair. A quote backs exactly one payout and expires after 5 minutes by default, so a batch of 120 recipients is 120 quotes, each executed right after it's created. Fund the wallet first, send an idempotency key per payout, and track each one to a terminal status.",[11,15,16],{},"The batch is a loop. What makes it production-grade is everything around the loop.",[11,18,19],{},[20,21,22],"strong",{},"Key takeaways",[24,25,26,35,38,41,48],"ul",{},[27,28,29,30,34],"li",{},"One ",[31,32,33],"code",{},"quote_id",", one payout. A second payout against the same quote fails.",[27,36,37],{},"Don't quote the whole batch up front. Quotes expire in 5 minutes by default; pipeline quote and execute per row.",[27,39,40],{},"Rows quoted later get later rates. Fund with a buffer for drift across the run.",[27,42,43,44,47],{},"An ",[31,45,46],{},"Idempotency-Key"," per payout turns a timeout retry into a replay instead of a double payment.",[27,49,50],{},"A batch is finished when every payout id has a terminal status, not when the loop ends.",[52,53,55],"h2",{"id":54},"why-cant-one-quote-cover-a-whole-batch","Why can't one quote cover a whole batch?",[11,57,58,59,62],{},"Because a quote is a price for one conversion to one bank account. It names one ",[31,60,61],{},"bank_account_id",", one amount, and one fee calculation, and it backs one payout.",[11,64,65,66,69],{},"That is a feature. Every recipient in the batch gets a firm number: the ",[31,67,68],{},"receiver_amount"," on their quote is what lands. A single blended rate for 120 people would make each recipient's amount an estimate until the batch finished.",[11,71,72,73,78],{},"It also means the batch is only as good as its slowest row. If row 87 sits in a queue for six minutes, its quote expires, and you re-quote it. Nothing executes at a stale rate. The ",[74,75,77],"a",{"href":76},"\u002Fresources\u002Fmore\u002Fonramp-offramp-liquidity-glossary","glossary"," defines quote window, re-quote, and binding quote if you need the vocabulary.",[52,80,82],{"id":81},"how-should-you-structure-a-batch-run","How should you structure a batch run?",[11,84,85],{},"Pipeline it: quote, authorize if needed, execute, next row. Three patterns show up in practice, and only one holds up at size.",[87,88,89,111],"table",{},[90,91,92],"thead",{},[93,94,95,99,102,105,108],"tr",{},[96,97,98],"th",{},"Pattern",[96,100,101],{},"How it works",[96,103,104],{},"Expiry risk",[96,106,107],{},"Rate exposure",[96,109,110],{},"When it fits",[112,113,114,132,148],"tbody",{},[93,115,116,120,123,126,129],{},[117,118,119],"td",{},"Quote and execute per row",[117,121,122],{},"Each row gets its own quote, executed within seconds",[117,124,125],{},"Low",[117,127,128],{},"Each row priced at its own moment",[117,130,131],{},"Any batch size. The default.",[93,133,134,137,140,142,145],{},[117,135,136],{},"Approve on an estimate, then quote per row",[117,138,139],{},"Finance approves totals from one indicative quote, with a tolerance; the run quotes and executes each row",[117,141,125],{},[117,143,144],{},"Bounded by the approved tolerance",[117,146,147],{},"Batches that need sign-off before money moves",[93,149,150,153,156,159,162],{},[117,151,152],{},"Quote everything, then execute everything",[117,154,155],{},"All quotes first, all payouts after",[117,157,158],{},"High once the batch passes a few minutes",[117,160,161],{},"Locked per row, but many will expire",[117,163,164],{},"Tiny batches only",[11,166,167],{},"The second pattern is how most payroll teams run. Someone approves \"about 97,800 USDC, plus or minus 1%\" in the morning. The run quotes each row live. If the total drifts past the tolerance, the run pauses and asks again.",[52,169,171],{"id":170},"how-much-usdc-should-you-fund-before-the-run","How much USDC should you fund before the run?",[11,173,174],{},"Enough for the total at current rates, plus a buffer for drift and fees. You won't know the exact total until the last row is quoted, because every row is priced at its own moment.",[11,176,177,180],{},[20,178,179],{},"Illustrative example."," A company pays 120 contractors in Mexico over SPEI, each a fixed $15,000.00 MXN, quoted on the receiver side. The numbers below are made up for the arithmetic, not BlindPay pricing.",[24,182,183,186,189,192,195],{},[27,184,185],{},"Batch total: 120 x 15,000 = $1,800,000.00 MXN.",[27,187,188],{},"Effective rate on the first quote: 18.4075 MXN per USDC.",[27,190,191],{},"USDC for the batch at that rate: 1,800,000 ÷ 18.4075 = 97,786.23 USDC.",[27,193,194],{},"Suppose the peso strengthens 0.3% during a long run, so the effective rate falls to 18.3523. Each row then needs 15,000 ÷ 18.3523 = 817.34 USDC instead of 814.89.",[27,196,197],{},"If every row priced at the later rate, the batch would need 1,800,000 ÷ 18.3523 = 98,080.47 USDC. That's 294.24 USDC more than the first estimate.",[11,199,200,201,205],{},"A 0.5% to 1% buffer covers a move like that. Anything left stays in your wallet. Short runs shrink the problem: the less time between the first and last quote, the less room for drift. For how big that float should be month to month, see ",[74,202,204],{"href":203},"\u002Fresources\u002Fmore\u002Fno-pre-funding-stablecoin-payouts","no pre-funding in a stablecoin API",".",[52,207,209],{"id":208},"how-do-you-authorize-funds-for-each-payout","How do you authorize funds for each payout?",[11,211,212],{},"It depends on where the USDC sits. The payout endpoint is the same either way; what changes is the step before it.",[24,214,215,241,250],{},[27,216,217,220,221,224,225,228,229,231,232,235,236,240],{},[20,218,219],{},"External EVM wallet."," Each quote returns a ",[31,222,223],{},"contract"," payload. You call ",[31,226,227],{},"approve"," on the token contract for that quote's exact amount, then execute with ",[31,230,33],{}," and ",[31,233,234],{},"sender_wallet_address",". That's one on-chain approval per row, so 120 rows means 120 approvals and their gas. The ",[74,237,239],{"href":238},"\u002Fdocs\u002Fpayout-evm","EVM payout guide"," has the full script.",[27,242,243,246,247,249],{},[20,244,245],{},"Managed wallet."," No client-side signing. You pass the wallet address as ",[31,248,234],{}," and execute. BlindPay-managed wallets are in beta and custodial, so this path trades the approval step for BlindPay holding the balance.",[27,251,252,255],{},[20,253,254],{},"Solana and Stellar."," Each has its own signing step per payout: a token delegation on Solana, an authorize-and-sign XDR on Stellar.",[11,257,258,259,263],{},"For large recurring batches, the per-row approval cost on EVM is worth pricing in. ",[74,260,262],{"href":261},"\u002Fresources\u002Fmore\u002Fwho-pays-gas-fees-stablecoin-payments","Who pays gas fees"," breaks it down by network.",[52,265,267],{"id":266},"how-do-you-make-retries-safe","How do you make retries safe?",[11,269,270,271,273],{},"Send an ",[31,272,46],{}," header on every payout call, one key per row, and resend the byte-identical body on retry. That's the whole defense against double payments when a request times out.",[11,275,276,277,281],{},"BlindPay's ",[74,278,280],{"href":279},"\u002Fdocs\u002Flearn\u002Fidempotency","idempotency rules"," are specific:",[87,283,284,294],{},[90,285,286],{},[93,287,288,291],{},[96,289,290],{},"Retry situation",[96,292,293],{},"Response",[112,295,296,308,322,339],{},[93,297,298,301],{},[117,299,300],{},"Same key, same body, original finished",[117,302,303,304,307],{},"Original response replayed with ",[31,305,306],{},"Idempotency-Replayed: true",". No second payout.",[93,309,310,313],{},[117,311,312],{},"Same key, different body",[117,314,315,318,319],{},[31,316,317],{},"422"," ",[31,320,321],{},"idempotency_key_payload_mismatch",[93,323,324,327],{},[117,325,326],{},"Same key, original still running",[117,328,329,318,332,335,336],{},[31,330,331],{},"409",[31,333,334],{},"idempotency_key_in_flight"," with ",[31,337,338],{},"Retry-After",[93,340,341,347],{},[117,342,343,344],{},"Original returned ",[31,345,346],{},"5xx",[117,348,349],{},"Key released, so the retry runs fresh",[11,351,352,353,356,357,363,364,368],{},"Two practical rules. Derive the key from the batch and row, for example ",[31,354,355],{},"batch-2026-10-04-row-087",", so a restarted job reuses it. And serialize the body once and keep the bytes: re-serializing JSON with a different key order counts as a different body. The IETF's ",[74,358,362],{"href":359,"rel":360},"https:\u002F\u002Fdatatracker.ietf.org\u002Fdoc\u002Fdraft-ietf-httpapi-idempotency-key-header\u002F",[361],"nofollow","Idempotency-Key header draft"," describes the same pattern across APIs, and the ",[74,365,367],{"href":366},"\u002Fresources\u002Fmore\u002Fstablecoin-api-idempotency-keys","idempotency keys explainer"," covers it in more depth.",[11,370,371],{},"If a row's quote expired before the retry, the retry should request a new quote first. A new quote means a new payout body, so give it a new key.",[52,373,375],{"id":374},"how-do-you-track-a-batch-to-the-end","How do you track a batch to the end?",[11,377,378],{},"By payout id, through webhooks. The loop ending tells you every request was sent, not that every peso landed.",[11,380,381,382,385,386,389,390,393,394,397,398,402],{},"BlindPay fires ",[31,383,384],{},"payout.new"," when a payout is created and its source funds are captured, ",[31,387,388],{},"payout.update"," on intermediate steps (including reaching ",[31,391,392],{},"failed","), and ",[31,395,396],{},"payout.complete"," when a payout is confirmed at the destination or refunded. The ",[74,399,401],{"href":400},"\u002Fdocs\u002Flearn\u002Fwebhooks-events","webhook events reference"," lists them.",[11,404,405],{},"Keep a row-level status table and close the batch only when every row is terminal:",[87,407,408,421],{},[90,409,410],{},[93,411,412,415,418],{},[96,413,414],{},"Row status",[96,416,417],{},"Means",[96,419,420],{},"Action",[112,422,423,440,453,466,478],{},[93,424,425,430,433],{},[117,426,427],{},[31,428,429],{},"quoted",[117,431,432],{},"Quote created, not executed",[117,434,435,436,439],{},"Execute before ",[31,437,438],{},"expires_at"," or re-quote",[93,441,442,447,450],{},[117,443,444],{},[31,445,446],{},"processing",[117,448,449],{},"Payout created",[117,451,452],{},"Wait for webhooks",[93,454,455,460,463],{},[117,456,457],{},[31,458,459],{},"completed",[117,461,462],{},"Funds landed",[117,464,465],{},"Mark paid",[93,467,468,472,475],{},[117,469,470],{},[31,471,392],{},[117,473,474],{},"Payout didn't complete",[117,476,477],{},"Fix the cause, requeue as a new row",[93,479,480,485,488],{},[117,481,482],{},[31,483,484],{},"refunded",[117,486,487],{},"Stablecoins returned instead of paid out",[117,489,490],{},"Check the bank details, requeue",[11,492,493,494,499,500,205],{},"On Pix and other non-USD local rails, a payout that can't be delivered after the stablecoins are collected is refunded automatically to the quote's refund wallet, or to the sending wallet when none is set. Recipients in Mexico can also check a SPEI transfer through Banco de México's ",[74,495,498],{"href":496,"rel":497},"https:\u002F\u002Fwww.banxico.org.mx\u002Fcep\u002F",[361],"CEP lookup",", which helps when a contractor asks where their money is. More on the states in ",[74,501,503],{"href":502},"\u002Fresources\u002Fmore\u002Fstablecoin-payout-statuses-explained","stablecoin payout statuses explained",[52,505,507],{"id":506},"what-should-you-test-before-the-first-real-batch","What should you test before the first real batch?",[11,509,510],{},"Run the whole loop on a development instance with test bank accounts and USDB, BlindPay's test stablecoin. Payouts there are free.",[11,512,513,514,517,518,520,521,525],{},"Test the unhappy paths on purpose: let one quote expire, retry one payout with the same idempotency key, and kill the job halfway and restart it. Development instances are capped at roughly 100 requests per minute, so pace a large test batch or you'll see ",[31,515,516],{},"429"," with a ",[31,519,338],{}," header. The ",[74,522,524],{"href":523},"\u002Fdocs\u002Flearn\u002Fsandbox-vs-production","sandbox vs production guide"," lists what else differs.",[11,527,528,529,534,535,539,540,205],{},"Since SPEI runs around the clock per ",[74,530,533],{"href":531,"rel":532},"https:\u002F\u002Fwww.banxico.org.mx\u002Fservices\u002Finterbanking-electronic-payme.html",[361],"Banco de México",", a Mexico batch doesn't have to wait for a business day. For a single exact-amount payout, start with ",[74,536,538],{"href":537},"\u002Fresources\u002Fmore\u002Fpay-exact-local-amount-receiver-side-quote","paying an exact BRL, MXN, or EUR amount",", and for marketplace-style runs see ",[74,541,543],{"href":542},"\u002Fresources\u002Fmore\u002Fmarketplace-stablecoin-payouts-latam","marketplace payouts in Latin America",[52,545,547],{"id":546},"what-to-do-next","What to do next",[11,549,550,551,555],{},"Take last month's payout file, pick ten rows, and run them through a development instance with the quote-and-execute loop, one idempotency key per row. Then read the ",[74,552,554],{"href":553},"\u002Fdocs\u002Fpayouts","payouts reference"," for the status lifecycle before you scale it to the full batch.",{"title":557,"searchDepth":558,"depth":558,"links":559},"",2,[560,561,562,563,564,565,566,567],{"id":54,"depth":558,"text":55},{"id":81,"depth":558,"text":82},{"id":170,"depth":558,"text":171},{"id":208,"depth":558,"text":209},{"id":266,"depth":558,"text":267},{"id":374,"depth":558,"text":375},{"id":506,"depth":558,"text":507},{"id":546,"depth":558,"text":547},"payments","2026-10-04","How to pay 100+ recipients from USDC with live quotes: quote and execute per payout, size the funding, handle expiry and retries, and track the batch.","md",[573,576,579,582,585],{"q":574,"a":575},"Can I use one quote for several payouts in a batch?","No. At BlindPay a quote_id backs exactly one payout, and a second payout against the same quote fails. A batch of 120 recipients needs 120 quotes. Each quote locks its own rate, fees, and receiver amount for its own window, which is what lets every recipient see a firm number.",{"q":577,"a":578},"Should I request every quote in a batch before executing any of them?","Only for very small batches. Payout quotes expire 5 minutes after creation by default, so a batch that quotes everything first and executes later will hit expired quotes. Pipeline it instead: quote one payout, execute it, then move to the next, or run a few of those pairs in parallel.",{"q":580,"a":581},"How do I avoid paying someone twice if a request times out mid-batch?","Send an Idempotency-Key header on every payout call and keep the exact request body for retries. At BlindPay, a retry with the same key and byte-identical body replays the original response instead of creating a second payout. A different body under the same key returns 422 idempotency_key_payload_mismatch. Keys are kept for 24 hours.",{"q":583,"a":584},"Why did the last payouts in my batch cost more USDC than the first ones?","Because each payout was quoted at a different moment. If you fix the local amount and the currency weakens against the dollar during the run, later quotes need slightly less USDC; if it strengthens, they need more. Over a long run that drift adds up, so fund the batch with a buffer and keep runs short.",{"q":586,"a":587},"How do I know when every payout in a batch has landed?","Track each payout id through webhooks. At BlindPay, payout.complete fires when a payout is confirmed at the destination or refunded, and payout.update fires on intermediate steps, including reaching failed. A batch is done when every payout id has a terminal status: completed, failed, or refunded.",{"name":589,"steps":590},"How to run a batch of stablecoin payouts with live quotes",[591,594,597,600,603,606],{"name":592,"text":593},"Validate the batch file","Check every row has an approved bank account, a positive amount in minor units, and the quote side you intend: receiver for fixed local amounts, sender for fixed USDC amounts.",{"name":595,"text":596},"Size and fund the source wallet","Estimate total USDC from one indicative quote, add a buffer for rate drift and fees, and fund the wallet before the run starts.",{"name":598,"text":599},"Quote and execute each payout as a pair","For each row, request a payout quote, authorize the quoted amount if the wallet needs it, and execute the payout with the quote_id before expires_at.",{"name":601,"text":602},"Retry safely","Send an Idempotency-Key per payout and reuse the same key and byte-identical body on retries. Re-quote any row whose quote expired.",{"name":604,"text":605},"Track every payout to a terminal status","Listen for payout.update and payout.complete webhooks and mark each row completed, failed, or refunded.",{"name":607,"text":608},"Close the batch","Reconcile quoted receiver amounts against the batch file, report the USDC actually spent, and requeue failed rows after fixing their cause.",false,{"author":611},"BlindPay Team",true,"\u002Fresources\u002Fmore\u002Fbatch-stablecoin-payouts-live-quotes","---\ntitle: \"How to run batch payouts with live quotes: one quote per payout, expiry, and rate drift\"\nseoTitle: \"Batch stablecoin payouts with live quotes: how to run them\"\ndescription: \"How to pay 100+ recipients from USDC with live quotes: quote and execute per payout, size the funding, handle expiry and retries, and track the batch.\"\ndate: \"2026-10-04\"\nupdated: \"2026-10-04\"\ncategory: \"payments\"\nauthor: \"BlindPay Team\"\nfaq:\n  - q: \"Can I use one quote for several payouts in a batch?\"\n    a: \"No. At BlindPay a quote_id backs exactly one payout, and a second payout against the same quote fails. A batch of 120 recipients needs 120 quotes. Each quote locks its own rate, fees, and receiver amount for its own window, which is what lets every recipient see a firm number.\"\n  - q: \"Should I request every quote in a batch before executing any of them?\"\n    a: \"Only for very small batches. Payout quotes expire 5 minutes after creation by default, so a batch that quotes everything first and executes later will hit expired quotes. Pipeline it instead: quote one payout, execute it, then move to the next, or run a few of those pairs in parallel.\"\n  - q: \"How do I avoid paying someone twice if a request times out mid-batch?\"\n    a: \"Send an Idempotency-Key header on every payout call and keep the exact request body for retries. At BlindPay, a retry with the same key and byte-identical body replays the original response instead of creating a second payout. A different body under the same key returns 422 idempotency_key_payload_mismatch. Keys are kept for 24 hours.\"\n  - q: \"Why did the last payouts in my batch cost more USDC than the first ones?\"\n    a: \"Because each payout was quoted at a different moment. If you fix the local amount and the currency weakens against the dollar during the run, later quotes need slightly less USDC; if it strengthens, they need more. Over a long run that drift adds up, so fund the batch with a buffer and keep runs short.\"\n  - q: \"How do I know when every payout in a batch has landed?\"\n    a: \"Track each payout id through webhooks. At BlindPay, payout.complete fires when a payout is confirmed at the destination or refunded, and payout.update fires on intermediate steps, including reaching failed. A batch is done when every payout id has a terminal status: completed, failed, or refunded.\"\nhowto:\n  name: \"How to run a batch of stablecoin payouts with live quotes\"\n  steps:\n    - name: \"Validate the batch file\"\n      text: \"Check every row has an approved bank account, a positive amount in minor units, and the quote side you intend: receiver for fixed local amounts, sender for fixed USDC amounts.\"\n    - name: \"Size and fund the source wallet\"\n      text: \"Estimate total USDC from one indicative quote, add a buffer for rate drift and fees, and fund the wallet before the run starts.\"\n    - name: \"Quote and execute each payout as a pair\"\n      text: \"For each row, request a payout quote, authorize the quoted amount if the wallet needs it, and execute the payout with the quote_id before expires_at.\"\n    - name: \"Retry safely\"\n      text: \"Send an Idempotency-Key per payout and reuse the same key and byte-identical body on retries. Re-quote any row whose quote expired.\"\n    - name: \"Track every payout to a terminal status\"\n      text: \"Listen for payout.update and payout.complete webhooks and mark each row completed, failed, or refunded.\"\n    - name: \"Close the batch\"\n      text: \"Reconcile quoted receiver amounts against the batch file, report the USDC actually spent, and requeue failed rows after fixing their cause.\"\n---\n\nTo run a batch of payouts with live quotes, treat each payout as its own quote-then-execute pair. A quote backs exactly one payout and expires after 5 minutes by default, so a batch of 120 recipients is 120 quotes, each executed right after it's created. Fund the wallet first, send an idempotency key per payout, and track each one to a terminal status.\n\nThe batch is a loop. What makes it production-grade is everything around the loop.\n\n**Key takeaways**\n\n- One `quote_id`, one payout. A second payout against the same quote fails.\n- Don't quote the whole batch up front. Quotes expire in 5 minutes by default; pipeline quote and execute per row.\n- Rows quoted later get later rates. Fund with a buffer for drift across the run.\n- An `Idempotency-Key` per payout turns a timeout retry into a replay instead of a double payment.\n- A batch is finished when every payout id has a terminal status, not when the loop ends.\n\n## Why can't one quote cover a whole batch?\n\nBecause a quote is a price for one conversion to one bank account. It names one `bank_account_id`, one amount, and one fee calculation, and it backs one payout.\n\nThat is a feature. Every recipient in the batch gets a firm number: the `receiver_amount` on their quote is what lands. A single blended rate for 120 people would make each recipient's amount an estimate until the batch finished.\n\nIt also means the batch is only as good as its slowest row. If row 87 sits in a queue for six minutes, its quote expires, and you re-quote it. Nothing executes at a stale rate. The [glossary](\u002Fresources\u002Fmore\u002Fonramp-offramp-liquidity-glossary) defines quote window, re-quote, and binding quote if you need the vocabulary.\n\n## How should you structure a batch run?\n\nPipeline it: quote, authorize if needed, execute, next row. Three patterns show up in practice, and only one holds up at size.\n\n| Pattern | How it works | Expiry risk | Rate exposure | When it fits |\n| --- | --- | --- | --- | --- |\n| Quote and execute per row | Each row gets its own quote, executed within seconds | Low | Each row priced at its own moment | Any batch size. The default. |\n| Approve on an estimate, then quote per row | Finance approves totals from one indicative quote, with a tolerance; the run quotes and executes each row | Low | Bounded by the approved tolerance | Batches that need sign-off before money moves |\n| Quote everything, then execute everything | All quotes first, all payouts after | High once the batch passes a few minutes | Locked per row, but many will expire | Tiny batches only |\n\nThe second pattern is how most payroll teams run. Someone approves \"about 97,800 USDC, plus or minus 1%\" in the morning. The run quotes each row live. If the total drifts past the tolerance, the run pauses and asks again.\n\n## How much USDC should you fund before the run?\n\nEnough for the total at current rates, plus a buffer for drift and fees. You won't know the exact total until the last row is quoted, because every row is priced at its own moment.\n\n**Illustrative example.** A company pays 120 contractors in Mexico over SPEI, each a fixed $15,000.00 MXN, quoted on the receiver side. The numbers below are made up for the arithmetic, not BlindPay pricing.\n\n- Batch total: 120 x 15,000 = $1,800,000.00 MXN.\n- Effective rate on the first quote: 18.4075 MXN per USDC.\n- USDC for the batch at that rate: 1,800,000 ÷ 18.4075 = 97,786.23 USDC.\n- Suppose the peso strengthens 0.3% during a long run, so the effective rate falls to 18.3523. Each row then needs 15,000 ÷ 18.3523 = 817.34 USDC instead of 814.89.\n- If every row priced at the later rate, the batch would need 1,800,000 ÷ 18.3523 = 98,080.47 USDC. That's 294.24 USDC more than the first estimate.\n\nA 0.5% to 1% buffer covers a move like that. Anything left stays in your wallet. Short runs shrink the problem: the less time between the first and last quote, the less room for drift. For how big that float should be month to month, see [no pre-funding in a stablecoin API](\u002Fresources\u002Fmore\u002Fno-pre-funding-stablecoin-payouts).\n\n## How do you authorize funds for each payout?\n\nIt depends on where the USDC sits. The payout endpoint is the same either way; what changes is the step before it.\n\n- **External EVM wallet.** Each quote returns a `contract` payload. You call `approve` on the token contract for that quote's exact amount, then execute with `quote_id` and `sender_wallet_address`. That's one on-chain approval per row, so 120 rows means 120 approvals and their gas. The [EVM payout guide](\u002Fdocs\u002Fpayout-evm) has the full script.\n- **Managed wallet.** No client-side signing. You pass the wallet address as `sender_wallet_address` and execute. BlindPay-managed wallets are in beta and custodial, so this path trades the approval step for BlindPay holding the balance.\n- **Solana and Stellar.** Each has its own signing step per payout: a token delegation on Solana, an authorize-and-sign XDR on Stellar.\n\nFor large recurring batches, the per-row approval cost on EVM is worth pricing in. [Who pays gas fees](\u002Fresources\u002Fmore\u002Fwho-pays-gas-fees-stablecoin-payments) breaks it down by network.\n\n## How do you make retries safe?\n\nSend an `Idempotency-Key` header on every payout call, one key per row, and resend the byte-identical body on retry. That's the whole defense against double payments when a request times out.\n\nBlindPay's [idempotency rules](\u002Fdocs\u002Flearn\u002Fidempotency) are specific:\n\n| Retry situation | Response |\n| --- | --- |\n| Same key, same body, original finished | Original response replayed with `Idempotency-Replayed: true`. No second payout. |\n| Same key, different body | `422` `idempotency_key_payload_mismatch` |\n| Same key, original still running | `409` `idempotency_key_in_flight` with `Retry-After` |\n| Original returned `5xx` | Key released, so the retry runs fresh |\n\nTwo practical rules. Derive the key from the batch and row, for example `batch-2026-10-04-row-087`, so a restarted job reuses it. And serialize the body once and keep the bytes: re-serializing JSON with a different key order counts as a different body. The IETF's [Idempotency-Key header draft](https:\u002F\u002Fdatatracker.ietf.org\u002Fdoc\u002Fdraft-ietf-httpapi-idempotency-key-header\u002F) describes the same pattern across APIs, and the [idempotency keys explainer](\u002Fresources\u002Fmore\u002Fstablecoin-api-idempotency-keys) covers it in more depth.\n\nIf a row's quote expired before the retry, the retry should request a new quote first. A new quote means a new payout body, so give it a new key.\n\n## How do you track a batch to the end?\n\nBy payout id, through webhooks. The loop ending tells you every request was sent, not that every peso landed.\n\nBlindPay fires `payout.new` when a payout is created and its source funds are captured, `payout.update` on intermediate steps (including reaching `failed`), and `payout.complete` when a payout is confirmed at the destination or refunded. The [webhook events reference](\u002Fdocs\u002Flearn\u002Fwebhooks-events) lists them.\n\nKeep a row-level status table and close the batch only when every row is terminal:\n\n| Row status | Means | Action |\n| --- | --- | --- |\n| `quoted` | Quote created, not executed | Execute before `expires_at` or re-quote |\n| `processing` | Payout created | Wait for webhooks |\n| `completed` | Funds landed | Mark paid |\n| `failed` | Payout didn't complete | Fix the cause, requeue as a new row |\n| `refunded` | Stablecoins returned instead of paid out | Check the bank details, requeue |\n\nOn Pix and other non-USD local rails, a payout that can't be delivered after the stablecoins are collected is refunded automatically to the quote's refund wallet, or to the sending wallet when none is set. Recipients in Mexico can also check a SPEI transfer through Banco de México's [CEP lookup](https:\u002F\u002Fwww.banxico.org.mx\u002Fcep\u002F), which helps when a contractor asks where their money is. More on the states in [stablecoin payout statuses explained](\u002Fresources\u002Fmore\u002Fstablecoin-payout-statuses-explained).\n\n## What should you test before the first real batch?\n\nRun the whole loop on a development instance with test bank accounts and USDB, BlindPay's test stablecoin. Payouts there are free.\n\nTest the unhappy paths on purpose: let one quote expire, retry one payout with the same idempotency key, and kill the job halfway and restart it. Development instances are capped at roughly 100 requests per minute, so pace a large test batch or you'll see `429` with a `Retry-After` header. The [sandbox vs production guide](\u002Fdocs\u002Flearn\u002Fsandbox-vs-production) lists what else differs.\n\nSince SPEI runs around the clock per [Banco de México](https:\u002F\u002Fwww.banxico.org.mx\u002Fservices\u002Finterbanking-electronic-payme.html), a Mexico batch doesn't have to wait for a business day. For a single exact-amount payout, start with [paying an exact BRL, MXN, or EUR amount](\u002Fresources\u002Fmore\u002Fpay-exact-local-amount-receiver-side-quote), and for marketplace-style runs see [marketplace payouts in Latin America](\u002Fresources\u002Fmore\u002Fmarketplace-stablecoin-payouts-latam).\n\n## What to do next\n\nTake last month's payout file, pick ten rows, and run them through a development instance with the quote-and-execute loop, one idempotency key per row. Then read the [payouts reference](\u002Fdocs\u002Fpayouts) for the status lifecycle before you scale it to the full batch.\n",{"title":5,"description":570},"Batch stablecoin payouts with live quotes: how to run them","resources\u002Fmore\u002Fbatch-stablecoin-payouts-live-quotes","LyUBQYbj9FK3aQbB_EvckesAjHfHuo_X5iRPqEZmtB4",[620,624,628,632,636,640,644,648,652,656,660,664,668,672,676,680,684,688,692,696,700,704,708,712,716,720,724,728,732,736,740,744,748,752,756,760,764,768,772,776,780,784,788,792,796,800,804,808,812,816,820,824,828,832,835,839,840,844,848,852,856,860,864,868,871,875,879,883,887,891,894,898,902,906,910,914,918,922,926,930,934,938,942,946,950,954,958,962,966,970,974,978,982,986,990,994,998,1002,1005,1009,1013,1017,1021,1025,1029,1033,1037,1041,1045,1049,1053,1057,1061,1065,1069,1073,1077,1081,1084,1088,1092,1096,1100,1104,1108,1112,1116,1120,1124,1128,1132,1136,1140,1144,1147,1151,1155],{"path":621,"title":622,"description":623},"\u002Fresources\u002Fmore\u002Fblockchain-payment-use-cases","7 real-world blockchain payment use cases: payroll, remittances, B2B, and more","Seven places blockchain payments beat bank rails: contractor payroll, remittances, B2B suppliers, marketplaces, 24\u002F7 treasury, bill pay, and PSP payouts.",{"path":625,"title":626,"description":627},"\u002Fresources\u002Fmore\u002Fagent-payment-protocols-compared","AP2 vs ACP vs x402: agent payment protocols compared","AP2, ACP, and x402 each verify that an AI agent had permission to spend. Here is what every protocol covers, who backs it, and the reconciliation gap none of them close.",{"path":629,"title":630,"description":631},"\u002Fresources\u002Fmore\u002Fbin-sponsor-vs-issuer-processor-vs-program-manager","BIN sponsor vs. issuer-processor vs. program manager: who does what in a card program","The three roles behind every card program, stablecoin cards included: what each one does, who carries liability, and what to ask a provider.",{"path":633,"title":634,"description":635},"\u002Fresources\u002Fmore\u002Fbest-real-time-cross-border-settlement-providers-2026","Best real-time cross-border settlement providers for fintechs in 2026: low fees compared","A 10-point checklist and a side-by-side of BlindPay, Wise Platform, Airwallex, Thunes, Bridge, and Circle for real-time, low-fee cross-border settlement.",{"path":637,"title":638,"description":639},"\u002Fresources\u002Fmore\u002Fbest-stablecoin-payment-platform-fintech-2026","Best stablecoin payment platforms for fintech in 2026: a US comparison","Seven stablecoin payment platforms compared for US fintechs in 2026: what makes an API production-ready, how each provider handles compliance, settlement speed against ACH, and how to run the evaluation.",{"path":641,"title":642,"description":643},"\u002Fresources\u002Fmore\u002Fbest-stablecoin-payment-providers-2026","Best stablecoin payment providers in 2026: how to choose","How to choose a stablecoin payment provider in 2026: the four provider types, a comparison of 10 options, and the questions that decide the fit.",{"path":645,"title":646,"description":647},"\u002Fresources\u002Fmore\u002Fwhat-are-blockchain-payments","Blockchain payments explained: how stablecoins move money without correspondent banks","Blockchain payments move a stablecoin on a public ledger instead of messages between banks. How they work, what they cost, and how they compare with SWIFT.",{"path":649,"title":650,"description":651},"\u002Fresources\u002Fmore\u002Fblockchain-payments-glossary","Blockchain payments glossary: 34 terms explained in plain English","Stablecoin, on-ramp, off-ramp, finality, gas, non-custodial, travel rule. The 34 terms of blockchain payments, each defined in one or two lines.",{"path":653,"title":654,"description":655},"\u002Fresources\u002Fmore\u002Fbridge-cards-and-blindpay-payouts","Bridge and BlindPay: stablecoin cards plus local-currency payouts in one stack","How a card program runs Bridge for stablecoin cards and wallets and BlindPay for bank funding and local payouts: architecture, flows, and who owns what.",{"path":657,"title":658,"description":659},"\u002Fresources\u002Fmore\u002Fbuild-vs-buy-stablecoin-payments","Build vs buy: should you build stablecoin payouts in-house or use an API?","Building stablecoin payouts in-house means wallets, liquidity, banking partners, licenses, and a compliance program. When building makes sense.",{"path":661,"title":662,"description":663},"\u002Fresources\u002Fmore\u002Fbuild-vs-buy-stablecoin-card-program","Build vs. buy: should you build your own stablecoin card program?","Scoring build, assemble, and buy options for a stablecoin card program on network membership, BIN sponsorship, processing, compliance, time, and cost.",{"path":665,"title":666,"description":667},"\u002Fresources\u002Fmore\u002Fcan-a-virtual-account-replace-a-bank-account","Can a virtual account replace a business bank account? What each one does for cross-border companies","Usually not. A virtual account collects and settles payments; a bank account runs payroll, taxes, and credit. A job-by-job guide for cross-border teams.",{"path":669,"title":670,"description":671},"\u002Fresources\u002Fmore\u002Flatam-payout-liquidity-partner-pix-spei","Choosing a liquidity partner for LatAm payouts: Pix, SPEI, and beyond","How to choose a liquidity partner for payouts into Latin America: how Pix and SPEI work, how a stablecoin liquidity layer replaces local bank accounts, and a checklist for coverage, pricing, and compliance.",{"path":673,"title":674,"description":675},"\u002Fresources\u002Fmore\u002Fstablecoin-payout-mistakes","Common stablecoin payout mistakes: wrong network, expired quotes, and bad bank details","The mistakes that make stablecoin payouts fail or stall: wrong network or token, expired quotes, deposits below minimums, bad bank details, and cut-offs.",{"path":677,"title":678,"description":679},"\u002Fresources\u002Fmore\u002Fcorrespondent-banking-vs-stablecoin-liquidity","Correspondent banking vs stablecoin liquidity: why pre-funding traps your capital","Correspondent banking keeps cross-border payouts liquid by parking cash in nostro accounts in every country. What that trapped capital costs a treasury team, and what stablecoin liquidity changes.",{"path":681,"title":682,"description":683},"\u002Fresources\u002Fmore\u002Fcost-per-delivered-dollar","Cost per delivered dollar: the real cost of a cross-border payout","Cost per delivered dollar compares what you send with what lands, valued at the market rate. The formula, three worked setups, and 8 hidden costs.",{"path":685,"title":686,"description":687},"\u002Fresources\u002Fmore\u002Fcrypto-payment-processor-for-businesses","Crypto payment processor for businesses: what to compare before you choose","Compare crypto payment processors on six criteria: settlement speed, stablecoins, compliance, dev effort, payout coverage, and pricing. Scorecard inside.",{"path":689,"title":690,"description":691},"\u002Fresources\u002Fmore\u002Fcustodial-vs-non-custodial-off-ramps","Custodial vs non-custodial off-ramps: who holds the money, and what happens if the provider fails","A custodial off-ramp holds your stablecoins; a non-custodial one pulls them only at payout. What changes in insolvency, de-banking, and failed payouts.",{"path":693,"title":694,"description":695},"\u002Fresources\u002Fmore\u002Fcustodial-vs-non-custodial-vs-mpc-wallets","Custodial vs non-custodial vs MPC wallets: how to choose","Custodial, non-custodial, and MPC wallets differ in who holds the keys. Compare control, recovery, risk, and regulation, with product examples for each.",{"path":697,"title":698,"description":699},"\u002Fresources\u002Fmore\u002Fstablecoin-payout-cut-off-times-weekends-holidays","Do stablecoin payouts work on weekends and holidays? Cut-offs and bank calendars by rail","The stablecoin leg runs 24\u002F7, and so do Pix, SPEI, and RTP. ACH, wire, SEPA, TED, and SWIFT wait for a business day. Cut-offs and calendars by rail.",{"path":701,"title":702,"description":703},"\u002Fresources\u002Fmore\u002Fstablecoin-card-balance-to-local-bank","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.",{"path":705,"title":706,"description":707},"\u002Fresources\u002Fmore\u002Fhidden-fees-international-wires-our-sha-ben","Hidden fees in international wires: OUR, SHA, BEN, and a 7-point quote audit","Why suppliers get short-paid on international wires: SWIFT charge codes, intermediary deductions, and FX markups. Plus a 7-step audit for any quote.",{"path":709,"title":710,"description":711},"\u002Fresources\u002Fmore\u002Fai-agents-live-fx-quotes-mcp","How AI agents get live FX quotes and pay out through MCP and Agent Skills","How an AI agent creates a live stablecoin quote, shows rate, fees, and expiry, waits for a human to confirm, and pays out through BlindPay's MCP server.",{"path":713,"title":714,"description":715},"\u002Fresources\u002Fmore\u002Fpay-suppliers-brazil-mexico-from-us-bank-account","How a US company pays suppliers in Brazil and Mexico from a US bank account","Three ways to pay suppliers in Brazil and Mexico from dollars in a US bank account: an international wire, a fintech transfer, or USD to Pix or SPEI.",{"path":717,"title":718,"description":719},"\u002Fresources\u002Fmore\u002Fstablecoin-cross-border-payments-savings","How businesses use stablecoins for cross-border payments (and where the savings come from)","Correspondent hops, FX markup, and pre-funding: what stablecoin settlement does to each cost of a cross-border payment, with a $50,000 example to Brazil.",{"path":721,"title":722,"description":723},"\u002Fresources\u002Fmore\u002Fhow-stablecoin-card-issuers-make-money","How do stablecoin card issuers make money? Interchange, FX, and program economics","Where the revenue in a stablecoin card program comes from: interchange, FX, fees, and rewards, with an illustrative unit-economics model and the caps.",{"path":725,"title":726,"description":727},"\u002Fresources\u002Fmore\u002Fhow-stablecoin-card-transactions-settle","How does a stablecoin card transaction work? Authorization, clearing, and settlement step by step","A $4.50 coffee and a $200 hotel hold, followed from tap to merchant payout: authorization, clearing, T+1 settlement, and how USDC becomes fiat at checkout.",{"path":729,"title":730,"description":731},"\u002Fresources\u002Fmore\u002Fhow-a-stablecoin-payment-works","How does a stablecoin payment move? From bank deposit to local payout, step by step","A stablecoin payment moves in legs: fiat collected, stablecoin settled, fiat paid out. What happens at each step, where delays hide, what recipients see.",{"path":733,"title":734,"description":735},"\u002Fresources\u002Fmore\u002Fcross-border-merchant-payments-without-pre-funding","How global merchants get paid across borders with stablecoins, no pre-funding required","Pre-funding means parking local currency in every market before money moves. Stablecoin virtual accounts remove it. A worked example across 4 countries.",{"path":737,"title":738,"description":739},"\u002Fresources\u002Fmore\u002Flive-quotes-volatile-currencies-latin-america","How live quotes handle volatile currencies: BRL, MXN, COP, and ARS","A live quote locks one payout's rate, not your budget. How BRL, MXN, COP, and ARS rates are set, and how to design payouts around moving currencies.",{"path":741,"title":742,"description":743},"\u002Fresources\u002Fmore\u002Fstablecoin-payout-settlement-times","How long does a stablecoin payout take? Settlement times by country and rail","Stablecoin payouts settle in minutes on Pix, SPEI, RTP, and Transfers 3.0, and in 1 to 5 business days on ACH, SEPA, and SWIFT. Full table by rail.",{"path":745,"title":746,"description":747},"\u002Fresources\u002Fmore\u002Fhow-much-stablecoin-float-for-payouts","How much USDC should you hold to fund payouts? Sizing a stablecoin float without pre-funding","No pre-funding still means holding some USDC. How to size one stablecoin float for every payout corridor: lead time, safety stock, and a worked example.",{"path":749,"title":750,"description":751},"\u002Fresources\u002Fmore\u002Fcross-border-payment-costs-2026","How much do cross-border payments cost in 2026? Fees by corridor and what counts as cheap","Sending $200 abroad costs 6.36% on average, per the World Bank. Here is where that money goes, how corridors differ, and what a cheap payment looks like.",{"path":753,"title":754,"description":755},"\u002Fresources\u002Fmore\u002Fcrypto-on-ramp-fees-explained","How much does a crypto on-ramp cost? Fees, spreads, and how to read a quote","A crypto on-ramp charges through the rate spread, a service fee, the payment rail, and sometimes the network. How each works, and how to read the quote.",{"path":757,"title":758,"description":759},"\u002Fresources\u002Fmore\u002Fstablecoin-off-ramp-fees-explained","How much does a stablecoin off-ramp cost? Fees per transaction vs a bank wire","What a stablecoin off-ramp costs per transaction: network fee, FX spread, percentage and flat fees, worked at $200, $2,000, and $20,000 vs a bank wire.",{"path":761,"title":762,"description":763},"\u002Fresources\u002Fmore\u002Fpartner-fees-markup-on-live-quotes","How platforms add their own margin to a live quote: partner fees explained","A partner fee is the markup a platform adds to a stablecoin quote. How to set percentage or flat fees, show them on the quote, and get paid each month.",{"path":765,"title":766,"description":767},"\u002Fresources\u002Fmore\u002Fhow-to-add-stablecoin-payments-to-your-wallet-integration","How to add stablecoin payments to your wallet integration","Connect the wallets you already run to bank deposits and local payouts: register addresses, open virtual accounts, quote, authorize, and track webhooks.",{"path":769,"title":770,"description":771},"\u002Fresources\u002Fmore\u002Fhow-to-calculate-fx-spread","How to calculate FX spread on an international payment (with worked examples)","FX spread % = (mid rate - offered rate) \u002F mid rate x 100. Here is how to get the mid rate, fix the quote direction, and price the spread in dollars.",{"path":773,"title":774,"description":775},"\u002Fresources\u002Fmore\u002Fhow-to-choose-a-stablecoin-card-issuing-provider","How to choose a stablecoin card issuing provider: an 8-point framework and a neutral look at Bridge, Rain, BVNK, and Gnosis Pay","An 8-point framework for choosing a stablecoin card issuing provider, a neutral look at Bridge, Rain, BVNK, and Gnosis Pay, and the payout layer beside it.",{"path":777,"title":778,"description":779},"\u002Fresources\u002Fmore\u002Fhow-to-choose-a-virtual-account-provider","How to choose a virtual account provider: a 12-point checklist for developers and finance teams","Twelve criteria for evaluating a virtual account API, from rails and naming to custody, webhooks, and pricing, plus red flags and a scorecard to copy.",{"path":781,"title":782,"description":783},"\u002Fresources\u002Fmore\u002Fhow-to-choose-on-off-ramp-provider","How to choose the best on\u002Foff ramp provider for your fintech app","Six criteria for evaluating a crypto on\u002Foff ramp provider: corridor coverage, live quotes, fiat settlement speed, licensing, API quality, and liquidity depth. Each with concrete tests to run, a comparison table, and a scoring framework.",{"path":785,"title":786,"description":787},"\u002Fresources\u002Fmore\u002Fhow-to-evaluate-payment-orchestration-platform","How to evaluate a payment orchestration platform for cross-border payments","Six criteria that decide whether an orchestration platform works for cross-border money: rail coverage, compliance per corridor, developer experience, settlement speed, FX transparency, and pricing.",{"path":789,"title":790,"description":791},"\u002Fresources\u002Fmore\u002Fstablecoin-api-30-day-evaluation-plan","How to evaluate a stablecoin API in 30 days: a week-by-week plan","A 30-day plan to evaluate a stablecoin API: shortlist, sandbox tests, compliance review, and a live pilot, plus where costs hide and a worked cost model.",{"path":793,"title":794,"description":795},"\u002Fresources\u002Fmore\u002Fonramp-offramp-liquidity-scorecard","How to evaluate an on\u002Foff-ramp provider's liquidity: a 10-point scorecard","Score any on\u002Foff-ramp provider's liquidity from 0 to 20: binding quotes, lock length, expiry, fees, depth, pre-funding, custody, and pricing.",{"path":797,"title":798,"description":799},"\u002Fresources\u002Fmore\u002Ffund-stablecoin-card-pix-spei","How to fund a stablecoin card with Pix or SPEI, and cash out what is left","The full top-up and cash-out loop for stablecoin cards in Brazil and Mexico: Pix and SPEI payins, where FX happens, timing, limits, and what to check.",{"path":801,"title":802,"description":803},"\u002Fresources\u002Fmore\u002Fhow-to-integrate-a-crypto-on-ramp-api","How to integrate a crypto on-ramp API: payin quotes, deposit instructions, and webhooks","The on-ramp API flow step by step: verify the customer, pick the wallet, quote, create the payin, show deposit instructions, and handle webhooks.",{"path":805,"title":806,"description":807},"\u002Fresources\u002Fmore\u002Fhow-to-issue-stablecoin-cards-api","How to issue stablecoin-funded cards through an API: a developer's guide","Build vs. buy for stablecoin card issuing, the objects a card issuing API must expose, a step-by-step integration flow, and where KYC and KYB sit in it.",{"path":809,"title":810,"description":811},"\u002Fresources\u002Fmore\u002Fhow-to-launch-a-stablecoin-card-program","How to launch a stablecoin card program: a 9-step plan and who does what","A 9-step plan to launch a stablecoin card program: market, program manager, sponsor bank and BIN, processor, custody, compliance, funding, and payouts.",{"path":813,"title":814,"description":815},"\u002Fresources\u002Fmore\u002Fhow-to-off-ramp-usdc-to-gbp-faster-payments","How to off-ramp USDC to GBP over UK Faster Payments: bank details, quotes, and timing","Turn USDC into pounds in a UK bank account over Faster Payments: sort code details, quotes in USDC or GBP, quote windows, timing, and a worked example.",{"path":817,"title":818,"description":819},"\u002Fresources\u002Fmore\u002Fhow-to-off-ramp-usdc-to-us-bank-account","How to off-ramp USDC to a US bank account: ACH, RTP, or wire","Cashing out USDC or USDT to a US bank account: when ACH, Same Day ACH, RTP, and wire pay out, the cut-offs in ET, the fields you need, and what delays it.",{"path":821,"title":822,"description":823},"\u002Fresources\u002Fmore\u002Fhow-to-off-ramp-usdc-to-euros-sepa","How to off-ramp USDC to euros over SEPA: networks, IBAN details, and timing","Converting USDC to EUR in a SEPA bank account: which networks work, the IBAN details you need, SEPA vs SEPA Instant timing, limits, and what MiCA changes.",{"path":825,"title":826,"description":827},"\u002Fresources\u002Fmore\u002Fhow-to-off-ramp-usdt-latin-america","How to off-ramp USDT to local currency in Latin America","Converting USDT to BRL, MXN, ARS, or COP: which networks work, the payout rail in each country, weekend timing, fees, and the documents a business needs.",{"path":829,"title":830,"description":831},"\u002Fresources\u002Fmore\u002Fhow-to-on-ramp-local-currency-latin-america","How to on-ramp BRL, MXN, ARS, and COP into stablecoins: Pix, SPEI, Transfers 3.0, and PSE","How Latin American bank payments become USDC or USDT: what each rail shows the payer, the payer data it needs, how fast it lands, and the traps by country.",{"path":537,"title":833,"description":834},"How to pay an exact BRL, MXN, or EUR amount from USDC: receiver-side quotes explained","Fix what the recipient gets, not what you send. How receiver-side quotes and cover_fees land exact amounts over Pix, SPEI, and SEPA, with worked examples.",{"path":836,"title":837,"description":838},"\u002Fresources\u002Fmore\u002Fhow-to-pay-invoices-with-stablecoins-api","How to pay invoices, boletos, and Pix codes with stablecoins through an API","Register the bill, quote it, pay it from USDC or USDT, and track two webhook streams. A developer guide to stablecoin bill pay, boleto gotchas included.",{"path":613,"title":5,"description":570},{"path":841,"title":842,"description":843},"\u002Fresources\u002Fmore\u002Fhow-to-send-usdc-to-bank-account-brazil","How to send USDC to a bank account in Brazil","Step-by-step: convert USDC to Brazilian reais and deliver them to a bank account over Pix using a stablecoin payout API. Quote, verify, send, settle in minutes.",{"path":845,"title":846,"description":847},"\u002Fresources\u002Fmore\u002Fhow-to-send-usdc-to-bank-account-mexico","How to send USDC to a bank account in Mexico: a step-by-step guide over SPEI","Send USDC to a Mexican bank account: verify the recipient, quote in pesos, fund from a wallet, and confirm on SPEI. Recipient data, statuses, and failures.",{"path":849,"title":850,"description":851},"\u002Fresources\u002Fmore\u002Fcross-border-quote-screen-fee-disclosure","How to show a cross-border payment quote to users: rate, fees, and expiry","What a cross-border quote screen must show: amount sent, rate, fees, amount received, expiry, and delivery date, plus the CFPB and EU disclosure rules.",{"path":853,"title":854,"description":855},"\u002Fresources\u002Fmore\u002Fhow-freelancers-spend-usdc","How to spend USDC as a freelancer: stablecoin card, exchange off-ramp, or local bank payout","Three ways to spend USDC as a freelancer: a stablecoin card, an exchange off-ramp, or a local payout over Pix, SPEI, or ACH, compared on speed and cost.",{"path":857,"title":858,"description":859},"\u002Fresources\u002Fmore\u002Fhow-to-test-virtual-accounts-sandbox","How to test a virtual accounts API integration before going live","The integration sequence for a virtual accounts API, what a sandbox simulates and what it can't, and a test plan with the statuses and webhooks to expect.",{"path":861,"title":862,"description":863},"\u002Fresources\u002Fmore\u002Ftest-offramp-liquidity-depth","How to test an off-ramp's liquidity depth before you commit: a quote-ladder protocol","Quote $500, $5,000, $50,000, and $250,000 at the same moment, three times a day, and compare the rate. The protocol, log table, and pass rule.",{"path":865,"title":866,"description":867},"\u002Fresources\u002Fmore\u002Fvirtual-account-reconciliation","How virtual accounts automate payment reconciliation (with a worked example)","Virtual accounts match each deposit to a customer by account number, not a free-text reference. A worked example with partial payments and micro-deposits.",{"path":366,"title":869,"description":870},"Idempotency keys in a stablecoin API: how to never send the same payout twice","A timeout on a payout call is the most common way to pay someone twice. How idempotency keys prevent it, what replays, what conflicts, and how to retry.",{"path":872,"title":873,"description":874},"\u002Fresources\u002Fmore\u002Findicative-rate-vs-binding-quote-api","Indicative rate vs binding quote: how to show a live price before the user commits","An indicative rate previews a price. A binding quote locks it. How to show a live price while the user types, then lock it before they pay.",{"path":876,"title":877,"description":878},"\u002Fresources\u002Fmore\u002Fhow-to-integrate-a-stablecoin-api","Integrating a stablecoin API: a developer's guide to cross-border payments with BlindPay","Step-by-step integration of a stablecoin API: authenticate, onboard a customer, create a virtual USD account, quote and send a cross-border payout, and handle signed webhooks. Endpoints, statuses, and SDKs for BlindPay.",{"path":880,"title":881,"description":882},"\u002Fresources\u002Fmore\u002Fjust-in-time-vs-prefunded-stablecoin-cards","Just-in-time vs prefunded stablecoin cards: which funding model is better?","Just-in-time vs prefunded stablecoin cards for users and program operators: when conversion happens, top-up fees, float, declines, and tax timing compared.",{"path":884,"title":885,"description":886},"\u002Fresources\u002Fmore\u002Flive-quote-vs-forward-contract-vs-fixed-rate","Live quote vs forward contract vs fixed rate: which FX tool fits a cross-border payout?","A live quote holds a rate for minutes, a forward locks one for a future date, a fixed rate holds a day. How each prices risk, and when treasury uses each.",{"path":888,"title":889,"description":890},"\u002Fresources\u002Fmore\u002Fliquidity-risk-global-payouts","Managing liquidity risk in global payouts: a practical guide for fintechs and PSPs","Liquidity risk in payouts is the chance funds aren't available at the right rate, in the right currency, when a payout settles. Its four sources and a six-step framework to manage them.",{"path":542,"title":892,"description":893},"Marketplace payouts in Latin America: stablecoin rails for sellers in Brazil, Mexico, Colombia, and Argentina","How marketplaces pay sellers, creators, and vendors across Latin America with stablecoin settlement: supported rails (Pix, SPEI, PSE, Argentine transfers), the end-to-end payout workflow, API integration, and what changes for speed, minimums, and FX cost.",{"path":895,"title":896,"description":897},"\u002Fresources\u002Fmore\u002Fnon-custodial-payments-explained","Non-custodial payments: what they are and why they reduce risk for businesses","A non-custodial payment provider moves your money without holding it between payments. Who controls the funds, who carries the risk, and what to ask.",{"path":899,"title":900,"description":901},"\u002Fresources\u002Fmore\u002Fon-ramp-widget-vs-api","On-ramp widget vs API: which integration fits your product?","Hosted on-ramp widget or API-first ramp? Compare who owns the UX, KYC, quotes, webhooks, branding, and compliance, plus a decision table and checklist.",{"path":903,"title":904,"description":905},"\u002Fresources\u002Fmore\u002Fon-ramp-or-off-ramp-which-does-your-product-need","On-ramp, off-ramp, or both? How to tell which stablecoin API your product needs","Match your use case to the direction money moves: on-ramp, off-ramp, or both. Covers payroll, remittance, marketplaces, treasury, and 10 questions to ask.",{"path":907,"title":908,"description":909},"\u002Fresources\u002Fmore\u002Fon-off-ramp-liquidity-live-quotes","On\u002Foff ramp liquidity with live quotes: how it works and why it matters","What on\u002Foff ramp liquidity with live quotes means for developers: live quote vs batch rate, the quote ID flow in an API, what happens on expiry, how liquidity depth changes spread by transaction size, rate windows and UX, and a checklist for evaluating a live quote API.",{"path":911,"title":912,"description":913},"\u002Fresources\u002Fmore\u002Fonchain-settlement-vs-bank-settlement","Onchain settlement vs bank settlement: RTGS, ACH, cards, and blockchain finality compared","How onchain settlement compares with Fedwire, Pix, ACH, and card settlement: settlement asset, hours, finality, reversibility, and where payout risk sits.",{"path":915,"title":916,"description":917},"\u002Fresources\u002Fmore\u002Fswift-pobo-vs-cobo-explained","POBO vs COBO: SWIFT payments and collections on behalf of, explained","POBO sends a SWIFT payment for a customer, COBO collects one for them. Whose name shows, how UETR tracking works, and where stablecoin settlement fits.",{"path":919,"title":920,"description":921},"\u002Fresources\u002Fmore\u002Fpay-contractors-stablecoin-cards-or-payouts","Paying contractors and teams with stablecoins: cards, expense cards, or local payouts?","How to pay a global team with stablecoins: compare stablecoin cards, wallet payments, and local bank payouts by country, amount, frequency, and cost.",{"path":923,"title":924,"description":925},"\u002Fresources\u002Fmore\u002Fpayment-orchestration-vs-payment-gateway","Payment orchestration vs payment gateway: what's the difference?","A gateway connects you to one processor. An orchestration platform connects to many rails and picks the best path per transaction. The table, the triggers, and a worked USD to BRL example.",{"path":927,"title":928,"description":929},"\u002Fresources\u002Fmore\u002Fpayout-quality-metrics-slippage-expiry-rate","Payout quality metrics: realized slippage, quote expiry rate, and re-quote delta","Five metrics for a quote-based payout flow: realized slippage, expiry rate, re-quote delta, delivery success, and time to settle, with formulas and a log.",{"path":931,"title":932,"description":933},"\u002Fresources\u002Fmore\u002Fpix-vs-spei","Pix vs SPEI: how Brazil's and Mexico's instant payment rails compare","Pix vs SPEI side by side: who runs each rail, how recipients are identified, hours, settlement, returns, and proof of payment for stablecoin payouts.",{"path":935,"title":936,"description":937},"\u002Fresources\u002Fmore\u002Fhandle-expired-quotes-typescript-python","Quote-then-execute in TypeScript and Python: how to handle expired quotes and re-quotes","TypeScript and Python code for a stablecoin payout API: read expires_at, approve, execute with an idempotency key, and re-quote on QUOTES_EXPIRED.",{"path":939,"title":940,"description":941},"\u002Fresources\u002Fmore\u002Fstablecoin-api-rfp-template","Stablecoin API RFP template: sections, scoring, and a vendor scorecard","How to write an RFP for a stablecoin API: the eight sections to include, pass or fail gates, 1 to 3 weighted scoring, a copyable scorecard, and a timeline.",{"path":943,"title":944,"description":945},"\u002Fresources\u002Fmore\u002Fstablecoin-api-openapi-sdks","Stablecoin API SDKs: how one OpenAPI spec keeps five languages in sync","BlindPay's stablecoin API is described by one OpenAPI 3.1 spec that drives validation, docs, SDKs for Node, Python, Go, PHP, and Swift, and the MCP server.",{"path":947,"title":948,"description":949},"\u002Fresources\u002Fmore\u002Fstablecoin-api-sla-settlement-finality","Stablecoin API SLAs and settlement finality explained","Stablecoin API uptime numbers cluster near 99.9% for a reason: most providers measure API acceptance instead of the point where money becomes final and spendable.",{"path":951,"title":952,"description":953},"\u002Fresources\u002Fmore\u002Fstablecoin-api-objects-explained","Stablecoin API objects explained: customers, bank accounts, wallets, quotes, payouts, and webhooks","The core objects behind a stablecoin API, how they relate, which IDs to store in your ledger, and 8 data-model mistakes that break payout integrations.",{"path":955,"title":956,"description":957},"\u002Fresources\u002Fmore\u002Fstablecoin-api-quotes-explained","Stablecoin API quotes explained: expiry, fee direction, and minor units","A stablecoin API quote locks the rate, fees, and amounts for a few minutes. How expiry works, which side pays the fee, and the field that flips meaning.",{"path":959,"title":960,"description":961},"\u002Fresources\u002Fmore\u002Fstablecoin-api-sandbox-vs-production","Stablecoin API sandbox vs production: what testing misses","Most stablecoin API sandboxes pass every integration test and still leave a team unprepared for production, because webhook delivery and idempotent retries are exactly what sandboxes fake or skip.",{"path":963,"title":964,"description":965},"\u002Fresources\u002Fmore\u002Fstablecoin-api-webhooks-reconciliation","Stablecoin API webhooks: signature checks, duplicate events, and reconciliation","How to handle stablecoin API webhooks in production: verify signatures on raw bytes, dedupe retries, never regress a final status, reconcile daily.",{"path":967,"title":968,"description":969},"\u002Fresources\u002Fmore\u002Fstablecoin-fx-slippage-live-quotes","Stablecoin FX slippage: how live quotes turn the quoted rate into the rate you get","FX slippage is the gap between the rate a stablecoin on-ramp or off-ramp shows and the rate that settles. Why quote freshness is a liquidity signal, and how to check a quote-then-execute flow.",{"path":971,"title":972,"description":973},"\u002Fresources\u002Fmore\u002Fstablecoin-card-fees-explained","Stablecoin card fees explained: spread, FX markup, ATM, and hidden costs","How to calculate the real cost of a stablecoin card: spread, FX markup, top-up, ATM, and inactivity fees, with a worked $1,500 example and a checklist.",{"path":975,"title":976,"description":977},"\u002Fresources\u002Fmore\u002Fstablecoin-card-issuing-platforms-compared","Stablecoin card issuing platforms compared: Bridge, Rain, Stripe Issuing, and where BlindPay fits","Bridge, Rain, and Stripe Issuing with Bridge compared layer by layer from their own pages, plus the funding and payout layer BlindPay runs around a card.",{"path":979,"title":980,"description":981},"\u002Fresources\u002Fmore\u002Fstablecoin-card-vs-pix-spei-payouts","Stablecoin card or Pix and SPEI payout? When each one wins in Brazil and Mexico","When a stablecoin card fits in Brazil and Mexico, when a Pix or SPEI payout wins, and how to combine both for spending, rent, payroll, and suppliers.",{"path":983,"title":984,"description":985},"\u002Fresources\u002Fmore\u002Fstablecoin-card-program-architecture","Stablecoin card program architecture: from bank deposit to card spend to local payout","A reference architecture for a stablecoin card program: KYC, bank deposit, conversion, wallet, JIT funding, network settlement, and local-currency payout.",{"path":987,"title":988,"description":989},"\u002Fresources\u002Fmore\u002Fstablecoin-cards-latin-america","Stablecoin cards in Latin America: how they work in Brazil, Mexico, Argentina, and Colombia","How USD stablecoin cards work in Brazil, Mexico, Argentina, and Colombia: local card and crypto rules, costs at the point of sale, and when a Pix or SPEI payout fits better.",{"path":991,"title":992,"description":993},"\u002Fresources\u002Fmore\u002Fstablecoin-liquidity-provider-vs-fx-desk","Stablecoin liquidity providers vs traditional FX desks: what finance teams should know","A bank FX desk prices cross-border payouts by relationship. A stablecoin liquidity provider prices them by API. How the two compare on cost, speed, minimums, coverage, and compliance.",{"path":995,"title":996,"description":997},"\u002Fresources\u002Fmore\u002Fstablecoin-payment-fees-vs-card-processing-fees","Stablecoin payment fees vs credit card processing fees: what merchants actually pay","Cards cost merchants 1.5% to 3.5% plus cross-border, FX, and chargeback fees. Stablecoin payments cost cents on-chain plus a sub-percent conversion spread.",{"path":999,"title":1000,"description":1001},"\u002Fresources\u002Fmore\u002Fstablecoin-payments-guide","Stablecoin payments explained: a guide for businesses","Stablecoin payments move dollar-pegged tokens between parties and settle in minutes, 24\u002F7. How they work, what they cost, and how businesses accept and send them.",{"path":502,"title":1003,"description":1004},"Stablecoin payout statuses explained: processing, on hold, completed, failed, and refunded","What each stablecoin payout status means, which are final, why an on-chain confirmation isn't a completed payout, and how to test every failure.",{"path":1006,"title":1007,"description":1008},"\u002Fresources\u002Fmore\u002Fstablecoin-payroll-latam-contractors","Stablecoin payroll for LATAM contractors: how it actually works in 2026","How US companies pay contractors in Argentina, Brazil, Mexico, and Colombia with stablecoins in 2026: USDC vs USDT, the step-by-step payout flow, US tax reporting, a platform comparison, and how to start.",{"path":1010,"title":1011,"description":1012},"\u002Fresources\u002Fmore\u002Fstablecoin-settlement-for-merchants","Stablecoin settlement explained: how merchants get paid faster than card networks","Stablecoin payments settle in seconds to minutes, final and 24\u002F7. Cards take 1 to 3 business days and wires up to 5. How it works and how to cash out.",{"path":1014,"title":1015,"description":1016},"\u002Fresources\u002Fmore\u002Fstablecoin-virtual-accounts-explained","Stablecoin virtual accounts explained: from bank transfer to wallet balance","A stablecoin virtual account is a bank account in your customer's name whose deposits convert to USDC or USDT. How approval, deposits, and fees work.",{"path":1018,"title":1019,"description":1020},"\u002Fresources\u002Fmore\u002Fstablecoin-virtual-cards-cross-border-payouts","Stablecoin-funded virtual cards vs. traditional virtual cards for cross-border payouts","Stablecoin-funded vs. bank-funded virtual cards for paying contractors and vendors abroad: funding speed, pre-funding, FX cost, settlement finality, and a Brazil walkthrough.",{"path":1022,"title":1023,"description":1024},"\u002Fresources\u002Fmore\u002Fstablecoins-local-rails-latin-america","Stablecoins plus local rails: how cross-border payments actually land in Latin America","A stablecoin crosses the border in seconds, but the payment lands over Pix, SPEI, or another local rail. How that last mile works in Brazil and Mexico.",{"path":1026,"title":1027,"description":1028},"\u002Fresources\u002Fmore\u002Fstablecoin-vs-swift-b2b-payments","Stablecoins vs SWIFT for B2B cross-border payments: a real comparison","Where SWIFT wires still win, where stablecoin settlement wins, and how to compare the two on cost, speed, traceability, and failure modes for business payments in 2026.",{"path":1030,"title":1031,"description":1032},"\u002Fresources\u002Fmore\u002Fswift-instant-cross-border-scheme-vs-stablecoins","Swift's new payments scheme and blockchain ledger vs stablecoins: what changes in 2026","Swift launched a retail payments scheme in June 2026 and a blockchain ledger pilot in July. What each one changes, and how they compare with stablecoins.",{"path":1034,"title":1035,"description":1036},"\u002Fresources\u002Fmore\u002Fusdc-to-ars-routes-2026","USDC to ARS in 2026: routes, fees, and rules compared","Four ways to convert USDC to Argentine pesos in 2026: stablecoin payout APIs, local exchanges, P2P, and global exchanges with Transfers 3.0. Fees, speed, KYC, and Argentina's PSAV rules compared.",{"path":1038,"title":1039,"description":1040},"\u002Fresources\u002Fmore\u002Fusdc-to-brl-routes-2026","USDC to BRL in 2026: routes, fees, and rules compared","Four ways to convert USDC to Brazilian reais in 2026: stablecoin payout APIs, local exchanges, P2P, and global exchanges with Pix. Fees, speed, KYC, and Brazil's VASP rules compared.",{"path":1042,"title":1043,"description":1044},"\u002Fresources\u002Fmore\u002Fusdc-to-cop-routes-2026","USDC to COP in 2026: routes, fees, and rules compared","Four ways to convert USDC to Colombian pesos in 2026: stablecoin payout APIs, local exchanges, P2P, and global exchanges with PSE. Fees, speed, KYC, and Colombia's VASP rules compared.",{"path":1046,"title":1047,"description":1048},"\u002Fresources\u002Fmore\u002Fusdc-to-mxn-routes-2026","USDC to MXN in 2026: routes, fees, and rules compared","Four ways to convert USDC to Mexican pesos in 2026: stablecoin payout APIs, local exchanges, P2P, and global exchanges with SPEI. Fees, speed, KYC, and Mexico's rules compared.",{"path":1050,"title":1051,"description":1052},"\u002Fresources\u002Fmore\u002Fstablecoin-card-for-travel","Using a stablecoin card abroad: FX rates, markups, ATM fees, and when a normal debit card is cheaper","How a stablecoin card prices purchases abroad: network FX rates, issuer markups, currency conversion, ATM fees, and when a fintech debit card costs less.",{"path":1054,"title":1055,"description":1056},"\u002Fresources\u002Fmore\u002Fvirtual-account-deposit-not-received","Virtual account deposit not received? Why deposits get delayed, held, or returned","Why a virtual account deposit is late, on hold, or returned: arrival windows, payin statuses, RFIs, wrong rails, and how to trace a wire or SWIFT payment.",{"path":1058,"title":1059,"description":1060},"\u002Fresources\u002Fmore\u002Fvirtual-account-vs-virtual-iban","Virtual account vs virtual IBAN vs real bank account: what's the difference?","A real account holds funds for one holder. A virtual account routes deposits into a master account. A virtual IBAN is the IBAN version. When to use each.",{"path":1062,"title":1063,"description":1064},"\u002Fresources\u002Fmore\u002Fvirtual-account-vs-wallet-address-vs-payment-link","Virtual account vs wallet address vs payment link: how to collect in stablecoins","Three ways to collect money that ends in stablecoins: a virtual account, a deposit wallet address, or a payment link. Compare rails, refunds, KYC, and fit.",{"path":1066,"title":1067,"description":1068},"\u002Fresources\u002Fmore\u002Fvirtual-accounts-cross-border-payments","Virtual accounts for cross-border payments: use cases, payment rails, and costs","How virtual accounts let payers abroad pay a local-style account, which rails collect and pay out, what drives the cost, and five questions to ask.",{"path":1070,"title":1071,"description":1072},"\u002Fresources\u002Fmore\u002Fvirtual-account-vs-one-time-deposit-instructions","Virtual accounts vs one-time deposit instructions: how to collect bank transfers as stablecoins","One-time deposit instructions suit occasional payers and local rails. Virtual accounts suit repeat US payers. How each matches deposits and when to switch.",{"path":1074,"title":1075,"description":1076},"\u002Fresources\u002Fmore\u002Fnostro-vostro-accounts-explained","What are nostro and vostro accounts? And why they force pre-funding","A nostro account is a bank's account at a foreign bank, in that bank's currency. A vostro is the same account seen from the other side. Why both trap cash.",{"path":1078,"title":1079,"description":1080},"\u002Fresources\u002Fmore\u002Fpix-key-cpf-clabe-payout-details","What details do you need to pay someone in Brazil or Mexico? Pix keys, CPF, and CLABE","What a payout to Brazil or Mexico needs from the recipient: Pix key types, CPF and CNPJ formats, the 18-digit CLABE, and the checks that stop a bad payout.",{"path":203,"title":1082,"description":1083},"What does \"no pre-funding\" mean in a stablecoin API?","No pre-funding means each payout is funded when you send it, not from a balance parked in advance. The three funding models, the math, and what to ask.",{"path":1085,"title":1086,"description":1087},"\u002Fresources\u002Fmore\u002Fherstatt-risk-fx-settlement-risk","What is Herstatt risk? FX settlement risk, PvP, and what real-time settlement changes","Herstatt risk is paying your side of an FX trade and never getting the other. What happened in 1974, how PvP removes it, and where it remains.",{"path":1089,"title":1090,"description":1091},"\u002Fresources\u002Fmore\u002Fwhat-is-a-crypto-on-ramp-and-off-ramp","What is a crypto on-ramp and off-ramp? A guide for fintech builders","A crypto on-ramp converts fiat into stablecoins or crypto; an off-ramp converts them back into fiat in a bank account. How each works step by step, how they differ, which payment methods on-ramps support, and who they are built for.",{"path":1093,"title":1094,"description":1095},"\u002Fresources\u002Fmore\u002Fwhat-is-a-liquidity-market-cross-border-payments","What is a liquidity market in cross-border payments? And why stablecoin liquidity is changing it","A liquidity market in cross-border payments is where the currency to settle a transfer gets sourced. How correspondent banks pre-fund it, and how stablecoin liquidity changes the model.",{"path":1097,"title":1098,"description":1099},"\u002Fresources\u002Fmore\u002Fwhat-is-a-market-maker-stablecoin-payments","What is a market maker in stablecoin payments? How they set the rate on your quote","A market maker quotes a buy and a sell price and earns the gap. Who they are in stablecoin payments, how they shape your quote, and what to ask.",{"path":1101,"title":1102,"description":1103},"\u002Fresources\u002Fmore\u002Fwhat-is-a-stablecoin-offramp","What is a stablecoin off-ramp? How crypto becomes cash","A stablecoin off-ramp converts stablecoins like USDC or USDT back into fiat currency in a bank account. How the conversion works and who regulates it.",{"path":1105,"title":1106,"description":1107},"\u002Fresources\u002Fmore\u002Fwhat-is-a-virtual-account","What is a virtual account? A plain-English guide for fintech teams","A virtual account is a unique set of bank details that routes incoming payments to one customer or purpose. How it works, who uses it, and where it fits.",{"path":1109,"title":1110,"description":1111},"\u002Fresources\u002Fmore\u002Fwhat-is-payment-orchestration","What is payment orchestration? The routing layer, explained","Payment orchestration is the routing layer between your app and every processor, bank, and rail you use. The five layers, how stablecoin settlement fits, and how it differs from a gateway.",{"path":1113,"title":1114,"description":1115},"\u002Fresources\u002Fmore\u002Fprefunding-and-collateral-in-card-issuing","What is prefunding in card issuing, and how do stablecoins reduce it?","Why card programs park cash before anyone spends, how weekends and holidays inflate the buffer, and how daily stablecoin settlement shrinks it.",{"path":1117,"title":1118,"description":1119},"\u002Fresources\u002Fmore\u002Fwhat-is-real-time-cross-border-settlement","What is real-time cross-border settlement? A 2026 guide","Real-time cross-border settlement means the recipient can use the money minutes after you send it. Which rails do it, what it costs, and where it stops.",{"path":1121,"title":1122,"description":1123},"\u002Fresources\u002Fmore\u002Fstablecoin-payments-provider-due-diligence","What to ask a stablecoin payments provider: 30 due diligence questions","The questions to ask a stablecoin payments vendor before you sign: licensing, custody, pricing, rails, compliance, failure handling, security, and exit.",{"path":1125,"title":1126,"description":1127},"\u002Fresources\u002Fmore\u002Fwhen-not-to-use-blockchain-payments","When not to use blockchain payments: 7 cases where a bank rail wins","Blockchain payments beat wires on many corridors, not all of them. Seven cases where a domestic rail, a card, or a plain wire is still the better choice.",{"path":1129,"title":1130,"description":1131},"\u002Fresources\u002Fmore\u002Fwhere-is-the-exchange-rate-set-onramp-offramp","Where does the exchange rate get fixed in an on-ramp and off-ramp? A step-by-step map","A USD on-ramp and a USDC to BRL Pix off-ramp, step by step: who does what, where the exchange rate is locked, where fees apply, and what expiry changes.",{"path":1133,"title":1134,"description":1135},"\u002Fresources\u002Fmore\u002Fhow-to-track-a-crypto-off-ramp-payout","Where is my off-ramp payout? How to track it rail by rail, and what to tell the recipient","Track an off-ramp payout from transaction hash to bank: the reference each rail gives you (Pix E2E ID, SPEI key, ACH trace, UETR) and status copy.",{"path":1137,"title":1138,"description":1139},"\u002Fresources\u002Fmore\u002Finstant-payment-systems-by-country","Which countries have instant payment systems? A 2026 reference table","Pix, SPEI, RTP, FedNow, SEPA Instant, Faster Payments, UPI, Bre-B, and more: who runs each instant payment system, when it launched, its hours, and limits.",{"path":1141,"title":1142,"description":1143},"\u002Fresources\u002Fmore\u002Fwho-carries-fx-risk-stablecoin-payout","Who carries FX risk in a stablecoin payout? A step-by-step map, and why quotes expire","You carry FX risk until you lock a quote, the provider carries it inside the window, and it comes back to you on a refund. Step-by-step map and math.",{"path":261,"title":1145,"description":1146},"Who pays gas fees in stablecoin payments?","Who pays network fees in each stablecoin payment flow, how gas works on Ethereum, Solana, Tron, Stellar, and Arc, and how to compare it across providers.",{"path":1148,"title":1149,"description":1150},"\u002Fresources\u002Fmore\u002Fwhy-are-cross-border-payments-slow","Why are cross-border payments slow? Where the days go in an international wire","Most SWIFT payments reach the destination bank within an hour. The days go to cut-offs, correspondent hops, compliance checks, and local crediting.",{"path":1152,"title":1153,"description":1154},"\u002Fresources\u002Fmore\u002Fwhy-crypto-on-ramp-deposits-fail","Why crypto on-ramp deposits fail: missing references, late transfers, holds, and refunds","Most failed on-ramps fail on the fiat side: a missing reference, the wrong payer, a late transfer, a hold. What happens to the money in each case.",{"path":1156,"title":1157,"description":1158},"\u002Fresources\u002Fmore\u002Fwhy-google-rate-differs-from-quote","Why is the rate on Google different from my off-ramp quote?","Google shows a delayed mid-market reference. An off-ramp quote is a price you can execute. Why the two differ, and how to measure the gap in bps.",1792077643058]