Skip to main content
Your Totalis wallet runs your maker. It owns the maker vault, the USDC that backs every confirmed quote, and signs your bot’s confirms.

Set up

At totalis-hip4.vercel.app/mm:
  1. Under Your wallet, add a little HYPE for gas and the USDC you will quote with.
  2. Choose Create maker account: one transaction.
  3. Choose Fund vault.
  4. Create a key for the maker with the maker scopes.
  5. Run your bot with that key, your maker_id and your wallet key.

Quote

  1. Read Get maker capital. free_collateral backs new fills.
  2. Subscribe to the maker channel.
  3. Receive RFQ_CREATED. Price it from your own Hyperliquid market data.
  4. Create quote. It is unsigned.
  5. Replace it with a new quote, or cancel it.
  6. Receive QUOTE_ACCEPTED with a deadline.
  7. Confirm quote with your signature before the deadline, or decline.
  8. Re-read capital on every MAKER_CAPITAL_UPDATED.

Create quote

For a cash-out RFQ, price the position at decision_block and send sell_back terms if your maker backs it, or transfer terms if not. A transfer pays from your own vault balance, not the maker vault, and the position becomes yours. Keep that balance at zero to sell back only.

Cancel quote

CANCELLED or REPLACED means it is off the RFQ. 409 with ACCEPTED means you already confirmed it.

Confirm quote

QUOTE_ACCEPTED carries the exact terms, named by kind. Sign them (entry as Quote, sell_back as SellBack, transfer as CashoutTransfer) and answer with no Idempotency-Key:
{ "decision": "DECLINE" } needs no signature. Resend the same answer if a response is lost; until you know the outcome, treat the quote as filled.

Collateral

Capital

A confirm fails when free_collateral cannot cover the fill.

Move maker funds

Your wallet calls the vault directly and pays the gas. Totalis does not relay these.

Reduce collateral

  1. Create collateral reduction, with no body.
  2. Follow COLLATERAL_REDUCTION_UPDATED, or Get collateral reduction, until the job holds its transaction.
  3. Sign that transaction with any gas wallet and send it to Submit self-funded transaction.