Laravel Cashier 3D Secure/SCA问题条纹 [英] Laravel Cashier 3D Secure/SCA issue stripe

查看:88
本文介绍了Laravel Cashier 3D Secure/SCA问题条纹的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在我们的网站中使用laravel收银机集成了条带系统后,我用测试卡进行了测试,成功的卡很少,没有的成功.我试图适应3D安全/SCA.就是这样 4000003800000446、4000002500003155和4000000000003055成功,而 卡中的4000000000003220和4000002760003184发生故障,返回不完整状态.我的系统用于每年订阅一本杂志.我确实弹出窗口,敦促我确认身份验证,如图像确认弹出屏幕截图所示现在,在我确认后,它将重定向到我的代码以创建订阅,即

After integrating the stripe system using laravel cashier in our website, I did the testing with the test cards, few cards were successful and few were not. I have tried to adapt to the 3D secure/ SCA. So the thing is, 4000003800000446, 4000002500003155 and 4000000000003055 are success while 4000000000003220 and 4000002760003184 are failure among the cards, returns incomplete status. My system is for annual subscription for a magazine. I do get the pop up urging me to confirm authentication as shown in image confirmation popup screenshot now after i confirm, it redirects to my code for creating subscription which is



    $payement_intent = $request->get('intent');
                $plan_key = 'plan_*******';
                try{
                    $payement_info = $subscriber->newSubscription('yearly', $plan_key)->create($payement_intent, [
                        'email'=>$subscriber->email
                    ]);                
                }catch(IncompletePayment $e){
                    dd($e);
                    Session::flash('message', 'Payment is incomplete. Extra verification is needed. You will receive an email with further payment confirmation instructions.');
                    return redirect()->to(route('acc_success')); 
                }

由于我已转储了不完整的付款,因此例外的屏幕截图为在此处输入图片描述.我很困惑,因为我已经在弹出窗口中单击了完整的身份验证,不是要验证3D身份验证并成功付款,还是我错过了一些有关收银员不完整状态的信息,因为条状文档显示订阅仅在以下情况下才进入不完整状态尝试进行第一次充电,但失败或需要SCA."

since i have dumped the incomplete payments the screenshot for the exception is enter image description here. I am confused since i have clicked the complete authentication on the pop isn't it suppose to validate the 3D authentication and make payment successful or am i missing something regarding the incomplete status in cashier as stripe doc says "Subscriptions enter the incomplete status only when the first charge is attempted and either fails or requires SCA."

推荐答案

您使用的两张卡是3DS2卡,需要进行交易身份验证. incomplete状态要求您要求客户完成3DS流程以授权交易.您可以关注 https://stripe.com /docs/billing/migration/strong-customer-authentication#scenario-1-handling-sca 来执行此操作.

The two cards you are using are 3DS2 cards which requires authentication for transactions. The incomplete state requires you to ask your customer to complete the 3DS process to authorize the transaction. You could follow https://stripe.com/docs/billing/migration/strong-customer-authentication#scenario-1-handling-sca to do this.

基本上,如果订阅处于incomplete状态,则需要检查subscription.latest_invoice.payment_intent状态. 这些卡要求身份验证将在require_action中,特别是对于设计用于测试这些方案的这两张测试卡而言. 在这种情况下,您只需要将subscription.latest_invoice.payment_intent.client_secret传递到前端并调用handleCardPayment即可显示3DS模式,以便您的客户完成授权.

Basically, if the subscription is in incomplete status, you will need to check the subscription.latest_invoice.payment_intent status. It will be in require_action for these cards requires authentication especially for these two test cards designed for testing these scenarios. In this case, you will just need to pass the subscription.latest_invoice.payment_intent.client_secret to the frontend and call handleCardPayment to show an 3DS modal for your customer to complete the authorization.

这篇关于Laravel Cashier 3D Secure/SCA问题条纹的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