如何在Flutter中通过Stripe创建银行卡令牌?
解决flutter_stripe创建银行卡令牌的问题
你提到的CardTokenParams仅用于补充持卡人的姓名、地址等额外信息,银行卡的核心信息(卡号、有效期、CVC)需要通过CardDetails对象传入,具体实现步骤如下:
- 构建包含银行卡核心信息的
CardDetails对象 - 将
CardDetails传入CreateTokenParams.card()的card参数,同时可通过CardTokenParams补充持卡人附加信息 - 调用
createToken方法生成令牌
代码示例
// 初始化银行卡核心信息(测试用卡号,生产环境替换为用户输入内容) final cardDetails = CardDetails( number: '4242424242424242', expMonth: 12, expYear: 2025, cvc: '123', ); // 构建令牌创建参数,可选择性添加持卡人信息 final tokenParams = CreateTokenParams.card( card: cardDetails, params: CardTokenParams( name: 'John Doe', addressLine1: '123 Main Street', addressCity: 'New York', addressState: 'NY', addressZip: '10001', ), ); // 发起令牌创建请求 final tokenResult = await Stripe.instance.createToken(tokenParams); // tokenResult.id 即为需要发送给Laravel后端的银行卡令牌
注意事项
- 调用前需确保已通过
Stripe.publishableKey完成Stripe初始化 - 生产环境中不要硬编码银行卡信息,需通过安全的用户输入组件获取
- 后端收到令牌后,可使用Stripe的官方SDK(如laravel/cashier)发起扣款操作
内容的提问来源于stack exchange,提问作者Haya Hesham Abdel-azim
相关产品推荐
相关产品推荐

