Skip to main content

Inviting Invoice Bot

The invite uses the bot and applications.commands scopes.
Embed Links isn’t required. Invoice Bot renders everything — invoices, payment details, status panels — with Discord’s Components V2 system. Classic discord.Embed is never used.

Privileged intents

None are required. Slash-command interaction payloads already carry the invoking member’s roles, so Invoice Bot never needs the Server Members or Message Content intent to check permissions or respond to a command.

Who can run what

Every command checks its permission on the server side when it actually runs, not just when a button is drawn — reopening a stale panel doesn’t bypass a check. Most invoice and configuration actions resolve to the same underlying check — referred to below as admin: the guild’s own Discord Administrator permission, the role set as admin_role via /payment_config, or the bot’s own operator. These are checked and named as separate concerns internally so a finer-grained role could be introduced later without changing every call site, but today they all resolve to the same admin tier.
There’s no separate “staff” tier below admin. Anyone who can manage invoices can also register their own payment profile once that module is turned on.