Your customers pay in Bitcoin on our checkout page, or in stablecoins and other major coins on your own payment screen. When it is time to pay suppliers or partners, you request a Bitcoin payout to any address you choose.
Your system creates a charge in BTC or in your own currency, then sends your customer to our checkout page or shows the payment on its own screen.
Your customer pays
In Bitcoin on our checkout page, with a QR code and a fresh address used only for that charge, or in another coin on your own payment screen, for the exact amount shown.
We verify, you're notified
A Bitcoin payment counts at your chosen confirmation level, a payment in another coin once it is final on its network. Either way, your system receives a signed webhook.
Who it is for
Built for two jobs
Take crypto from customers
Add Bitcoin at checkout and other major coins on your own payment screen, without running nodes or watching networks yourself.
Charges in BTC or in your own currency, converted when created
A hosted Bitcoin checkout page with the address and a QR code
Stablecoins and other major coins through the API, on your own payment screen
Each coin credited to its own balance, per network, until you move it to BTC
You choose from 0 to 10 confirmations for Bitcoin
Paid and unpaid charges in one dashboard, with CSV export
Pay people in Bitcoin
Send Bitcoin to suppliers, affiliates, creators and partners from your dashboard or through the API. Our operators review and send every payout.
Any Bitcoin address you choose
A webhook as each payout moves, and its transaction id once paid
API payouts stay off until your account owner enables them per key
0.99%The lowest payout fee in the market
Added on top, with a network fee shown before you confirm: your recipient gets exactly the amount you send.
Your currency
Charge in your own currency
Set a charge in US dollars, euros, Brazilian reais or another major currency. We convert it to Bitcoin when the charge is created, and our checkout page asks your customer for that exact BTC amount.
Fixed for the payment window
You setUSDEURBRL
→
Checkout asks forBTC
Converted once
The amount is converted when the charge is created, rounded up to the satoshi, and never changes after that.
One exact amount at checkout
Your customer sees one BTC amount and a QR code, and is asked to send exactly that, like any other charge.
Every rate on record
Each charge keeps your original amount, the rate used, its sources and when it was read, in your dashboard and the API.
Never guessed
Every rate is checked against more than one rate source to make sure it matches the real market rate. If no reliable rate is available, the charge is not created; retry later or charge in BTC.
On our checkout page your customer pays that BTC amount; paying in other coins is covered under Currencies below. You can also request a payout in your own currency: it is converted the same way and paid in BTC.
Coins and networks
Currencies
Bitcoin works on our checkout page and on your own payment screen. Every other coin below works on your own payment screen, through the API. Payouts are always in Bitcoin.
Live today Bitcoin BTC
On-chain, verified on our own node.
Live today Stablecoins
USDTTron, Ethereum, BNB Smart Chain, Polygon PoS, Arbitrum One, OP Mainnet, Avalanche C-Chain, Solana, TON
Your customer picks a coin and a network, and sends exactly the amount shown, copied rather than typed, in one transfer, so that exactly that amount arrives. ETH, BNB, POL and TRX must come from a regular wallet or an exchange, not from a smart wallet.
Any other amount is not credited to your charge automatically. Your customer gives you the transaction id, you send it to us, and our support can attach it to the right charge, unless it happens to be the exact amount of another payment, which it then pays.
What arrives is credited, on the terms agreed with you, to your balance in that coin and network. After 24 hours in Pending, your account owner can ask to move it to Bitcoin from your dashboard; the Bitcoin reaches Available once the move is completed.
A coin or network may be paused for a while; your system can check what is open at any moment through the API. In the sandbox, coin payments are simulated, so you can test the whole flow without sending real coins.
Developers
For your developers
A small REST API with bearer keys and webhooks you can verify. Build in the sandbox, then switch to live keys.
Amounts as decimal strings: BTC to the satoshi, other coins in their own decimals
Charges set in your own currency are converted to BTC once, when created
Payment instructions in another coin from one call: the address and the exact amount to show
Signed webhooks per the Standard Webhooks spec, with retries, resend and polling
Required idempotency keys on every create request, for safe retries
A sandbox on Bitcoin signet with its own cwc_sk_test_ keys; full API reference for signed-in merchants
Create a charge in BTC or in your own currency, then send your customer to its checkout_url.
Every payment is checked before money moves; each check below says which payments it covers.
Our own Bitcoin node
Every Bitcoin payment is verified on our own node, not on anyone else's word.
A second, independent look
Before Bitcoin funds move to Available, we also check each payment with an independent block explorer when it answers; any disagreement keeps the funds in Pending.
Credited for what arrived
Each Bitcoin payment is credited, on the terms agreed with you, for what really arrived, and a charge is marked paid only once the full amount arrived on time; a few unusual cases wait for review instead.
Your confirmation level
You choose how many confirmations your Bitcoin charges need, from 0 to 10.
Other coins: final and genuine
A payment in another coin is recorded only once it is final on its network, and only as the exact coin we list: a look-alike token with the same name is not recognized.
24-hour Pending window
Bitcoin credits wait at least 24 hours in Pending and move to Available only with at least 6 confirmations; credits in other coins wait 24 hours too.
Reversals handled
If a Bitcoin payment is reversed by a reorg or double-spend while Pending, its amount is removed and you are told.
Checked on every block
Bitcoin balances are checked against the blockchain on every new block and in full once a day; any mismatch pauses payouts until it is resolved.
People send every payout
Our team checks and approves every payout and sends it by hand; our system never signs transactions.
Signed webhooks
Every event is signed with HMAC under the Standard Webhooks spec, so you can check it came from us.
Double-entry ledger
Every satoshi is recorded in a double-entry ledger in whole numbers, and entries are never edited.
FAQ
Questions
What does it cost?
Pricing is agreed in your contract. Payouts carry a 0.99% payout fee, the lowest payout fee in the market, added on top together with a network fee shown before you confirm, so your recipient gets exactly the amount you send.
Which currencies do you support?
Your customers can pay in Bitcoin on our checkout page or your own payment screen, and in USDT, USDC, DAI, ETH, BNB, POL, SOL, TRX, LINK and UNI on your own payment screen, on the networks listed above. A charge can be paid in any of them, whatever currency you set it in. Payouts are always sent in Bitcoin, even when you request them in your own currency or in USDT.
How can we test before going live?
Start in our sandbox on Bitcoin signet: test coins with no value, separate test keys, the same rules as live for Bitcoin. Payments in other coins are simulated there: you trigger each one from the dashboard, nothing is read on any network, and you never send real coins.
When can we pay out what we received?
A Bitcoin payment moves to Available after 24 hours, once it has at least 6 confirmations. A payment in another coin moves to Available in its own balance after 24 hours; your account owner asks to move it to Bitcoin first, and the Bitcoin reaches Available once the move is completed. Request a payout from Available at any time; our operators review and send it on the timing agreed for your account.
What if a customer pays the wrong amount?
In Bitcoin, a payment is credited for what really arrived, and the charge is marked paid only once the full amount arrived on time; a few unusual cases wait in review until your account owner asks us to credit or refund them. In another coin, a different amount is not credited to your charge automatically: your customer gives you the transaction id, you send it to us, and our support can attach it to the right charge, unless it happens to be the exact amount of another payment.
How do we get an account?
Accounts are opened by invitation, under a signed contract. E-mail contact@cryptowalletcompany.com and tell us about your business.
Paid a business through our checkout?
Please contact the business that charged you; they can help with your order.
Let's talk about your business
Tell us what you sell and who you pay; we will reply with next steps.