NoxAccess docs
Setup guide, full command reference, and answers to every problem that actually comes up.
Quick start
Do this once, in order, before your first paid member arrives.
Invite the bot
Use the invite link on the homepage. Grant the required role and slash command permissions.
Position the bot role
In Discord Server Settings → Roles, drag the NoxAccess bot role above every paid member role it needs to assign.
Run launch-check
Run /setup launch-check to verify role position, permissions, log channel, and premium channel in one pass.
Run launch-drill
Run /setup launch-drill user:@Member with one trusted member. Confirms role apply and removal work end-to-end.
Create your first access
Use the Members page in the dashboard to grant your first protected access — or use /access grant user:@Member days:30.
Run a sync preview
Run /access sync dry-run:true to preview what sync would do. When the output looks right, run /access sync.
Set up claim links
Create a claim link in the dashboard so future members can self-serve their own Discord access after purchase — no IDs in DMs.
Run Rescue before launches
Before any promo or launch wave, run /access rescue. Catches missing roles and expired-but-still-inside members in seconds.
Trial vs Premium
Trial gives you everything to test and validate the bot before you sell. Premium unlocks the full command center for live operations.
Trial
Bot commands, setup checks, launch drill, and up to 10 active member slots. No dashboard — great for validating the bot works before you sell.
Premium — €19/month
Unlimited members, full dashboard, Access Rescue, Analytics, Lifecycle Workflows, Ko-fi integration, and Premium Identity. Run /premium buy to upgrade.
Command reference
Every slash command, what it does, and when to use it.
| Command | Arguments | What it does |
|---|---|---|
/setup launch-check | — | Runs all pre-launch safety checks: role position, permissions, log channel, premium channel, support clarity. |
/setup launch-drill | user:@Member | Full end-to-end test with a real member. Grants access, confirms the role, then removes it cleanly. |
/access grant | user:@Member days:30 | Manually grant protected access to a member for N days. |
/access revoke | user:@Member | Manually revoke protected access and remove the paid role. |
/access extend | user:@Member days:30 | Extend an existing grant by N more days from today. |
/access sync | dry-run:true | Sync role state with access records. Use dry-run:true first to preview changes without applying them. |
/access rescue | — | Scans for members missing roles (paid but no role) and leaks (role but no active grant). Full audit in one command. |
/access claim-link | days:30 | Create a self-serve claim link. Send to a buyer — they click, connect Discord, and get their role instantly. |
/support info | — | Bundles server config, role status, and diagnostics into a single message for support. Run this before opening a ticket. |
/premium buy | — | Opens the Premium upgrade flow. Unlocks the full dashboard, Access Rescue, analytics, and lifecycle workflows. |
Troubleshooting
Problems that actually come up, and exactly how to fix them.
Bot says "Missing Permissions" when granting a role
Why it happens
The NoxAccess bot role is positioned below the paid member role in Discord's role hierarchy.
How to fix it
Go to Server Settings → Roles and drag the NoxAccess bot role above every paid member role. Then re-run /setup launch-check.
Member got their role but lost it after 24 hours
Why it happens
The access grant may have expired. NoxAccess removes roles when a grant's end_date passes.
How to fix it
Check the member in the Members dashboard. If their grant expired, extend it with /access extend or from the dashboard. If the date looks wrong, check the "days" value used when the access was first created.
Ko-fi payment received but member has no role
Why it happens
Ko-fi sent a webhook but NoxAccess could not match a Discord user ID. Common when the buyer's Ko-fi account is not linked to Discord.
How to fix it
Check the Integrations page for events with "needs claim" status. Create a claim link and send it to the buyer so they can self-identify their Discord account.
Claim link shows "expired" or "already used"
Why it happens
Claim links have a configurable expiry (default: 7 days) and are single-use.
How to fix it
Create a new claim link in the dashboard (Claim Links page → Create link) and send the fresh URL to the member.
Rescue shows "partial scan"
Why it happens
The last scan ran from the dashboard, which only checks the database — not live Discord role state.
How to fix it
Run /access rescue in Discord. The bot command checks actual Discord role state against access records and gives the full picture.
Readiness check fails on "premium channel"
Why it happens
No premium (protected) channel has been configured for the server.
How to fix it
Run /setup in Discord and set the premium channel — this is the channel only paid members should see. Then re-run /setup launch-check.
Dashboard shows "No Premium server found" on the onboarding page
Why it happens
The server is in Trial mode, not Premium. The dashboard requires Premium to be active.
How to fix it
Run /premium buy in Discord to upgrade. After Ko-fi payment is confirmed, Premium activates for that server.
Still stuck?
Run /support info in Discord first. It bundles your server config, role hierarchy, and diagnostics into one message so support can diagnose without a back-and-forth.