Price in your own currency — any of 165 world currencies. Your customer picks what to pay with, scans one QR code, and the money goes straight to your wallet — send21 never holds a cent. One integration covers all three ways your customers pay: AI agents, webshops, and payment devices at the counter.

Agentic commerce is here — customers increasingly send an AI agent to research, order, and pay. Every send21 checkout is machine-readable (structured JSON, standard payment URIs, /llms.txt, OpenAPI, and a native MCP server at send21.io/mcp), so an agent can complete a purchase in your shop end to end and pay from its operator's own wallet. No stored cards, no chargebacks. How it works.

One API call at checkout returns a hosted pay page and QR. Your customer pays the exact fiat price you quoted — in BTC, USDC, USDT, or EURC at a locked rate — straight to your address. The HMAC-signed webhook carries your order id, the amount, and the conversion rate, so orders reconcile themselves.

Turn any terminal, tablet, or kiosk into a crypto point of sale: the device creates a payment request for the basket total and shows the QR; the customer scans and pays from their own wallet. The confirmation webhook closes the sale on the device — no card rails, no acquirer fees, funds land directly in your wallet.
Set the price in any of the 165 supported world currencies (USD, EUR, SEK, NGN, VND, …) and list which currencies you accept, each with your own receiving address. You get back a hosted pay link and QR code.
curl -X POST https://send21.io/api/v1/payment-requests \
-H "Authorization: Bearer s21_yourkey" \
-H "Content-Type: application/json" \
-d '{
"fiatCurrency": "EUR",
"fiatAmount": 49.90,
"orderId": "shop-order-1042",
"memo": "Order #1042 — Blue hoodie",
"options": [
{ "currency": "Btc", "network": "Mainnet", "address": "bc1q..." },
{ "currency": "Usdc", "network": "Solana", "address": "5Gv7..." },
{ "currency": "Usdt", "network": "Ethereum", "address": "0xAb..." }
]
}'Redirect to the hosted page, embed the link in an invoice, or show the QR at the counter. The customer picks BTC, USDC, USDT, or EURC — the exchange rate locks the moment they choose, so your price is guaranteed.
One standard QR (BIP-21 / Solana Pay / EIP-681) — works with ordinary wallets, no PSBT knowledge needed. Funds move directly from the customer's wallet to your address.
When the payment confirms, the signed webhook tells you what was sent, what it was worth in your currency, and the exact conversion rate — plus your own order id.
{
"event": "draft.confirmed",
"data": {
"draftId": "7d21…",
"status": "Confirmed",
"txId": "3QzV…",
"confirmations": 1,
"sentCurrency": "USDC",
"network": "Solana",
"sentAmount": "53.870000",
"fiatCurrency": "EUR",
"fiatAmount": 49.90,
"conversionRate": 0.9263,
"rateSource": "coinbase",
"orderId": "shop-order-1042"
}
}The send21 Shopify app adds crypto payments to your store without touching your theme's checkout code: the customer picks “Crypto (send21)” at checkout, receives the pay link, pays from their own wallet — and the app marks the Shopify order paid automatically when the payment confirms on-chain. Your order confirmation email carries the pay link; reconciliation runs on your order ids.
In your send21 account, create an API key with drafts:read + drafts:write, save your receiving addresses in the address book (“My own — I receive here”), and add a webhook for draft.confirmed pointing at the app.
Install the send21 app, then approve the requested order permissions (read_orders, write_orders) — the app subscribes to new orders automatically.
In Shopify admin: Settings → Payments → Manual payment methods → create “Crypto (send21)”, and add the pay link snippet to your order confirmation email. That's it — orders paid in BTC, USDC, USDT, or EURC settle straight to your wallet and flip to paid on their own.
Setup details and the email snippet: [email protected]. Refunds are out of band (crypto is push-only): refund from your own wallet, then refund the order in Shopify admin. Other platforms (WooCommerce, custom carts) integrate with the same one-call payment-request API.
Customers pay your addresses directly. There is no balance at send21 to withdraw, freeze, or lose.
You quote €49.90 — the customer pays exactly that at a locked, recorded rate with full provenance.
Single-output payments encode into one QR that every mainstream wallet understands.
Sent currency, sent amount, fiat value, conversion rate, and your order id — HMAC-signed.
Tiered from 0.49% on small payments down to 0.01% — billed to you as an accrued fee, never deducted from the customer's payment. Full schedule.
Pay your accrued balance with one payment in BTC, USDC, USDT, or EURC — one click in the dashboard, or one API call (POST /fees/accrued/settle) that returns a ready-to-pay QR. Your books see a single fee payment, not per-sale deductions.
The whole checkout is machine-readable — an AI agent shopping for its owner can complete a purchase in your shop end to end. How it works.
Questions about integrating your shop or agent? Write to [email protected].
Agentic commerce is here: people increasingly let AI agents research, order, and pay on their behalf. Card checkouts break for agents — sharing card numbers with an agent is a liability, and form-filling is fragile. A send21 checkout is different: it is an API-first, machine-readable payment instruction that an agent can read, verify, and pay from its operator's own wallet — without your shop or the agent ever touching a card number or a private key it shouldn't have.
Every payment request returns structured JSON and standard payment URIs (BIP-21 / Solana Pay / EIP-681) — the same data behind the human pay page, parseable by any agent framework.
/llms.txt and an OpenAPI spec describe the full flow in the format AI agents look for — an agent landing on your checkout knows exactly what to do.
The agent pays from a wallet its operator controls; you receive funds directly at your address. No stored cards, no credentials to leak, no chargebacks — the confirmation is on-chain and final.
Your orderId travels through the whole flow and comes back in the HMAC-signed confirmation webhook with the exact amount and conversion rate — agent purchases book themselves like any other order.
agent places order → your backend creates a payment request → agent reads the machine-readable options → pays from its operator's wallet → signed webhook confirms with your order id
Nothing extra to build: the same payment request that renders a QR for a human is the one an agent consumes. Integrating your shop today makes it agent-ready by default.
The same flow works between individuals: create a request for what a friend owes you, send them the link, and they pay in whichever offered currency suits them. You are always the receiver; they always sign in their own wallet.