Use Cases

Exchanges

List RWA perpetuals for your own users. You keep the surface. Gateway runs the market side.

An exchange that wants gold, FX, indices, and single-stock perpetuals in front of its own users should not have to become a market. Gateway is the market side of that line. You keep the app, the accounts, and the relationship. What you write to your books is a terminal outcome you can show: filled, with a tradeId and a price, or reverted with a decoded reason.

Markets available through one integration

Your surface, your users

The app, the accounts, and the commercial terms stay on your side of the line. Gateway does not sit in front of your customers. It sits behind the order you already decided to send.

Markets you don't run

Crypto, FX, indices, commodities, ETFs, and single stocks, through the same five endpoints. Per-size executable quotes so you can show a price you can actually fill, not a mark from a tape you do not own.

Records that reconcile

A fill comes back as a fill. A reject comes back as a reason. There is no partial state to explain to a user, and no in-flight transaction to reconcile against your ledger at end of day.

Where the line sits

What you own

You own KYC, accounts, the screen, the fee schedule, and who is allowed to trade. A user who takes a WTI or USDJPY perpetual on your exchange is still on your exchange. Gateway is not a venue they log into.

You also own when an order is sent. Position limits, pre-trade checks, and the decision to pass risk through sit in your stack. The API does not invent an order. It executes a signed intent, and only if every field carries the trader's EIP-712 signature.

There is no transaction for the user to watch, and no ETH for them to hold. Your backend does not poll to learn whether the fill happened. The POST returns. You write what it returned. That is what lets a fill appear on someone else's screen without a pending-on-chain state to explain.

What arrives through the API

A depth quote for a size. A streaming feed at about 465 milliseconds median. An order endpoint that returns in about 0.7 seconds on a warm connection. Onboarding is a USDC permit plus delegation in one relay. After that, the user does not need ETH, which is the difference between listing a perpetual and asking a retail account to run a chain wallet as a gas tank.

The instrument list is one list, not a crypto book, an FX book, and an equities book behind three vendors. Eighty-three markets (crypto, FX, indices, commodities, ETFs, and single stocks) share the same five endpoints.

Before you show a price, /v1/depth/quote returns an executable quote for the size on the ticket. A synthetic ladder sits under it. Fifty tick-triggered round trips against a recorded tape matched predicted fills to 0 bps. The number on the screen can be the number in the fill.

Settlement and records

Settlement is in stablecoins. Observed round-trip cost on production validation was about ten cents at $5 test size, oracle included. That is not a retail commission schedule. It is what the path cost at the size it was tested. The number that matters for an exchange is that the user does not also fund gas.

What you write to your ledger is the terminal payload: tradeId, fill price, amounts, or a decoded reject. Across about 1,900 live production orders the path never returned an ambiguous outcome. Twelve days of automated testing, including two stage incidents traded through on purpose, closed every position that opened. Proceeds settle to the trader's address.

Latency reported from stage on a Monday was measurably improved that day and resolved by Thursday, a 60% median improvement under load, verified on re-runs. Production errors come back fully decoded. If a fill is going to appear on a customer screen, that is the property you need: a terminal answer, not a hash and a wait.

Access global markets. Start in minutes

Enterprise access for exchanges, market makers, stablecoin funds, and professional desks. Onboard with a solutions engineer.