Concedi ai tuoi clienti un ruolo nel tuo server Discord quando effettuano un acquisto e revocalo automaticamente quando il loro abbonamento termina.
L’entitlement Discord aggiunge un cliente pagante al tuo server (e, facoltativamente, gli assegna un ruolo) nel momento in cui il suo abbonamento diventa attivo o il suo acquisto una tantum viene completato. Le cancellazioni, i rimborsi e le modifiche al piano revocano automaticamente il ruolo.
Nel dashboard di Dodo Payments, vai su Entitlements e fai clic su + per iniziare un nuovo entitlement.
2
Pick Discord
Scegli Discord Access come integrazione. Se non hai ancora collegato Discord alla tua attività, ti verrà richiesto di fare clic su Connect Discord.
Connect Discord prompt before the OAuth handoff.
Facendo clic si apre Discord in una nuova scheda. Accedi, seleziona il server che vuoi proteggere e conferma i permessi del bot (Manage Roles, Kick Members, Create Invite) su quel server.
Discord OAuth: pick the server, then confirm the bot's permissions on it.
Quando Discord reindirizza alla pagina precedente, vedrai una conferma che il server è collegato.
Server connected — return to the Dodo Payments dashboard to continue.
3
Pick a server and role
Tornato nel dashboard, seleziona il server (guild) che hai appena collegato. Facoltativamente, scegli un ruolo da assegnare al momento della consegna oppure lascia il campo vuoto per concedere solo l’accesso al server. Assegna all’entitlement un nome e fai clic su Create Entitlement.
4
Save the entitlement
Salva l’entitlement. Ora è disponibile per essere associato a qualsiasi prodotto.
Dodo Payments crea un grant con stato Pending. Il suo oauth_url è null finché il cliente non avvia il flusso di accettazione; a quel punto viene valorizzato con un URL di autorizzazione Discord.
Il cliente riceve un’email con un pulsante “Join the Discord” (il link OAuth). Il link è visibile anche nel loro Customer Portal.
Dopo che il cliente ha autorizzato, il bot lo aggiunge al server e assegna il ruolo configurato. Il grant passa a Delivered.
Se l’abbonamento viene annullato, messo in pausa o scade, oppure se il commerciante lo revoca manualmente, il bot rimuove il ruolo e il grant passa a Revoked.
Assicurati che il ruolo del bot Dodo Payments sia posizionato sopra il ruolo che concedi. Discord impedisce ai bot di assegnare ruoli classificati più in alto del proprio.
entitlement_grant.created viene attivato con status: "Pending". oauth_url è null in questo momento: viene valorizzato quando il cliente avvia il flusso di accettazione dalla propria email di consegna o dal Customer Portal.
entitlement_grant.delivered viene attivato quando il ruolo viene assegnato.
entitlement_grant.revoked viene attivato quando il ruolo viene rimosso.
Il grant rimane in Pending finché il cliente non completa il flusso OAuth. Controlla l’elenco dei grant dell’entitlement e verifica se ha fatto clic sul link OAuth. Se necessario, invia nuovamente l’email di consegna.
Grant moves to failed with permission errors
Assicurati che il bot Dodo Payments sia ancora nel server, disponga del permesso Manage Roles e sia posizionato sopra il ruolo assegnato. Salvare nuovamente l’entitlement esegue di nuovo la convalida.
Customer cancelled but still has the role
Discord propaga immediatamente le rimozioni dei ruoli, ma il client Discord locale del cliente potrebbe utilizzare dati memorizzati nella cache. Il cliente dovrebbe riconnettersi o aggiornare la pagina; lo stato lato server è corretto.