当前位置: 首页 > 知识库问答 >
问题:

Stripe:为未来的支付建立一个3D安全认证的卡

谭思博
2023-03-14

这是现在执行和工作良好。

我在卡上充0.5美元,以触发3D安全认证过程。它的工作方式是首先检查PaymentIntent状态,如果它的“action_required”,那么它重定向到我在JS中实现了以下内容的HTML:

function _3dsec(stripe_publishable_key, pi_secret) {
    document.addEventListener("DOMContentLoaded", function(event) {
        var stripe = Stripe(stripe_publishable_key);

        stripe.confirmCardPayment(pi_secret).then(function(result) {
            if (result.error) {
                $("#3ds_result").text("Error!");
                $("#3ds_result").addClass("text-danger");
        }   else {
                $("#3ds_result").text("Card succesfully validated");
                $("#3ds_result").addClass("text-success");
        } 

        })

    })



}

而且这也很好用,如果卡需要,它可以进行3D安全认证。我只测试了条纹卡。然后我的想法是,我退还0.5美元,因为它只是用来验证卡。

然而,在我的产品中,收费是事后完成的。只有一个注册页面与用户和支付信息,然后发生费用,因为用户正在使用我的产品。这对于不需要3D安全身份验证的卡很好,但是对于需要身份验证的卡,我不能在以后创建费用,并在PaymentIntent上获得“3D安全身份验证所需”状态。并且客户无法对其进行身份验证,因为他们在此期间不在网站中(“关闭会话”)。

这种3D安全行为是否仅在条纹测试卡上,或者如何在需要3D验证的卡上实现未来的卡支付?

共有1个答案

谢选
2023-03-14

交易是否需要3D安全是完全由持卡人的银行决定的。当由于法规(例如,SCA)需要3D Secure时,Stripe将尽可能申请豁免,以限制需要身份验证的html" target="_blank">事务的可能性,但它并不保证。因此,是的,当您进入生产时,您的客户可能(但不太可能)会要求3D安全的每一个事务。

对于需要身份验证的卡,我不能在以后创建费用,并在PaymentIntent上获得“3D安全身份验证所需”状态。并且客户无法对其进行身份验证,因为他们在此期间不在网站中(“关闭会话”)。

在非会话支付的情况下,创建支付意图时,应将off_session属性设置为true:

这样做会告诉Stripe在生产现场时申请会话外付款豁免。您可以使用此表中的第一张监管测试卡来测试这些类型的支付行为:

https://stripe.com/docs/testing#法规-卡

在大多数情况下,豁免应该是足够的,支付应该不需要认证,但仍然有可能持卡人的银行会要求3D安全的交易。对于这些情况,您将需要在您的端编写逻辑来通知您的客户失败的交易,并使他们回到会话中来处理支付。

 类似资料:
  • 使用iOS SDK for Stripe,我们可以执行以下操作吗 创建客户配置文件,其中客户id可以发送并存储到后端 向客户配置文件添加、编辑、删除信用卡 卡可以从后端自动计费

  • 我在Stripe中创建了一个带有客户/信用卡的POC,我在Stripe中登录了我的仪表板,并且能够看到该客户有一个正确关联的默认来源(我添加的测试信用卡)。它显示这张卡是默认来源。 当我运行这个。网络代码: 为了得到该客户,它会正确地返回除其来源之外的所有内容。我希望能从中找到它的所有字段都是空的!我想知道他的默认付款来源,这样我就可以在前端显示它,并用一个小图标表示它是默认的。 DefaultS

  • 我一直在工作的条纹支付,现在我想要集成3D安全,但文档没有帮助我,有谁工作的3D安全在iOS? 我的主要问题是如何或何时初始化提供STPThreeDSUI的STPPaymentHandler来处理身份验证。 https://github.com/stripe/stripe-iOS

  • gRPC 被设计成可以利用插件的形式支持多种授权机制。本文档对多种支持的授权机制提供了一个概览,并且用例子来论述对应API,最后就其扩展性作了讨论。 马上将会推出更多文档和例子。 支持的授权机制 SSL/TLS gRP 集成 SSL/TLS 并对服务端授权所使用的 SSL/TLS 进行了改良,对客户端和服务端交换的所有数据进行了加密。对客户端来讲提供了可选的机制提供凭证来获得共同的授权。 OAut

  • 但是,这些文档不是用于stripe Connect的。他们是为定期条纹支付。 我的代码与文档相同,只是我的paymentIntents是在连接的帐户上创建的,因为我希望收费在连接的帐户上。 这会给我抛出错误,这是有意义的,因为客户是在平台帐户上设置的。 我想把客户和付款方式保存到我的平台账户,然后在连接的账户上收费。 有没有一种类似于文档的好方法,或者我必须做一个类似的工作--代码保存客户和支付方

  • 我正在从Changes API迁移到PaymentIntent API。我成功地安装了代码。 但我很惊讶地看到,每次我加载页面条带时,都会在条带dashboad上创建一个显示“未完成”付款状态的付款意图,点击带有所有详细信息的付款按钮后,该状态变为“成功”状态。 PHP代码 正如您所知,这为我提供了在js脚本中使用的客户机_密钥。 JS代码 我只想在用户点击支付按钮时创建条带支付。与收费API相同