Who this is for
The maker path is for teams that can operate a low-latency trading system with:- Reliable WebSocket or gRPC infrastructure
- Real-time reference prices and tick-size handling
- Inventory and hedge management
- USDC margin monitoring
- EIP-712 v2 signing
- Quote and settlement reconciliation
- A kill switch for market, wallet, or feed incidents
Maker lifecycle
What each RFQ request gives you
Each MakerStream request includes the taker’s market, direction, margin, quantity,worst_price, request address, expiry, and indexer-assigned rfq_id.
Your quoting system decides:
- Whether to quote at all
- Maker-side margin and quantity
- Price
- Expiry
- Minimum fill quantity, if any
- Maker subaccount nonce
Required controls
Before quoting live, implement these controls:
If your system cannot price safely, do not quote. No quote means no trade. A stale or undercollateralized quote can still damage maker performance.
Signing requirements
New maker integrations should use EIP-712 v2 only. Keep these rules visible in your implementation checklist:- Set
sign_modeto"v2"on every quote. - Include
evm_chain_idon the quote wire payload. - Use the EVM chain ID in the EIP-712 domain:
1439on testnet,1776on mainnet. - Do not put the EVM chain ID in
quote.chain_id; that field remains the Cosmos chain ID (injective-888testnet,injective-1mainnet). - Convert the RFQ contract bech32 address to its EVM address for the EIP-712 domain.
- Quantize every decimal field before signing.
- Send the exact decimal strings you signed.
- Use compact
v=0/1signatures. - Include the maker subaccount nonce used in the signed payload.
Quote lifecycle
quote_ack.status="success" means the indexer accepted and routed your quote. It does not mean:
- the taker accepted it,
- the quote filled,
- settlement succeeded,
- or your position changed.

