Binance-Peg USD Coin on BNB Chain
Accept USDC (BEP-20)
on BNB Chain with an API.
Take USDC payments from customers and pay out in USDC on BNB Chain: a deposit address for every customer, deposits credited once they're final, and payouts your own team approves. The keys stay in hardware enclaves you can verify.
USDC on BNB Chain
The details.
| Network | BNB Chain · BEP-20 token |
| Contract | 0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d View on explorerOnly this contract is accepted as USDC on BNB Chain: look-alike tokens sent to your customers' addresses are ignored. |
| Decimals | 18 (amounts in the API are whole numbers of the smallest unit) |
| Deposits | A deposit counts once it is 15 blocks deep and its block is still part of the chain. If a reorganization removes it, it's never credited. |
| Minimum withdrawal | 10 USDC |
| Network fees | Network fees are paid in BNB. Your gas wallet can top up the BNB that token payouts and sweeps need, within a daily cap you set. |
| Addresses | Every wallet has one EVM address (0x…), the same on Ethereum, BNB Chain, Base, Polygon and Lisk. A customer can send any supported coin on any of those networks to it. |
| Asset id in the API | USDC-BEP20 |
For developers
Deposit addresses and payouts in a few lines.
import { Valtu, depositAddress } from "@valtu/wallet-kit"; const valtu = Valtu.fromEnv(); // A deposit address for one of your customers (idempotent). const wallet = await valtu.wallets.forCustomer("cus_42"); const address = depositAddress(wallet, "bsc"); // A payout of 25.50 USDC: retries never send twice. const amount = await valtu.assets.toBaseUnits("USDC-BEP20", "25.50"); await valtu.transfers.create({ walletId: payoutWalletId, asset: "USDC-BEP20", amount, to, externalId: "payout_981" });
Python: pip install valtu, same calls (valtu.wallets.for_customer, valtu.transfers.create). Full guide: integration.
Related
More on Valtu.
Start with a test workspace today.
Same dashboard, same API, free test coins. Go live when your team is ready.