Skip to main content
Version: v5.0.0-nightly.20260305

Aztec Contract Standards

Aztec contract standards define shared interfaces and behaviors for common onchain primitives. They serve the same role that ERC standards play on Ethereum: establishing conventions that allow contracts, wallets, and tooling to interoperate without prior coordination.

The standards described in this section are maintained by DeFi Wonderland in the aztec-standards repository. Each standard is identified by an Aztec Improvement Proposal (AIP) number that mirrors its Ethereum counterpart where applicable (AIP-20 corresponds to ERC-20, AIP-721 to ERC-721, AIP-4626 to ERC-4626).

Because Aztec contracts have both private and public execution contexts, the standards are more involved than their Ethereum equivalents. Transfers can move value between private notes and public balances, and many operations require coordination between encrypted state and transparent state within a single transaction.

note

The code examples in this section are taken from the aztec-standards repository maintained by DeFi Wonderland. They will differ from the reference contract implementations shipped in the aztec-packages repo under noir-projects/noir-contracts/contracts/. When in doubt, consult the aztec-standards github repo for the canonical standard interfaces.

Standards

  • Private Token Contract — build a privacy-preserving fungible token that closely parallels AIP-20
  • NFT Bridge — build a private NFT with custom NFTNote and PrivateSet, covering patterns extended by AIP-721
  • Deploying a Token Contract — deploy and interact with the reference token contract using Aztec.js
  • Counter Contract — introduces private state, notes, and balance management

For the canonical implementations and latest interface specifications, refer to the aztec-standards repository maintained by DeFi Wonderland.