Pay Plugin(Google Pay)与flutter_stripe集成及PaymentToken处理咨询
Google Pay PaymentToken 结合 flutter_stripe 处理流程
你已经完成pay插件接入拿到Google Pay返回的PaymentToken后,按以下步骤操作即可:
- 提取
PaymentToken中的有效token字段:从pay插件返回的支付结果结构里,找到paymentMethodData->tokenizationData->token对应的字符串内容,这就是Stripe需要的Google Pay加密凭证。 - 调用flutter_stripe提供的Google Pay支付方法创建接口,传入提取到的token和交易参数,示例代码如下:
// 替换为你实际拿到的google pay token内容 final extractedToken = yourPaymentResult['paymentMethodData']['tokenizationData']['token']; // 创建Stripe支付方法 try { final paymentMethod = await Stripe.instance.createGooglePayPaymentMethod( googlePayPaymentMethodParams: GooglePayPaymentMethodParams( token: extractedToken, // 金额单位为对应币种的最小单位,例如人民币用分、美元用美分 amount: 9900, currencyCode: 'CNY', ), ); // 拿到paymentMethod.id后传给你的后端服务 await sendPaymentMethodToBackend(paymentMethod.id); } on StripeException catch (e) { // 处理创建支付方法过程中出现的错误 print('支付方法创建失败: ${e.error.localizedMessage}'); }
- 后端拿到支付方法ID后,调用Stripe官方的支付Intent确认接口完成扣款即可,该步骤必须在服务端执行,不要在前端直接完成支付确认,避免出现资金安全风险。
补充注意:操作前需确认你在Stripe管理后台已经开通了Google Pay支付权限,同时pay插件中配置的支付网关参数要和Stripe要求的参数一致,否则生成的
PaymentToken会无法被Stripe正常解析。
内容的提问来源于stack exchange,提问作者astennumero
相关产品推荐
相关产品推荐

