This page is the compact protocol reference. Read it when you need to debug a message flow, map SDK fields to onchain settlement, or confirm which identifier belongs in which part of the RFQ stack.
For conceptual background, start with SDK architecture. For runnable commands, use the Runbook.
Actors
Live RFQ path (AcceptQuote)
quote_ack.status="success" means the indexer accepted and routed a syntactically valid quote. It is not a fill signal. The fill signal is either the onchain transaction result observed by the taker or the maker-side settlement_update.
Signed-intent path (AcceptSignedIntent)
TP/SL orders are pre-signed taker intents. The taker can go offline after submission; the executor fires the exit when the trigger condition is satisfied.
Makers do not need to distinguish this from any other RFQ request. The TP/SL-specific state is owned by the taker and executor. For taker-side fields and signing, see Signed intents.
Settlement checks
The contract processes submitted quotes and skips quotes that fail quote-level validation. Settlement succeeds only if the selected valid quotes satisfy the taker’s fill constraints.
Identifier reference
Testnet markets
For integer-tick markets such as BTC/USDC, canonicalize prices without a decimal point. "76462" is valid; "76462.0" can fail signature or tick validation depending on where it is introduced.
Related implementation pages