Best-execution layer for Canton

Best execution, native to Canton.

Every trade routes to the best net price and is built to settle in one atomic, private transaction. Neutral by design: venues compete on price alone.

The problem

Every venue prices it differently.

Canton's venues quote the same pair at different prices, and no neutral layer compares them. Synfin is that layer.

One standard for tokens. No standard for getting the best price.

How it works

One call. The whole market.

Tell Synfin what you want to trade. It quotes every venue, splits for the best price, and settles in one transaction.

  1. Quote
    pull live prices from every venue
  2. Compare
    rank them by net receive
  3. Split
    route to the venues that fill it best
  4. Route & settle
    execute the split as one atomic, private transaction

Each venue sees only its own leg; the executor coordinates the whole atomic transaction. No public mempool to front-run. Per-leg privacy is not anonymity to your own counterparty. See the interactive walkthrough

Two paths

Swap on it. Or build on it.

For users

The swap app is live on Canton mainnet.

  • Live venue comparison on every quote
  • One signature, executed from your wallet
  • Tracked to settled, never a silent spinner
  • Non-custodial: Synfin holds no keys

Integrate

One key. Your fee, on every quote.

Request a key, quote with your fee attached, get an execution plan, execute from your own wallet, track to settled. One integration reaches Canton's venues.

  • Your fee, your revenue : attach 0 to 10 bps to any quote; you keep 100 percent of it.
  • Ranked honestly : venues ordered by worst-case net receive after all fees.
  • Executed from your wallet : funds move user to venue; Synfin holds no keys.

Pricing: a flat 10 bps service fee on every pair, a launch default. Partners set their own fee from 0 to 10 bps and keep 100 percent of it. Every fee is a disclosed line on the quote.

keyed-quote.sh
# one keyed call: live venue quotes with your fee applied
curl "https://synfin.xyz/api/quote?from=CC&to=USDCx&amount=1000&feeBps=30&feeRecipient=YOUR_PARTY" \
  -H "x-api-key: sk_live_..."

# each venue quote carries your fee as disclosed lines:
{
  "venueId": "cantex",
  "net": "137.678433",
  "clientFees": {
    "integrator": { "bps": 10, "amount": "0.137679",
                     "recipient": "you::1220..." },
    "service":    { "bps": 10, "amount": "0.137679" },
    "userReceives": "137.403075"
  }
}

Response excerpt from a live keyed quote (2026-07-03). Prices move tick to tick; the shape and the fee lines do not.

Route your first trade. It takes one key.

Request a free API key, attach your fee to every quote, and execute from your own wallet. Neutral by design: venues compete on price alone.

Every venue adapter declares one of two settlement modes: atomic allocation co-settles all legs in one transaction via the token standard (CIP-0056 / 0112); managed deposit is quote-and-deposit, deferred, non-atomic. Atomic settlement is live on Canton today, and the atomic path widens as venues adopt the allocation flow. How venues plug in

  • Non-custodial
  • Wallet-signed
  • Neutral by design