Swapping is where most people first hit the plumbing of crypto. You tap a button labelled "Swap," approve a transaction, and a different asset shows up in your wallet a few minutes later. Behind that button, though, two very different machines can be doing the work — with different costs, risks, and failure modes.
This guide walks through how swapping works inside Zelcore, when to use the built-in aggregator versus connecting to an on-chain exchange, and how to dodge the two most common ways beginners lose money on a swap: loose slippage and sandwich attacks.
Before you start
A few things are worth nailing down before you tap anything.
A "swap" just means trading asset A for asset B without an exchange account. But the swap button in Zelcore can route your trade through a cross-chain aggregator with a partner exchange, or you can connect Zelcore to an on-chain DEX and trade directly against a liquidity pool. Same word, different machines.
Zelcore is non-custodial. You never deposit to Zelcore itself, and every swap starts with a signature from a key you control. That signature is not always the last word, though: an ERC-20 token approval allows the approved spender to withdraw from your account multiple times, up to the amount you approved (the ERC-20 standard). A spender can use that allowance later without asking you again, so before you confirm any approval, check who the spender is and how much it may move. If you haven't read them yet, what a wallet actually stores and seed phrases are the foundations that make this true.
Every swap has two kinds of cost: the provider's own fees, built into the quote, and network fees. In Zelcore's Swap, each offer's rate already includes the provider's fees and any partner fee; the Fee in the summary is the network fee for sending your asset to the provider, paid from your wallet; and the Network Fee, when the provider reports one, is paid by the provider to the destination blockchain and already deducted from the amount you receive (Zelcore's swap guide). So a cross-chain swap, BTC to ETH for example, touches two blockchains, but only the source-chain fee comes out of your wallet directly.
Three words to keep straight:
- Spread is the provider's profit, built into the quote before you see it.
- Slippage is the price moving between the moment you sign and the moment the trade executes.
- Price impact is how much your own trade moves the pool price.
Three distinct costs. Confusing them is how traders convince themselves a bad quote was actually fine.
Two ways to swap
Zelcore gives you two different paths to a swap, and choosing the right one matters more than any slippage setting.
In-wallet aggregator (Swap)
Swap is Zelcore's built-in aggregator (it replaced the legacy QuickSwap). It compares offers from several third-party swap providers — centralised exchange services as well as DEX and cross-chain routers; the list changes over time, and the app shows the ones available for your pair — and shows you a quote without leaving the wallet UI. With an exchange-style offer, you send the source asset to the provider, and from then on the provider, not you, controls those funds: it will either complete the swap, request verification, or refund you (Zelcore's Fusion FAQ).
Strengths: cross-chain in one step, simpler UX, and exchange-style offers need no token approval. Offers badged DEX route through on-chain liquidity, and swapping a token that way can start with a token approval transaction, so read any approval request before you confirm it. Weaknesses: the provider's spread and fees are built into each quoted rate and vary by provider and pair, quotes time out, and you are trusting the partner's internal routing and custody during the swap.
WalletConnect to a DEX
The other path is connecting Zelcore to an on-chain DEX — Uniswap, PancakeSwap, Jupiter — through WalletConnect. In a direct pool swap, instead of a partner brokering the trade, you sign a transaction that trades against an automated market maker pool, and the price comes from the pool's formula. Executing the swap sells your tokens for a proportional amount of the token you want, minus the swap fee, which is awarded to liquidity providers (Uniswap's swap documentation). You are also trusting code: a faulty or malicious token or DEX contract can lose or lock what you send it, so use a DEX you know and check the token's contract address before you trade. DEX apps don't always send you to a single pool: some route an order through third-party fillers, and then you sign an order rather than the swap transaction itself, so read what the app asks you to sign. Some tokens charge their own transfer fee on top, so compare the final amount you receive after all fees, not the headline rate. Part 6 covers WalletConnect mechanics in detail, but the tradeoff is worth stating up front: a direct pool swap gives you transparent on-chain pricing, settles on the one chain the pool lives on, and on Ethereum is exposed to public-mempool MEV. Some DEX apps now add cross-chain routes as well, each with its own supported networks and terms, so check which route a quote uses.
Rule of thumb: use Swap for cross-chain trades or assets Zelcore natively holds. Use a DEX via WalletConnect for deep same-chain markets where you want the tightest price execution.
In Zelcore: running an in-wallet swap step by step
Swap is available on desktop, Android, iOS and the browser extension. It can't be paid from a hardware wallet; hardware wallets pair with Zelcore on desktop only, so pick a software wallet as the selling wallet.
- Open Zelcore and select Swap in the main menu.
- Pick the asset you are selling and the asset you are buying. Both must be enabled in your wallet — if you don't see the destination asset, enable it first in your asset list.
- Enter the amount to sell. Offers appear as providers return quotes.
- Choose an offer. Offers are grouped under Featured Provider and All Rates, and the cheapest is tagged Best Rate. Each offer shows its rate type: a fixed rate does not change, so you get the amount shown as long as the provider's terms, including its deposit deadline, are met; a float rate follows the market, so the amount you receive can differ slightly.
- Check minimums and maximums with Show Pair Limits. Each provider sets its own minimum and maximum for each pair, shown in the app.
- Accept the third-party provider's terms when prompted. KYC requirements come from the provider, not from Zelcore: most swaps do not require KYC, but a provider can flag a swap for KYC verification or put it on hold for manual review, for example over a large amount, certain regions or its own compliance screening, and by then the provider has already received your funds (Zelcore's Fusion FAQ).
- Review the Transaction Summary (Rate, Rate Type, Fee, Network Fee when the provider reports one, and You'll Receive), then tap Swap Now to sign the outbound transaction from your source wallet (with d2FA on, the button reads Verify PIN and Swap). Your destination asset lands in your Zelcore address when the provider completes the swap; follow it under View Transaction History → Track Exchange.
Cross-chain swaps don't settle instantly. A BTC-to-ETH trade waits for Bitcoin confirmations before the ETH leg releases. Zelcore's Fusion FAQ gives 30 minutes to 2 hours for cross-chain swaps, and 12-48 hours for a swap on hold. Check Track Exchange under View Transaction History before you treat a swap as stuck.
For a broader look at Fusion swaps alongside other advanced tools, see Zelcore's advanced features.
Fixed vs floating, practically: compare what each offer commits to. A fixed offer commits to the amount shown in the summary, within the provider's terms, and those terms include a deposit deadline: on ChangeNOW, for example, a fixed rate stays locked for 10 minutes from creating the trade, the deposit has to arrive within that window, and if you miss it the trade switches to floating rate, or gets refunded if that's not possible. A float offer follows the market, so what you receive can differ slightly from the amount shown. Compare the You'll Receive figure across offers. If you need a certain amount, for example during a news spike, pick a fixed offer and check its terms and deposit deadline before you confirm, especially when the source network is congested.
Slippage and price impact, in plain English
Slippage tolerance is the worst price you will accept. On a DEX, if the execution price ends up outside your slippage range, the transaction fails and the swap does not occur (Uniswap's swap documentation). The network fee is still spent, because the gas fee is paid whether a transaction succeeds or fails (ethereum.org on gas). An in-wallet swap has no slippage setting: a fixed-rate offer pays the amount shown in the summary, while a float-rate offer follows the market, so the amount you receive can differ slightly from the one shown (Zelcore's swap guide).
Most people use a DEX through its web interface, which typically adds routing, warnings and default safety settings on top of the protocol itself (Uniswap's swap documentation). A slippage tolerance is often one of those defaults. Check that number before you sign rather than trusting it: the looser it is, the more room a sandwich bot has.
Why are stablecoin pairs so tight? Both sides track the same dollar peg, pools are deep, and arbitrage keeps them pinned. Even a sizeable stablecoin swap on a deep pool usually shows very little price impact, and the interface shows its estimate before you confirm.
Exotic pairs are another world. A small-cap token paired only with ETH might have $50k of liquidity. A $5k trade is 10% of the pool and suffers huge price impact under the x·y=k curve — and no slippage tolerance saves you from price impact, because price impact is baked into the trade's math. The more liquidity sits at the current price, the lower the price impact for a given trade size (Uniswap's swap documentation). In Swap, slippage is abstracted behind a single quote, but the same physics applies: exotic-pair quotes come back noticeably worse than stable-pair quotes from the same provider.
Two habits that save money:
- Compare routes by the total you receive. Splitting a large trade into slices that all hit the same thin pool doesn't cut the total price impact, because each slice moves the same pool and pays its own fees. A route through deeper liquidity is what helps.
- Never accept auto-slippage above ~2% on a major pair. More slack is an invitation, not a safety margin.
Setting slippage to 50% to "just force it through" is the single most common way people get sandwiched for double-digit percentages.
MEV and sandwich attacks
MEV (Maximal Extractable Value) is the profit a block builder or bot can extract by reordering, inserting, or censoring transactions in a block. Sandwiches are the most common retail-facing form.
A sandwich works like this. A searcher's bot watches the public mempool for large DEX trades, buys immediately before your trade and sells immediately after it, at the higher price your own order caused (ethereum.org on MEV). Your swap executes at the worse price in between, and the difference is the bot's profit.
There is no simple checklist that rules a sandwich out. A bot has to see your trade before it lands (on Ethereum, in the public mempool), and whether the attack pays depends on your trade size, how far it moves the price, how much room your slippage tolerance leaves, and what the extra transactions cost the bot to execute. Thin liquidity is no protection: it increases your trade's price impact.
The risk follows how a DEX trade is routed and ordered, not one chain. Solana forwards transactions to the upcoming block leader rather than a shared mempool, but searchers with direct validator connections can still observe transaction flow and respond to it, and sandwich attacks are the harmful kind of MEV to protect against there (Solana's MEV protection guide), so a Jupiter swap needs the same care. Exchange-style offers in Swap are different: they settle off-chain with a partner, so there is no pool trade of yours to sandwich. Offers badged DEX do route through on-chain liquidity.
If you are using WalletConnect to hit a DEX on Ethereum mainnet, you have mitigations. Private RPCs route a transaction to block builders instead of the public mempool, and they only protect transactions the sending wallet actually submits through them. Flashbots Protect is the best-known one: it is an Ethereum RPC that hides transactions from the public mempool and can refund MEV and surplus priority fees, but in fast mode (rpc.flashbots.net/fast) it shares your transaction with all registered builders and with searchers running in secure enclaves, and you trust those builders not to front-run it (Flashbots Protect quick start). MEV Blocker is another Ethereum mainnet RPC, and its operators still tell users to set slippage control alongside it (MEV Blocker). Blink and wallet-level "MEV Protect" toggles are further options. On other chains, a tight slippage tolerance is your main defence.
For the underlying primitives — wallets, gas, and token approvals — read the DeFi fundamentals guide before your first serious DEX trade.
Verification
After an in-wallet swap, check the incoming transaction in Zelcore's history and on the destination chain's block explorer. Confirm the destination address, the amount, the chain and the transaction hash, and check the order's status with the provider. Zelcore surfaces an order ID after you sign — save it. You can follow the swap under View Transaction History → Track Exchange, and many exchange-style swap providers have a status page you can query by order ID.
On less common chains, start with a small test swap (Zelcore's Fusion FAQ). Show Pair Limits shows each provider's minimum and maximum for the pair, and an amount below every provider's minimum gets an error instead of offers (Zelcore's swap guide). A test confirms the address and the flow for that one order only. It doesn't tell you how the provider will treat a larger order: large amounts are a common reason for a provider to put a swap on hold for manual review, which can include a KYC request (Zelcore's Fusion FAQ).
When a quote feels wrong, sanity-check it against a DEX aggregator in your browser. A quote that comes back 3% worse than everywhere else is a bad quote, not a lucky one.
Troubleshooting
Swap is stuck past the expected window. Check Track Exchange under View Transaction History, or look up the order ID on the provider's status page. Cross-chain swaps wait on source-chain confirmations — a BTC-leg trade can take 30+ minutes during fee spikes.
Received less than quoted on an in-wallet swap. Compare the offer's rate type with the order's status under Track Exchange: a float-rate offer follows the market, so the amount you receive can differ from the one shown. If the payout doesn't match the offer's terms, contact the provider with your order ID. Next time, a fixed-rate offer confirmed promptly gives more certainty, within the provider's terms.
On-chain DEX swap failed. Usual suspects: slippage too tight (reverted), insufficient native gas token for the fee, a missing or expired token approval, or the router contract paused. Block-explorer error messages tell you which.
Balance didn't update after a cross-chain swap. The destination asset might be a token that isn't enabled in your wallet yet. Enable it in the asset list and the balance appears.
Quote looks far worse on one provider. Either the pair has poor liquidity with that provider, or the market is moving and quotes have gone stale. Refresh, or switch providers.
Next up
That covers the in-wallet swap path end to end. The other half of the swapping story is connecting Zelcore to DEXs and dApps directly, through WalletConnect. That is Part 6 — how the handshake works, what you are actually signing, and how to stay safe once your wallet is speaking to a website.



