Tapezero docs
Developers

Integration Guide

Supporting TAPEZERO markets from another application.

What you need per market

pool id
identifies the market
pool key
both currencies in sorted order, fee tier, tick spacing, hook address
hook address
must be the deployed TAPEZERO hook
quote asset
which side of the pair the price is denominated in
market config
hook.market(poolId) — the frozen rules

Routing caveats

  • quote through a v4-aware quoter, or simulate the swap; do not compute output from the pool's price alone
  • expect the effective fee on a buy to be higher in the first blocks of a market — the launch tax and anti-snipe fee are time-dependent
  • expect buys to receive slightly fewer tokens than the pool's output when auto burn is enabled
  • a buy can revert with AntiSnipeCapExceeded while the anti-snipe window is open; treat it as a size error, not a failure of the market
  • pass the real trader in the swap's hook data if you want the pot to credit them rather than your router

Displaying a market honestly

  • call it "quoted in NVDA", never "NVDA-backed"
  • read supply from the token, not from a constant — auto burn reduces it
  • if you cannot verify a route, say so rather than rendering a trade button that cannot work
  • surface quote health if you show stock-quoted markets at all

See Disclosures for the language this project uses.

TAPEZERO is an independent protocol and is not affiliated with Robinhood, Uniswap or Chainlink. The contracts are unaudited. Nothing here is investment advice.