Gangway

Docs

Gangway lets you buy Robinhood Chain Stock Tokens with money that sits on another chain, and sell them back to that chain. It joins two things that already work: Relay, a cross-chain bridge that supports Robinhood Chain, and a small router on Robinhood Chain that buys Stock Tokens on their Uniswap pools inside a band of the Chainlink price.

Overview

A buy is two legs in one flow. Leg 1: Relay moves your USDC or native coin from the chain you pay on into USDG on Robinhood Chain, delivered to your own address. Leg 2: the Gangway router swaps that USDG for the stock you picked. A sell is the same, backwards. The app runs both legs and shows a timeline; you confirm each step in your wallet.

Chains and coins

BaseUSDC or ETH
ArbitrumUSDC or ETH
EthereumUSDC or ETH
OptimismUSDC or ETH
BNB ChainUSDC or BNB
PolygonUSDC or POL

On the Robinhood Chain side: the 27 Stock Tokens and ETFs that have a Chainlink feed, from NVDA and TSLA to SPY, QQQ and GLD.

Leg 1: the bridge

The app asks Relay for a quote: from your coin on the chosen chain to USDG on Robinhood Chain, recipient your own address. The quote shows how much USDG arrives and roughly how long it takes, usually a few seconds. Relay returns the transactions to sign: for USDC an approval (once) and a deposit, for a native coin just the deposit. You sign them on the chain you pay from; the app then polls Relay until the transfer is filled on Robinhood Chain.

Gangway's site forwards the quote and status calls to Relay's public API. It never holds the funds and never signs for you.

Gas on arrival

A fresh wallet on Robinhood Chain has no ETH to pay for the buy. When your ETH balance there is under 0.00002, the app asks Relay to top up gas: part of the transfer arrives as a little ETH, enough for the buy and a few more transactions.

Leg 2: the buy

Once the USDG is in your wallet, the app reads exactly how much arrived and offers the buy. You sign one EIP-2612 permit for that exact amount and one transaction: swapWithPermit(USDG, stock, amount, minOut, 0, you, …). No approval stays open afterwards.

The Chainlink floor

The router reads the Chainlink price of the stock on chain and sets the minimum out from it, 1.5% under by default. If the pool would fill further away, the transaction reverts and your USDG stays in your wallet. This protects against thin pools, stale pools after the market closes, and sandwiches. quote(tokenIn, tokenOut, amountIn, slip) returns the fair amount and that floor.

Selling back

On the sell tab you pick the stock, the amount and the chain to receive USDC on. Leg 1 sells the stock for USDG through the router, at the same Chainlink floor. Leg 2 asks Relay for a quote from USDG on Robinhood Chain to USDC on your chosen chain, and you sign the deposit on Robinhood Chain. The USDC arrives at your own address on the other chain.

If a leg stops

Fees

Relaythe bridge cost shown in the quote, a few cents on $100
Gangway router0.1% of the USDG side
Poolthe Uniswap pool fee of the stock, 0.05% to 0.3%
Gason the chain you pay from, plus under a cent on Robinhood Chain

Who holds what

You do, at every step. Relay delivers to your address; the router sends the stock straight to your address in the same transaction it buys it. Gangway keeps no balances and no deposit addresses.

For bots

// 1. Relay: USDC on Base -> USDG on Robinhood Chain, to yourself
POST https://api.relay.link/quote
{ "user": me, "recipient": me, "originChainId": 8453, "destinationChainId": 4663,
  "originCurrency": "0x8335…2913", "destinationCurrency": "0x5fc5…d168",
  "amount": "100000000", "tradeType": "EXACT_INPUT", "topupGas": true }
// sign the returned steps, poll the check endpoint until "success"

// 2. Gangway router on Robinhood Chain
const [, floor] = await client.readContract({ address: ROUTER, abi, functionName: "quote", args: [USDG, NVDA, got, 0] });
await wallet.writeContract({ address: ROUTER, abi, functionName: "swap", args: [USDG, NVDA, got, floor, 0, me] });

Owner limits

The owner of the router can list Stock Tokens and set their pool routes, change the price adapter, set the band cap (up to 5%) and the fee (up to 0.5%). There is no function that moves a trader's tokens anywhere except through a swap that passes the Chainlink check.

Risks

Token

The Gangway token launches on pons. Its address will be listed here and on the home page.

Contracts

Gangway routeropening soon
USDG0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168