【问题标题】:Validating Shipping Addresses验证送货地址
【发布时间】:2015-03-04 01:48:40
【问题描述】:

场景: 客户购物并创建电子商务订单。有一个客户数据库表和一个运输表。客户可以拥有更多的送货地址。如果客户登录下一个订单,则根据客户 ID 从发货表中提取发货地​​址。

货件已装箱,商店管理员订购了运输标签,并将地址发送到“验证”。当收货地址被验证时,会返回一个新版本的收货地址。这里有4种可能:

1) 验证地址没有任何变化,除了字母可能已更改为大写。

2) 已验证的地址有一些细微的变化,不影响原始版本。可能将 Ave 添加到街道名称字段或将 5 位邮政编码更新为 9 位版本。

3) 原始提交的送货地址有一个小错误 - 但验证能够更正它。例如邮政编码有一个错误的数字。

4) 原提交的地址有重大错误,无法通过验证解决。要么由管理员找出并重新提交,要么必须联系客户。

所以问题是:

A) 我们是否总是使用(新的)已验证地址更新运输表?

B) 还是我们进行某种检查并比较原始和验证以查看是否有更改,然后仅在地址更改时才更新?

C) 还是我们应该更新地址并保留原始地址的备份副本?

选项 A 似乎是最简单的,但我很好奇人们是如何处理这个问题的。请注意,就验证的严格性而言,这可能与使用 USPS 邮政运输最为相关。

====== 编辑

在客户输入时验证送货地址显然是最优化的,但电子商务商家可以从商家无法控制的不同“渠道”获得订单。因此仍然需要在创建运输标签时进行验证。

【问题讨论】:

    标签: e-commerce shopping-cart shipping fedex usps


    【解决方案1】:

    D) 在入口点与客户互动。

    在创建电子商务订单时 - 是他们输入地址的地方吗?这就是您应该验证细节的关键。这就是您可以要求更多信息和清晰度的一点。

    例如,如果您事后进行验证,则可以应用简单的更正(或随时间变化),但如果有重大变化或客户没有输入他们的公寓信息,那么事后就无法猜测,并且可以创建一项昂贵且耗时的任务(给客户回电话等)。

    有几种方法可以做到这一点,我不确定你目前使用的是什么。如果您使用第三方解决方案(例如我公司的产品:https://www.edq.com/address-verification),他们可能有您可以使用的服务,这些服务提供所需的交互和提示。诸如此类的解决方案的优势在于,它可以加快地址捕获速度并简化结帐过程,而且还可以确保在捕获时验证和更正地址。

    如果您执行上述操作,那么您只需要存储一个正确的、客户接受的地址。如果他们第一次正确输入,那么它会直接通过一个可爱的用户体验,如果有问题,那么通过额外的交互来修复小问题(可能附加 Zip +4)或者提示并引导他们更正他们的地址。

    【讨论】:

    • 您好——感谢您的回答,我正在修改这个问题,以考虑通过零售商无法控制的其他“渠道”进行的销售。
    【解决方案2】:

    USPS 地址验证仅在确认地址不会实际更改预期地址时更正地址。当地址验证不明确时,地址验证服务会返回原始地址(或错误),通常会包含“ZIP 和城市匹配,但街道地址无效”等消息。

    因此,您应该能够使用选项 A 或 B。话虽如此,不幸的是,大多数运营商 API(包括地址验证)都不是 100% 可靠的,因此使用选项 C 进行备份可能是合理的。

    如果您需要访问一个易于使用的地址验证界面,我的公司Shippo 提供了一个易于使用的地址验证 REST API。

    【讨论】:

      【解决方案3】:

      您可以尝试 Pitney Bowes “IdentifyAddress” Api,网址为 - https://identify.pitneybowes.com/

      该服务分析输入地址并将其与世界各地的已知地址数据库进行比较,以输出标准化的详细信息。它更正地址,添加丢失的邮政信息,并使用适用邮政当局首选的格式对其进行格式化。我还使用了额外的地址数据库,因此它可以提供增强的详细信息,包括地址质量、地址类型、音译(例如从中文汉字到拉丁字符)以及地址是否已验证到场所/门牌号、街道或城市级别参考信息。

      您会在网站上找到很多可用的示例和 sdk,我发现它非常容易集成。 这是小样本 - JSON 请求 -

        {
        "options": {
          "OutputCasing": "M"
      
        },
        "Input": {
          "Row": [
            {
              "AddressLine1": "13 milk st",
              "AddressLine2": "",
              "City": "boston",
              "Country": "us",
              "StateProvince": "ma",
              "PostalCode": "",
              "user_fields":[
                { 
                      "name": "User1",
                      "value": "Value1"
                }
                ] 
            }
      
          ]
        }
      }
        }
      

      JSON 响应

       {"Output": [{
         "Status": "F",
         "Status.Code": "UnableToDPVConfirm",
         "Status.Description": "Address Not Deliverable",
         "AddressLine1": "13 Milk St",
         "City": "Boston",
         "StateProvince": "MA",
         "PostalCode": "02109-5402",
         "Country": "United States of America",
         "BlockAddress": "13 Milk St Boston MA  02109-5402 United States of America",
         "PostalCode.Base": "02109",
         "PostalCode.AddOn": "5402",
         "user_fields": [   {
            "name": "User1",
            "value": "Value1"
         }]
      }]}
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-10-12
        • 2021-12-19
        • 1970-01-01
        • 1970-01-01
        • 2016-07-26
        • 2014-02-11
        相关资源
        最近更新 更多