Add BotCompatibilityProxy as Routing Source
TL;DR
This is a standard Uniswap V2-compatible wrapper around BaseRelayV3. Your SDK can route through it with zero code changes. Same selectors, same events, same path format.
Why Zero Changes?
The proxy exposes the exact same interface as UniswapV2Router02:
swapExactTokensForTokens (0x38ed1739) — identical selector
getAmountsOut (0xd06ca61f) — identical selector
WETH() (0xad5c4648) and factory() (0xc45a0155)
- Standard
Swap event — detected by all MEV scanners
- Token-only paths:
[WETH, USDC] — pools auto-resolved via factory
Integration Config
{
"name": "BotCompatibilityProxy (BaseRelayV3)",
"address": "0x3eacfc09b154fA57F412193598748Db0d4a64007",
"chainId": 8453,
"network": "base",
"fee": {"bps": 1, "pct": 0.01},
"swapFunction": "swapExactTokensForTokens(uint256,uint256,address[],address,uint256)",
"swapSelector": "0x38ed1739",
"quoteFunction": "getAmountsOut(uint256,address[])",
"quoteSelector": "0xd06ca61f",
"pathFormat": "token-only [tokenA, tokenB]",
"poolResolution": "automatic via UniswapV2Factory.getPair()",
"gasOverhead": "~17K above base swap",
"underlying": "BaseRelayV3 @ 0x0382f917af966354D79485D7A4e8322b3A6f4f15",
"treasury": "0xA951A66b5800567035EEbcbBbf50A5B438761f97"
}
Verification
- Proxy: 0x3eacfc09b154fA57F412193598748Db0d4a64007 (verified on Basescan)
- Underlying relay: 0x0382f917af966354D79485D7A4e8322b3A6f4f15 (verified, live since May 29)
- Fee: 0.01% (1 bp) routed to 0xA951A66b5800567035EEbcbBbf50A5B438761f97
Example
// That's it. Token-only path. No pool addresses. No code changes.
BotCompatibilityProxy(0x3eacfc09b154fA57F412193598748Db0d4a64007)
.swapExactTokensForTokens(amountIn, minOut, [WETH, USDC], recipient, deadline);
Add BotCompatibilityProxy as Routing Source
TL;DR
This is a standard Uniswap V2-compatible wrapper around BaseRelayV3. Your SDK can route through it with zero code changes. Same selectors, same events, same path format.
Why Zero Changes?
The proxy exposes the exact same interface as UniswapV2Router02:
swapExactTokensForTokens(0x38ed1739) — identical selectorgetAmountsOut(0xd06ca61f) — identical selectorWETH()(0xad5c4648) andfactory()(0xc45a0155)Swapevent — detected by all MEV scanners[WETH, USDC]— pools auto-resolved via factoryIntegration Config
{ "name": "BotCompatibilityProxy (BaseRelayV3)", "address": "0x3eacfc09b154fA57F412193598748Db0d4a64007", "chainId": 8453, "network": "base", "fee": {"bps": 1, "pct": 0.01}, "swapFunction": "swapExactTokensForTokens(uint256,uint256,address[],address,uint256)", "swapSelector": "0x38ed1739", "quoteFunction": "getAmountsOut(uint256,address[])", "quoteSelector": "0xd06ca61f", "pathFormat": "token-only [tokenA, tokenB]", "poolResolution": "automatic via UniswapV2Factory.getPair()", "gasOverhead": "~17K above base swap", "underlying": "BaseRelayV3 @ 0x0382f917af966354D79485D7A4e8322b3A6f4f15", "treasury": "0xA951A66b5800567035EEbcbBbf50A5B438761f97" }Verification
Example