Develop a token with an integrated tax feature. This feature will collect tax in the destination-swapped token instead of the native token. This strategy is intended to mitigate distortion and selling pressure on the token while generating revenue.
We have previously developed a Crucible Contract that handles the token router functionality and custom fee logic; we have the Fiber Router that handles the DEX router logic. A combination of these two will result in Iron Tax contract listed below.
graph TD;
Token[Token Contract] --> TokenRouter[Token Router];
TokenRouter -->|Wallet to Wallet Transfer| RegularTransfer[Regular Transfer];
TokenRouter -->|Trade via DexRouter| TradeTransfer[Trade Transfer];
RegularTransfer -->|Determine: Not a DexRouter Transfer| FeeLogic[Fee Logic for Regular Transfer];
FeeLogic --> FeeInNative[Tax in Native Token];
FeeInNative --> FeeCollector[Fee Collector];
FeeLogic --> TransferAmount[Transfer Remaining Tokens];
TransferAmount --> DesiredDestinationAddress[Desired Destination Transfer Address];
TradeTransfer -->|Identify as DexRouter Transfer| DexRouterLogic[DexRouter Logic];
DexRouterLogic --> SendToDexRouter[Send Tokens to DexRouter];
SendToDexRouter --> DexPool[Dex Pool];
DexPool --> BackToTokenRouter[Back to Token Router];
BackToTokenRouter --> FeeInDestinationToken[Tax in Destination Token];
FeeInDestinationToken --> FeeCollectionAddress[Fee Collection Address];
BackToTokenRouter --> DestinationTokenPostFee[Post Fee Destination Token];
DestinationTokenPostFee --> DesiredDestinationSwapAddress[Desired Destination Swap Address];
We will need to incorporate this with the Multichain token standard.
dexPool
are configurabledexPool
addresses where fee is assessed, other addresses can be set where fees are removed or overwritten, for example no fee to stake, or no fee when using the token to pay platform fees etc.