Fulfillment requirements
- Fulfillment: fill 95% of the quotes you win within a 1-hour window. Falling below results in suspension.
- Response time: respond to quote requests within 250 ms. Slower responses are excluded from the round.
- Uptime: high availability is expected. Persistent 5xx errors suspend the webhook.
Quote expiry
Quotes and transactions have a fixed expiry, so you never specify custom expiry times:- A quote is valid for 55 seconds from creation.
- The swap is only forwarded to your webhook while a safety buffer (currently 25 seconds) remains before expiry, so you always have at least that long to verify, sign, and land the transaction. The time before that is the user’s window to accept the quote.
- The Jupiter frontend re-quotes every 3 seconds.
Fees
JupiterZ lets you provide liquidity without being subject to on-chain gas volatility, and RFQ fills are around 10x less compute-intensive than AMM swaps. In Ultra mode, JupiterZ charges a dynamic fee selected based on factors like tokens and size; in manual mode the fee is flat. Do not account for fees when quoting. The fee amount is forwarded to your webhook in the quote request parameters, is contained in the message both taker and maker sign, and is applied by the RFQ system during transaction building:- For a quote of 1 SOL to 1,000 USDC with a 100 bps fee, only 990 USDC is transferred out of your account. 10 USDC is collected as the fee.
- The fee is not transferred automatically; it is accounted for asynchronously on a regular basis.
- Stable-to-stable swaps are exempt from fees.
