Skip to main content
BaseStonk pools live in the canonical Uniswap v4 PoolManager on Base, with a custom fee hook per launcher. Wallets cannot call the PoolManager directly (v4 swaps happen inside an unlock callback), so trade through BaseStonk’s router.

The router

Exact-in only. Approve the input currency to the router first.

Constructing the PoolKey

For any BaseStonk token:
Different launchers install different hooks, and a pool’s identity includes its hook. An indexer that assumes one hook for every pool computes pool ids that the other launcher’s swaps never match - those tokens will chart flat while trading normally.

Two things every bot must handle

  1. The tax is taken inside the swap by the hook. Quote minOut with at least the token’s tax rate of headroom or the swap reverts. The token’s rate is in its API record.
  2. Max wallet reverts oversized buys. A buy that would push the recipient past a token’s holding cap reverts - surface it as reduce size, not a generic failure. Oversized sells near the launch price can also revert with CurrencyNotSettled; see the sell floor.