Skip to main content

Cross-Chain Agentic Payments

Cross-chain agentic payments let AI agents pay services across Base, Arbitrum, Solana, and beyond through intent-based routing with atomic settlement.

Written by Eco
Updated today

Cross-Chain Agentic Payments

Cross-chain agentic payments are the default mode for AI agents that operate in the real multi-chain world. An agent holds USDC on Base, needs to pay a data provider on Arbitrum, wants to split a purchase between a Solana marketplace and an Ethereum protocol, and has to do it all in one pass without the user babysitting bridges. This article walks end-to-end through how that works with Eco Routes, explains the rail/layer/app model that underpins modern agent payment infrastructure, and shows why intent-based routing is the only practical answer when an agent's liquidity and its purchase targets live on different chains.

If you are designing an agent that has to transact across chains, the question is not "which bridge should I use." It is "how do I hide that decision from the agent entirely so it can focus on the task." Intent-based settlement is how the industry is answering that question.

Why Agents Are Inherently Multi-Chain

The single-chain agent is a convenient demo and almost never a production reality. A deployed agent accumulates stablecoin balances wherever its users and counterparties happen to live. A trading agent holds USDC on Arbitrum because that is where its DeFi positions are. A content agent holds USDC on Base because that is where the video API it buys from settles. A market-making agent splits its float across Solana and Ethereum because its arbitrage loop touches both.

When that same agent has to make a payment, the probability that the funds are already on the destination chain is low. It is perfectly normal for an agent to hit an API priced in USDC on Base while holding its working capital on Optimism. Without cross-chain payment routing, the agent has three bad options: pre-fund every chain it might transact on (inefficient and capital-heavy), pick a bridge per chain and manage each integration (operationally brittle), or route through a centralized custodian (defeats the autonomy).

The right answer is to let the agent declare the outcome it wants — move this amount from this source balance to that destination address on that chain — and let specialized infrastructure handle the routing. That is the intent-based model, and it has become the dominant pattern for cross-chain agentic payments. The ERC-7683 cross-chain intents standard formalizes a shared format for these intents so solvers across different networks can compete on the same request.

The Rail, Layer, and App Model

To understand where Eco fits in a cross-chain agent stack, it helps to think in three layers. This model cleanly separates what blockchains and messaging protocols do from what settlement networks do from what agent applications do.

Rails are the underlying transport mechanisms that move messages or assets between chains. Circle's Cross-Chain Transfer Protocol (CCTP) is a rail. So is Hyperlane. So is LayerZero. So is Wormhole. Each rail has different properties — CCTP burns and mints native USDC with the highest finality guarantees, Hyperlane offers permissionless messaging with sovereign security, LayerZero supports the widest chain coverage. None of them are the right answer for every payment; the right one depends on amount, chains involved, urgency, and cost tolerance.

Layers are settlement networks that abstract over the rails. Eco is a layer. A layer takes intent from an application, picks the right rail for the specific transfer, executes it atomically, and returns the outcome. The agent and the app developer never need to think about which rail was used, because the layer makes that decision and guarantees the result. This is analogous to how a payment processor abstracts over card networks — the merchant does not pick Visa versus Mastercard per transaction; the processor optimizes.

Apps are the things the agent actually interacts with: the API it is paying, the marketplace it is buying from, the treasury product it is rebalancing. Apps receive the settled payment on their native chain and do not need to know anything about the rails that delivered it.

The insight that matters for agent design is this: if your agent is tightly coupled to a specific rail, you have to rewrite your integration every time the optimal rail changes. If your agent talks to a layer, the layer absorbs rail migrations, new chains, and protocol upgrades. For a long-running agent fleet, that decoupling is worth a lot. The cross-chain messaging protocols overview and cross-chain liquidity protocols list cover the rail landscape in more depth.

End-to-End Walkthrough: Agent on Base Paying a Service on Arbitrum

