针对我们的要求(以下列出),我正在寻找任何最佳实践方面的建议,以及有关常见陷阱或应特别考虑的特定问题的任何其他提示。我们将使用PaymentExpress作为支付网关,因为它是少数支持具有定期计费并且没有任何特殊条件限制美国以外公司的支持网关之一。该应用程序的背后业务总部位于英国。
应用程序的用户可以使用子域名创建帐户,他们可以在其中访问和自定义应用程序和数据。以下是可能对计费方式产生影响的要求/功能:
- 所有用户都享有30天试用期
- 有不同的计划,包括免费版
- 更高价格的计划有更大的数据使用限制(例如用户、项目等)
- 计费周期将是每月一次,从试用期后开始计算
- 将提供折扣/优惠码以获得年度计划等的正常价格的百分比折扣。
- 随着添加功能,计划定价将会改变
- 当他们违反较低级别计划的限制时,如何处理降级
- 信用卡过期或付款未成功时的行为(可能强制进入只读模式)
- 当计划定价更改时,我们希望对现有用户尊重以前的价格一段时间(例如6个月),然后开始收取更高的费用。如果计划价格下降,它将立即生效。
我需要说明的是,我们计划在很大程度上基于SaaSy的代码库。SaaSy被设计成一个独立的Rails应用程序,处理所有注册和账户管理方面的事情。然而,这对我们来说不起作用,因为我们从一开始就没有计划这样做,而且要使我们的应用程序像那样工作将是一个繁琐的过程。因此,我们将从SaaSy中提取代码和思想,并将它们合并到我们的应用程序中,这是一项相对不那么繁琐的任务。