Verification rules connect on-chain conditions to Discord roles. When a member verifies, NXT evaluates every enabled rule against all of the member's proven wallets and grants each role whose rule passes.
Create a rule
- Open Dashboard > Token gated roles.
- Click Add role and choose a rule type.
- Pick the Discord role to grant. The role must be below the NXT role in Server Settings > Roles.
- Fill in the conditions, for example the network and contract address.
- Save. The rule is enabled immediately.
When you add or change a rule, NXT runs a sweep so verified members who already qualify get the role without clicking Verify again.
Rule types
| Type | Grants the role when the member |
|---|---|
| Contract | Holds any NFT from a contract, with an optional minimum |
| OpenSea collection | Holds items from an OpenSea collection, across all of its contracts |
| Token IDs | Holds at least one of a list of exact token IDs |
| Trait | Holds tokens with any or all of chosen traits |
| Quantity | Holds a count within a minimum and optional maximum |
| Staking | Has tokens staked in your staking contract |
| ERC-20 | Holds a fungible token balance within a range |
| Native balance | Holds a minimum native coin balance on a chain |
| Combo | Meets several conditions at once |
| Custom API | Is approved by your own HTTPS endpoint |
How rules are evaluated
- All wallets count together. Balances are summed across every wallet the member has proven, including delegated cold wallets.
- Several rules can grant the same role. The member keeps the role as long as at least one of those rules passes.
- Outcomes are pass, fail, or unknown. Unknown means NXT could not get a reliable answer, for example because an RPC endpoint timed out or metadata could not be fetched. Unknown never removes a role and never counts as a failure.
- Removals are conservative. A role is removed only when every rule for that role definitively fails for a member who has at least one proven wallet, or who removed their last one. That can follow a sale, a wallet removal, a balance falling below a threshold, a custom API answering false, a newly blocked token, or a rule change. Members who have never linked a wallet on NXT are never evaluated for removal.
- Protected users are exempt. Members holding a protected role never lose NXT roles.
- Blocked tokens never count. Tokens on your blocked list are excluded from rule checks.
When checks run
- On Verify: whenever a member clicks Verify.
- On transfer: NXT watches NFT transfer events (ERC-721 and ERC-1155) for the NFT contracts in your rules, including the NFT contract of staking rules, and re-checks the sender and receiver shortly after, usually within seconds.
- On schedule: every verified member is swept against every rule once an hour on every plan. ERC-20, native balance, and custom API rules are not watched in real time, so the sweep is what picks up their changes.
- On wallet changes: when a member adds or removes a wallet.
- On rule changes: when you add, edit, enable, or disable a rule, or change blocked tokens, NXT sweeps the server.
Limits
Every rule in your server, enabled or disabled, counts toward your plan. See Plans and limits.