# Accept Bitcoin and USDC payments. Straight to your own wallet.

Send a crypto payment link or invoice priced in your own currency. The payer picks BTC (on-chain or Lightning), USDC, USDT, EURC, SOL or ETH and pays from their own wallet. send21 is non-custodial: it never holds your money or your keys. Built for people and for AI agents.

[Create a free account](https://send21.io/login?mode=register) [Try the demo, no sign-up](https://send21.io/demo)

Works with any wallet that can scan a QR code

## Your money never passes through send21

### Nothing to steal

send21 has no wallets, no private keys and no signing code. Even a full server break-in cannot move your money.

### You get the full amount

The send21 fee is never taken from the payment. The receiver gets exactly what was billed, and the payer's wallet sets the network fee.

### Price in your own currency

Bill in EUR, USD, SEK or any of **165 currencies**. The exchange rate locks for 15 minutes and is recorded on the payment. Or ask for an exact crypto amount.

## Get paid in three steps

### 1. Create a payment request

Set the amount, the currencies you accept and your own receiving addresses. In the app, or by API from your shop or AI agent.

### 2. The payer pays from their wallet

They scan one QR code with any wallet and send. The money goes straight to you. send21 never touches it.

### 3. You see it confirmed

send21 watches the chain and tells you by email and signed webhook when the payment arrives and confirms.

### Supported currencies and networks

| Network | Currencies |
| --- | --- |
| Bitcoin on-chain | BTC |
| Lightning to a Lightning address | BTC |
| Solana | USDC USDT EURC SOL Wrapped BTC |
| Ethereum | USDC USDT EURC ETH WBTC |
| Base | USDC EURC ETH |
| Arbitrum | USDC (native) ETH |
| Polygon | USDC (native) |

Use any of these on pay links and drafts, priced in any of 165 currencies. For Lightning, send21 gets the invoice from your Lightning address and confirms the payment automatically when your Lightning provider supports it (LUD-21). [Details per network](https://send21.io/docs/currencies) .

## Crypto payments for AI agents, without giving them your keys

An agent creates pay links and payment drafts over the REST API or the MCP server. A person, or the operator's own wallet, signs every payment. No API key can move funds, because send21 holds none.

### Scoped API keys

Grant only what the agent needs: `drafts:write`, `drafts:read`, `webhooks:manage`.

### MCP server built in

Point any MCP client at `https://send21.io/mcp` and get tools for drafts, pay links, rates and fees.

### Signed webhooks

HMAC-SHA256 signed events such as `draft.confirmed`, so you never need to poll.

### Safe retries and batches

An `Idempotency-Key` makes retries safe. Create up to 25 drafts in one call.

### Pay links by API

`POST /payment-requests` returns a hosted pay page priced in fiat, payable in any supported currency.

### Recurring payments

Daily, weekly or monthly drafts created automatically. The payer still signs each one.

### Create a draft in one call

```
curl -X POST https://send21.io/api/v1/drafts \
-H "Authorization: Bearer s21_yourkey" \
-H "Idempotency-Key: invoice-2026-001" \
-H "Content-Type: application/json" \
-d '{
"receiverAddress": "bc1q...",
"network": "Mainnet",
"paymentMethod": "MultiOutput",
"fiatCurrency": "USD",
"fiatAmount": 50.00,
"memo": "Invoice 2026-001"
}'
```

### The full agent flow

#### Authenticate

Send a scoped key as `Authorization: Bearer s21_...`.

#### Create the draft

`POST /api/v1/drafts` with the receiver address and either an exact `amountSats` or a `fiatCurrency` and `fiatAmount`. The response shows the receiver amount, the send21 fee and the locked rate.

#### Sign in your own wallet

`GET /api/v1/drafts/{id}/tx-template` returns the exact outputs, a `bitcoin-cli` example and a pay-to-many CSV. Sign and broadcast with your own node, wallet or HSM. Private keys never touch send21.

#### Get the result

send21 matches the payment on-chain and sends `draft.confirmed` to your webhook. For a quick check, `GET /drafts/{id}/status` returns the status, txid and confirmations.

[Read the API quickstart](https://send21.io/docs/quickstart) [Connect an agent over MCP](https://send21.io/docs/mcp)

For machines: [/llms.txt](https://send21.io/llms.txt) , the OpenAPI spec at [/swagger](https://send21.io/swagger) , and the MCP endpoint at `https://send21.io/mcp` (Streamable HTTP).

## One small fee per payment, capped at $100

From 0.49% on small payments down to 0.01% above $100,000. No subscription, no setup fee, no exchange-rate spread. The fee is never taken from the payment, so the receiver always gets the full amount.

[See how the fee is collected](https://send21.io/pricing)

## Works with the wallets people already use

- **Pay links and single payments:** any wallet that can scan a QR code and send an exact amount. The QR uses the standard formats (BIP-21, Solana Pay, EIP-681 and Lightning invoices).

- **Batched Bitcoin drafts:** a PSBT wallet such as Bitcoin Core, Sparrow, Electrum. Hardware wallets sign through these.

- **Batched drafts on Ethereum and other EVM chains:** a batching wallet such as Safe, or send each transfer on its own.

Always check the address and amount in your own wallet before you sign.

## Run a shop? Take crypto online and at the counter

Price in your own currency and show one QR code. Your customer pays with the crypto they hold, straight to your wallet. The confirmation webhook carries your order id and the exact rate for your books.

[See send21 for business](https://send21.io/business)

## Questions

### Does send21 hold funds or private keys?

No. send21 is software that prepares payment instructions. It has no private keys, no signing code and no way to broadcast. Every payment is signed in the payer's own wallet, and funds move directly from payer to receiver.

### Which currencies and networks are supported?

BTC on-chain and over Lightning, USDC, USDT, EURC, SOL and ETH, across Bitcoin, Solana, Ethereum, Base, Arbitrum and Polygon. Prices can be set in any of 165 world currencies, and the exchange rate locks when the payer picks a currency.

### Which wallets can payers use?

Any wallet that scans a QR code. Pay links and new drafts are a single payment using the standard formats (BIP-21, Solana Pay, EIP-681, Lightning invoices). Batched drafts are an option for PSBT wallets such as Bitcoin Core, Sparrow and Electrum, and for batching wallets such as Safe.

### How can a webshop accept purchases from AI agents?

Your backend creates a payment request with one API call: the price in your currency, your receiving addresses and your order id. The pay page and API responses are machine-readable, so an agent can pick a currency and pay from its operator's wallet. Your shop reconciles through a signed webhook that carries the order id and the exact rate.

### What does send21 cost?

One fee per payment, tiered by size: 0.49% on small payments down to 0.01% above $100,000, with a $0.01 minimum and a $100 maximum. There is no subscription, and the receiver always gets the exact billed amount.

## Create your first payment link

Free account, no subscription. You only pay a small fee when you get paid.

[Create a free account](https://send21.io/login?mode=register) [Try the demo first](https://send21.io/demo)

---
Source: https://send21.io/
