Non-custodial crypto payments, built for developers
billing.io lets merchants accept USDT and USDC across multiple blockchains. Payments go directly to your wallet — billing.io never holds your funds.Accept Payments
Create checkouts, generate payment links, and accept USDT/USDC on Tron, Arbitrum, and Base.
Subscription Billing
Recurring billing with plans, trials, automated renewals, and feature entitlements.
Payout Orchestration
Define payout intents, execute on-chain, and let billing.io verify and reconcile.
API Reference
RESTful API with cursor-based pagination, idempotency, HMAC-signed webhooks, and OpenAPI spec.
How it works
Create a checkout
Your backend calls
POST /checkouts with an amount, chain, and token. billing.io returns a unique deposit address.Customer sends crypto
The customer sends stablecoins to the deposit address. billing.io monitors the blockchain for the transaction.
Payment confirmed
Once the required block confirmations are reached, the checkout status becomes
confirmed and a checkout.completed webhook fires.Funds in your wallet
Since billing.io is non-custodial, funds were sent directly to your wallet. No withdrawal step needed.
Quick example
Supported chains and tokens
| Chain | Tokens | Supported |
|---|---|---|
| Tron | USDT, USDC | Production |
| Arbitrum | USDT, USDC | Production |
| Base | USDT, USDC | Production |
Next steps
Quickstart
Create your first checkout in under 5 minutes.
Webhooks
Set up webhook endpoints and verify signatures.
Sandbox Testing
Test your integration without real funds.
SDKs
Official SDKs for JavaScript, Python, Go, React, Ruby, and Java.