Skip to main content
The R6 quoter simulates native pool execution. The router executes the reviewed route and checks actual settlement against the order’s bounds. Use the R6 ABI with the deployed mainnet router and quoter. The contract interfaces below are available on Arc mainnet independently of the website. Check release status for launch availability.

Order structure

Both quoting and execution use the router’s order shape:
The output asset is derived from the connected path. Each next pool must contain the preceding output asset. The router accepts one to eight hops, a positive amount below the positive int128 limit, and a nonzero recipient. Asset amounts remain in raw units.

Simulate the complete path

These signatures are abbreviated for reading; use the compiled ABI. The quoter methods are not Solidity view functions. Call them through eth_call or a client simulation, rather than sending a state-changing transaction to obtain a price. Internally, the quoter executes pool operations and uses a reverted result to roll back their mutations. Its wrapper decodes a successful quote into the return values. For exact output, execution works backward through the pools to determine required inputs. Keep the supplied path in forward asset order. The current wallet compares successful complete routes at one quoted block. A failed or partially filled route is excluded.

Detailed leg fees

Each returned LegFee describes one path position: An unhooked currency leg does not acquire FX token-market hook fees merely because it appears in the route. Its native pool costs still affect the returned input and output. The normal hook amount is not a second description of the native LP fee. Preserve these categories when displaying costs. See fee accounting.

Calculate settlement bounds exactly

The current wallet uses integer rounding in the protective direction:
The first expression floors the output limit. The second rounds the input cap up. Reject a zero protected output, and validate the tolerance against the signing application’s policy. Choose a fresh chain-time deadline. A quote succeeding does not imply the router will accept an expired deadline or an invalid recipient.

Execute and confirm

The spending allowance belongs to the verified router. An exact-input order requires the fixed input; an exact-output order can require up to the reviewed input cap. The router enforces a full fill at each leg, checks the final minimum or maximum, and requires intermediate route balances to settle without leftover dust. Violations revert the route. After success, the Routed event records trader, input, output, amountIn, amountOut, recipient, and hop count. Use the receipt and actual settled amounts to report the result. Keep uncertain submission, pending confirmation, reverted execution, and a delayed data refresh as distinct states. See troubleshooting and market snapshots.