How Tonle Works
Tonle is a peer-to-peer exchange. Buyers pay KHR or USD via Bakong KHQR and receive USDC or USDT on Base.
For Buyers
No account needed. Just a wallet address to receive stablecoins.
Enter the amount you want to pay or receive
On the home page, enter how much fiat you want to pay (KHR or USD) or how many stablecoins you want to receive (USDC or USDT). Use the swap arrow to toggle between the two. Quotes from available liquidity providers appear automatically.
Select a quote and enter your recipient wallet
Choose the quote that suits you best. Enter the Base wallet address (0x… or ENS name) where you want to receive your stablecoins, then click Buy Now.
Pay via Bakong KHQR
A unique KHQR code is generated for your order. Scan it in your Bakong app or any mobile banking app or tap Pay with Bakong on mobile to open the app directly. You have 15 minutes to complete the payment.
Stablecoins arrive in your wallet
Once your payment is confirmed on Bakong, Stablecoins are sent directly to your wallet on Base with no required action needed from liquidity provider.
For Liquidity Providers
Lock USDC or USDT into the pool and receive payments whenever an order matches your position.
Connect your wallet and set your Bakong ID
Connect a Base-compatible EVM wallet. Before creating a position, set your Bakong account ID and the merchant name that will appear on buyers' KHQR payment screens.
Set your deposit amount and max order size
Choose USDC or USDT, enter the Deposit amount to lock in the pool, and set your Max Order Amount — the largest single buy order you are willing to fill at once.
Configure your pricing tiers
Add Pricing Tiers to offer different rates depending on order size. Buyers are automatically matched to the tier that fits their order amount.
Approve and deposit
Click Deposit. Your wallet will prompt you to first approve the token spend, then confirm the deposit transaction. Once on-chain, your position goes live and buyers can match against it.
Tonle vs Centralised P2P
How Tonle compares to centralised P2P platforms like Binance P2P.
| Tonle | Binance P2P | |
|---|---|---|
| Account / KYC | Not required — wallet address only | Account + KYC required |
| Custody of funds | Non-custodial smart contract | Binance holds funds in escrow |
| Pricing tiers | Supported — tiered rates per order size | Not supported — single rate per position |
| Split order | Supported — split large amount to many LPs to maximise utility | Not supported — one buyer matches with one seller |
| Settlement | Automatic once payment confirmed | Manual — seller must click Release |
| Counterparty risk | None — contract enforces release | Seller can delay or dispute |
| Transparency | All transactions publicly on-chain | Opaque internal ledger |
| Fees | Charged to LP only; fixed rate on-chain | Charged to ad poster; embedded in spread |
| Payment method | Bakong KHQR (KHR & USD) | Bank transfer, e-wallet, varies |
Security & Trust
- Non-custodial smart contract on Base. Funds are tracked per deposit and can only leave the contract via two paths: a verified buyer release or an LP-authorised withdrawal — nothing else.
- Payments verified before any on-chain release. The operator calls
release()only after the Bakong Open API confirms the exact fiat amount. If the API is unavailable, all releases are paused to prevent discrepancies. - Withdrawals require your signature. The operator triggers withdrawals on your behalf, but the contract enforces an EIP-712
WithdrawAuthsignature from the original depositing wallet. Without your cryptographic approval, no withdrawal can succeed — the operator cannot move your funds unilaterally. - Block confirmations on all contract writes. Every on-chain transaction — deposit, refill, withdrawal, and release — is considered final only after it accumulates enough block confirmations, ensuring the transaction cannot be reverted by a chain reorganisation before state is updated.
- Transparent, on-chain fee accounting. Platform fees are charged to the liquidity provider, never the buyer. Fees accumulate in an on-chain ledger and are withdrawn by the fee recipient on demand — no hidden deductions.