Skip to main content

Facturer les clients

Les applications sur GitHub Marketplace doivent respecter les consignes de facturation de GitHub et prendre en charge les services recommandés. Le fait de suivre nos consignes aide les clients à parcourir le processus de facturation sans surprise.

Remarque : cet article s’applique à la publication d’applications dans GitHub Marketplace uniquement. Pour plus d’informations sur la publication de GitHub Actions dans GitHub Marketplace, consultez « Publication d’actions dans GitHub Marketplace ».

Présentation du cycle de facturation

Les clients peuvent choisir un cycle de facturation mensuel ou annuel lorsqu’ils achètent votre application. Tous les changements de cycle et de plan de facturation faits par les clients déclenchent un événement marketplace_purchase. Vous pouvez examiner la charge utile du webhook marketplace_purchase pour voir quel cycle de facturation un client sélectionne et à quelle date débute la facturation suivante (effective_date). Pour plus d’informations sur les charges utiles de webhook, consultez « Événements de webhook pour l’API GitHub Marketplace ».

Fournir des services de facturation dans l’interface utilisateur de votre application

Les clients doivent pouvoir effectuer les actions suivantes à partir du site web de votre application :

  • Modifier ou annuler leurs plans GitHub Marketplace séparément pour leur propre compte et le compte de leur organisation.
  • Les clients qui annulent un plan payant acheté à partir de GitHub Marketplace devraient être automatiquement renvoyés au plan gratuit de l’application s’il existe. Lorsqu’un client annule un abonnement GitHub Marketplace, GitHub ne désinstalle pas automatiquement l’application, de sorte que le client peut s'attendre à ce que les fonctionnalités gratuites continuent de fonctionner. Il est vivement recommandé de permettre aux clients de réactiver leur plan précédent.
  • Les clients doivent pouvoir effectuer une mise à niveau de l’interface utilisateur de votre application si vous fournissez une URL de mise à niveau au format suivant : https://www.github.com/marketplace/<LISTING_NAME>/upgrade/<LISTING_PLAN_NUMBER>/<CUSTOMER_ACCOUNT_ID>
  • Les clients devraient pouvoir modifier les utilisateurs qui ont accès à votre application à partir du site web de votre application s’ils ont acheté des postes (plan tarifaire par unité) ou si le plan offre des collaborateurs illimités.
  • Les clients devraient pouvoir voir les modifications suivantes apportées à leur compte immédiatement dans la section des paramètres de facturation, de profil ou de compte du site web de l’application :
    • Plan et prix actuels.
    • Nouveaux plans achetés.
    • Mises à niveau, retours à une version antérieure, annulations et nombre de jours restants dans un essai gratuit.
    • Modifications apportées aux cycles de facturation (mensuels ou annuels).
    • Utilisation et ressources restantes pour les plans à taux fixe et par unité. Par exemple, si le plan de tarification est par unité, le site de votre application doit afficher les unités utilisées et les unités disponibles.

Services de facturation pour les changements de plan et les annulations de plan

Suivez ces instructions concernant les passages à un plan supérieur ou inférieur et les annulations de plan pour maintenir un processus de facturation clair et cohérent. Pour obtenir des instructions plus détaillées sur les événements d’achat dans GitHub Marketplace, consultez « Utilisation de l’API GitHub Marketplace dans votre application ».

Vous pouvez utiliser la clé effective_date du webhook marketplace_purchase pour déterminer la date de changement d’un plan, et synchroniser régulièrement la liste des comptes associés à un plan.

Mises à niveau

Lorsqu’un client passe à un plan tarifaire supérieur ou qu’il change son cycle de facturation mensuel en annuel, vous devez rendre ce changement effectif immédiatement. Vous devez appliquer une remise au prorata sur le nouveau plan et changer le cycle de facturation.

Si un client effectue une mise à niveau de son plan et que le paiement échoue, GitHub rétablit son abonnement GitHub Marketplace qui repasse à l’état précédent. GitHub envoie également un e-mail au client pour l’informer de l’échec et lui permettre de retenter son achat. Vous recevrez un webhook avec l’action changed vous demandant de revenir au plan précédent.

Pour plus d’informations sur la création des workflows de changement de plan tarifaire dans votre application, consultez « Traitement des changements de plan ».

Passages à un plan inférieur et annulations de plan

Les passages à un plan inférieur se produisent quand un client passe d’un plan payant à un plan gratuit, qu’il sélectionne un plan de coût inférieur à son plan actuel ou qu’il change son cycle de facturation annuel en mensuel. Dans le cas des passages à un plan inférieur ou des annulations de plan, vous n’êtes pas tenu d’effectuer un remboursement. En effet, le plan actuel reste actif jusqu’au dernier jour du cycle de facturation en cours. L’événement marketplace_purchase est envoyé seulement quand le nouveau plan prend effet au début du cycle de facturation suivant du client.

Quand des clients annulent leur plan, vous devez :

  • Passer automatiquement leur plan à un plan gratuit (si disponible).

    Lorsqu’un client annule un abonnement GitHub Marketplace, GitHub ne désinstalle pas automatiquement l’application, de sorte que le client peut s'attendre à ce que les fonctionnalités gratuites continuent de fonctionner.

  • Les autoriser à passer à un plan supérieur via GitHub s’ils souhaitent poursuivre le plan ultérieurement.

Pour plus d’informations sur la création des workflows d’annulation de plan dans votre application, consultez « Traitement des annulations de plan ».