> For the complete documentation index, see [llms.txt](https://docs.peach.ag/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.peach.ag/documentation/arc/aggregator/contract-address.md).

# Contract Address

Arc Aggregator contracts and deployment details for Arc Mainnet and Arc Testnet.

### Arc Testnet Configuration

<table><thead><tr><th width="206.59765625">Setting</th><th>Arc Testnet</th></tr></thead><tbody><tr><td>Chain ID</td><td><code>5042002</code></td></tr><tr><td>API base URL</td><td><code>https://api-arc.cipheron.org</code></td></tr><tr><td>SDK RPC</td><td><code>https://rpc.testnet.arc.network</code></td></tr><tr><td>Explorer</td><td><code>https://testnet.arcscan.app</code></td></tr><tr><td>Execution Router</td><td><code>0x5FF56925140D6f5912C8Ca6593f2C3BC28190607</code></td></tr><tr><td>Swap funding</td><td>ERC-20 input and output; transaction <code>value</code> is zero</td></tr><tr><td>USDC ERC-20 interface</td><td><code>0x3600000000000000000000000000000000000000</code>, 6 decimals</td></tr></tbody></table>

The current Arc API rejects `native_in=true` and `native_out=true`. Use token contract addresses, including the USDC ERC-20 interface. Arc's native gas currency uses a different denomination; do not apply its 18 decimals to the 6-decimal ERC-20 USDC amount. The SDK's native-token constants and encoding support do not enable native swaps on this deployment.

### Arc Mainnet Configuration

Arc Aggregator's Execution Router and four adapters were deployed on Arc Mainnet on **2026-09-07**. Use the Execution Router **proxy** for swap transactions, Direct Allowance approvals and Router event indexing.

#### Network

<table><thead><tr><th width="246.3984375">Setting</th><th>Arc Mainnet</th></tr></thead><tbody><tr><td>Chain ID</td><td><code>5042</code></td></tr><tr><td>RPC URL</td><td><code>https://rpc.arc-scan.org</code></td></tr><tr><td>Deployment date</td><td><code>2026-09-07</code></td></tr><tr><td>Deployment start block</td><td><code>19609969</code></td></tr><tr><td>Execution Router proxy</td><td><code>0x2528F3190603B85A155D48C31946703d71f921ED</code></td></tr><tr><td>USDC ERC-20 interface</td><td><code>0x3600000000000000000000000000000000000000</code>, 6 decimals</td></tr></tbody></table>

#### Protocol Contracts

<table><thead><tr><th width="222.3046875">Contract</th><th>Address</th><th>Purpose</th></tr></thead><tbody><tr><td>ArcExecutionRouter proxy</td><td><code>0x2528F3190603B85A155D48C31946703d71f921ED</code></td><td>User transaction destination, Direct approval spender and Router event source</td></tr><tr><td>ArcExecutionRouter implementation</td><td><code>0x7EE354a605bb693656EA2A08602f14122D39B024</code></td><td>Initial implementation behind the proxy; not a user transaction destination</td></tr><tr><td>ArcSettlementModule</td><td><code>0xbF969bB9939Fbb0740F3620d65394b1ba19B21c4</code></td><td>Settlement logic used by the Router</td></tr><tr><td>Uniswap V2 adapter</td><td><code>0x6E29936F69a421C7F271edc1E514E7177eaACD5B</code></td><td><code>UNISWAPV2</code> execution</td></tr><tr><td>Uniswap V3 adapter</td><td><code>0xA29a80C317173C82219DD3e6BecFCf47C779f82b</code></td><td><code>UNISWAPV3</code> execution</td></tr><tr><td>Uniswap V4 adapter</td><td><code>0x2D1Bbf2A699F0c6cDd8aBA3E2154E81bAeC7b827</code></td><td><code>UNISWAPV4</code> execution</td></tr><tr><td>Peach Launchpad adapter</td><td><code>0x3Ac3C6BD0e8613c722CE5205b3c5b1a68ecE5CAc</code></td><td><code>LAUNCHPAD</code> execution</td></tr></tbody></table>

Adapter deployment and registration do not establish API availability or liquidity for a particular pair. Read the selected API's `GET /router/status` and request a fresh route before preparing a swap.

#### Protocol Dependencies

These addresses belong to the mainnet deployment. Keep them separate from the Testnet RC2 addresses used in the Launchpad tutorials.

<table><thead><tr><th width="239.48828125">Dependency</th><th>Address</th></tr></thead><tbody><tr><td>Uniswap V2 Factory</td><td><code>0x89e5DB8B5aA49aA85AC63f691524311AEB649eba</code></td></tr><tr><td>Uniswap V3 Factory</td><td><code>0xf0db7b58379503491d857dB50AC9ece64c653918</code></td></tr><tr><td>Uniswap V4 PoolManager</td><td><code>0x8366a39CC670B4001A1121B8F6A443A643e40951</code></td></tr><tr><td>Peach Launchpad Factory</td><td><code>0x7E462d220b6b0a4c55B205B613133dc1C1Cc9dC1</code></td></tr><tr><td>Peach Launchpad Hook</td><td><code>0x173c4Bdd5CF95A935D2B5636C573C5F4DF062044</code></td></tr><tr><td>Execution Permit2</td><td><code>0x000000000022D473030F116dDEE9F6B43aC78BA3</code></td></tr></tbody></table>

#### Integration Configuration

* Pin the execution chain to `5042` and `executionRouterAddress` to the proxy above. Connect the wallet and RPC client to the same chain.
* For Direct Allowance, approve the input token to the Execution Router proxy. For delegated execution, approve the input token to canonical Permit2; the Witness spender and final transaction destination are the Execution Router proxy.
* Execution signer version `1` was configured with signer `0x8a283840B4219a05cEBDfc09Fe33B58A7F52a562` at deployment. Signer authorization is enforced by the Router and can change through governance.
* Index Router events at the proxy from block `19609969`. Do not index the implementation as the user-facing Router.

See [Client Configuration](https://docs.peach.ag/documentation/arc/aggregator/core-features/api-configuration-cancellation-and-errors) for Mainnet and Testnet SDK setup.

See [Smart Contract Functions](https://docs.peach.ag/documentation/arc/aggregator/smart-contract-functions) for key calls, parameters and selectors.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.peach.ag/documentation/arc/aggregator/contract-address.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
