Skip to main content
L’entitlement GitHub aggiunge un cliente pagante come collaboratore a un repository privato. Scegli il livello di autorizzazione (pull, push, triage, maintain o admin). Dodo Payments invia l’invito al collaboratore e lo rimuove quando il grant viene revocato.

Cosa viene fornito

  • Il cliente collega il proprio account GitHub dal Customer Portal. In questo modo collega il proprio account GitHub all’acquisto.
  • Dodo Payments invita l’account al tuo repository al livello di autorizzazione configurato. Il cliente ottiene l’accesso dopo aver accettato l’invito su GitHub. Se il cliente è il proprietario del repository, non è necessario alcun invito.
  • La cancellazione, il rimborso o una revoca manuale rimuovono il collaboratore e annullano qualsiasi invito in sospeso.
Gli usi comuni includono prodotti con codice sorgente disponibile, template a pagamento, repository di codice per corsi e SDK client ad accesso limitato.

Connetti GitHub

1

Open Entitlements

Nel dashboard di Dodo Payments, vai su Entitlements e fai clic su + per creare un nuovo entitlement.
2

Pick GitHub

Scegli GitHub Access come integrazione. Se GitHub non è ancora connesso, fai clic su Connect GitHub.
Pannello di nuovo diritto che invita il commerciante a connettere GitHub

Connect GitHub prompt before the install handoff.

GitHub si apre in una nuova scheda. Accedi, quindi installa la Dodo Payments GitHub App sull’organizzazione o sull’account utente proprietario del repository. Puoi concedere all’app l’accesso a All repositories o Only select repositories. Se selezioni repository specifici, includi ogni repository a cui intendi limitare l’accesso.
GitHub Install and Authorize page with All repositories and Only select repositories options

GitHub Install & Authorize page. Choose which repositories the app can manage.

Quando GitHub reindirizza nuovamente alla dashboard, una pagina di conferma mostra che l’account è connesso.
GitHub Access connected successfully confirmation page

Account connected. Return to the Dodo Payments dashboard to continue.

3

Pick a Repository and Permission

Tornato nel dashboard, seleziona il Repository a cui l’entitlement concede l’accesso, quindi seleziona il livello di Permission. Il selettore dei repository mostra solo i repository a cui la GitHub App può accedere. Inserisci un Name per l’entitlement e fai clic su Create Entitlement.
Modulo diritto GitHub con Accesso GitHub connesso, selettore di repository, menu a discesa delle autorizzazioni e campo nome

Creating a GitHub entitlement. Pick the repository and the permission you want customers to receive.

4

Attach It to a Product

Collega l’entitlement a qualsiasi prodotto. I clienti che acquistano quel prodotto ricevono un invito GitHub dopo aver collegato il proprio account GitHub.

Livelli di autorizzazione

L’entitlement usa le autorizzazioni standard dei repository GitHub:
Concedi il least privilege adeguato al tuo caso d’uso. La maggior parte dei prodotti con contenuti a pagamento necessita solo di pull.

Flusso del cliente

  1. Il cliente completa il checkout.
  2. Dodo Payments crea un grant con stato Pending. Dodo Payments prova subito a creare un URL di autorizzazione GitHub e lo memorizza in oauth_url. Se l’operazione non riesce, oauth_url rimane null finché il cliente non avvia il flusso di accettazione.
  3. L’email di conferma del pagamento elenca l’entitlement come Azione richiesta e include un link al Customer Portal. Nel portale, il cliente fa clic su Connetti e si autentica con GitHub. Un link di autorizzazione scade dopo 30 minuti e il Customer Portal ne genera uno nuovo quando il cliente torna.
  4. Dodo Payments invita l’account GitHub del cliente al repository con il livello di autorizzazione configurato. Il grant passa a Delivered una volta creata l’invito. Se GitHub rifiuta l’invito, il grant non viene assegnato.
  5. Se l’abbonamento viene annullato, il pagamento viene rimborsato o il grant viene revocato, Dodo Payments rimuove il cliente come collaboratore e annulla eventuali inviti in sospeso.

Configurazione obbligatoria

Creare tramite API

Webhooks

Gli eventi standard del webhook entitlement_grant.* coprono il flusso GitHub:
  • entitlement_grant.created viene attivato con status: "Pending". oauth_url potrebbe contenere già l’URL di autorizzazione GitHub. Se è null, viene valorizzato quando il cliente avvia il flusso di accettazione dal Customer Portal.
  • entitlement_grant.delivered viene attivato una volta creato l’invito al collaboratore.
  • entitlement_grant.revoked viene attivato quando l’accesso viene revocato. Se disinstalli il GitHub App, Dodo Payments revoca i grant in sospeso e assegnati di quell’installazione con revocation_reason: platform_external.
  • entitlement_grant.failed viene attivato con error_code: "GRANT_ACCESS_FAILED" se Dodo Payments non riesce ad aggiungere il cliente al repository, ad esempio perché il GitHub App ha perso l’accesso al repository.

Risoluzione dei problemi

Il GitHub App di Dodo Payments deve essere installato nell’organizzazione o nell’account utente proprietario del repository. Nel modulo dell’entitlement, fai clic su Disconnetti nella scheda GitHub, quindi fai clic su Connetti GitHub per reinstallare l’app e concedile l’accesso ai repository che vuoi proteggere.
L’installazione della GitHub App non ha più accesso al repository oppure il repository è stato rinominato o trasferito. Concedi nuovamente all’app l’accesso al repository e il successivo regrant andrà a buon fine.
I clienti accettano l’invito GitHub dalle notifiche GitHub o dal link nell’email di invito di GitHub. Finché non accettano, risultano invitati ma non possono clonare il repository. Il grant rimane Delivered in Dodo Payments, perché l’invito è ciò che Dodo Payments emette.
Ultima modifica il 26 settembre 2026