Start with the member’s destination
A member has paid, joined your Discord server and still cannot see the private channels. They do not need a tour of your billing tools. They need access to what they bought, and a clear explanation of what happens next.
Before changing anything, ask which resource is missing: the server itself, a private channel, a course or a particular membership tier. These are different problems. An expired invitation needs a different fix from a missing role, and a role cannot unlock a course hosted elsewhere.
This checklist is for community operators. Members can use it to describe the problem clearly, but account checks and access changes belong with an authorised support team.
Access is part of the experience people purchased
For an academy, identify the course or cohort the learner bought before checking portal and community access. For a trading-education membership, distinguish the learning offer from any separate trading account. For a startup program, check the workspace or resource entitlement. A successful payment and a working community role are separate facts.
1. Confirm the account through a trusted route
Start from a signed-in member portal or an already verified account connection. A name, email address or screenshot can help locate a purchase, but it is not sufficient evidence that the person in the chat owns that account.
Check whether the Discord account linked to the membership is the one currently in your server. A member may have bought with one email address, connected a second Discord account or joined from a different profile on mobile.
If identity is unclear, send them to the account-linking or verification step in your official portal. Never ask them to paste a password, authentication code or complete payment-card details into a ticket.
2. Check entitlement, then the access assignment
Use the membership or billing platform as the source of truth for the entitlement. Confirm the purchased tier, current subscription state and relevant access dates. A receipt alone does not explain whether access is currently active.
For a Stripe-based system, the subscription and its payment events need to be considered together. Stripe documents provisioning access after a paid invoice when the subscription is active. The way that entitlement reaches Discord is a separate part of your integration. See Stripe’s subscription-event documentation.
Once the entitlement is confirmed, compare it with the role actually assigned to the verified Discord account. Check whether your integration attempted the assignment and whether its bot has the permissions and role position needed to manage that role.
Discord also allows channel-level permission overrides. A member can have the expected role and still be unable to see a particular channel. Test the specific destination rather than treating “role present” as proof that the problem is solved. See Discord’s permission guide.
Before you close the ticket
- The member’s identity and linked account have been verified.
- The purchased entitlement matches the access being restored.
- The intended channel or resource is now available.
- The member knows what changed and where to go next.
- The cause and action are recorded without unnecessary payment details.
If several members have the same problem, investigate the shared integration or permissions issue rather than repeatedly fixing individual roles. Track whether the member regains access and whether the ticket reopens; an explanatory reply alone is not a completed resolution.