Skip to main content
Compass sits between your app and the blockchain. You tell the API what your user wants to do, Compass prepares it, and your user signs it with their own wallet. Every product (Earn, Credit, Tokenized Assets and Perpetual Trading) follows this pattern.

The flow

  1. Your backend calls the Compass API with your API key and says what the user wants to do.
  2. Compass builds the transaction. It handles approvals, routing, bundling and your fees, then returns the transaction unsigned.
  3. Your user signs it in their own wallet: a browser wallet, an embedded wallet, or a signing service.
  4. The transaction runs on-chain from the user’s product account, straight into the protocol.
The user needs a product account on a chain before their first action there. Account Lifecycle covers how to create one, fund it, track it and withdraw. Perpetual Trading is the exception: it uses the user’s own Hyperliquid account instead.

Who does what

Compass never holds private keys, never takes custody of funds, and can’t move anything without the owner’s signature. Funds always sit in the user’s own product account.

Three ways to sign

  1. Your user pays gas. Compass returns a normal transaction. The user signs and sends it from their wallet and pays the gas.
  2. You sponsor gas. Add gas_sponsorship: true to the request. Compass returns EIP-712 data for the user to sign, which costs nothing. You send that signature to /v2/gas_sponsorship/prepare, which returns a transaction for your sponsor wallet to send. To sponsor account creation, set sender to your sponsor wallet instead. Sponsored flows need the owner to be a regular wallet (EOA). See Gas Sponsorship.
  3. Signed orders and actions. Some flows aren’t transactions at all. Tokenized equities use a signed order that fills asynchronously, and Perpetual Trading uses signed Hyperliquid actions. The user signs, you submit through the API, then you check the status.

Works across products

  • Bundling: run several steps, such as a swap followed by a deposit, as one transaction that either fully succeeds or does nothing.
  • Embedded fees: add your own fee to deposits, withdrawals, loans and trades, paid to your address.
  • Gas sponsorship: let users transact without holding gas tokens.
  • Bridging: move USDC between product accounts on Ethereum, Arbitrum and Base.

Ways to integrate

Use the REST API directly, the Python and TypeScript SDKs, drop-in React widgets, or let an AI agent work through the MCP server or the CLI. All of them follow the same flow. See Choose a Tool to compare them.

Next steps

Quick Start

Get an API key and make your first call.

Earn

Offer yield on stablecoins and crypto.

Crypto-Backed Loans

Let users borrow against their assets.

Tokenized Assets

Trade tokenized stocks and real-world assets.