Invoices priced in dollars
Charge $49 and let the payer choose USDT, ETH, SOL or anything else you accept. The rate locks when they pick, and a rounding shortfall still counts as paid.
Six networks · stablecoins and native coins
Price an order in dollars, send your customer a link, and let them pay in the coin they hold. Wallnuts watches the chain, moves the money to your wallet, and tells your server the moment it lands.
Free to start. No card needed.
The parts every crypto checkout has to get right, done once and done carefully.
Charge $49 and let the payer choose USDT, ETH, SOL or anything else you accept. The rate locks when they pick, and a rounding shortfall still counts as paid.
Mint a fresh address per order — one-off or permanent — tagged with your own order id, so every payment arrives already attributed.
Whatever a customer sends is forwarded to your account wallet automatically. Token payments get their network fee topped up for you.
Signed events for every deposit and invoice, retried with backoff. Every attempt is logged in the console and can be replayed with a click.
Read-only API keys for dashboards, read-write keys for your backend. Sends from the console need your PIN.
Amounts are decimal strings from end to end — never floating point — so a balance, a quote or a payout is never off by a rounding error.
From the console, or with one API call. You get a hosted payment page and a link to share.
In the coin they already hold, from any wallet or exchange, by scanning a QR code or copying an address.
Wallnuts confirms the payment on-chain, forwards it to your wallet and sends your server a signed webhook.
One call creates an invoice with a hosted payment page. A signed webhook tells you when it's paid — verify it with your secret and fulfil the order. Retries are safe: transfers take an idempotency key, and every amount is an exact decimal string.
curl https://api.wallnuts.dev/v1/invoices \
-H "Authorization: Bearer $WALLNUTS_KEY" \
-H "Content-Type: application/json" \
-d '{ "fiat_amount": "49.00",
"description": "Order #1042",
"external_id": "order-1042" }'{
"id": "0b9e6c52-4f1d-4a0e-9d7b-2c6f1e8a3b41",
"event": "invoice.paid",
"created": 1790467200,
"data": {
"externalId": "order-1042",
"status": "PAID",
"fiatAmount": "49",
"paidFiat": "49",
"currency": "TRX.USDT"
}
}Invoices, webhooks and the full API come with the free plan. What you pay for is headroom — more volume, more addresses, longer logs.
Wallnuts does. Your account wallet is generated from a recovery phrase that is encrypted at rest, and Wallnuts signs the transfers that move payments into it. Money you hold there is sent onward from the console or the API, with your PIN.
The native coin of Ethereum, BNB Chain, Polygon, Solana, Tron and TON, plus stablecoins: USDT on BNB Chain, Polygon, Solana and Tron, and USDC on Ethereum, BNB Chain and Solana. Over the API, an invoice can be limited to the ones you pick.
Payment addresses keep being watched for a day after an invoice expires, so a late payment is still credited. An underpayment raises an invoice.underpaid webhook with exactly what is still owed.
No. Create invoices in the console and share the payment link. The API and webhooks are there when you want to automate it.
Create an account, set a PIN, and raise an invoice — the free plan covers everything you need to start.