[{"data":1,"prerenderedAt":182},["ShallowReactive",2],{"content-\u002Fprompts\u002Fintegrate-stablecoin-payouts":3,"prompts-category-integrations":116},{"id":4,"title":5,"author":6,"body":7,"categories":6,"category":99,"categoryType":6,"date":100,"description":101,"extension":102,"faq":6,"howto":6,"isBlog":103,"isChangelog":103,"meta":104,"navigation":105,"path":106,"pillar":103,"products":107,"rawbody":112,"seo":113,"stem":114,"thumbnail":6,"updated":6,"__hash__":115},"content\u002Fprompts\u002Fintegrate-stablecoin-payouts.md","Integrate stablecoin payouts end to end",null,{"type":8,"value":9,"toc":93},"minimark",[10,14,19,30,34,58,62],[11,12,13],"p",{},"Paste this prompt into Claude, Cursor, or any coding agent to scaffold a production-grade payout integration against the BlindPay API.",[15,16,18],"h2",{"id":17},"prompt","Prompt",[20,21,27],"pre",{"className":22,"code":24,"language":25,"meta":26},[23],"language-text","You are integrating BlindPay stablecoin payouts (USDC\u002FUSDT to local fiat) into my application.\n\nBefore writing code, read these sources and follow them over any prior knowledge:\n- https:\u002F\u002Fblindpay.com\u002Fdocs\u002Fllms.txt (docs index; read the payout quickstart, quotes, bank accounts, and webhooks pages)\n- The OpenAPI spec: curl https:\u002F\u002Fapi.blindpay.com\u002Fdoc\n\nBuild the full payout flow:\n1. Terms of service acceptance (POST \u002Fv1\u002Fe\u002Finstances\u002F{instance_id}\u002Ftos), then create a customer (POST \u002Fv1\u002Finstances\u002F{instance_id}\u002Fcustomers) and wait for KYC approval via the customer.update webhook, not polling.\n2. Add the recipient's bank account (POST \u002Fv1\u002Finstances\u002F{instance_id}\u002Fcustomers\u002F{customer_id}\u002Fbank-accounts) with the right rail type for the corridor (pix for BRL, ach\u002Fwire\u002Frtp for USD, spei for MXN, sepa for EUR, transfers for ARS).\n3. Request a payout quote (POST \u002Fv1\u002Finstances\u002F{instance_id}\u002Fquotes) with bank_account_id, network, and token. Treat the quote as expiring in 5 minutes; read expires_at instead of hardcoding.\n4. Execute the payout (POST \u002Fv1\u002Finstances\u002F{instance_id}\u002Fpayouts\u002Fevm) with the quote_id before expiry. If funding from an external wallet, handle the ERC-20 approve step using the contract object returned by the quote.\n5. Track completion through payout.new, payout.update, and payout.complete webhooks, verifying Svix signatures (svix-id, svix-timestamp, svix-signature headers; HMAC-SHA256 over the raw body with the whsec_ secret; reject timestamps older than 5 minutes).\n\nConstraints:\n- All amounts are integers in minor units (cents).\n- The API key is a Bearer token and must never reach client-side code.\n- Start against a development instance: use USDB on a testnet (for example base_sepolia), where KYC auto-approves and payouts auto-complete.\n- Persist BlindPay IDs (re_, ba_, qu_, po_) on my own records for reconciliation.\n\nDeliverables: typed API client (or use the official SDK for my stack), the payout service, the webhook handler, and a happy-path integration test against the development instance.\n","text","",[28,29,24],"code",{"__ignoreMap":26},[15,31,33],{"id":32},"how-to-use","How to use",[35,36,37,49,52,55],"ol",{},[38,39,40,41,48],"li",{},"Create a development instance and API key at ",[42,43,47],"a",{"href":44,"rel":45},"https:\u002F\u002Fapp.blindpay.com",[46],"nofollow","app.blindpay.com",".",[38,50,51],{},"Paste the prompt into your agent along with your stack details (language, framework, database).",[38,53,54],{},"Give the agent your instance ID and let it run against the development instance, where payouts auto-complete in seconds.",[38,56,57],{},"Review the generated webhook verification code carefully before going live.",[15,59,61],{"id":60},"related-docs","Related docs",[63,64,65,72,79,86],"ul",{},[38,66,67],{},[42,68,71],{"href":69,"rel":70},"https:\u002F\u002Fblindpay.com\u002Fdocs\u002Fquickstart-payout",[46],"Payout quickstart",[38,73,74],{},[42,75,78],{"href":76,"rel":77},"https:\u002F\u002Fblindpay.com\u002Fdocs\u002Fpayout-quotes",[46],"Payout quotes",[38,80,81],{},[42,82,85],{"href":83,"rel":84},"https:\u002F\u002Fblindpay.com\u002Fdocs\u002Fbank-accounts",[46],"Bank accounts",[38,87,88],{},[42,89,92],{"href":90,"rel":91},"https:\u002F\u002Fblindpay.com\u002Fdocs\u002Flearn\u002Fwebhooks",[46],"Webhooks",{"title":26,"searchDepth":94,"depth":94,"links":95},2,[96,97,98],{"id":17,"depth":94,"text":18},{"id":32,"depth":94,"text":33},{"id":60,"depth":94,"text":61},"integrations","2026-08-26","Build a complete stablecoin to fiat payout flow: customer onboarding, bank accounts, quotes, and payout execution over Pix, ACH, SPEI, SEPA, and more.","md",false,{},true,"\u002Fprompts\u002Fintegrate-stablecoin-payouts",[108,109,110,111],"payouts","quotes","compliance","webhooks","---\ntitle: \"Integrate stablecoin payouts end to end\"\ndescription: \"Build a complete stablecoin to fiat payout flow: customer onboarding, bank accounts, quotes, and payout execution over Pix, ACH, SPEI, SEPA, and more.\"\ndate: \"2026-08-26\"\ncategory: \"integrations\"\nproducts: [\"payouts\", \"quotes\", \"compliance\", \"webhooks\"]\n---\n\nPaste this prompt into Claude, Cursor, or any coding agent to scaffold a production-grade payout integration against the BlindPay API.\n\n## Prompt\n\n```text\nYou are integrating BlindPay stablecoin payouts (USDC\u002FUSDT to local fiat) into my application.\n\nBefore writing code, read these sources and follow them over any prior knowledge:\n- https:\u002F\u002Fblindpay.com\u002Fdocs\u002Fllms.txt (docs index; read the payout quickstart, quotes, bank accounts, and webhooks pages)\n- The OpenAPI spec: curl https:\u002F\u002Fapi.blindpay.com\u002Fdoc\n\nBuild the full payout flow:\n1. Terms of service acceptance (POST \u002Fv1\u002Fe\u002Finstances\u002F{instance_id}\u002Ftos), then create a customer (POST \u002Fv1\u002Finstances\u002F{instance_id}\u002Fcustomers) and wait for KYC approval via the customer.update webhook, not polling.\n2. Add the recipient's bank account (POST \u002Fv1\u002Finstances\u002F{instance_id}\u002Fcustomers\u002F{customer_id}\u002Fbank-accounts) with the right rail type for the corridor (pix for BRL, ach\u002Fwire\u002Frtp for USD, spei for MXN, sepa for EUR, transfers for ARS).\n3. Request a payout quote (POST \u002Fv1\u002Finstances\u002F{instance_id}\u002Fquotes) with bank_account_id, network, and token. Treat the quote as expiring in 5 minutes; read expires_at instead of hardcoding.\n4. Execute the payout (POST \u002Fv1\u002Finstances\u002F{instance_id}\u002Fpayouts\u002Fevm) with the quote_id before expiry. If funding from an external wallet, handle the ERC-20 approve step using the contract object returned by the quote.\n5. Track completion through payout.new, payout.update, and payout.complete webhooks, verifying Svix signatures (svix-id, svix-timestamp, svix-signature headers; HMAC-SHA256 over the raw body with the whsec_ secret; reject timestamps older than 5 minutes).\n\nConstraints:\n- All amounts are integers in minor units (cents).\n- The API key is a Bearer token and must never reach client-side code.\n- Start against a development instance: use USDB on a testnet (for example base_sepolia), where KYC auto-approves and payouts auto-complete.\n- Persist BlindPay IDs (re_, ba_, qu_, po_) on my own records for reconciliation.\n\nDeliverables: typed API client (or use the official SDK for my stack), the payout service, the webhook handler, and a happy-path integration test against the development instance.\n```\n\n## How to use\n\n1. Create a development instance and API key at [app.blindpay.com](https:\u002F\u002Fapp.blindpay.com).\n2. Paste the prompt into your agent along with your stack details (language, framework, database).\n3. Give the agent your instance ID and let it run against the development instance, where payouts auto-complete in seconds.\n4. Review the generated webhook verification code carefully before going live.\n\n## Related docs\n\n- [Payout quickstart](https:\u002F\u002Fblindpay.com\u002Fdocs\u002Fquickstart-payout)\n- [Payout quotes](https:\u002F\u002Fblindpay.com\u002Fdocs\u002Fpayout-quotes)\n- [Bank accounts](https:\u002F\u002Fblindpay.com\u002Fdocs\u002Fbank-accounts)\n- [Webhooks](https:\u002F\u002Fblindpay.com\u002Fdocs\u002Flearn\u002Fwebhooks)\n",{"title":5,"description":101},"prompts\u002Fintegrate-stablecoin-payouts","e13Me5dPrtwAECtOm9TG_wUh9_v58I1CaRYLAGqvbf4",[117,121,125,129,133,137,141,145,149,153,157,161,165,169,170,174,178],{"path":118,"title":119,"description":120},"\u002Fprompts\u002Fbuild-contractor-payouts","Build a global contractor payout product","Compose onboarding, bank accounts, quotes, payouts, and reconciliation into a complete pay-your-contractors feature across Pix, SPEI, SEPA, and ACH.",{"path":122,"title":123,"description":124},"\u002Fprompts\u002Fconnect-ai-agent-mcp","Connect an AI agent with the MCP server","Wire Claude, Cursor, or any MCP-compatible host to the BlindPay API with the official MCP server and agent skills, with guardrails for money movement.",{"path":126,"title":127,"description":128},"\u002Fprompts\u002Fintegrate-external-wallet-payouts","Fund payouts from external wallets","Let customers pay out from their own EVM, Solana, or Stellar wallets: signed-message registration plus the on-chain authorization step per chain.",{"path":130,"title":131,"description":132},"\u002Fprompts\u002Fintegrate-circle-wallets","Integrate Circle wallets with BlindPay","Fund BlindPay payouts from Circle developer-controlled wallets: sign the registration challenge and the ERC-20 approve through Circle's API instead of a browser wallet.",{"path":134,"title":135,"description":136},"\u002Fprompts\u002Fintegrate-dfns","Integrate Dfns with BlindPay","Fund BlindPay stablecoin payouts from Dfns MPC wallets: sign the registration challenge and the ERC-20 approve through Dfns's User Action Signature flow.",{"path":138,"title":139,"description":140},"\u002Fprompts\u002Fintegrate-fireblocks","Integrate Fireblocks with BlindPay","Fund BlindPay stablecoin payouts from Fireblocks vault accounts: MPC-signed wallet registration and the ERC-20 approve through Fireblocks' transactions API.",{"path":142,"title":143,"description":144},"\u002Fprompts\u002Fintegrate-privy","Integrate Privy with BlindPay","Fund BlindPay stablecoin payouts from Privy Server Wallets: sign the registration challenge and the ERC-20 approve through Privy's wallet RPC endpoint.",{"path":146,"title":147,"description":148},"\u002Fprompts\u002Fintegrate-virtual-accounts","Integrate US virtual accounts","Give each customer a named US bank account with ACH, RTP, wire, and SWIFT details that settles automatically to USDC or USDT in their wallet.",{"path":150,"title":151,"description":152},"\u002Fprompts\u002Fintegrate-utila","Integrate Utila with BlindPay","Fund BlindPay payouts from Utila MPC vaults: sign the wallet-registration challenge and the ERC-20 approve through Utila's service-account API, with async transaction confirmation handled.",{"path":154,"title":155,"description":156},"\u002Fprompts\u002Fintegrate-customer-onboarding","Integrate customer onboarding with KYC and KYB","Build the full onboarding pipeline: terms of service, individual and business customers, document uploads, RFI handling, and status webhooks.",{"path":158,"title":159,"description":160},"\u002Fprompts\u002Fintegrate-offramp-wallets","Integrate offramp wallets for auto-conversion","Give each bank account a dedicated crypto deposit address: stablecoins sent to it convert and pay out to the linked bank account automatically.",{"path":162,"title":163,"description":164},"\u002Fprompts\u002Fintegrate-payins","Integrate payins from bank transfers to stablecoins","Accept Pix, ACH, wire, SPEI, and other local bank transfers and settle them as USDC or USDT in a wallet, with quotes, payment instructions, and webhooks.",{"path":166,"title":167,"description":168},"\u002Fprompts\u002Fintegrate-quotes-fx","Integrate quotes and FX handling","Handle payin, payout, and transfer quotes correctly: expiry windows, currency_type conventions, fees, and displaying rates to users.",{"path":106,"title":5,"description":101},{"path":171,"title":172,"description":173},"\u002Fprompts\u002Fintegrate-wallet-transfers","Integrate wallet transfers and cross-chain USDC","Move stablecoins from managed wallets to any address with transfer quotes, including cross-chain USDC over Circle CCTP v2.",{"path":175,"title":176,"description":177},"\u002Fprompts\u002Fintegrate-webhooks","Integrate webhooks end to end","Register endpoints, verify Svix signatures correctly, deduplicate retries, and drive payment state from the full BlindPay event catalog.",{"path":179,"title":180,"description":181},"\u002Fprompts\u002Fintegrate-payables","Pay boletos and Brazilian bills with payables","Register boletos, arrecadacao slips, and PIX codes as payables and settle them from stablecoins through the quote-and-execute flow.",1787868849185]