Settlement & Fees
PayDirect automatically deducts a small percentage fee from every payment and forwards the net amount to the merchant. All settlement happens on Base mainnet.
| Token | Free (default) | Pro ($49/mo) | Enterprise |
|---|---|---|---|
| USDC | 1.5% | 1.0% | 0.5% |
| ETH | 1.5% | 1.0% | 0.5% |
| ADAO | 0.75% | 0.5% | 0.25% (discounted to incentivize ADAO usage) |
Workspace-level fee overrides are supported (0-100% range). Contact support for custom rates on high-volume workspaces.
All DEX swaps (via /api/v1/swap) incur a 0.5% PayDirect spread on all tiers. This is in addition to Uniswap pool fees. The swap response includes paydirectFeeBps (50) and paydirectFeeAmount for transparency.
Payment: 100.00 USDC
Fee Rate: 1.5% (Free tier)
grossAmount = 100.00 USDC (total payment)
feeAmount = 1.50 USDC (100.00 x 0.015)
netAmount = 98.50 USDC (100.00 - 1.50)
→ 98.50 USDC sent to merchant wallet
→ 1.50 USDC sent to PayDirect treasuryPayment Created
Merchant calls POST /api/v1/payments with token, amount, and destination wallet. PayDirect calculates fee/net amounts and returns a receiving address (the workspace's CDP-managed wallet on Base).
Payer Sends Funds
The payer sends the exact grossAmount to thereceivingAddress on Base mainnet.
Transfer Detected
The blockchain monitor detects the incoming transfer and updates the payment status to detected. A payment.detected webhook fires.
Block Confirmations
After sufficient block confirmations, the status becomes confirmed. A payment.confirmed webhook fires.
Forwarding (Settlement)
The forwarding service sends the netAmount to the merchant wallet and the feeAmount to the PayDirect treasury. Both transfers happen on Base in the same settlement cycle. Status becomes forwarded and apayment.forwarded webhook fires.
Timeline (from payer sending funds on Base):
0:00 Payer sends funds to receiving address
~2 min Blockchain monitor detects the transfer (runs every 2 min)
→ status: detected → confirmed
~5 min Forwarding service settles the payment (runs every 5 min)
→ netAmount → merchant wallet
→ feeAmount → PayDirect treasury
→ status: forwarded
Typical end-to-end: 2–7 minutes after on-chain transfer
Payments not funded within the expiry window (default 60 min)
are automatically expired every 15 minutes.| Process | Frequency | What It Does |
|---|---|---|
| Blockchain Monitor | Every 2 minutes | Scans Base for incoming transfers, moves payments from pending → detected → confirmed |
| Forward Settlements | Every 5 minutes | Sends net amount to merchant and fee to treasury for all confirmed payments |
| Payment Expiry | Every 15 minutes | Expires unfunded payments past the expiry window (default: 60 min) |
| Transaction Sync | Every 10 minutes | Syncs incoming on-chain transfers (direct sends to wallet) to the activity log |
| Gas Funding | Every 6 hours | Tops up workspace EOA wallets with ETH for gas when balance is low |
Sandbox mode: In sandbox (pd_test_ keys), the entire lifecycle completes instantly — no cron wait. The payment goes from pending to forwarded in the same API call.
Smart wallet settlements: When the receiving wallet is a smart wallet, the forwarding step uses gasless UserOperations via CDP Paymaster — no ETH needed in the workspace wallet for the settlement transfer.
- Wallet creation (workspace wallets are provisioned free)
- Gas fees — EOA wallets are auto-funded with ETH; smart wallets are fully gasless via CDP Paymaster
- Custody (Coinbase CDP managed wallets, no custody fees)
- Smart wallet creation (enable on-demand, no extra cost)
- API access (free tier includes 100 requests/min)
- Webhook delivery (unlimited webhook events)
| Monthly Volume | Token | Fee Rate (Free) | Merchant Net |
|---|---|---|---|
| $10,000 | USDC | 1.5% | $9,850 |
| $100,000 | USDC | 1.5% | $98,500 |
| $100,000 | ADAO | 0.75% | $99,250 |
Pro ($49/month) and Enterprise plans get lower fee rates. See Pricing for details.
