StableMoney.dev

ERC / EIP standards and compliance

Deep reference for twelve EVM-tracked stablecoins: USDT, USDC, USDS, USDe, DAI, USD1, RLUSD, GHO, PYUSD, TUSD, FDUSD, frxUSD — ERC-20 surface, typed data (EIP-712), permit (EIP-2612), authorizations (EIP-3009), proxies (EIP-1967 / EIP-1822), vaults (ERC-4626), contract signatures (EIP-1271), cross-chain (ERC-7802), flash loans (ERC-3156), and compliance (freeze / seize / pause). Use the matrix for a glance; expand sections for function lists, type hashes, and integration footguns. Some entries are chain-specific; always verify the deployment you integrate.

Comparison matrix

Rows are standards from the master registry; columns follow a fixed comparison order (see matrix headers). Click any row to scroll to that standard in the deep dive below. Hover a cell for a one-line developer impact note.

  • Implemented
  • Partial
  • Alternative
  • Not implemented
  • Unknown

Standards deep dive

Core

ERC-20 Fungible token standard

Base interface for all fungible tokens — transfer, approve, allowance, balanceOf, totalSupply

Signatures & typed data

EIP-712 Typed structured data signing

Domain-separated typed message signing that binds signatures to a specific contract and chain ID, preventing cross-chain and cross-contract replay attacks

USDT

Not implemented for EIP-712.

TUSD

Not implemented for EIP-712.

EIP-2612 Permit — gasless ERC-20 approval

Adds permit() to ERC-20 — users sign an approval off-chain, relayer submits on-chain. Eliminates the separate approve() transaction in DeFi flows

USDT

Not implemented for EIP-2612.

TUSD

Not implemented for EIP-2612.

EIP-3009 transferWithAuthorization

Signed atomic transfer (not just approval) with random bytes32 nonces — enables concurrent authorizations and single-transaction gasless payments

USDT

Not implemented for EIP-3009.

USDS

Not implemented for EIP-3009.

USDe

Not implemented for EIP-3009.

USD1

Not implemented for EIP-3009.

DAI

Not implemented for EIP-3009.

RLUSD

Not implemented for EIP-3009.

GHO

Not implemented for EIP-3009.

TUSD

Not implemented for EIP-3009.

EIP-1271 Signature validation for smart contracts

isValidSignature() lets smart contract wallets (Safe multisig, Argent, AA wallets) verify signatures — enables permit flows for contracts, not just EOAs

USDT

Not implemented for EIP-1271.

USD1

Not implemented for EIP-1271.

DAI

Not implemented for EIP-1271.

RLUSD

Not implemented for EIP-1271.

GHO

Not implemented for EIP-1271.

PYUSD

Not implemented for EIP-1271.

TUSD

Not implemented for EIP-1271.

FDUSD

Not implemented for EIP-1271.

Upgradeability & proxies

EIP-1967 Standard proxy storage slots

Standardises where proxy contracts store the implementation and admin addresses, enabling Etherscan and tooling to auto-detect proxies

USDT

Not implemented for EIP-1967.

USDe

Not implemented for EIP-1967.

DAI

Not implemented for EIP-1967.

GHO

Not implemented for EIP-1967.

EIP-1822 UUPS — universal upgradeable proxy

Upgrade logic lives in the implementation contract rather than the proxy. Cheaper to deploy than transparent proxies and easier to audit

USDT

Not implemented for EIP-1822.

USDC

Not implemented for EIP-1822.

USDe

Not implemented for EIP-1822.

USD1

Not implemented for EIP-1822.

DAI

Not implemented for EIP-1822.

GHO

Not implemented for EIP-1822.

PYUSD

Not implemented for EIP-1822.

TUSD

Not implemented for EIP-1822.

FDUSD

Not implemented for EIP-1822.

frxUSD

Not implemented for EIP-1822.

Vaults & yield

ERC-4626 Tokenized yield vault standard

Standard interface for yield-bearing vaults: deposit, withdraw, mint, redeem, convertToShares, convertToAssets. Any ERC-4626-aware protocol integrates automatically

USDT

Not implemented for ERC-4626.

USDC

Not implemented for ERC-4626.

USD1

Not implemented for ERC-4626.

RLUSD

Not implemented for ERC-4626.

GHO

Not implemented for ERC-4626.

PYUSD

Not implemented for ERC-4626.

TUSD

Not implemented for ERC-4626.

FDUSD

Not implemented for ERC-4626.

Compliance

Freeze Address freezing / blacklisting

Issuer ability to freeze or blacklist individual addresses, preventing them from sending or receiving tokens. The most fundamental compliance capability for sanctions enforcement (OFAC/SDN) and law-enforcement cooperation.

USDS

Not implemented for Freeze.

DAI

Not implemented for Freeze.

GHO

Not implemented for Freeze.

Seize Fund seizure / clawback

Issuer ability to destroy or reclaim tokens from frozen/blacklisted addresses. Goes beyond freeze-in-place — the issuer can permanently remove tokens from circulation or redirect them. Critical for court-ordered asset recovery.

USDC

Not implemented for Seize.

USDS

Not implemented for Seize.

USD1

Not implemented for Seize.

DAI

Not implemented for Seize.

GHO

Not implemented for Seize.

FDUSD

Not implemented for Seize.

Pause Global transfer pause

Emergency circuit-breaker that halts ALL token transfers contract-wide. Used for critical security incidents, regulatory orders, or protocol-level emergencies. Affects every holder simultaneously.

USDS

Not implemented for Pause.

USDe

Not implemented for Pause.

DAI

Not implemented for Pause.

GHO

Not implemented for Pause.

Cross-chain

ERC-7802 Crosschain token interface

Minimal interface for cross-chain mint/burn — standardises crosschainMint() and crosschainBurn() so any bridge can move tokens without wrapped representations

USD1

Not implemented for ERC-7802.

DAI

Not implemented for ERC-7802.

RLUSD

Not implemented for ERC-7802.

PYUSD

Not implemented for ERC-7802.

TUSD

Not implemented for ERC-7802.

FDUSD

Not implemented for ERC-7802.

frxUSD

Not implemented for ERC-7802.

Flash Loans

Standard interface for single-transaction borrow-use-repay flash loans — maxFlashLoan(), flashFee(), flashLoan(). Enables arbitrage, liquidation, and refinancing without upfront capital

USDT

Not implemented for ERC-3156.

USDC

Not implemented for ERC-3156.

USDe

Not implemented for ERC-3156.

USD1

Not implemented for ERC-3156.

RLUSD

Not implemented for ERC-3156.

PYUSD

Not implemented for ERC-3156.

TUSD

Not implemented for ERC-3156.

FDUSD

Not implemented for ERC-3156.

frxUSD

Not implemented for ERC-3156.