Written by Pablo Gómez
Founder & CEO at Metlabs · Reviewed on October 11, 2026
ERC-7631 separates the asset into two linked contracts. The base contract keeps ERC-20 balances and transfers; the mirror contract represents ERC-721 NFTs. Each exposes its counterpart's address, and synchronization allows balance changes in the base to be reflected in the number of whole NFTs assigned to each account.
DN404 is the implementation that popularized this pattern and provided a practical reference, but the names should not be treated as exact synonyms: ERC-7631 specifies the common interface, while DN404 is a concrete implementation. The standard also lets an account temporarily skip NFT delivery to reduce gas or avoid incompatibilities during transfers.
Duality adds risks absent from a standalone ERC-20: an integration must account for base-mirror synchronization, NFT ownership changes triggered by fungible transfers, and possible denial-of-service vectors involving callbacks or incompatible recipients.
Also known as
- ERC7631
- Dual Nature Token Pair





