本文將說明美國的地址驗證機制:
- 在工作流程中使用 USPS 資料
- USPS 提貨點驗證欄位 (dpv)
- 安全性訊息
工作流程中的 USPS 資料
驗證美國境內的地址時,Address Validation API 服務也可以填入回報內容的 uspsData 部分。
由於這個物件不一定會填入,因此您不應將這個屬性視為驗證地址的唯一方式,而是應將判定結果和地址元件納入系統。
USPS 送達地點驗證 (DPV)
dpvConfirmation
欄位是 uspsData
回應的一部分,會傳回單一字元,讓您瞭解 USPS 是否可以將包裹送到指定地址。
您可以使用這個欄位來判斷下列事項:
- 地址是否有效。
- 地址缺少分支機構號碼。
- 如果 USPS 資料系統中沒有子門牌號碼。
服務會傳回四個 dpvConfirmation
值之一,或根本不傳回 dpvConfirmation
值。下表列出邏輯應針對每個可能的 5 種結果採用的建議行為。如要進一步瞭解這項邏輯,請參閱「使用驗證回應」一文中的工作流程總覽。
值 |
行為 |
說明 |
---|---|---|
N 或空白 |
修正地址 |
地址未通過 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 樓),取得 dpvConfirmation
值 Y。
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.