本文說明美國專用的地址驗證:
- 在工作流程中使用 USPS 資料
- USPS 投遞點驗證欄位 (dpv)
- 安全性訊息
工作流程中的 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.