Demo
New to B20? See the B20 Token Standard for the concepts and a full launch walkthrough. These samples target
base-std@1505323, viem@2.55.11, and Base Foundry v1.1.1.Block and Verify an Account
isAuthorized(policyId, account) returns false while the account is blocked.Make a Blocked Account Recoverable
Blocking underTRANSFER_SENDER_POLICY freezes the account’s outgoing transfers. It does not, on its own, let you move the balance out. Seize reads a separate scope, SEIZE_EXEMPT_POLICY, whose check is inverted: an account that is not authorized under the attached policy is seizable. Attach the same blocklist there so a single hold both freezes the account and makes it recoverable:
Attach the blocklist to the seize scope
SEIZE_EXEMPT_POLICY: an empty allowlist authorizes nobody, which would make every holder seizable. See Recover Funds for the seize itself.
See Also
Recover Funds
Move a blocked balance to safekeeping with seizeWithMemo.
Pause Activity
Freeze all token activity.