【问题标题】:How to verify credit card and post a sale in a single API transaction?如何在单个 API 交易中验证信用卡并发布销售?
【发布时间】:2016-08-26 16:17:37
【问题描述】:

编辑:

tl;dr:你不能。

您必须创建一种付款方式才能进行验证。即使全局启用了验证,创建销售也不会调用验证。

原文:

我正在阅读有关 credit card verification 的信息,这显然不是在 Braintree_Transaction::sale() 期间自动完成的,但我没有看到任何启用调用 sale() 验证的选项。

我真的必须(至少)实现两个单独的 API 交易来验证信用卡吗?

理想情况下,我想使用对 ::sale() 的一次调用来执行验证、授权和捕获。

我已经通过我的控制面板启用了验证,并且我正在使用测试信用卡号 4000111111111115,它应该被拒绝,但我正在使用它成功交易。

即使我启用了全局验证,我是否必须单独创建付款方式才能执行验证?

【问题讨论】:

    标签: braintree


    【解决方案1】:

    全面披露:我在 Braintree 工作。如果您还有任何问题,请随时联系support

    test card verification结果,请adjust the amount你的交易。因为这些卡没有链接到真实账户,Braintree 无法制作在生产中制作的小authorization charges,而是 API 必须依靠测试交易的数量来指示预期的响应。

    在生产环境中,卡验证由支付方式的创建触发,而不是通过交易触发。要启用验证,请enable it across all payment methods 或将verifyCard 选项添加到您的PaymentMethod::Create 呼叫中。如果验证因任何原因失败,对PaymentMethod::Create 的响应将包含creditCardVerification 对象,允许您在调用sale 之前停止事务。

    【讨论】:

    • 感谢您的回复。你是说 Braintree_Transaction::sale() 确实触发卡验证,但仅在实时环境中?
    • 我已经更新了答案,希望能更清楚一点。如果它没有回答您的问题,请告诉我!
    • 好吧,我想你是说:即使在生产中,我也必须单独执行验证,即使在所有支付方式都启用了验证。 Transaction::sale() 永远不会验证付款方式。
    • @jellenberger 如果用户可以使用假信用卡号码,那么使用 transaction.sale() 有什么意义。
    • 跟进@Abdel的评论,卡验证是什么意思?您是说可以在不验证卡的情况下提交交易吗?这很令人困惑......
    猜你喜欢
    • 2017-03-23
    • 1970-01-01
    • 2020-08-28
    • 2023-03-22
    • 2015-10-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-08
    相关资源
    最近更新 更多