The Token Handler contract connects a token to the protocol and the Application Manager, providing the ability to configure rules. You must deploy a token handler for each token you want to connect to the protocol.

Prerequisites

The following steps must already be completed on the target chain:

  1. The Protocol has been deployed

  2. You have deployed an Application Manager

  3. You have created at least one Application Administrator role in the Application Manager


  1. Ensure the environment variables are set correctly. The DEPLOYMENT_OWNER and DEPLOYMENT_OWNER_KEY are used by the deployment script.

  2. Deploy the token handler:

forge script script/clientScripts/DeployERC20Handler.s.sol --ffi --broadcast --rpc-url $ETH_RPC_URL
  1. Configure the Handler:

Before you run the next script your ERC-20 token must be deployed. Update the APPLICATION_ERC20_ADDRESS value within your .env file with the address of your token. After updating this value, run the source .env command. Now you’re ready to run the next script.

forge script script/clientScripts/DeployERC20HandlerPt2.s.sol --ffi --broadcast --rpc-url $ETH_RPC_URL
  1. Finally, register this token with your App Manager:
cast send $APPLICATION_APP_MANAGER "registerToken(string,address)" "Your Token Name" 0x_your_token_address  --private-key $APP_ADMIN_PRIVATE_KEY --rpc-url $ETH_RPC_URL