FOR

WALLET PLATFORMS

Failsafe onchain execution

Failsafe onchain execution

Failsafe onchain execution

Eco gives wallet platforms wider market access, better swap execution, and opinionated stablecoin optionality. Every transaction carries its own guardrails onchain, so what your policy engine approves is exactly what executes, or nothing does.

Eco gives wallet platforms wider market access, better swap execution, and opinionated stablecoin optionality. Every transaction carries its own guardrails onchain, so what your policy engine approves is exactly what executes, or nothing does.

Expand market access, with superior swap execution

Expand market access, with superior swap execution

Expand market access, with superior swap execution

Your users want to reach assets and opportunities wherever they live onchain. Eco connects your platform to liquidity across major chains and venues, with real-time swap routing across them.

Your users want to reach assets and opportunities wherever they live onchain. Eco connects your platform to liquidity across major chains and venues, with real-time swap routing across them.

Cross-chain swaps in one action

Cross-chain swaps in one action

Users swap from an asset on one chain into an asset on another in a single flow, with stablecoins as the connecting layer.

Tokenized assets and RWAs

Tokenized assets and RWAs

Offer tokenized stocks and other real-world assets purchasable with stablecoins, under the same execution guarantees as everything else.

Deposit-to-earn in one step

Deposit-to-earn in one step

Let users swap into an asset and deposit it into lending or yield markets in a single transaction, with automated sweeps.

Live-state routing for superior execution

Live-state routing for superior execution

Each swap reads prices and depth across venues during execution and fills through the best available path. Larger swaps spread across multiple pools, weighted by what each one offers at that moment, under a single price limit.

ETH · BASEWBTC · ARBTOKENIZED STOCKSLENDINGSOL · SOLANAUSDCANY ASSET IN, ANY MARKET OUT

Failsafe onchain execution for policy engines and agents

Failsafe onchain execution for policy engines and agents

Failsafe onchain execution for policy engines and agents

Your policy engine enables transaction construction and signing based on off-chain operations. Eco translates those policies into failsafe onchain execution—with price limits, minimum outputs, and balance checks written into the transaction and enforced onchain, so it can only produce the outcome your policy approved.

Your policy engine enables transaction construction and signing based on off-chain operations. Eco translates those policies into failsafe onchain execution—with price limits, minimum outputs, and balance checks written into the transaction and enforced onchain, so it can only produce the outcome your policy approved.

Policies enforced onchain

Policies enforced onchain

Turn outcome-based rules into conditions the transaction itself must satisfy before any money moves.

All-or-nothing by design

All-or-nothing by design

If any condition fails, every step in that execution reverts, including token transfers and approval changes. Each execution is atomic on its chain; cross-chain funding, fulfillment and refunds are separate transactions.

Simulate before signing

Simulate before signing

Preview any program against live chain state before it reaches your signer, giving policy checks and users a clear view of the expected result.

Works with your signing stack

Works with your signing stack

Eco produces standard unsigned transactions for your MPC, HSM, or embedded signer. Accounts belong to the user, and a private account requires its owner’s authorization to execute.

policy.ts
1export default program(({ amountIn, policy }) => {
2 const out = swap(USDC, WETH, amountIn)
3 require(out >= policy.minOut, "min output")
4 require(price(WETH) <= policy.maxPrice, "price cap")
5})
all-or-nothing.ts
1USDC.approve(router, amountIn)
2const out = router.swap(USDC, WETH, amountIn)
3require(out >= minOut, "min output")
4lending.deposit(WETH, out)
5
6// one failed check reverts every step above
simulate.ts
1const preview = await sauce.simulate(program, {
2 account: user.account,
3})
4
5preview.outputs // expected balances
6preview.checks // every require() evaluated
sign.ts
1const tx = await sauce.build(program, {
2 account: user.account,
3})
4
5// unsigned: hand it to your MPC, HSM, or embedded signer
6const signed = await signer.sign(tx)

Stablecoin based UX

Stablecoin based UX

Stablecoin based UX

Stablecoins are what most wallet users actually move. Eco Routes gives your platform a stablecoin-first execution layer: send, receive, and convert dollars across chains with signed quotes and guaranteed outcomes, without building routing or liquidity infrastructure yourself.

Stablecoins are what most wallet users actually move. Eco Routes gives your platform a stablecoin-first execution layer: send, receive, and convert dollars across chains with signed quotes and guaranteed outcomes, without building routing or liquidity infrastructure yourself.

Signed quotes, guaranteed delivery

Signed quotes, guaranteed delivery

Every transfer is quoted and signed up front, then delivered on those terms or, if it expires unfilled, made eligible for a refund. Your users never get a surprise amount.

