跳至主要内容

向客户收费

GitHub Marketplace 上的应用应遵守 GitHub 的计费指南并支持推荐的服务。遵循我们的指南可以帮助客户顺利完成计费流程,避免任何意外。

注意

本文仅适用于在 GitHub Marketplace 发布应用。有关在 GitHub Marketplace 发布 GitHub Actions 的更多信息,请参阅“在 GitHub Marketplace 发布 Actions”。

了解计费周期

客户购买您的应用时,可以选择月度或年度计费周期。客户对计费周期和计划选择的任何更改都将触发 marketplace_purchase 事件。您可以参考 marketplace_purchase Webhook 负载来查看客户选择的计费周期以及下一个计费日期的开始时间 (effective_date)。有关 Webhook 负载的更多信息,请参阅“GitHub Marketplace API 的 Webhook 事件”。

在应用的 UI 中提供计费服务

客户应该能够从您的应用网站执行以下操作:

  • 客户应该能够分别修改或取消其个人和组织帐户的 GitHub Marketplace 计划。
  • 从 GitHub Marketplace 取消付费计划的客户,如果存在免费计划,则应自动降级到应用的免费计划。当客户取消 GitHub Marketplace 订阅时,GitHub 不会自动卸载应用,因此客户可以预期免费功能将继续运行。强烈建议允许客户重新启用其之前的计划。
  • 如果您的应用提供了以下格式的 升级 URL,则客户应该能够通过应用的用户界面进行升级:https://www.github.com/marketplace/<LISTING_NAME>/upgrade/<LISTING_PLAN_NUMBER>/<CUSTOMER_ACCOUNT_ID>
  • 如果客户购买了席位(按单位计费计划)或计划提供无限合作者,则他们应该能够从应用网站修改哪些用户可以访问您的应用。
  • 客户应该能够立即在其应用网站的计费、个人资料或帐户设置部分看到以下帐户更改:
    • 当前计划和价格。
    • 新购买的计划。
    • 升级、降级、取消以及免费试用剩余天数。
    • 计费周期更改(每月或每年)。
    • 固定费率和按单位计费计划的用量和剩余资源。例如,如果计费计划是按单位计费,您的应用网站应显示已使用的单位和可用单位。

升级、降级和取消的计费服务

请遵循以下升级、降级和取消指南,以保持清晰一致的计费流程。有关 GitHub Marketplace 购买事件的更详细说明,请参阅“在您的应用中使用 GitHub Marketplace API”。

您可以使用 marketplace_purchase Webhook 的 effective_date 密钥来确定计划更改何时发生,并定期同步 列出某个计划的帐户

升级

当客户升级其定价计划或将其计费周期从每月更改为每年时,您应立即对其生效。您需要对新计划应用按比例折扣并更改计费周期。

如果客户升级其计划并且支付失败,GitHub 会将其 GitHub Marketplace 订阅恢复到之前的状态。GitHub 还会向客户发送电子邮件,告知他们失败并允许他们重新尝试购买。您将收到一个带有 changed 操作的 Webhook,要求您恢复到之前的计划。

有关将升级和降级工作流程构建到您的应用中的信息,请参阅“处理计划更改”。

降级和取消

当客户从付费计划转到免费计划、选择价格低于其当前计划的计划或将其计费周期从每年更改为每月时,就会发生降级。发生降级或取消时,您无需提供退款。取而代之的是,当前计划将保持活动状态,直到当前计费周期的最后一天。当客户下一个计费周期的开始时,新计划生效时,将发送 marketplace_purchase 事件。

当客户取消计划时,您必须:

  • 如果存在,则自动将其降级到免费计划。

    当客户取消 GitHub Marketplace 订阅时,GitHub 不会自动卸载应用,因此客户可以预期免费功能将继续运行。

  • 如果他们以后想要继续该计划,则允许他们通过 GitHub 升级计划。

有关将取消工作流程构建到您的应用中的信息,请参阅“处理计划取消”。