# Cross-Chain Token (CCT) Tutorials
Source: https://docs.chain.link/ccip/v1/evm/tutorials/cross-chain-tokens
Last Updated: 2025-05-19

> For the complete documentation index, see [llms.txt](/llms.txt).

> **NOTE: Prerequisites**
>
> Familiarize yourself with the [CCT standard](/ccip/v1/concepts/cross-chain-token/overview) and [CCIP
> architecture](/ccip/v1/concepts/architecture/overview) before proceeding with these tutorials.

Before diving into the [tutorials](#tutorials), it's important first to understand the overall procedure for enabling your tokens in CCIP. This procedure involves deploying tokens and token pools, registering administrative roles, and configuring token pools to enable secure token transfers using CCIP. The diagram below outlines the entire process:

![Process for enabling a token in CCIP.](/images/ccip/CCIP_enabled_tokens_flowchart.jpg)

### Understanding the Procedure

The steps in the diagram highlight the flow of actions needed to enable a token for cross-chain transfers. These steps will be the foundation of the tutorials. Whether you're working with an Externally Owned Account (EOA) or a **Smart Account** (such as one using a multisig scheme), the overall logic remains the same. You'll follow the same process to enable cross-chain token transfers, configure pools, and register administrative roles.

In the following tutorials, we will walk through each step of the process to give you hands-on experience, from deploying your token to registering and configuring token pools. The process will apply equally whether you use an EOA or a Smart Account (such as with multisig transactions), ensuring flexibility across different account types.

### Key Steps to Keep in Mind:

1. **Token Deployment**: If the token is not yet deployed, you'll deploy an [ERC20-compatible token](/ccip/v1/evm/concepts/cross-chain-token/tokens).
2. **Admin Registration**: The token administrator must be registered in the [`TokenAdminRegistry`](/ccip/v1/evm/api-reference/v1.6.1/token-admin-registry) via self-service.
3. **Pool Deployment and Configuration**: [Token pools](/ccip/v1/evm/concepts/cross-chain-token/token-pools#common-requirements) are deployed, linked to tokens, and configured to manage cross-chain token transfers.

The tutorials will implement the logic of this process, which involves deploying and configuring token pools and registering administrative roles, step-by-step.

## Tutorials

- [Deploy Using Remix IDE](/ccip/v1/evm/tutorials/cross-chain-tokens/register-from-eoa-remix): Learn how to deploy and register cross-chain tokens using only your browser and Remix IDE.
  - No development environment setup required
  - Great for quick testing and learning

- [Register from an EOA (Burn & Mint)](/ccip/v1/evm/tutorials/cross-chain-tokens/register-from-eoa-burn-mint-hardhat): Learn how to register a cross-chain token with the **Burn & Mint** mechanism using an EOA.
  - [Hardhat version](/ccip/v1/evm/tutorials/cross-chain-tokens/register-from-eoa-burn-mint-hardhat)
  - [Foundry version](/ccip/v1/evm/tutorials/cross-chain-tokens/register-from-eoa-burn-mint-foundry)

- [Register from an EOA (Lock & Mint)](/ccip/v1/evm/tutorials/cross-chain-tokens/register-from-eoa-lock-mint-hardhat): Learn how to register a cross-chain token with the **Lock & Mint** mechanism using an EOA.
  - [Hardhat version](/ccip/v1/evm/tutorials/cross-chain-tokens/register-from-eoa-lock-mint-hardhat)
  - [Foundry version](/ccip/v1/evm/tutorials/cross-chain-tokens/register-from-eoa-lock-mint-foundry)

- [Set Token Pool Rate Limits](/ccip/v1/evm/tutorials/cross-chain-tokens/update-rate-limiters-hardhat): Learn how to set rate limits for token pools to control cross-chain token transfers.
  - [Hardhat version](/ccip/v1/evm/tutorials/cross-chain-tokens/update-rate-limiters-hardhat)
  - [Foundry version](/ccip/v1/evm/tutorials/cross-chain-tokens/update-rate-limiters-foundry)

- [Register from a Safe (Burn & Mint)](/ccip/v1/evm/tutorials/cross-chain-tokens/register-from-safe-burn-mint-hardhat): Learn how to register a cross-chain token with the **Burn & Mint** mechanism using a Safe Smart Account.
  - [Hardhat version](/ccip/v1/evm/tutorials/cross-chain-tokens/register-from-safe-burn-mint-hardhat)

- [Configure Additional Networks](/ccip/v1/evm/tutorials/cross-chain-tokens/configure-additional-networks-hardhat): Learn how to configure your cross-chain tokens and pools to operate on additional networks beyond the initial setup.
  - [Hardhat version](/ccip/v1/evm/tutorials/cross-chain-tokens/configure-additional-networks-hardhat)
  - [Foundry version](/ccip/v1/evm/tutorials/cross-chain-tokens/configure-additional-networks-foundry)

> **CAUTION: Educational Example Disclaimer**
>
> Please note, this page contains community examples only — these are not Chainlink products or services and are not
> supported or maintained by Chainlink. This code represents an example of using a Chainlink product or service, and is
> intended for demonstration and educational purposes only. It is provided "AS IS" and "AS AVAILABLE" without warranties
> of any kind, may not have been audited, and may omit checks or error handling. Each party intending to use this
> example code does so entirely at their own risk and must perform its own audits, security and code review, key
> management, and testing before any production deployment and ensure the operation and performance of such code matches
> expectations. Neither Chainlink Labs nor the Chainlink Foundation deploys, operates, monitors, maintains or endorses
> any deployment of this code. Note that this is not a Chainlink product, feature or service, and there are no
> commitments made with respect to the code, including compatibility with future Chainlink releases. You should not rely
> on this code without first conducting your own technical, engineering, and security review. This code is also outside
> the scope of any Chainlink bug bounty programs. Neither Chainlink Labs, the Chainlink Foundation, nor Chainlink node
> operators are responsible for outcomes due to errors in this example or how it is deployed or operated, or liable for
> any resulting claims or damages. Use of the Chainlink Network is subject to the Chainlink Foundation [Terms of
> Service](https://chain.link/terms), which provides important information and disclosures. By using this code, you
> acknowledge and agree to these terms.