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)
gross_amount = 100.00 USDC (total payment)
fee_amount = 1.50 USDC (100.00 x 0.015)
net_amount = 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 gross_amount 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 net_amount to the merchant wallet and the fee_amount 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)
→ net_amount → merchant wallet
→ fee_amount → 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.
