Transaction Deployer Allowlist

Enable and understand the Transaction AllowList precompile (who can submit transactions).

Overview

The Transaction AllowList precompile controls who can submit transactions to your Avalanche L1. If a wallet address is not allowed, transactions from that address will fail before they can be executed.

This is commonly used to:

  • Build permissioned networks
  • Enforce KYC/AML policies
  • Reduce spam during early-stage deployments

Quick reference

From the docs:

  • Precompile address: 0x0200000000000000000000000000000000000002
  • Genesis config key: txAllowListConfig
  • Permission model: uses the AllowList interface

Docs: /docs/avalanche-l1s/precompiles/transaction-allowlist

Genesis activation

To enable it from genesis, include a config block like:

{
  "config": {
    "txAllowListConfig": {
      "blockTimestamp": 0,
      "adminAddresses": ["0x...yourAdminAddress"]
    }
  }
}

The adminAddresses become AllowList Admins for this precompile (can manage Admin/Manager/Enabled roles).

Summary

Key points:

  • Transaction AllowList gates transaction submission at the network level.
  • It’s configured at genesis via txAllowListConfig.
  • It reuses the AllowList permission model (Admin/Manager/Enabled).

Is this guide helpful?