SmartPayPro

Non-custodial crypto payments API

Get paid in stablecoins. Straight to your wallet.

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.dev
POST /v1/address
x-signature: 9f86d081…b0f00a08
{
  "platformId": 50,
  "siteId": 51,
  "paymentId": 74,
  "playerId": "player-1042"
}
200 OK
{
  "result": 1,
  "address": "0x9f2c…41aB",
  "feeVersion": 1
}
1.2%per incoming payment
0.6%per payout
On-chainsplit straight to your wallet
1 callfor a customer's permanent address

Features

Everything between your customer and your wallet

A handful of endpoints cover the whole flow, from the deposit address to the payout.

We never hold your funds

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.

Payouts signed by your key

Pay a customer straight from your wallet. You sign the intent and the payout contract sends the amount and the fees in one transaction.

Signed webhooks

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.

Check before you sign

Quote the fee and the network cost of a payout, and validate the destination address, before you sign anything.

History and reports

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

One integration. A fee per site.

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.

  • Create and update sites with POST and PATCH /v1/sites
  • Separate deposit and payout fees per site, in basis points
  • Read-only API keys per site that never show your margin
  • Totals per site, or for all your sites in one call
Customer deposit100.000000 USDT

1 transaction · 3 transfers

Merchant walletGross minus the 1.7% site fee and the network fee+98.290000
Your walletYour 0.5% markup+0.500000
SmartPayPro1.2% plus 0.01 USDT network fee+1.210000

Example with a 1.7% site fee. Every transfer can be checked on Polygonscan.

Assets

Coins and networks

USDT on Polygon is live. More networks for USDT, plus USDC, Bitcoin and Ether, are next on the roadmap.

USDT

Tether

  • PolygonLive
  • TronSoon
  • EthereumSoon
  • BNB ChainSoon
  • SolanaSoon

USDC

USD Coin

  • PolygonSoon
  • EthereumSoon
  • BaseSoon
  • SolanaSoon

BTC

Bitcoin

  • BitcoinSoon

ETH

Ether

  • EthereumSoon
  • BaseSoon

How it works

From deposit to payout in four steps

  1. Get your customer's address

    Call the API with a playerId and show the address, or its QR code. The same customer always gets the same address.

    POST /v1/address
  2. Your customer pays

    From any wallet or exchange. Each transfer to the address is recorded and notified on its own.

    Awaiting deposit
  3. Split on-chain at finality

    Once 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 · deposit
  4. Pay out from your wallet

    Sign 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/withdraw

Developers

Integrate with plain HTTP and JSON

Every request is signed with your API key, and webhooks use the same signature. One helper function covers both.

  • HMAC-SHA256 signature on requests and webhooks
  • One paymentId per coin and network
  • Same playerId, same address. A repeated orderId never pays twice
  • Amounts as decimal strings with 6 places, never floats
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

1.2% to receive. 0.6% to pay out.

These are our standard rates, and fees are negotiable per client. Every webhook shows the gross amount, each fee and the net.

Receiving

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.

  • Example: 100 USDT in, 98.79 USDT to your wallet
  • Gross, fees and net in every webhook
  • Platforms add their own fee on top
Talk to sales

Paying out

0.6%

Per payout, deducted from the amount sent. The network fee is charged in USDT and quoted before you sign.

  • Paid from your own wallet
  • Exact quote, network fee included, before you sign
  • Status by webhook or API
Get API access

FAQ

Frequently asked questions

Can't find what you're looking for? Talk to our team.

Contact us →

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

Accept stablecoins in your store.

Tell us about your business. We reply with the next steps and, once your account is ready, send your platformId and API key.

What happens next

  1. 1We review your request and reply by email or messenger
  2. 2We set up your account and send your API credentials
  3. 3You integrate and start receiving payments

We only use your details to reply to this request. Privacy policy