
Swapper: A New Way to Solve Mismatched On-chain Income Funds
TechFlow Selected TechFlow Selected

Swapper: A New Way to Solve Mismatched On-chain Income Funds
This article will introduce how to create a Swapper, how it works, when to use it, and how to stack it with Split to create a "post-tax wallet".
Authored by: abram, 0xSplits, Will
Compiled by: TechFlow

Creators like Reo Cragun and DAOs like Nouns often face a mismatch problem: they generate revenue in one currency (usually ETH), but incur expenses in another (typically USDC, DAI, or other stablecoins).
This mismatch is sometimes addressed through suboptimal solutions—manual rebalancing, custodial third parties, or custom-built software. But what if there were a better way? What if these on-chain entities could decide the currency in which they receive income?
Today, we're introducing exactly that solution—Swapper, which exchanges all incoming tokens (ETH or ERC20) into a preset token of your choice. It gives you control over the tokens you receive, freeing you from dependency on whatever token is sent to you; someone can send you ETH, but you can receive USDC instead.
Like Split and Waterfall, Swapper is a composable and modular smart contract that operates entirely on-chain. It's a public good for the Ethereum community, and the contracts have been audited.
Below, we'll explain how to create a Swapper, how it works, when to use it, and how to stack it with Split to create a "tax-withholding wallet."

A Swapper requires an output token, a beneficiary, an (optional) owner, and an oracle. Our oracle design is highly flexible—you can use any oracle contract you prefer—and we expect a Chainlink-compatible version soon. Swapper can be automated by offering discounts on oracle pricing to incentivize third parties to perform swaps (similar to Split’s distribution fees).
How Swapper Works
When a Swapper receives tokens, it holds the balance until the owner or any third party calls the permissionless swap function. This function atomically swaps the balance into the output token and sends it to the beneficiary. If the oracle cannot determine a fair price, the tokens remain in the Swapper until the owner manually swaps or withdraws them.
When to Use Swapper
In many cases, individuals or systems want control over the tokens they receive. With Swapper, that control becomes possible. Most importantly, users can integrate this swapping functionality directly into payment flows without writing any code. Here are a few examples:
-
Automatically convert income and staking rewards into USDC for tax payments or payroll;
-
Add fine-grained token-type control within Split and Waterfall distributions.
Diversifier: A Tax-Withholding Wallet for Creators
In the United States, taxes are calculated on income at the time it is received. The problem is that NFTs aren't sold in USD—they’re typically sold in ETH. This creates a mismatch between the currency you receive and the currency in which your tax liability is denominated.
That’s why today, alongside Swapper, we’re launching Diversifier—a tool that allows you to automatically convert different percentages of your income into different tokens. Below is an example running live on mainnet.
By converting portions of income into stablecoins, Diversifier acts as a tax-withholding wallet for NFT creators, DAO contributors, and anyone else earning on-chain income. Because the swap happens shortly after funds are received, Diversifier ensures the right amount of the right currency is available at the right time.
There’s an added benefit to handling conversions this way: it shields you from worrying about ETH volatility—a major concern for creators.
Diversifier solves this for creators. For example, suppose Alice earns royalties and income from various NFT projects. She sets up a Diversifier to automatically and permissionlessly send 40% of her income as USDC to taxes.alice.eth. The remaining 60% is sent directly to alice.eth, her primary daily-use wallet.

If someone sends a non-swappable NFT or token to Alice’s Diversifier, it’s not a problem—Alice can set herself as the contract owner and easily withdraw or transfer those tokens at any time.

Join TechFlow official community to stay tuned
Telegram:https://t.me/TechFlowDaily
X (Twitter):https://x.com/TechFlowPost
X (Twitter) EN:https://x.com/BlockFlow_News














