When it fires
A partner withdrawal, or its quote, asked for less than the account’s destination allows:- to Arc, less than 1 USDC (
1000000inamountAtomic); or - on either network, an amount no larger than the most the withdrawal’s network fee can cost. The
detailnames that figure.
Why it happens
Withdrawals to Arc are bridged from Solana, and the bridge needs at least 1 USDC. Every withdrawal leaves as a Solana transfer whose network fee the account pays in USDC. The API prices the most that fee can cost at the current SOL price, counting the rent of the recipient’s USDC account when it must be created. An amount no larger than that could deliver nothing, so it is refused before anything is sent. The figure is usually a small fraction of 1 USDC, is higher when the recipient’s USDC account does not exist yet, moves with the SOL price, and can exceed 1 USDC when SOL is expensive. What Kash actually collects for the fee is capped at 1 USDC. Solana withdrawals have no fixed minimum beyond this. Nothing was recorded.How to fix
- To Arc, send at least 1 USDC.
- On either network, send more than the figure in the
detail. Because it follows the SOL price, a retry of an amount close to it may pass or fail later. - Call
GET /v1/partner/accounts/{accountId}/withdrawals/quote?amountAtomic=first: it applies the same checks and shows what would arrive.
Related codes
INSUFFICIENT_BALANCE: the amount is above what the account can withdraw