Rewards Harvesting

Overview

The iAERO Protocol Reward Swapper is a powerful automation tool that transforms the tedious process of managing dozens of reward tokens into a single click. Instead of manually swapping 50+ different tokens every week—dealing with approvals, finding routes, monitoring slippage, and tracking dust balances—you can now convert everything to USDC or compound it back into iAERO instantly.

Time savings: ~2 hours per week → ~10 seconds


Industry First: A Feature Others Haven't Built

To our knowledge, iAERO Protocol is the first and only liquid staking protocol to offer automated batch reward swapping at this scale and sophistication.

Why Is This Unique?

Most liquid staking protocols stop at claiming rewards:

  • Lido, Rocket Pool, Frax: Rewards come in a single token (ETH, rETH, etc.)

  • Yearn, Convex: Multi-token rewards, but no batch conversion tools

  • Beefy, Harvest: Auto-compound single tokens, but can't handle diverse reward streams

  • Standard veNFT protocols: Leave users to manually manage everything

iAERO is different because:

  1. ✅ We deal with 50+ different reward tokens weekly (the complexity problem)

  2. ✅ We built intelligent routing across multiple DEXs

  3. ✅ We handle scam filtering, FOT tokens, and edge cases automatically

  4. ✅ We provide one-click conversion to either stables (USDC) or compounding (iAERO)

  5. ✅ We make it economically viable through batching and gas optimization

💡 Competitive Insight: Most protocols avoid this problem by simplifying their reward structure to a single token. We embraced the complexity because we participate in Aerodrome's full incentive ecosystem—which means more yield sources, but also more tokens to manage. Instead of limiting our yield potential, we built the tooling to handle the complexity. The result? You get maximum yields with minimum effort. No other protocol offers this combination.

Why Haven't Others Done This?

Building a production-grade multi-token batch swapper is hard:

  • Quote aggregation across DEXs with different interfaces

  • Dynamic slippage calculation based on token value and liquidity

  • Failure recovery when some tokens can't be swapped

  • Gas optimization through intelligent batching

  • Security through whitelisting and validation

  • Scam token filtering to protect users

  • Fee-on-transfer token support (many tokens charge fees on transfer)

  • Stale quote handling (crypto prices change every second)

Most protocols either:

  1. Don't have this problem (single token rewards)

  2. Have the problem but leave it to users

  3. Tried to build it and gave up due to complexity

We invested the engineering time because we believe user experience matters. Your time is valuable. Manual reward management is a tax on your attention and productivity.

This isn't just a nice-to-have feature—it's a fundamental reimagining of how reward management should work in DeFi.


⚠️ Critical: How Token Swapping Works

IMPORTANT: The "Claim & Convert" and "Sweep Wallet" operations will swap ALL tokens in your wallet that are registered in the protocol's token registry—not just newly claimed rewards.

What gets swapped:

  • ✅ Newly claimed rewards from the current week

  • ✅ Leftover tokens from previous weeks

  • ✅ Dust amounts you've accumulated

  • Any token you're manually holding that's in the registry

If you want to HOLD a specific token: You must move it to a different wallet address BEFORE using the swap functions. The protocol cannot distinguish between "rewards I want to swap" and "tokens I'm intentionally holding."

Example scenario:

  • You claim 100 AERO as rewards

  • You already have 500 AERO in your wallet from last week that you're saving

  • You click "Claim & Convert to USDC"

  • Result: ALL 600 AERO will be swapped to USDC

Why it works this way: The batch swapper checks your wallet balance for all registered tokens and swaps everything it finds. This is by design—it ensures you never leave dust behind and truly "one-click" converts everything to your target asset.


The Problem We Solved

When you stake iAERO, you earn rewards from Aerodrome's voting incentives. This is fantastic for yields, but creates an operational challenge:

Traditional Reward Management (The Old Way):

  1. Claim rewards across multiple pools ⏱️ 5 minutes

  2. Identify what tokens you received 🔍 3 minutes

  3. Check each token's value and liquidity 💰 5 minutes

  4. Find optimal swap routes for each token 🗺️ 10 minutes

  5. Approve each token individually 📝 20 minutes (if doing them all)

  6. Execute 50+ individual swaps 🔄 60+ minutes

  7. Deal with failed transactions and slippage 😤 10-30 minutes

  8. Track dust amounts too small to swap 🧹 5 minutes

