In the Discord Developer Portal, navigate to the application's Monetization section and create a new SKU with type SUBSCRIPTION (type value 5) to represent a recurring user subscription
Note the SKU ID; do not attempt to manually create a SUBSCRIPTION_GROUP (type 6) — Discord auto-generates the group and it is not directly usable for entitlement checks
Use the List SKUs endpoint to confirm the SUBSCRIPTION SKU and the auto-created group are visible
When a user subscribes, receive the subscription_create event via your Gateway connection or webhook to capture the entitlement
Call the List Entitlements endpoint filtered by the user ID and SKU ID to verify an active entitlement before granting access to premium features
Handle subscription renewals and cancellations via subscription_update and subscription_delete Gateway events to keep entitlement state current
Known gotchas
Register SKU type SUBSCRIPTION (5) for user subscriptions — SUBSCRIPTION_GROUP (6) is auto-created by Discord and cannot be directly assigned or used for entitlement checks
Entitlement verification must be done server-side via the API; trusting only client-side signals is a security risk
Entitlements for test purchases made in development do not persist to production; ensure testing uses the correct application environment
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp