For the complete documentation index, see llms.txt. This page is also available as Markdown.

FAQ

For investors and partners

What is Epoch Protocol?

Epoch is cross-chain intent infrastructure. Users sign once to express what they want (swap, bridge, or execute a protocol action), and Epoch handles routing and execution across blockchains.

How is Epoch different from a bridge or DEX aggregator?

Product
What it does

Bridge

Moves assets between chains

DEX aggregator

Finds best swap on one chain

Epoch

Composes swap + bridge + protocol action into one signed intent

Epoch is the orchestration layer — not a single bridge or DEX.

What chains are supported?

See Supported Chains & Tokens. Public mainnet supports Base, Arbitrum, Polygon, and Optimism with USDC, USDT, WETH, and DAI. For additional chains or tokens, contact the Epoch team or on Telegram.

Is Epoch custodial?

No. Users connect their own wallets and sign transactions. Epoch orchestrates execution but does not take custody of user assets outside of explicitly opted-in Compact resource-lock flows.

Who uses Epoch today?

Kismet — cross-chain raffle ticket purchases on Base — is a live reference integration.


For integrators

What wallet do users need?

A standard EOA wallet: MetaMask, Rainbow, Coinbase Wallet, or any WalletConnect-compatible wallet. No smart-wallet deployment is required for the default integration path.

For testnet gasless flows with a local private-key signer, use the SDK directly — see Gasless Deposits.

What is gasless in Epoch?

On testnet, gasless mode is available via @epoch-protocol/epoch-intents-sdk (and headless @epoch-protocol/epoch-flows-sdk) — not through @epoch-protocol/epoch-intent-widget. Local private-key wallets call convertToSmartAccount({ chainId }) once, then solveIntent({ gasless: true, allowGaslessSmartAccount: true }). Injected wallets use wallet-native batching only when already a smart wallet; the SDK does not prompt upgrade. From the user's perspective the entire intent is gasless when enabled. Runnable test: pnpm example:local-wallet in smallocator/sdk. See Gasless Deposits. Mainnet gasless is not documented until announced.

Do I need the SDK?

Yes — use the SDK. It handles task encoding, quoting, signing, and status polling. All integrations should go through @epoch-protocol/epoch-intents-sdk. See Quickstart and SDK Integration Guide.

How do reverse quotes work?

Set tokenInAmount: "0" and provide minTokenOut with the exact output the user needs. Epoch computes the required input amount. Required for fixed-price purchases (e.g. raffle tickets).

How long does execution take?

Cross-chain intents typically complete in 1–10 minutes depending on path complexity and chain finality. Poll intent status every 3 seconds; do not assume instant completion.

How do I get testnet access?

Use testnet with apiBaseUrl: https://testnet-dev.epochprotocol.xyz. See Supported Chains & Tokens for testnet chain IDs and token addresses.

How do I add my protocol?

  1. Define protocol and action names.

  2. Document your extraData schema and destination contracts.

  3. Contact Epoch for partner onboarding.

See Protocol Interaction Guide.

What happens if a transaction fails?

Check Error Handling. Users can retry with a new quote. Use retryIntentSolve only per Epoch guidance.

Can I show the execution path to users?

Yes. The quote response includes a path field. Present it as a human-readable route summary.

Are resource locks (Compact) required?

Only for certain flows. The quote response includes resourceLockRequired: true when applicable. Contact Epoch for Compact partner setup.


Security

What should I never expose in my app?

  • User private keys

  • Internal Epoch infrastructure URLs

What addresses are safe to show users?

Integration-facing contract addresses (raffle factory, protocol contracts) — see Public Contracts.

Last updated