Sei Pointer Contracts: Bridging EVM and Cosmos Environments
Understand how Sei’s pointer contract system enables seamless asset movement between EVM and Cosmos environments, with implementation patterns for various token types.
Pointer contracts are primarily a legacy and migration tool. Per Proposal 115, no new CosmWasm contracts can be uploaded or instantiated on Sei. Because of this, the pointer flow from CW20, CW721, and CW1155 to ERC20, ERC721, and ERC1155 applies only to already-deployed CosmWasm contracts.Do not use native-denom pointers to build IBC or tokenfactory integrations. IBC is disabled in both directions, and tokenfactory is not a supported development path. Existing IBC balances may remain accessible through their pointers, but a pointer does not restore the route to the origin chain. For new tokens or NFTs, deploy ERC20, ERC721, or ERC1155 contracts directly on the EVM.
Pointer contracts let tokens work in both the EVM and Cosmos environments. A
pointer is intended to be efficient and quick to deploy. It is an interpreter
between the “languages” of the two execution environments.
A world without pointer contractsWallets and clients for feature-rich protocols typically support only one
execution environment. EVM wallets handle ERC-20 coins and ERC-721 NFTs. They
cannot interact with Cosmos-SDK-based assets, because the token standards and
interaction methods are different. Clients built for other protocols, such as
Cosmos and its various SDK modules, have the same problem. They cannot directly
interact with Ethereum-based contracts or ERC tokens.Pointer contracts solve this problem. They make either protocol interoperable,
regardless of the client interface.With pointer contracts, wallets in either environment can access all tokens
Pointer contracts enable interoperabilityEach smart contract can have only one associated pointer contract. The
pointer contract must be registered on chain when it is deployed. This prevents
conflicts and gives a reference point to verify that the paired contract is
authentic.