> ## Documentation Index
> Fetch the complete documentation index at: https://docs.eco.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Intents

> How an intent specifies destination-chain execution and a source-chain reward.

An **intent** specifies what to execute on a destination chain and the reward available for completing it. For example, you can offer USDC on Base in exchange for a specified USDC amount on OP Mainnet. A [solver](/concepts/solvers) executes the route, and a [prover](/concepts/provers) supplies the evidence needed to claim the reward.

An intent can be published and funded directly onchain. Signature-based entry points also exist; a separate user signature is not a requirement of every funding flow.

## Anatomy of an intent

| Part | Contents |
| - | - |
| Destination | The chain on which the route executes |
| Route | Destination Portal, execution deadline, required tokens, and contract calls |
| Reward | Source-chain reward tokens, refund deadline, creator, and prover |

The EVM intent hash combines the destination chain ID, route hash, and reward hash. Use the Portal's hash helpers or the value returned by the API so your encoding matches the contract.

## Lifecycle

1. **Publish and fund.** The creator or another funder transfers the reward to the intent's deterministic vault. Funding and publication can happen separately.
2. **Fulfill.** A solver supplies the destination tokens and executes the route through the destination Portal.
3. **Prove.** The selected prover makes evidence of fulfillment available to the source chain.
4. **Settle.** The source-chain Portal checks the proof and pays the recorded claimant.

If a route is not fulfilled, the reward can become refundable after its deadline, or earlier once a cancellation after the route deadline has been proven to the source chain. Refunding is a separate transaction; see [Refunds by intent type](/resources/intent-types#refunds). Destination execution is atomic within its transaction; source-chain funding, destination fulfillment, and settlement do not share one transaction.

## Quotes and intents

A quote can contain multiple intents. For example, a source-chain swap can fund a cross-chain intent. Read the returned `steps[]` and track the associated intents rather than assuming one quote always means one transfer.

## Next steps

Read [Intent types](/resources/intent-types) for API route shapes or [Portal](/routes/architecture/portal) for contract operations.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.