Getting a quote
CallGET /api/payouts/quote with a targetCurrency and sourceAmount. The quoted amount is cached server-side for 5 minutes, and the response includes a single-use quoteId to pass to a transfer endpoint as quote_id.
Fee fields
A quote separates platform fees from the settlement-layer transfer fee.| Field | Description |
|---|---|
serviceFeePercent | Combined platform service fee, as a percentage. |
serviceFeeFixed | Fixed fee in USD (display only). 0 for v2-offloader accounts. |
providerCharge | Provider processing fee deducted before conversion. Present only for v1 accounts. |
usdToTargetRate | Exchange rate from 1 USD to the target currency. |
quote.targetAmount | Amount the recipient receives in the target currency. |
quote.transferFee | Settlement-layer fee, deducted from the target amount. |
quote.feeFxAmount / quote.feePayoutAmount | FX and flat-fee components of transferFee. They sum to transferFee. |
quote.feeFxPercent | FX conversion fee as a percentage. |
null when a breakdown is unavailable, for example an unsupported corridor or an email recipient.
Fee fields are for display. They are not deducted from the USDC you send on-chain — the platform settles the correct amounts internally.
v2-offloader fees
When quoting for the v2 pipeline, passv2_offloader=true. The fees are calculated for the v2 transfer accounts: serviceFeePercent reflects your configured fee plus 20 bips, serviceFeeFixed is 0, and providerCharge is absent. This parameter is ignored for non-API-key callers. See v1 vs v2 transfers.
Quick fee lookup
For real-time display as a user types an amount,GET /api/payouts/fee returns just the platform fee for a USD amount with no external dependencies. It returns mwFee (USD) and mwFeePercentage.
Amount limits
GET /api/payouts/amount-limits returns the min_amount and max_amount your account may submit to quote and transfer endpoints. A null bound means no limit is configured. Amounts outside these limits are rejected with 400.