Let us trace a concrete cross-chain payment. An agent is running on Base with a 100 USDC balance. It needs to call a premium analytics API that charges 5 USDC per query and settles on Arbitrum. The agent has never used this API before and has no Arbitrum balance.

Step 1: the agent hits the API and receives a payment quote

Like the x402 flow for single-chain agentic payments, the API responds with a quote: 5 USDC on Arbitrum, payable to a specific address, nonce and expiry attached. The agent's wallet reads this and sees that its balance is on Base, not Arbitrum. It does not have to ask the user what to do — its payment router knows to hand off to a cross-chain layer.

Step 2: the wallet constructs an intent

Instead of signing a direct transfer, the agent signs an intent. The intent says: "Spend up to 5.05 USDC from my Base balance to deliver exactly 5 USDC to this Arbitrum address before this deadline." The extra 0.05 is a fee budget the agent is willing to pay a solver for handling the route. The intent follows the ERC-7683 schema, which means it is portable across solver networks that support that standard.

Step 3: Eco Routes matches the intent to a solver

The intent is broadcast to Eco Routes. Solvers on the network see it, check their own liquidity on Arbitrum, and decide whether to fulfill it. The first solver to commit wins. The solver delivers 5 USDC on Arbitrum out of its own Arbitrum inventory and later claims the 5.05 USDC from the agent's Base balance once the fill is proven.

Step 4: rail selection happens inside the layer

For this 5 USDC payment, Routes might choose CCTP because the amount is small and Arbitrum-Base is a well-trafficked corridor. For a different pair of chains or a different amount, it might pick Hyperlane for faster finality, or LayerZero because the destination chain is not yet on CCTP. The agent does not see this decision. The API does not see this decision. Only the layer and the solver care, and that is the entire point.

Step 5: atomic settlement

The fill is proven onchain, the solver is reimbursed from the agent's Base balance, the API receives confirmation of its 5 USDC on Arbitrum, and the API serves the resource. If anything had gone wrong — the solver failed to fill in time, the proof did not validate, the destination chain had an issue — the entire intent would have reverted and the agent's Base balance would be untouched. This atomicity is the property that makes cross-chain agent payments usable in production. Without it, agents would either need to hold redundant balances on every chain or accept a meaningful failure rate on each payment.

Step 6: the agent moves on

From the agent's logical perspective, it made a payment and got a resource. It did not manage a bridge, poll two chains for confirmations, or handle a stuck transaction. The total elapsed time is typically under a minute, dominated by destination-chain finality rather than the routing logic itself. The agent records the receipt and continues with its workflow.

Splitting Payments Across Chains

Some agent workloads need to split a single logical payment across multiple chains. A market-making agent executing an arbitrage might need to simultaneously pay a Solana AMM and an Ethereum lending protocol. A content agent buying a package of APIs might need to pay one vendor on Base and another on Optimism in a coordinated way.

With intent-based routing, the agent can submit a single multi-leg intent. The layer ensures either all legs fill or none do. This is dramatically different from the DIY approach of firing off independent bridge transactions and hoping they all land — in that model, partial failure is common, and the agent ends up with a dangling position on one chain and no counterparty on the other.

The technical mechanism is the same atomic-intent primitive. The intent simply has multiple fulfillment legs, each with its own destination chain, token, and amount. Solvers bid on the whole package. If no solver can handle all legs, the intent does not fill. This preserves the agent's ability to reason about its own state: either the whole transaction happened or nothing did.

For more on how this pattern shows up in non-agent workloads, see the background on cross-chain payroll and vendor payments as orchestration problems — the same mechanics apply to agent commerce.

Why Agents Should Not Manage Bridges Directly

It is tempting for an engineering team to integrate a bridge or two directly and have their agent pick between them. This approach works for a demo and fails at scale for three reasons.

The optimal rail changes. Rail economics shift weekly. A new CCTP chain launches, LayerZero cuts fees, a Hyperlane deployment on a specific L2 becomes congested. An agent hard-coded to a rail will either overpay or fail. A layer absorbs these shifts without a code change.

