One person, paid by the whole world.
Plugs into your site, your app, your Telegram bot. Chain confirmed, money settles itself in your wallet — never ours.
Sign up during beta, free forever.
USDT & USDC on nine networks
My project
Order amount
SaaS boilerplate
$129
Waiting for your payment
Send 129 USDT · BNB Chain (BEP20)
Copy the address, or scan with your wallet
0xb30DDB46d80DD84Ed8C29525DF5831303Ce7e4eD
Checkout by invoq
Your wallet+$129
Your checkout speaks ten languages:
Getting paid, you’re either locked out or frozen without warning — not with invoq:
Once it’s paid, it’s yours. No one can take it.
We don’t take a percentage, no matter how big the payment.
We can’t take your money.
Every payment lands in a wallet only you control — invoq can’t change where it goes. Not a promise — the code is set in stone, and we don’t get a vote.
- Yours even if we vanish
- Money you’ve received is already in your wallet; what’s still in flight, anyone can bring home.Settlement contract
- Verify, don’t trust
- Every payment is public on-chain — check it on any block explorer.View demo invoiceOn-chain record
Your money, at a glance.
Received, outstanding, and every invoice’s state — open invoq and it’s the first thing you see.

Demo data.
Drop in invoq, get paid in stablecoins.
Two endpoints on your server. How the buyer pays is your call.
1
BackendCreate the invoice
One call returns the invoice ID.import { Invoq } from '@invoq/server' const invoq = new Invoq(process.env.INVOQ_SECRET_KEY!) const invoice = await invoq.invoices.create({ amount: '129', description: 'SaaS boilerplate', reference_id: 'order_1234', })2
BuyerPays
Three ways, easiest first.// Whoever you send it to can pay const payUrl = `https://pay.invoq.money/${invoice.id}`3
BackendReceive the webhook
However they paid, one webhook.import { isInvoicePaid, verifyWebhook } from '@invoq/server' export async function POST(request: Request) { // Signature check: forged events stop here const event = verifyWebhook( await request.text(), request.headers, process.env.INVOQ_WEBHOOK_SECRET!, ) if (isInvoicePaid(event)) { // fulfill the order — reference_id is your order id } return Response.json({ received: true }) }
Coding with AI? Paste this.
Add stablecoin payments to my project with invoq. Start in test mode. Read the docs before you write any code: https://invoq.money/llms.txt
SDKs in six languages, plus the REST API for anything else — all in the integration docs.
Pricing.
Sign up during beta, free forever.
Pricing comes after the beta — but only for accounts opened after it.
Does invoq ever hold my money?
No — there is no invoq balance and no withdrawal button. Settlement can only land in your wallet; invoq can trigger it, never redirect it.
What do my buyers pay with?
Any wallet that can send USDT or USDC — paying straight from an exchange works too. The checkout lays out the amount, address and QR code. invoq doesn’t sell crypto: buyers bring their own stablecoins.
What if I don’t have a wallet yet?
Install a self-custody wallet first — Bitget Wallet and OKX Wallet support every network invoq uses out of the box. Then paste in your receiving addresses: one EVM address covers every EVM network, TRON and Solana each take their own. You’re ready to invoice, and your keys stay yours.
Do I pay gas to get paid?
No. Buyers pay their own transfer fee, and receiving costs you nothing on-chain.
How do I cash out?
invoq stops at your wallet — on purpose. Cash out however you already do: send it to an exchange, spend it with a crypto card, or sell it peer-to-peer.