我有一个原生移动应用,我希望用户订阅月费。我首先与原生PayPal SDK集成并使用未来付款,但在这种情况下,我负责每个月处理付款。我想要一种更自动的方式,用户批准他们的订阅,PayPal每月自动发布付款。
我也开始关注Stripe,所以如果有使用其他库的解决方案,我也很高兴听到这个。
答案 0 :(得分:1)
(免责声明:我为Stripe工作。)
Stripe确实通过“订阅”功能支持定期付款。你可以在这里阅读更多相关信息:
要在移动应用中实现此功能,您需要使用iOS SDK和/或Android SDK。两种SDK都提供相同的功能:通过在用户设备和Stripe服务器之间直接交换信息,将卡信息转换为令牌的能力。
这样,敏感卡信息永远不会到达您的服务器,这大大减轻了PCI合规性的负担。您可以在此处阅读更多内容:https://support.stripe.com/questions/do-i-need-to-be-pci-compliant-what-do-i-have-to-do。 (本文讨论了Stripe.js和Checkout,但移动SDK的用途相同。)
创建令牌后,您需要将其发送到外部服务器,然后将其用于create a customer object和a subscription,如上面链接的订阅文档中所述。
这需要在外部服务器上而不是在应用程序本身中完成的原因是,除了创建卡令牌之外,所有其他API请求都需要与您的秘密API密钥一起发送。您无法嵌入或以其他方式为您的应用提供秘密API密钥,因为攻击者可能会将其提取并用于恶意目的(他们可以退还过去的费用,使用您的帐户来测试被盗的卡号等)。