Lägg till betalande kunder på din Discord-server med en valfri roll och ta bort dem automatiskt när deras åtkomst upphör.
Discord-entitlementen lägger till en betalande kund på din Discord-server och kan tilldela kunden en roll. Kunden ansluter sitt Discord-konto efter att prenumerationen har aktiverats eller engångsbetalningen har genomförts. När grant återkallas, till exempel vid uppsägning eller återbetalning, tar Dodo Payments bort rollen och tar bort kunden från servern.
Kunden ansluter sitt Discord-konto från Customer Portal. I e-postbekräftelsen för betalningen markeras entitlementen som Action Required och en länk till portalen inkluderas.
När kunden har godkänt lägger Dodo Payments-boten till kunden på din server eller hittar det befintliga medlemskapet och tilldelar den roll du har konfigurerat.
Om du inte väljer en roll får kunden endast medlemskap i servern.
Använd den för betalda communities, förmåner för supportrar och kanaler med åtkomst på olika nivåer.
I Dodo Payments-dashboarden går du till Entitlements och klickar på + för att starta en ny entitlement.
2
Pick Discord
Välj Discord Access som integration. Om Discord ännu inte är anslutet för ditt företag klickar du på Connect Discord.
Connect Discord prompt before the OAuth handoff.
Discord öppnas i en ny flik. Logga in, välj servern du vill begränsa åtkomsten till och godkänn botens behörigheter på servern: Manage Roles, Kick Members och Create Invite.
Discord OAuth: pick the server to add the bot to.
Discord OAuth: confirm the bot's permissions on the server.
När Discord omdirigerar tillbaka visas en bekräftelsesida som visar att servern är ansluten.
Server connected. Return to the Dodo Payments dashboard to continue.
3
Pick a Server and Role
Tillbaka i dashboarden väljer du den Server du anslöt. Om du vill tilldela en roll vid leverans väljer du den under Role. Om kunden endast ska få medlemskap i servern låter du Role vara inställd på No specific role. Ange ett Name för entitlementen och klicka på Create Entitlement.
Dodo Payments skapar ett bidrag med statusen Pending. Dodo Payments försöker skapa en Discord-auktoriserings-URL direkt och lagrar den i oauth_url. Om det misslyckas förblir oauth_urlnull tills kunden startar godkännandeflödet.
E-postmeddelandet som bekräftar betalningen listar förmånen som Åtgärd krävs och länkar till Customer Portal. I portalen klickar kunden på Anslut på förmånen.
Kunden auktoriserar Dodo Payments på Discord. Boten lägger till kunden på servern och tilldelar den konfigurerade rollen, och bidraget övergår till Delivered.
När bidraget återkallas (prenumerationen avslutas, pausas, sätts på vänt eller löper ut, engångsbetalningen återbetalas eller du återkallar bidraget) tar boten bort rollen och tar bort kunden från servern. Bidraget övergår till Revoked.
En auktoriseringslänk upphör att gälla 30 minuter efter att den har genererats. Om kunden återvänder till Customer Portal efter det genererar Dodo Payments en ny länk. Om en kund lämnar din server på egen hand återkallar Dodo Payments deras grant med revocation_reason: platform_external.
Placera Dodo Payments-botens roll ovanför rollen du tilldelar. Discord tillåter inte en bot att tilldela en roll på samma nivå som eller över dess egen högsta roll. Hanterade roller, till exempel bot- och integrationsroller, kan inte tilldelas.
// client is a *dodopayments.Client, for example from// dodopayments.NewClient(option.WithEnvironmentTestMode()); ctx is a context.Context.client.Entitlements.New(ctx, dodopayments.EntitlementNewParams{ Name: dodopayments.F("Patrons Discord Role"), IntegrationType: dodopayments.F(dodopayments.EntitlementIntegrationTypeDiscord), IntegrationConfig: dodopayments.F[dodopayments.IntegrationConfigUnionParam]( dodopayments.IntegrationConfigDiscordConfigParam{ GuildID: dodopayments.F("123456789012345678"), RoleID: dodopayments.F("987654321098765432"), }, ),})
entitlement_grant.created utlöses med status: "Pending". oauth_url kan redan innehålla auktoriserings-URL:en. Om den är null fylls den i när kunden startar godkännandeflödet från Customer Portal.
entitlement_grant.delivered utlöses när kunden ansluter till servern och rollen har tilldelats.
entitlement_grant.revoked utlöses när rollen tas bort och kunden tas bort från servern.
Grant förblir Pending tills kunden slutför Discord-auktoriseringen. Öppna entitlementen i dashboarden och kontrollera kundens grant. Om den fortfarande är Pending ber du kunden öppna Customer Portal och klicka på Connect för Discord-entitlementen.
Grant moves to failed with permission errors
Kontrollera att Dodo Payments-boten fortfarande finns på servern, har behörigheten Hantera roller och ligger ovanför rollen som tilldelas. Om boten tas bort från servern återkallar Dodo Payments serverns väntande och levererade bidrag. Om du sparar förmånen igen kontrolleras endast dess inställningar, inte botens behörigheter. När du har åtgärdat behörigheterna ber du kunden öppna Customer Portal och klicka på Anslut på Discord-förmånen för att försöka leverera bidraget igen.
Customer cancelled but still has the role
Vid återkallande tas rollen bort och kunden tas bort från servern. Om grant visar Revoked men kunden fortfarande finns på servern kontrollerar du att boten fortfarande har behörigheterna Manage Roles och Kick Members och ligger ovanför rollen. Om kundens Discord-app fortfarande visar rollen ber du kunden uppdatera den. Tillståndet på serversidan är den tillförlitliga källan.