Wallets & Routing
Your receiving addresses, how you prove you control them, and which asset lands in which wallet. Payaider holds no key for any of them.
Add a wallet
curl -X POST https://api.payaider.com/v1/wallets \
-H "Authorization: Bearer sk_test_YOUR_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{
"network_id": "tron",
"address": "TAF2p47aRXHmN2WwBumwgR2yf2j27HeqbB",
"label": "Treasury (TRON)",
"controls_private_key": true
}'The wallet starts pending and receives no quotes until it is verified. The address checksum is validated at this point, because there is no recovery afterwards: we cannot move funds out of a wrong address any more than we can move them out of a right one.
Verify it
Two accepted proofs of control:
| Method | How it works |
|---|---|
signed_message | Sign the challenge issued for the wallet with the address itself โ WalletConnect or a manual signature; TIP-191-style on TRON. |
micro_deposit | Send an exact randomized micro-amount from the claimed address to the Payaider verification address inside its TTL. The match is on the sender. |
curl -X POST https://api.payaider.com/v1/wallets/wal_5Rm2Ht9Jc4Nq/verify \
-H "Authorization: Bearer sk_test_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{ "method": "signed_message", "signature": "0x7f3c2a1b..." }'Exchange deposit addresses are blocked
You cannot register a Binance (or any exchange) deposit address as a receiving wallet. Two reasons, and the second is decisive:
- You cannot sign for it, so you cannot prove you control it.
- A customer paying from the same exchange settles as an off-chain internal ledger transfer with no on-chain transaction at all. No watcher can see it. You would be credited on the exchange while the invoice expires unpaid, and the customer would be certain they had paid.
Checkout also warns every customer to send an on-chain withdrawal rather than an internal transfer, and the transaction-hash fallback accepts an exchange internal-transfer id into manual support review rather than dropping it.
Routing
A route says where money for one (asset, network) lands. One active route per pair.
curl -X PUT https://api.payaider.com/v1/routes \
-H "Authorization: Bearer sk_test_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"routes": [
{ "asset_symbol": "USDT", "network_id": "tron", "wallet_id": "wal_5Rm2Ht9Jc4Nq" },
{ "asset_symbol": "USDC", "network_id": "base", "wallet_id": "wal_8Hf5Jc1Wg0Ay" }
]
}'What Payaider can and cannot do with your wallets
| Can | Cannot |
|---|---|
| Read on-chain transfers to your addresses. | Move, freeze or reverse a single token. |
| Tell you an invoice was paid. | Hold your funds, even in transit. |
| Refuse to quote against an unverified wallet. | Sign anything with your key โ we do not have one. |