Total: 2-3 hours of tedious work every single week.

And you'd likely skip tokens worth less than $5 because the gas fees and time weren't worth it. That's yield left on the table.


The Solution: Intelligent Batch Swapping

Our Reward Swapper automates this entire process with sophisticated on-chain orchestration:

One-Click Operations:

1. Claim & Convert to USDC

  • Claims all pending rewards from the distributor

  • Swaps everything to USDC automatically

  • Sends clean stables to your wallet

  • Perfect for taking profits or DCA strategies

2. Claim & Compound

  • Claims all pending rewards

  • Converts everything to iAERO

  • Maximizes long-term accumulation

3. Sweep Wallet (Advanced)

  • Swaps reward tokens already in your wallet

  • No claiming required

  • Useful for accumulated dust or external rewards

  • Converts everything to USDC

⚠️ Important Note on Token Selection: The system swaps ALL tokens in your wallet that are in the protocol's registry. It does not distinguish between:

  • Rewards you just claimed this week

  • Tokens you've been holding from previous weeks

  • Tokens you acquired externally and deposited to this wallet

If you want to keep certain tokens (e.g., manually managing AERO for other purposes), move them to a different wallet address before clicking "Claim & Convert" or "Sweep Wallet."

What Happens Under the Hood:

  1. Registry Scan 🔍

    • Checks all known reward tokens from the protocol registry

    • Identifies what you have in distributor + wallet

  2. Pre-Screening 🛡️

    • Filters out scam tokens with no price data

    • Validates token contracts are legitimate

    • Prevents wasting gas on worthless tokens

  3. Smart Routing 🗺️

    • Fetches real-time quotes from 0x aggregator

    • Calculates optimal slippage for each token

    • Routes through best available DEX (Aerodrome, Uniswap V3, or aggregator)

  4. Batched Execution

    • Processes 8 tokens per transaction

    • Simulates each swap before executing

    • Continues even if some tokens fail

    • Reports exactly what succeeded vs failed

  5. Safety Checks

    • Validates quotes aren't stale

    • Adjusts slippage based on token value and liquidity

    • Skips tokens with excessive price impact

    • Ensures minimum output amounts


Token Approvals: What You Need to Know

How Approvals Work

Before the Reward Swapper can swap a token, it needs your permission (approval) to spend that token on your behalf. This is standard for all DeFi protocols.

Two Approval Strategies:

  • Approve each token for maximum amount (2^256-1)

  • Only needs to be done once per token, ever

  • Future swaps happen instantly without re-approval

  • Saves ~$0.50-$2 in gas fees per token, per swap

Strategy 2: Exact Amount Approval

  • Approve only the specific amount you're swapping

  • Requires re-approval every single time

  • More transactions = more gas fees

  • More tedious but maximum control

The First-Time Experience

When you first use the swapper:

The frontend will automatically request approvals for any tokens that need them. You'll see transactions like:

After initial setup, if you chose infinite approvals, future swaps just work—no approval pop-ups, no extra transactions, no delays.


