处理美国地址

本文档介绍了美国特有的地址验证:

工作流中的 USPS 数据

验证美国境内的地址时,Address Validation API 还可以填充返回结果的 uspsData 部分。

由于此对象并不总是填充,因此您不应依赖此属性作为验证地址的唯一方法,而应将判定结果和地址组成部分也纳入您的系统中。

USPS 投递点验证 (DPV)

作为 uspsData 响应的一部分,dpvConfirmation 字段会返回一个字符,让您知道 USPS 是否可以递送到提供的地址。

您可以使用此字段确定以下内容:

  • 地址有效性。
  • 如果地址中缺少子场所编号。
  • 如果 USPS 数据系统中不存在子门牌号,则会显示此消息。

该服务会返回四个 dpvConfirmation 值之一,或者根本不返回 dpvConfirmation 值。下表显示了您的逻辑应针对 5 种可能的结果使用的推荐行为。如需详细了解此逻辑,请参阅构建验证逻辑中的工作流概览。

值

行为

说明

否

或为空

修正地址

地址未通过 DPV 确认。

这意味着 USPS 无法识别输入的街道(路线)上存在的输入门牌号,并且无法送达该地址。

D

修正地址

地址仅针对主号码进行了 DPV 确认,缺少次要号码信息。

这意味着输入的门牌号在输入的街道上存在,但若要达到完全经过验证/可送达的地址,还需要提供有效的子门牌号。换句话说,输入中缺少子场所。

S

确认地址

地址仅针对主门牌号进行了 DPV 确认,次门牌号信息存在但未确认。

这意味着,根据 USPS 的数据,输入的门牌号在输入的路线中存在,但提供的子门牌号在该建筑物中不存在。

是

接受地址

地址已通过 DPV 确认,包括主要和任何次要号码。

这意味着 USPS 可以完全送达该地址,包括子场所编号(如果适用)。

本部分的其余部分将讨论使用 DPV 代码的实际场景。

DPV N 示例 - 修正地址

此示例在原本有效的地址中使用了不存在的街道号码。

  • 输入的地址:12 Amphitheatre Parkway, Mountain View, CA, 94043
  • 地区:美国
  • dpvConfirmation 字段会返回:N

这非常强烈地表明,此门牌号在此路线上不存在。与其他有问题的地址一样,您的系统应提示用户进行更正。

DPV D 示例 - 修正地址

此示例使用的是 Google 纽约办事处,但未包含子场所,而子场所是地址的必需部分。您可以使用演示中的地址(不含子场所信息)来查看此信息。

  • 输入的地址:111 8th Avenue, New York, NY, 10011
  • 地区:美国
  • dpvConfirmation 字段会返回:D

这证实了输入中缺少子场所。若要获得 Y 的 DPV,输入内容中必须包含有效的子场所。例如,您可以添加有效的子场所 FL 4(4 楼),以获得 Y 的 dpvConfirmation 值。

DPV S 示例 - 确认地址

此示例使用的子门牌号在建筑物内不存在:

  • 输入的地址:1600 Amphitheatre Parkway, Suite 101, Mountain View, CA, 94043
  • 地区:美国
  • dpvConfirmation 字段会返回:S

这表示,虽然 1600 Amphitheatre Parkway 是一个可以接收邮件的地址,但子场所 Ste 101 不是该地址的有效组成部分。您的系统应与用户确认此信息,并提供更正机会。

DPV Y 示例 - 接受地址

此示例使用位于加利福尼亚州山景城的 Googleplex 地址作为已知的高质量地址。

  • 输入的地址:1600 Amphitheatre Parkway, Mountain View, CA, 94043
  • 地区:美国
  • dpvConfirmation 字段会返回:Y

该地址可由 USPS 完整送达。这让您有极高的信心,相信 API 返回的地址质量良好,您可以直接使用。

注意:DPV 不会指明 Address Validation API 是否对输入内容进行了任何更改,例如拼写更正。

针对美国地址的安全消息

本部分介绍了 USPS 数据中针对人工创建的地址提供的安全标志。这项安全措施旨在防止人为创建地址列表,具体做法是检测提交的地址是否似乎是人为构建而非合法获取。 这种情况应该非常罕见。

当 USPS 识别出人为创建的地址时,响应的 uspsData 属性的 errorMessage 字段会包含一条描述问题的出错提示。例如:

AMS API processing was terminated due to the detection of what is determined to
be an artificially created address. No address beyond this point has been
validated and/or processed. If you believe this address was identified in error,
please contact your Vendor.