braintree - Braintree 沙盒 API : 'Billing state format is invalid' 上的突然失败请求

标签 braintree braintree-sandbox

我们正在经营一家与 Braintree 相连的英国 Magento 商店。几个月来,一切都在顺利运行,但突然之间,我们无法在任何连接到 Braintree Sandbox 的临时或本地测试环境中完成订单。
在结账时,会向 3d 安全端点发出请求,如果我们进入了英国的县,我们会收到以下响应:
端点:
https://api.sandbox.braintreegateway.com/merchants/xxx/client_api/v1/payment_methods/xxx/three_d_secure/lookup
请求计费部分:

"additionalInfo": {
        "billingCity": "Leeds",
        "billingCountryCode": "GB",
        "billingGivenName": "John",
        "billingLine1": "50 Upton Road",
        "billingPhoneNumber": "07733222111",
        "billingPostalCode": "LE6 7TH",
        "billingState": "Yorkshire",
        "billingSurname": "Smith"
    },
回复:
{
    "error": {
        "message": "Billing state format is invalid."
    },
    "threeDSecureInfo": {
        "liabilityShiftPossible": false,
        "liabilityShifted": false
    }
}
如果我们从结帐中删除县字段(并最终从请求中删除 'billingSate ),则响应是有效的,我们可以正常结帐。
  • 这最近才开始发生
  • 相同的代码库在生产 Braintree 上运行良好
  • 我在生产中模拟了一个具有完全相同参数的请求,它工作正常
  • 与 Braintree 一起提出票但没有回应
  • 如果我在县字段中使用两位数的美国州代码,我可以结帐

  • 谁有想法?

    最佳答案

    我终于从 Braintree 那里得到了关于这个的答案。显然 3ds2 现在已在 Sandbox 上强制执行,这要求将州或县作为两位数代码发送。
    在生产中,如果发送全名,它将(当前)优雅地降级为 3ds1 并完成。
    为了促使人们使用 3ds2,沙箱没有切换到 3ds1 并返回错误。

    关于braintree - Braintree 沙盒 API : 'Billing state format is invalid' 上的突然失败请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65701058/

    相关文章:

    java - com.acti.braintreegateway.exceptions.UnexpectedException : Could not verify SSL certificate for URL

    java - Braintree paypal 集成失败

    ruby-on-rails - 生成布伦特里收据

    python - dev_appserver.py 无法发出 SSL 请求的解决方法

    node.js - Braintree customer.find() 无法使用 Nodejs

    paypal - 在 Braintree 付款中搜索客户的有效订阅

    python - Braintree - 如何在 Braintree 中重置重试

    ios - Braintree DropIn + Apple Pay,不出现 Apple Pay 项目

    braintree - Braintree 的默认 api 速率限制是多少?

    ruby-on-rails - 在不成功的 Braintree 交易期间返回参数/信用卡信息