Android Firebase 和 Stripe 集成

Posted

技术标签:

【中文标题】Android Firebase 和 Stripe 集成【英文标题】:Android Firebase and Stripe Integration 【发布时间】:2018-02-13 07:40:42 【问题描述】:

我正在将 Stripe Payment Gateway 集成到 android 应用程序中,并面临一些问题。 在Stripe Documentation 之后,似乎需要拥有自己的服务器。 挖了几个小时,Firebase Cloud Functions 可以完成服务器工作......太棒了!!

但据我所知,至少可以通过两种方式完成:

HTTP Trigger 写入 Firebase 数据库会触发云函数

那么首先,使用哪一个? 具有良好旧改造的良好旧行业受信任的 http 端点? 还是更简单的写入 Firebase 数据库来触发函数?

另外,至于下一步,我找不到任何 Android 教程来进行下一步。仅此 Web 应用程序:https://github.com/firebase/functions-samples/tree/master/stripe. 据我所知,它需要 Node.js、npm 等...

没有比 Google 更简单的东西了吗?

大家好

【问题讨论】:

是使用 http 触发器还是写入 firebase 触发器取决于您的应用程序。你觉得哪个更合适?至于 Android,请查看 Stripe 的 Android 库。 stripe.com/docs/mobile/android 【参考方案1】:

首先,无论哪种方式,您都必须用 javascript 编写后端代码来处理付款。

因此,我们使用 Cloud Functions 的流程是 -

1) Android 使用原生 SDK 向 Stripe 提供卡片详细信息

2) Stripe 提供了一个令牌,Android 将其发送到您的 Firebase 后端

you could store it in stripeTokens/userId/yourToken

3) Firebase 云函数然后触发一个函数并使用此令牌创建 Stripe 客户(请参阅保存供以后和客户使用)

you could store it in stripe_customers/userId/stripeCustomerId

4) 记得删除yourToken,因为它只有效一次

5) 最后你可以使用这个stripeCustomerId 来支付和更新后端的相关节点

这里的重要概念是创建一个客户并将其存储在您的后端以供将来付款。

所以 2) 之后的步骤都是云功能,所以是的,大部分工作都是在后端完成的。 Android 唯一要做的就是输入卡详细信息、发送令牌、触发和侦听未来的费用。

就 HTTP 而言,概念是相似的,但唯一不同的是您等待响应,如果有任何错误,您会得到它,而如果您要使用 Cloud Functions,则必须编写那些某处出现错误并从客户端读取这些错误。

希望这会有所帮助。

【讨论】:

以上是关于Android Firebase 和 Stripe 集成的主要内容,如果未能解决你的问题,请参考以下文章

用于条带集成的 Firebase 计划付款

正确使用 Firebase Cloud Functions 和 Stripe

是否可以将 Stripe 与 Firebase 和 iOS 集成?

使用 React Native/Stripe/Firebase 一次性付款

使用 Firebase HTTP 函数(Firebase、Stripe OAuth、React (JSX) 前端)将授权代码返回到 Stripe

Firebase + stripe + react native 通知客户端 firebase 功能已完成