處理美國地址

本文說明美國專用的地址驗證:

工作流程中的 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 紐約辦公室,但未包含地址必填的子建築物。您可以使用 demo 中的地址 (不含子處所資訊) 來查看這項資訊。

  • 輸入的地址: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.