StripeException "无效的令牌 ID:tok_xx"时flutter_stripe与 Google Pay(支付插件)集成



我正试图在我的flutter应用程序中使用Pay插件flutter_stripe库集成Google Pay。付款后,我从支付插件获得令牌,但当我尝试将其发送到Stripe时,我得到异常为"无效令牌ID: tok_xx"。

我遵循flutter_stripe库提供的示例,如下所示:

final token = paymentResult['paymentMethodData']['tokenizationData']['token'];
final tokenJson = Map.castFrom(json.decode(token));
final params = PaymentMethodParams.cardFromToken(
paymentMethodData: PaymentMethodDataCardFromToken(
token: tokenJson['id'],
),
);
await Stripe.instance.confirmPayment(
paymentIntentClientSecret: clientSecret,
data: params,
);

我在确认付款方法上得到这个错误。我需要对令牌做更多的操作吗?有其他方法可以验证令牌吗?

我试着在发布和测试模式下测试,结果相同。

您所指的屏幕未完成,有一个TODO[1]需要完成。您有两个选项:

  1. 继续使用付费插件,并检查该SDK的维护者关于该TODO的下一步。或者使用以下API[2]从令牌创建一个PaymentMethod,并在确认PaymentIntent时使用它,如下所示:

    const paymentMethod = await stripe.paymentMethods.create({
    type: 'card',
    card: {
    token: 'tok_xxxxx',
    },
    });
    
  2. 或者,按照这个屏幕[3]和使用confirmPlatformPayPaymentIntent[4]方法来确认支付

[1] https://github.com/flutter-stripe/flutter_stripe/blob/db72f0ed6f5e47b932825e146f824608574ee75d/example/lib/screens/wallets/google_pay_screen.dart别

[2] https://stripe.com/docs/api/payment_methods/create?lang=node create_payment_method-card

[3] https://github.com/flutter-stripe/flutter_stripe/blob/main/example/lib/screens/wallets/google_pay_stripe_screen.dart[4] https://github.com/flutter-stripe/flutter_stripe/blob/main/example/lib/screens/wallets/google_pay_stripe_screen.dart气密性好

相关内容

  • 没有找到相关文章

最新更新