1:1 stablecoin conversion

1:1 stablecoin conversion

Work with Eco to move between eligible stablecoin pairs at par, so routine conversions don’t cost users a spread. Eligible pairs and pricing are agreed with Eco.

Gasless, single-signature flows

Gasless, single-signature flows

Users authorize transfers with one signature across chains, without holding native gas tokens on each network.

Deposit addresses on supported routes

Deposit addresses on supported routes

Give each wallet a deposit address that accepts stablecoins on supported routes and forwards them where they belong. Available by request.

SEND500.00 USDCToArbitrumNetwork feeNo gas tokenQuoteSignedONE SIGNATUREDELIVEREDOR REFUNDED, NEVER STUCK
ETH · BASEWBTC · ARBTOKENIZED STOCKSLENDINGSOL · SOLANAUSDCANY ASSET IN, ANY MARKET OUT
policy.ts
1import { uniswapV3 } from "@sauce/router";
2
3// your policy engine sets pool and min;
4// the program can't go past them
5function main(pool: Address, amt: Uint256,
6 min: Uint256) {
7 require(pot.USDC >= amt, "not enough USDC");
8 uniswapV3(pool, USDC, WETH, amt, 0, min,
9 ctx.self());
10}
all-or-nothing.ts
1import { uniswapV3 } from "@sauce/router";
2
3function main(pool: Address, amt: Uint256,
4 min: Uint256) {
5 const before = pot.WETH;
6 uniswapV3(pool, USDC, WETH, amt, 0, min,
7 ctx.self());
8 const got = pot.WETH - before;
9 WETH.approve(AaveV3.Pool, got);
10 AaveV3.Pool.supply(WETH, got, ctx.self(), 0);
11}
12// a failed step reverts this whole execution
simulate.sh
1# simulate from the user's account on a
2# snapshot of current state
3sauce simulate policy.sauce.ts --chain base \
4 --owner 0xUserAccount \
5 --args 0xPool 1000000 0 --json
6
7# report: ok, or reverted + error · returns
8# transfers, approvals, leftInPot
sign.ts
1import { routes } from "@eco-incorp/sauce";
2
3const call = routes.buildSauceEvmCall({
4 pot, engine, program });
5// unsigned { to, data, value }: hand it to
6// your MPC, HSM or embedded signer, using
7// that signer's own API
8await signer.sendTransaction(call);
SEND500.00 USDCToArbitrumNetwork feeNo gas tokenQuoteSignedONE SIGNATUREDELIVEREDOR REFUNDED, NEVER STUCK

Give your users seamless, failsafe onchain execution

Tell us about your wallet platform, your policy engine, and the flows your users need. We’ll show you where Eco can expand access, improve execution, and make every signature safer.

Give your users seamless, failsafe onchain execution

Tell us about your wallet platform, your policy engine, and the flows your users need. We’ll show you where Eco can expand access, improve execution, and make every signature safer.

Give your users seamless, failsafe onchain execution

Tell us about your wallet platform, your policy engine, and the flows your users need. We’ll show you where Eco can expand access, improve execution, and make every signature safer.

Frequently asked questions

Frequently asked questions

Frequently asked questions

Your policy engine decides whether a transaction gets signed. Eco makes sure a signed transaction can only produce the approved outcome, by enforcing limits like minimum output and maximum price onchain, in the same transaction that moves the funds.

Yes. Eco produces standard unsigned transactions that any signer can sign. Keys stay in your infrastructure, and Eco never needs access to them.

No. Eco is non-custodial. Sauce programs run through accounts owned by the user, and cross-chain transfers sit in a dedicated escrow until delivery is proven.

Yes. Eco composes with leading aggregators. Use Eco’s default swap logic, route through the aggregators you already use, or combine them with Eco checking its runtime first and falling back to the aggregator quote.

Use Routes for stablecoin transfers and swaps across chains with signed quotes and guaranteed delivery. Use Sauce when a transaction needs logic, such as live-state routing, multi-step flows, or policy conditions enforced onchain. The two compose: a Routes transfer can land and run a Sauce program on arrival.

Reach out through the intake form. We’ll review your platform, signing architecture, and user flows, and recommend where to start.

Get email updates on Eco and

everything stablecoins

THANKS FOR SUBSCRIBING

© 2026 Eco. All Rights Reserved.

Get email updates on Eco and

everything stablecoins

THANKS FOR SUBSCRIBING

© 2026 Eco. All Rights Reserved.

Get email updates on Eco and

everything stablecoins

THANKS FOR SUBSCRIBING

© 2026 Eco. All Rights Reserved.