Laravel Cashier 3D Secure 2问题

时间:2019-12-04 11:14:46

标签: laravel stripe-payments laravel-5.8 laravel-cashier

我升级了我的Laravel应用程序中的条带集成,该应用程序使用Cashier 10.0处理订阅,以适应新的SCA规则。我在这里遵循了指南: https://github.com/laravel/cashier/blob/10.0/UPGRADE.md

所以我的代码在前端看起来像这样:

componentDidUpdate(prevProps) {
  if (!prevProps.successMessage && !!this.props.successMessage) {
    firebase.analytics().logEvent('voucher_redeemed_event');
    firebase.analytics().setUserProperty('user_redemed_voucher', 'true');
  }
}

在我的控制器中,我的设置如下:

cardButton.addEventListener('click', async (e) => {
        const { setupIntent, error } = await stripe.handleCardSetup(
            clientSecret, cardElement, {
                payment_method_data: {
                    billing_details: { name: cardHolderName.value }
                }
            }

        );

        if (error) {

            toastr.error(error.message);

        } else {

            axios.post(route('subscriptions.create'), {
                token: token.id,
                plan: plan,
                payment_method: setupIntent.payment_method
            }, config)
                .then((response)=> {
                    toastr.success('Votre abonnement a bien été pris en compte');
                    location.reload();

                }).catch(function() {
                toastr.error('Une erreur s\'est produite');
            })
        }
    });

这种集成实际上对于这样的3D安全卡非常有效:4000003800000446(由条带提供)。当我输入这张卡时,我得到了这样的3D安全弹出窗口: 3d secure popup。当我单击“完全身份验证”时,身份验证有效并且订阅处于活动状态。

我遇到的问题是需要3D Secure 2身份验证的卡,例如这样的卡:4000000000003220。在这种情况下,即使在3D Secure弹出窗口中单击“完全身份验证”后,身份验证也会失败,订阅将以不完整状态结束。 / p>

我已经看过this thread,因为我遇到了完全相同的问题。问题是我不知道如何实现建议的anwser。所以我希望有人可以帮助我解决这个问题,或者有其他解决方案?

谢谢

0 个答案:

没有答案