我升级了我的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。所以我希望有人可以帮助我解决这个问题,或者有其他解决方案?
谢谢