Is Infinite Approval Safe? (Yes, Here's Why)

You might reasonably worry: "If I approve infinite amounts, can the contract steal my tokens?"

The answer is NO, and here's exactly why:

1. Smart Contract Architecture 🏗️

The Reward Swapper contract is designed with multiple security layers:

Access Controls:

  • Only whitelisted addresses can call swap functions

  • Owner cannot arbitrarily swap user tokens

  • No functions that allow owner to transfer your tokens directly

Whitelisted Operations Only:

  • Only approved DEX routers can be used (Aerodrome, Uniswap V3, 0x, 1inch, Odos)

  • Only approved function selectors are callable

  • Only approved output tokens are allowed (USDC, iAERO, AERO, etc.)

Built-In Safety Mechanisms:

2. Allowance Reset After Each Swap 🔄

This is critical: After every swap, the contract resets the allowance back to zero:

This means:

  • Even if a router is compromised, it can only use tokens during an active swap

  • Your infinite approval to the swapper doesn't translate to infinite approval to external protocols

  • The swapper only grants temporary, transaction-scoped approvals to routers

3. You Control Execution 🎮

The swapper cannot act on its own. Every swap requires:

  1. You initiate the transaction

  2. You sign with your wallet

  3. The transaction executes your plan

  4. Tokens go where you specified (recipient)

The contract has zero ability to:

  • Initiate swaps on its own ❌

  • Send your tokens to arbitrary addresses ❌

  • Change swap parameters mid-flight ❌

  • Access your tokens when you're not actively using it ❌

4. Open Source & Audited 📖

  • Full contract source code is available

  • Logic is transparent and verifiable

  • Uses battle-tested OpenZeppelin libraries

  • No hidden backdoors or admin functions that touch user funds

  • Community can audit every line

5. Comparison to Manual Swapping ⚖️

When you manually swap on Aerodrome or Uniswap:

  • You approve tokens to their router contracts

  • Those approvals often persist indefinitely

  • You're trusting those protocols just as much

The Reward Swapper actually adds an extra layer of validation because it only allows pre-approved routers and functions.

What You're Actually Trusting

With infinite approval, you're trusting:

  1. ✅ The Reward Swapper contract won't have exploitable bugs

  2. ✅ The owner won't add malicious routers to the whitelist

  3. ✅ The underlying DEXs (Aerodrome, Uniswap) won't have exploits

Note: You're already trusting #3 every time you use those DEXs directly.


Real-World Time Savings: A Case Study

Let's compare a typical week for an iAERO staker:

Scenario: 50 Reward Tokens Worth $500 Total

Manual Swapping (Old Way):

Action
Time
Gas Cost

Check what rewards you have

5 min

$0

Identify valuable vs dust tokens

5 min

$0

Find swap routes for 50 tokens

10 min

$0

Approve 20 new tokens individually

30 min

~$0.2

Execute 50 separate swaps

60 min

~$5

Deal with 5 failed transactions

15 min

~$0.5

Track dust (<$1 each)

5 min

$0

TOTAL

130 min

~$5.7


Reward Swapper (New Way):

Action
Time
Gas Cost

Click "Claim & Convert to USDC"

5 sec

$0

Wait for approval transactions (first time only)

2 min

~$0.2

Wait for batched swap execution

30 sec

~$3

TOTAL (First Time)

3 min

~$3.2

TOTAL (Every Time After)

35 sec

~$3


The Long-Term Picture

Over a year of weekly claims:

Manual:

  • Time: 130 min × 52 weeks = 113 hours (nearly 5 full days!)

Reward Swapper:

  • Time: 3 min first week + (35 sec × 51 weeks) = 33 minutes total

Savings:

  • Time saved: 112.5 hours

  • Sanity saved: Priceless 😌


Advanced Features

1. Intelligent Slippage Management 🎯

The swapper doesn't use a one-size-fits-all slippage setting. Instead:

High-value tokens (>$100):

  • Uses 1.5-2% slippage

  • Worth optimizing for best price

  • Lower risk of MEV

Medium-value tokens ($20-$100):

  • Uses 3-5% slippage

  • Balanced approach

  • Acceptable MEV risk for speed

Low-value tokens ($5-$20):

  • Uses 5-10% slippage

  • Getting it done matters more than perfect price

  • Skip if price impact too high

Dust tokens (<$5):

  • Uses up to 15% slippage

  • Just get rid of it

  • Skip entirely if liquidity is terrible

This optimization means you get the best execution for valuable tokens while still converting dust that would otherwise sit in your wallet forever.

2. Fee-on-Transfer Token Support 🛡️

Some reward tokens charge fees when transferred (like reflection tokens). The swapper handles this:

  • Uses useAll: true flag

  • Checks actual balance received, not quoted amount

  • Adjusts swap amounts accordingly

  • Prevents "insufficient balance" errors

3. Pre-Flight Simulation ✈️

Before executing the full plan, the system:

  1. Simulates each individual swap

  2. Identifies which swaps will fail

  3. Removes failing swaps from the batch

  4. Only executes swaps that will succeed

This means you never waste gas on doomed transactions.

4. Graceful Failure Recovery 🔄

If a batch has some failing swaps:

  • Successful swaps still complete

  • Failed swaps are logged with reason

  • You get partial execution

  • Can retry failed tokens later

  • Contract continues processing remaining tokens

5. Scam Token Filtering 🚫

The pre-screening phase automatically filters out:

  • Tokens with no price data (likely scams)

  • Tokens with zero liquidity

  • Tokens that fail contract validation

  • Honeypot contracts

This protects you from wasting gas trying to swap worthless tokens or getting rugged during a swap.


User Experience Flow

For First-Time Users:

1. Claim & Convert to USDC (Full Process)

For Returning Users:


Failed Token Reporting

When swaps fail, you get a detailed console report:

This transparency helps you:

  • Understand what went wrong

  • Decide whether to retry later

  • Identify permanently broken tokens

  • Maintain a clean token registry


Gas Optimization

The Reward Swapper is highly gas-efficient:

Batch Processing

  • Processes 8 tokens per transaction

  • Amortizes gas overhead across multiple swaps

  • Cheaper than 8 individual transactions

Smart Multicall Usage

  • Balance checks happen in parallel

  • Approval checks bundled together

  • Minimizes RPC calls

Dust Floor Protection

  • Skips tokens below configured minimum ($0.01 default)

  • Prevents wasting gas on meaningless amounts

  • Configurable per-token if needed


Security Considerations

What's Protected ✅

  1. Access Control: Only authorized callers can execute plans

  2. Output Validation: Only whitelisted output tokens allowed

  3. Router Validation: Only approved DEXs can be used

  4. Selector Validation: Only whitelisted function calls allowed

  5. Reentrancy Protection: ReentrancyGuard on all entry points

  6. Slippage Protection: Configurable per-swap slippage limits

  7. Amount Validation: Quoted amounts must match actual amounts

  8. Allowance Hygiene: Allowances reset to zero after each swap

What You Should Know ⚠️

  1. Smart Contract Risk: Like all DeFi, there's inherent smart contract risk

  2. DEX Risk: Swaps depend on underlying DEX security (Aerodrome, Uniswap, etc.)

  3. Price Oracle Risk: Relies on 0x price quotes for routing

  4. MEV Risk: Large swaps may be subject to MEV (but individual reward amounts are typically small)

Best Practices

  1. Start Small: Test with smaller amounts first

  2. Monitor First Swap: Watch the console logs during your first swap

  3. Check Output: Verify you received expected amounts in USDC/iAERO

  4. Review Failed Tokens: Check the console for any failures

  5. Keep Registry Clean: Remove permanently broken tokens from registry


FAQ

Q: Why do I need to approve tokens?

A: This is a fundamental requirement of ERC-20 tokens. Any protocol that wants to move your tokens needs explicit permission. There's no way around this—it's baked into the Ethereum token standard.

Q: Should I use infinite approval or exact amounts?

A: Infinite approval is recommended for these reasons:

  • One-time setup per token

  • Massive gas savings over time

  • The contract is designed with this use case in mind

  • Security protections make it safe

However, if you prefer maximum control, exact amounts work fine—just be prepared for frequent re-approvals.

Q: What if a swap fails?

A: The swapper uses graceful failure recovery:

  • Other swaps in the batch still execute

  • Failed swap is logged with reason

  • You can retry later if desired

  • Contract continues processing remaining tokens

  • No funds are lost—they stay in your wallet

Q: Can I choose which tokens to swap?

A: Currently, the one-click operations swap all eligible tokens. If you want granular control:

  1. Use the "Claim All" button first

  2. Then manually swap individual tokens

  3. Or use the individual "Claim" buttons per token

A future update may add token selection to the swapper.

Q: What happens to dust amounts?

A: Tokens below the dust floor ($0.01 by default) are automatically skipped. This prevents wasting gas on amounts that aren't worth the transaction cost.

If you accumulate dust over time and want to sweep it, the "Sweep Wallet" function will attempt to convert even small amounts when you're doing a batch anyway.

Q: Why did some tokens get filtered out?

A: The pre-screening phase filters:

  • Scam tokens with no price data

  • Zero-liquidity tokens

  • Broken contract addresses

  • Honeypot contracts

This protects you from wasting gas and potentially dangerous tokens.

Q: How often should I use this?

A: Most users swap rewards weekly after epoch ends (Thursday after 12pm UTC). But you can:

  • Accumulate for multiple weeks to reduce transaction frequency

  • Swap immediately if you need liquidity

  • Let dust accumulate and sweep monthly

There's no requirement to swap on any schedule.

Q: What's the difference between "Claim & Convert" and "Sweep Wallet"?

A:

Claim & Convert:

  1. Claims pending rewards from the distributor contract

  2. Then swaps ALL tokens in your wallet (both newly claimed + any pre-existing holdings)

  3. Use when you have pending rewards to claim

  4. ⚠️ WARNING: This will swap ALL tokens in the registry, including tokens you were holding from previous weeks

Sweep Wallet:

  1. Only swaps tokens already in your wallet

  2. Doesn't claim anything from distributor

  3. Use for accumulated dust or external rewards

  4. Faster (no claim transaction needed)

  5. Same behavior as "Claim & Convert" regarding which tokens get swapped (ALL tokens in registry)

Key Point: Both operations swap ALL tokens found in your wallet that are in the protocol's registry. If you want to hold a specific token (e.g., manually managing your AERO), you must move it to a different wallet address BEFORE using either operation.

Q: Why don't other liquid staking protocols have this feature?

A: Great question! There are a few reasons:

1. They don't have the problem (yet):

  • Most protocols simplify by only distributing rewards in 1-2 tokens

  • This limits yield potential but avoids complexity

  • Easier to build, but leaves money on the table

2. They tried and couldn't solve it:

  • Building a production-grade batch swapper is engineering-intensive

  • Requires handling: quote aggregation, dynamic slippage, failure recovery, scam tokens, FOT tokens, gas optimization, and more

  • Many protocols started building this and gave up

3. They don't prioritize UX:

  • Some protocols assume users will handle it themselves

  • "Not our problem" approach to reward management

  • Focus on protocol mechanics, not user experience

4. They didn't want to invest the resources:

  • This feature required significant development time

  • Smart contract complexity increases audit costs

  • Ongoing maintenance as DEXs and aggregators evolve

iAERO's Philosophy: We believe user experience is a feature, not a luxury. We participate in Aerodrome's full incentive ecosystem (50+ reward tokens), which maximizes yields. But we also believe you shouldn't need a computer science degree to manage those yields.

So we built the tooling. And now we have a competitive advantage—users who try it don't want to go back to manual swapping.

The result? We're the only protocol where "claim rewards" actually means "get USDC in your wallet" or "get more iAERO staked"—not "get 47 random tokens you now need to deal with."

Q: Is this better than manually swapping valuable tokens?

A: For tokens worth >$100, you might get slightly better execution by manually routing through Aerodrome or finding the optimal path yourself.

But the time savings, convenience, and gas efficiency usually outweigh the potential 0.1-0.5% better execution you might achieve manually.

For most users, the answer is yes, this is better, especially when you factor in your time value.

One more consideration: If you're manually managing some tokens (e.g., accumulating AERO to stake elsewhere), you'll need to move them to a separate wallet before using the Reward Swapper. The system doesn't know which tokens you want to keep vs. swap—it treats ALL tokens in your wallet as "rewards to convert."

Tips & Tricks

1. Batch Your Weekly Claims 📅

Instead of claiming every day, wait until Thursday after the epoch ends and claim everything at once. You'll:

  • Have more rewards to swap (better routes)

  • Pay gas once instead of multiple times

  • Spend 35 seconds instead of hours

2. Use "Sweep Wallet" for External Rewards 🧹

If you receive tokens from other sources (airdrops, other protocols, etc.), you can add them to the registry and use "Sweep Wallet" to convert them along with your iAERO rewards.

3. Monitor the Console 🖥️

The console logs provide valuable insights:

  • Which tokens succeeded

  • Why tokens failed

  • Price impact for each token

  • Slippage used per swap


Coming Soon: Advanced Features

We're constantly improving the Reward Swapper. Future enhancements may include:

  • 🎯 Token Selection UI: Pick which tokens to swap

  • ⚙️ Custom Slippage: Override automatic slippage per token

  • 🔄 Auto-Compound Scheduling: Set it and forget it

  • 💎 NFT Reward Support: Handle NFT rewards automatically

  • 🌐 Multi-Chain Support: Swap rewards across chains


Conclusion: Setting the Standard for DeFi UX

The Reward Swapper represents a fundamental shift in how DeFi reward management works—and iAERO is leading this change.

While other protocols leave users to wrestle with dozens of reward tokens manually, we asked: "What if we actually built the tooling users need?"

The result is the first and only automated batch reward conversion system that handles the full complexity of multi-token yield farming:

  • 50+ tokens per week

  • Multiple DEX integrations

  • Intelligent routing and slippage

  • Scam protection and failure recovery

  • Gas optimization through batching

The Competitive Moat

This isn't just a feature—it's a competitive advantage:

  1. Other protocols can't easily copy this (it took significant engineering investment)

  2. Users who experience it won't want to go back (like going from dial-up to broadband)

  3. It compounds over time (every week saves another 2 hours)

  4. It attracts power users (sophisticated DeFi participants value their time)

Why This Matters for the Protocol

Users who don't have to spend 2 hours per week managing rewards are:

  • ✅ More likely to stake long-term (less friction = more stickiness)

  • ✅ More likely to compound (one-click compounding is frictionless)

  • ✅ More likely to recommend iAERO to others (word-of-mouth growth)

  • ✅ Less likely to churn to competitors (even if yields are similar elsewhere)

User experience is a moat. And right now, we have the best reward management UX in DeFi.

By the Numbers

Instead of treating you like a full-time portfolio manager who loves spending hours on mundane token swaps, we treat you like what you are: someone who wants to maximize yields with minimum hassle.

Annual Impact:

  • ⏱️ 112 hours saved (nearly 5 full days of your life back)

  • 🧠 Zero cognitive overhead (no more "I should swap my rewards... later")

  • 🗑️ Zero dust left behind (every dollar of yield captured)

  • 😌 Dramatically less frustration (no more failed transactions or slippage hunting)

Cost:

  • ~3 minutes first-time setup

  • ~35 seconds every week after

That's a 19,300% time efficiency improvement (from 130 min to 35 sec).

If your time is worth $15/hr (minimum wage), you're saving $1,680 in time value

Total annual benefit: ~$4,780

For free. Because we believe DeFi should work for you, not the other way around.

The Vision

This is just the beginning. The Reward Swapper proves that DeFi protocols CAN prioritize user experience without sacrificing decentralization or security.

As other protocols wake up to this reality, we'll already be 10 steps ahead, building the next set of tools that make complex DeFi simple.

Because at the end of the day, the best protocol isn't the one with the highest APY—it's the one you actually enjoy using.

Welcome to veAERO 2.0. Welcome to actually enjoying DeFi again. Welcome to having your time back. 🚀


Quick Reference

One-Click Actions

Button
What It Does
Best For

Claim & Convert to USDC

Claims all rewards + swaps to USDC

Taking profits, paying bills, DCA

Claim & Compound

Claims all rewards + swaps to iAERO + restakes

Long-term accumulation, max gains

Sweep Wallet

Swaps all tokens in wallet (no claim)

Cleaning up dust, external rewards

Time Required

Operation
Time

First time (with approvals)

~3 minutes

Subsequent swaps

~35 seconds

Manual approach (comparison)

~2 hours


Questions or issues? Check the console logs first—they'll tell you exactly what happened. If something seems wrong, reach out in Discord or create a GitHub issue with the console output.

Happy swapping! 🎉


Last updated: November 2025 Smart Contract: RewardSwapper.sol Documentation: docs.iaero.finance

Last updated