Merchant Withdrawals
Withdrawal handling determines how requests are processed against merchant balances:
- Hard Model (default) → If the merchant wallet has insufficient funds, the withdrawal is immediately rejected. The user's merchant sees a failed withdrawal response.
- Soft Model → A withdrawal request by the user's merchant is recorded even if the merchant wallet lacks sufficient balance. The requested amount is deducted from the trading ledger and placed in a pending state until funds become available.
This gives merchants flexibility to decide between strict balance enforcement or system-based pending requests.
Payouts vs Withdrawals
- Payouts are distinct from withdrawals.
- Withdrawal (end-user): A merchant’s customer withdraws stablecoins; funds move from the merchant’s 3PAY wallet to a blockchain address the customer provides.
- Payout (merchant-level): The merchant withdraws business funds—either converting stablecoins to fiat for settlement (e.g., bank, Wise, MoneyGram) or sending stablecoins to merchant-managed crypto wallets.
- Fiat Payouts require a quote step to calculate the exchange rate, fees, and settlement time. Once confirmed, the payout can be executed and tracked to completion.
