Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.stablepay.global/llms.txt

Use this file to discover all available pages before exploring further.

How Payout Works

TypeStepsPayout
sell1 API callAutomatic — INR is sent as soon as the deposit is confirmed on-chain. No second call needed.
pool_settlement2 API callsYou trigger it — after the sweep is confirmed, call POST /transactions/:id/payout to release INR.
buyComing soon

Sell

User deposits crypto to their wallet address → StablePay detects and confirms → INR payout is automatic.
StatusWhat’s happening
deposit_pendingWaiting for user to send crypto. Quote valid 24h.
deposit_detectedDeposit seen on blockchain. Waiting for confirmations.
deposit_confirmedConfirmations met. Payout initiated automatically.
payout_processingINR bank transfer in progress.
completedINR delivered. UTR available.

Pool Settlement

Merchant sweeps USDT from their pool wallet → StablePay confirms sweep → merchant triggers INR payout.
StatusWhat’s happening
sweep_processingUSDT being swept from pool wallet for settlement.
sweep_confirmedSweep confirmed. You must call POST /transactions/:id/payout to trigger INR.
payout_processingINR bank transfer in progress.
completedINR delivered. UTR available.

Buy (Onramp) — Coming soon

User pays fiat and receives stablecoins in their wallet. Contact us for early access.

Error States

StatusWhat happenedWhat to do
failedBank transfer failedAuto-retries up to 3x, then our team investigates
cancelledPartner cancelledCreate a new transaction
expiredNo deposit in 24hCreate a new transaction for fresh quote
sweep_failedSweep failed on-chainFunds safe in pool. Retry with new transaction

Confirmation Times

NetworkConfirmationsTime
Polygon20~1 min
Ethereum12~3 min
Arbitrum20~30 sec
Base20~30 sec
Tron19~1 min

Webhooks

EventWhen
transaction.createdTransaction created
transaction.deposit_detectedCrypto deposit seen on blockchain
transaction.deposit_confirmedRequired confirmations met
transaction.sweep_confirmedPool sweep confirmed on-chain
transaction.sweep_failedPool sweep failed
transaction.payout_initiatedINR bank transfer started
transaction.payout_completedINR delivered, UTR available
transaction.payout_failedBank transfer failed
See the Webhooks guide for payload format and signature verification.

Polling

curl https://api.stablepay.global/v2/transactions/{transactionId} \
  -H "Authorization: Bearer YOUR_API_KEY"