在使用同一张卡进行订阅和一次付款时出错

时间:2020-05-02 06:07:11

标签: laravel stripe-payments laravel-cashier

场景: 我想创建一个订阅,并用同一张卡一次性付款。我正在使用3D安全卡号4000002500003155,所以我弹出了转换3D增强的信息。确认后,我将使用Ajax将付款方式提交到服务器,然后更新默认付款方式,并且订阅已成功创建,但是使用相同默认付款方式进行的一次收费将引发此异常: “尝试付款失败,因为在完成之前还需要采取其他措施。”

如何使用同一张卡通过3D安全卡创建订阅和一次性付款:4000002500003155

这是我的前端代码:

stripe.confirmCardSetup(clientSecret, {
payment_method: {
  card: cardElement,
  billing_details:{ name: "{{$data->first_name}} {{$data->last_name}}"}
  },}).then(function(result) {
if(result.error){
}else{
}}

希望对此有所帮助。

1 个答案:

答案 0 :(得分:0)

如果您查看description for that test card,将会看到它需要一次性支付3DS费用,除非设置并用作休会时段。

如果您将一次性付款意图设为off-session,则在完成卡设置并按照您的意愿与客户建立联系之后,便应该成功。

\Stripe\PaymentIntent::create([
  'amount' => 2000,
  'currency' => 'usd',
  'payment_method_types' => ['card'],
  'customer' => 'cus_123',
  'payment_method' => 'pm_456',
  'off_session' => true,
  'confirm' => true,
]);