FortiSwap is live at app.fortiblox.com, and it is the most ambitious thing FortiBlox has shipped on X1 so far. It is four products behind one set of tabs — a DEX aggregator for X1, a cross-chain bridge reaching fourteen networks, an on-chain order engine with six order types, and a fiat on-ramp that shops your card payment across four regulated providers.
The team behind it is already familiar to anyone who uses X1: FortiBlox runs one of the chain's most complete explorers and the Honey Badger trading bot. FortiSwap is the piece that turns that infrastructure outward — it is the first tool on X1 built for people who are not yet on X1.
The last hop is the whole trick
Every route into X1 ends the same way. Whatever chain your money starts on, whatever DEXs and bridges it crosses on the way, the final leg is USDC becoming USDC.x — the dollar token on X1, mint B69chRzqzDCmdB5WYB8NRu5Yv5ZA95ABiZcdzCgGm9Tq.
That single convention is what makes the whole thing tractable. FortiSwap does not need a bridge contract for every token on every chain. It needs one canonical dollar asset on each side and a router that can get any starting asset into USDC before the crossing. Everything upstream — swapping ETH on Arbitrum, hopping through an aggregator on Base, moving across a bridge — is a solved problem with existing liquidity. Only the last hop is X1-specific.
The Solana leg is the cleanest of them. The corridor charges a flat 1 USDC fee with no FortiBlox cut on top, and the transfer window runs from 11 USDC minimum — ten delivered after the fee — up to 5,000 USDC per bridge, narrowing when liquidity is thin. Because a flat fee is a percentage that shrinks as size grows, moving 5,000 USDC costs 0.02%. Moving the 11 USDC minimum costs 9%. This is a corridor built for real position sizes, not for testing it with $12.
Routes that start on an EVM chain work differently: they carry a FortiBlox fee of up to 0.25%, itemised as its own row in the quote and already inside the guaranteed minimum you are shown before signing.
Fourteen chains in, fifteen out
The Bridge tab moves value into X1 from Solana, Ethereum, Base, Arbitrum, Optimism, Polygon, BNB Chain, Avalanche, Linea, Cronos, HyperEVM, Story, Monad and Sui.
It moves value out of X1 to all of those plus TRON as a destination. The picker only offers corridors that can execute end to end from the card, so a route that would strand halfway is never presented as an option in the first place — a small design decision that quietly eliminates the most common way bridge UIs waste people's money.
Sitting under the bridge card is a panel labelled Compare cross-chain routes, which is where the aggregation actually shows itself: cheapest, fastest, or best output, compared across chains and DEXs, with the bridge's own fee and estimated time as visible line items per route. It will quote Arbitrum to Polygon as readily as anything to X1. FortiSwap is aggregating aggregators, and X1 is the destination it happens to be optimised for.
Best net output, with the route in plain sight
On X1 itself, FortiSwap is a router. Liquidity here is spread thin across venues — XDEX, RipperSwap and the pools that have grown up around them — and for any given size the best price is frequently not the direct pair.
So FortiSwap quotes every viable route for your exact amount: direct, multi-hop up to four hops, and split across pools. It ranks them by net output after every fee including its own, which means the number on the card is the number that arrives. There is no fee line to subtract afterwards.
The review screen then shows its work — which venues the swap touches, how many hops, whether it split and in what proportion, and how much the chosen route beat a plain direct swap by. Each hop reports its pool fee in parts per million (2800 is 0.28%), and the router accounts for those when ranking, so a longer route is only chosen when it genuinely nets out ahead.
FortiSwap's own fee is 0.25%, collected on-chain by its program at 3geAsZiNaWDuTVtTbdWVQRitd55jY4UoWeeBmJFTJZmE in the same transaction as the swap. It is identical whether you use the app or the API.
The rails that stop a bad trade
The safety model is unusually explicit, and it is enforced when the transaction is built rather than only in the interface — so it holds even if the front end is bypassed.
- Price impact is graded. Above 5% you get a notice. Between 10% and 20% you must tick an acknowledgement before the review screen will open. At 20% and above the swap is disabled unless you deliberately turn on Expert mode. Above 25%, no route is built at all.
- MEV protection is on by default. It caps effective slippage at 5% even when you have set a higher custom value, bounding what a sandwich can extract. FortiSwap is careful to call this a cap rather than a promise.
- Slippage is a floor, not a fee. The minimum-received figure is part of the transaction, and the program reverts rather than filling below it.
- Quotes expire on-chain. They refresh every ten seconds with a visible countdown and carry a slot expiry, so a stale quote is never submitted.
- Every transaction is simulated before it is returned. One that would fail comes back as the program's own error instead of arriving in your wallet as a signature request.
- Tokens carry trust tiers — Verified, Community, New, Caution, Danger — derived from on-chain signals and shown everywhere a token appears.
Six order types, all resting on-chain
The Orders tab is the part most likely to matter to traders already on X1, because these are not server-side watchers that die when a tab closes. Orders rest in escrow in the FortiBlox order program under terms you signed, an on-chain keeper fills them at your minimum-out or better or they revert, and you can cancel at any time.
| Order type | Fires when |
|---|---|
| Limit | The market crosses your trigger price. Add a take-profit and/or stop-loss to make it a bracket; with both on it becomes an OCO and filling one cancels the other. |
| Stop-loss | The price falls to your stop. |
| Take-profit | The price reaches your target. |
| Recurring | On a schedule — standard DCA or TWAP slicing, with an optional price band. |
| Trailing stop loss | A stop that ratchets up on-chain as the price climbs, then fills on the retrace. |
| Ladder | Sells across up to eight ascending take-profit rungs. |
Expiries run from one hour to never. The review screen draws your trigger lines on a price chart before you place. Orders carry the same 0.25% platform fee as swaps, and may fill in parts.
Worth noting the context: limit orders were the headline feature XDEX was working toward in July. FortiSwap has arrived with six types and a trailing stop that ratchets on-chain.
Buying USDC with a card — and the provider auction behind it
The Buy and Sell tabs are the on-ramp. In supported regions you can buy USDC with a debit or credit card, Apple Pay, a bank transfer, or a linked Coinbase account, delivered straight to your own wallet; Sell turns USDC back into a bank payout.
What makes it interesting is that FortiSwap does not pick a provider for you and does not hide the spread. It quotes Coinbase, Stripe, Transak and MoonPay live, side by side, ranked by how much USDC you actually receive for the same money — and the best one is selected automatically. On a $300 purchase the spread is not trivial:
| Provider | You receive | Provider & network fee | Rate | vs best |
|---|---|---|---|---|
| Coinbase | 292.68 USDC | $7.32 | 1 USDC = $1.00 | Best price |
| MoonPay | 283.75 USDC | $11.94 | 1 USDC = $1.02 | −3.05% — 8.93 USDC less |
| Transak | — | $13.72 | — | — |
Nearly nine dollars of difference on a three-hundred-dollar buy, and note where it comes from: the headline fee explains only part of it. MoonPay's $11.94 fee is $4.62 more than Coinbase's, but the gap in delivered USDC is 8.93 tokens, because MoonPay is also selling the dollar at $1.02 rather than $1.00. Ranking by what you receive rather than by advertised fee is the only comparison that catches that, and it is the comparison FortiSwap runs.
Identity checks and payment processing belong to whichever regulated partner you choose. FortiSwap never sees your card details and adds no fee of its own to a card purchase or a bank payout.
The same engine, over HTTP
Everything the app does with a quote or a transaction is exposed as a plain HTTP API at the same host, and there are two ways to pay for it. A free key gets 60 requests per minute and 3,000 per day across /api/quote and /api/tx/build; a partner tier raises that to 600 per minute and 100,000 per day.
The second route is the more forward-looking one. The priced endpoints speak x402, the open pay-per-request protocol: call without payment, receive a 402 describing the price, sign a USDC payment on Solana or Base, retry. A quote costs $0.001, building a transaction $0.005, router volume data $0.01 — no key, no signup, no contact with a human. There is a machine-readable catalogue at /api/x402/discovery and a compact /llms.txt for agents.
That is a deliberate bet on autonomous agents as customers, and it lands on a chain that has been making the same bet from the fee side. The server never holds a key on either tier: it returns an unsigned, pre-simulated transaction and the caller signs it.
What to keep in mind
FortiSwap is non-custodial in the strict sense — external wallets keep your key, and the sign-in wallets created for you from an email or social login are self-custody wallets whose key is split across secure hardware enclaves, exportable at any time. Every swap, order and bridge transaction shows up on an X1 explorer with your wallet as the signer. There is no FortiSwap balance and no withdrawal step.
Three caveats are worth carrying in anyway. FortiSwap does not operate the bridges it integrates — each corridor is run by its own bridge, with its own fee, timing and risk, and that is a dependency the interface cannot abstract away. The Solana corridor's 5,000 USDC ceiling is a liquidity constraint, not a policy one, which means it can tighten. And an application built on the API may add an integrator fee of up to 3% on top of the protocol fee — disclosed in the build response as integratorFee, but disclosed to the integrator, not necessarily to you.
None of that is unusual for a cross-chain router. What is unusual is that all of it is written down. For a chain whose main friction has always been simply getting funds onto it, a working front door with fourteen chains behind it and a card checkout beside it is a bigger deal than any single feature on the list.