Liquidity fragmentation. Direct bridge integrations require the agent (or its operator) to pre-fund inventory on every chain. A layer uses solver liquidity, which pools capital across many users and many rails. Your agent does not need to pre-fund — it pays for liquidity on demand, and the layer aggregates demand to make that liquidity cheaper than your own.

Failure handling. Bridges fail in nuanced ways — stuck relayers, insufficient liquidity, congested messaging channels. Building robust retry and fallback logic for each bridge is a multi-engineer project. The layer handles this once for everyone. Teams designing their agent stack can read the intent-based routing protocols comparison and the intent settlement layers overview for a deeper look at what properties to demand.

Integration: How an Agent Actually Uses Eco Routes

The Routes CLI is the fastest way for a developer to verify cross-chain intent routing works before committing the agent to it. A typical first test looks like cloning the repo, installing, and running a publish command from Optimism to Base. The wizard walks through chain selection, token selection, and configuration. Once the intent fills, you have empirical proof that the round trip works end to end.

For programmatic integration inside an agent, the Routes API lets the agent submit intents directly from its wallet. The typical integration looks like: the agent's payment router receives a request to pay X amount on chain Y; it checks local balances; if the balance is on a different chain, it formats an intent; it signs and submits; it waits for the fill confirmation; it records the receipt. The whole flow lives in about 100 lines of code.

For a broader view of developer tooling in this space, the stablecoin developer tools comparison and cross-chain stablecoin swap infrastructure both map out the landscape with Eco positioned inside it.

Trust, Finality, and Risk

A fair question about cross-chain agent payments is: where does trust live, and what can go wrong?

In an intent-based model, the agent trusts the layer's protocol contracts to enforce atomicity — not the solver. If the solver fails to fill in time, the protocol returns the agent's source funds and the intent expires. If the solver fills correctly, the protocol releases the reimbursement. The solver is economically incentivized to fill correctly because reimbursement is contingent on proof, and slashing or reputational consequences apply if they misbehave.

Finality matters too. CCTP on Arbitrum-Base completes in a couple of minutes for hard finality. Optimistic messaging paths can take longer. Agents that need faster acknowledgment should pick rails with faster finality even if they cost slightly more, and most layers expose this as a user-tunable preference. The Vitalik piece on endgame interop is a useful primer on the underlying tradeoffs.

Related articles

FAQ

What are cross-chain agentic payments?

Cross-chain agentic payments are transactions where an AI agent pays for a service that settles on one chain using funds the agent holds on a different chain. The routing — which rail to use, which solver to work with, how to guarantee atomicity — is handled by an intent-based settlement layer like Eco Routes rather than by the agent directly.

Why not just pre-fund every chain?

Pre-funding works for a small fixed set of chains but becomes expensive as the agent's operational footprint grows. Capital sits idle waiting for usage, and rebalancing across chains becomes its own problem. Intent-based routing lets the agent hold funds on one or two chains and pay anywhere on demand, which is more capital-efficient for any non-trivial deployment.

How does ERC-7683 fit in?

ERC-7683 is a standard schema for cross-chain intents. It defines how an intent describes its source, destination, tokens, amounts, and deadlines in a way that solvers across different networks can interpret. Agents that emit ERC-7683 intents can be fulfilled by any compliant solver network, which avoids lock-in to a single layer.

What happens if a solver fails to fill an intent?

The protocol enforces atomicity. If the solver does not produce a valid fill proof before the intent's deadline, the source-chain funds are unlocked back to the agent and the intent expires. The agent can then resubmit or take a different action. This is a meaningful difference from DIY bridging, where a failed transfer can leave funds stuck for hours.

Does this work across EVM and non-EVM chains like Solana?

Yes. Eco supports Solana alongside 14 EVM chains, and intent routing works across both. The intent format abstracts over the VM differences; solvers that hold liquidity on both EVM and Solana can fulfill cross-VM intents. See 1:1 stablecoin swap explained for the underlying mechanics on guaranteed conversion.

Did this answer your question?