使用Rails重复计费 - 我的选择是什么?

A4J*_*A4J 12 paypal activemerchant ruby-on-rails-3

在进入之前,我想知道我的所有选择是什么,如果可能的话,他们的利弊.

我所知道的两个是使用ActiveMerchant或paypal_recurring gem,但它们是否满足这些要求?

  • 能够容纳月度和年度结算
  • 能够暂停,取消帐户等
  • 处理过期的卡详细信息或付款失败

paypal_recurring gem的待办事项列表包括"添加对IPN的支持" - 如何不具备此影响功能?

我知道有railskit SaaS但我宁愿自己编写代码,因为railskit仍然在3.2.1上.

我知道有像cheddergedder/chargify等服务,但他们会把你绑在一起吗?他们只是美国吗?他们值得考虑 - 或者他们通常只是针对非开发人员?

提前致谢.

jne*_*son 17

我刚刚完成了这个,所以我会试着说明你的选择.我最终使用Paypal Express Checkout通过Paypal进行所有定期购买.我们有一个定制的定期计费设置,每月通过Authnet为客户的信用卡收费,但由于我们需要一个国际解决方案而不得不切换,而Paypal是唯一支持我们所需货币的人之一,并不完全是编码的噩梦.

您可以使用ActiveMerchant通过插件重复计费,但请记住,它不是正式的ActiveMerchant的一部分,因此如果ActiveMerchant更改它处理某些事情的方式,则可能会中断.因此,我最终使用paypal-recurring通过Paypal处理通信,然后在Railscasts的帮助下滚动我自己的IPN解析器.另一个对我帮助很大的链接就是这个,尽管所有的:txn_type价值观都有所不同.

关于最后一个链接,以下:txn_type是我特别注意的4个:

  1. express_checkout - 第一次回发.
  2. recurring_payment_profile_created - 在用户首次订阅时发送第一个回发.
  3. recurring_payment_profile_cancel - 如果用户取消Paypal网站的订阅,则发送.
  4. recurring_payment - 资金已转入您的帐户.这是我在每月续订订阅之前等待的.这篇文章也附带payment_status,需要completed.

您提到的其他内容,如处理失败的付款和过期的卡,都是通过您的Paypal帐户处理的.

只是一句警告 - 我最终使用Paypal的唯一原因是它被普遍认可和信任,并且它接受国际货币.他们的网站上有大量的文档,其中大部分都是多余的,令人困惑的,而且完全太长.我的建议是确保你真的想要/需要处理定期付款,因为它们很难正确实施,并且可能比它们的价值更麻烦.