Token Approval Flow
Step through real-world approve() → transferFrom() flows — DEX swaps, lending deposits, NFT sales, and phishing attacks — with live balance and allowance tracking.
Step 1 of 4
INFO
OBSERVE
STATEInitial StateYou have 1,000 USDC and want to swap 500 for ETH via Uniswap.
// User holds 1000 USDC, Uniswap has 0 allowanceToken Balances
You (User)
1,000Uniswap Router
0Active Allowances
No active allowances. Approvals will appear here.
Phase Legend
APPROVE
TRANSFER
OBSERVE
ATTACK
DEX SwapUniswap
Approve exact amount, then Uniswap pulls tokens to swap for ETH.