Skip to content
Accept USDC

Accept USDC payments

On BNB Smart Chain (BEP-20) and Ethereum (ERC-20), priced in dollars, for 0.5% per payment.

USDC is a dollar your customers can send from any wallet, issued by Circle. CoinsFlow is a USDC payment gateway on BNB Smart Chain and on Ethereum: price the order in dollars and the payment page asks for that many USDC, so $49.99 is 49.99 USDC. It costs 0.5% per payment.

Which network?

USDC onBNB Smart Chain (BEP-20)Ethereum (ERC-20)
Paid afterabout 15 secondsabout 2.5 minutes
Withdrawableabout 15 seconds laterabout 4 minutes later
Confirmations to paid / final15 / 3012 / 32
Customer’s network feecents or less, paid in BNBvaries, paid in ETH; more than for sending plain ETH

For the lowest fees, offer BNB Smart Chain. TRON (TRC-20) is paused for now.

One thing your customer must get right

USDC on BNB Smart Chain and USDC on Ethereum are different tokens, with different contracts. The payment page names the network and warns your customer to send on that one only. With a pay-in-any-coin invoice they choose USDC first, then the network.

How it works

  1. Create an invoice in USDC on BNB Smart Chain (bsc) or Ethereum (ethereum), priced in dollars or in USDC: one API call from your shop, or a few clicks in the dashboard.
  2. Your customer opens the payment page: a fresh 0x… address, the exact amount, a QR code, and the network, named.
  3. We see the payment in its first block. It is paid at 15 confirmations on BNB Smart Chain, about 15 seconds, or 12 on Ethereum, about 2.5 minutes: your server gets the signed invoice.paid webhook, and the money is in your balance.
  4. Once the payment is final, withdraw it to your own wallet on the same network, by hand or automatically. The smallest withdrawal is 1 USDC.

A $100 USDC order, in numbers

Price$100.00, asked as exactly 100.00 USDC
Payment seenin its first block, about a second after the customer sends it: invoice.detected
Paidat 15 confirmations, about 15 seconds: invoice.paid
Our fee0.50 USDC (0.5%), taken when it is credited
Customer’s network feecents or less, paid in BNB by the customer on top
In your balance99.50 USDC, withdrawable about 15 seconds later

On Ethereum the same order asks for the same 100.00 USDC and leaves the same 99.50 in your balance; what changes is the wait, about 2.5 minutes, and the network fee, which your customer pays in ETH and which can come to several dollars when the network is busy.

A USDC payment API in one call

One request makes the invoice, here in cURL, Node.js and Python. There is no SDK to install.

POST /v1/invoices
curl https://api.coinsflow.app/v1/invoices \
  -H "Authorization: Bearer $COINSFLOW_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: order-A-1042" \
  -d '{"chain":"bsc","asset":"USDC","priceAmount":"100.00","orderId":"A-1042"}'

Send your customer to the paymentUrl in the answer, and fulfil the order on the invoice.paid webhook. To try it with no money first, add "test": true to the body and simulate the payment. Every field is in the API docs.

Questions

Why does $49.99 ask for exactly 49.99 USDC?

USDC counts as one dollar while its market price is within 0.5% of a dollar. Amounts are rounded up to 2 decimals, so your customer can type them.

Does my customer need BNB or ETH to pay?

Yes, a little, for the network fee: on BNB Smart Chain it is paid in BNB, on Ethereum in ETH. That is how these networks work, whoever is being paid.

What is the smallest USDC payment or withdrawal?

An invoice in USDC alone has no minimum. On a pay-in-any-coin invoice USDC is offered from 0.01 USDC. The smallest withdrawal is 1 USDC, and it goes out on the network the money came in on: USDC received on BNB Smart Chain is withdrawn on BNB Smart Chain.

Can I accept USDT the same way?

Yes, on the same two networks and with the same rules: a dollar price asks for that many USDT, and the smallest withdrawal is 1 USDT.

Can my customer choose the coin?

Yes. Price the invoice in dollars and leave the coin out: the payment page lets your customer pick USDC or USDT and the network, or Litecoin, Bitcoin, Ether or BNB.