【发布时间】:2021-11-03 08:30:06
【问题描述】:
我正在尝试将 Flutter pay plugin 与 flutter_stripe 包集成。
我需要帮助了解如何处理 Google Pay API 返回的PaymentToken。我已经完成了将支付插件与我的 Flutter 应用程序的集成。
我现在应该如何处理插件使用 flutter_stripe 包返回的令牌?
【问题讨论】:
标签: flutter stripe-payments google-pay
我正在尝试将 Flutter pay plugin 与 flutter_stripe 包集成。
我需要帮助了解如何处理 Google Pay API 返回的PaymentToken。我已经完成了将支付插件与我的 Flutter 应用程序的集成。
我现在应该如何处理插件使用 flutter_stripe 包返回的令牌?
【问题讨论】:
标签: flutter stripe-payments google-pay
您应该改用官方的 Stripe Flutter 插件 (https://github.com/flutter-stripe/flutter_stripe)。
但是,如果您按照链接方式进行操作,则需要设置网关标记化以使用您的 Stripe API 密钥,例如:https://developers.google.com/pay/api/android/guides/tutorial#tokenization
当你完成这个过程后,它会在最后给你一个 tok_xxx Stripe 令牌(它在 PaymentData https://developers.google.com/android/reference/com/google/android/gms/wallet/PaymentData 的 JSON 中),可以被他们的 API 使用——你调用 https://stripe.com/docs/api/payment_methods/create#create_payment_method-card 来转换令牌到 PaymentMethod [ 0 ],然后用它确认 PaymentIntent。
它非常复杂且没有文档记录,所以我建议只使用官方的 Stripe 集成。
[0] -
例如如果您的后端在 Node 中,tok_xxx 是您从 Google Pay 获得并发送到后端的令牌,那么您可以使用它创建一个 PaymentMethod,然后与 PaymentIntent (https://stripe.com/docs/api/payment_intents/confirm#confirm_payment_intent-payment_method) 一起使用:
let pm = await stripe.paymentMethods.create({
type:"card",
card: {
token:"tok_xxxx"
}
})
【讨论】: