A fixed address per customer
Send a playerId and get a deposit address that never changes. Your customer can save it and pay from any wallet or exchange, as often as they like.
Non-custodial crypto payments API
Give each customer a fixed deposit address. Once a payment is finalized, a contract splits it on-chain: your share goes to your wallet and the fee to ours, in the same transaction. We never hold your funds.
api.smartpaypro.devPOST /v1/address
x-signature: 9f86d081…b0f00a08
{
"platformId": 50,
"siteId": 51,
"paymentId": 74,
"playerId": "player-1042"
}200 OK
{
"result": 1,
"address": "0x9f2c…41aB",
"feeVersion": 1
}Features
A handful of endpoints cover the whole flow, from the deposit address to the payout.
Send a playerId and get a deposit address that never changes. Your customer can save it and pay from any wallet or exchange, as often as they like.
Each deposit address is an immutable contract that can only pay your wallet and the fee wallets. No owner, no pause, no upgrade. Our relayer holds gas, not USDT.
Pay a customer straight from your wallet. You sign the intent and the payout contract sends the amount and the fees in one transaction.
Every deposit and payout reaches your server with the gross amount, each fee and the net. A failed delivery is retried after 30 s and after 120 s.
Quote the fee and the network cost of a payout, and validate the destination address, before you sign anything.
Filter deposits and payouts by customer, order, transaction or date, and pull totals per site for any period when it's time to reconcile.
For platforms
Running a white-label or a marketplace? Create a site for each merchant through the API and set its fees. What you charge above our cost lands in your wallet, in the same transaction as the merchant's share.
1 transaction · 3 transfers
+98.290000+0.500000+1.210000Example with a 1.7% site fee. Every transfer can be checked on Polygonscan.
Assets
USDT on Polygon is live. More networks for USDT, plus USDC, Bitcoin and Ether, are next on the roadmap.
Tether
USD Coin
Bitcoin
Ether
How it works
Call the API with a playerId and show the address, or its QR code. The same customer always gets the same address.
POST /v1/addressFrom any wallet or exchange. Each transfer to the address is recorded and notified on its own.
Awaiting depositOnce the block is finalized, the address sends your share to your wallet and the fees to the fee wallets in one transaction. A signed webhook follows.
webhook · depositSign a payout intent with your wallet key. The contract pays your customer and the fees together, and you follow it by webhook or status call.
POST /v1/withdrawDevelopers
Every request is signed with your API key, and webhooks use the same signature. One helper function covers both.
BODY='{"platformId":50,"siteId":51,"paymentId":74,"playerId":"player-1042"}'
SIGNATURE=$(printf '50;%s;%s' "$BODY" "$API_KEY" \
| openssl dgst -sha256 -hmac "$API_KEY" | cut -d' ' -f2)
curl https://api.smartpaypro.dev/v1/address \
-H "Content-Type: application/json" \
-H "x-signature: $SIGNATURE" \
-d "$BODY"Pricing
These are our standard rates, and fees are negotiable per client. Every webhook shows the gross amount, each fee and the net.
1.2%
Per incoming payment, split on-chain before the money reaches your wallet. A network fee of 0.01 USDT per settlement covers the gas.
0.6%
Per payout, deducted from the amount sent. The network fee is charged in USDT and quoted before you sign.
A non-custodial crypto payment gateway. Through one API you give each customer a deposit address, receive signed webhooks and pay out from your own wallet. Payments are split on-chain and never sit with us.
No. Each deposit address is an immutable contract that can only send funds to the wallets fixed when it was created: yours and the fee wallets. Payouts leave your wallet only with an intent signed by your key. Our relayer holds only POL to pay for gas.
USDT on Polygon is live today. More networks for USDT, plus USDC, Bitcoin and Ether, are on the roadmap. The Assets section shows the current status of each one.
Our standard rates are 1.2% on each incoming payment and 0.6% on each payout, plus the network fee in USDT: 0.01 per deposit settlement, and quoted before you sign a payout. Fees are negotiable per client, so talk to us about your volume.
As soon as the block with the transfer is finalized, in one transaction, followed by one signed webhook per transfer. Transfers under 1 USDT wait at the address until the total reaches 1 USDT.
Yes. Create a site for each merchant through the API, with its own deposit and payout fees. Whatever you charge above our cost goes to your wallet in the same transaction. Each site can have read-only API keys that don't show your margin.
Deliveries are stored and retried after 30 seconds and after 120 seconds. You can also check any payout by transactionId or orderId, and list every deposit and payout in the history.
Yes. Every transfer to it is recorded and notified separately. If you change a site's deposit fee or wallet, customers get new addresses, and the old ones keep working on the old terms.
Talk to our team. We set up your account and send your platformId and API key, and you add your sites through the API.
Contact
Tell us about your business. We reply with the next steps and, once your account is ready, send your platformId and API key.