Membuat logika validasi

Dokumen ini menjelaskan proses untuk membangun sistem pemeriksaan alamat guna menangani berbagai respons dari Address Validation API. Panduan ini mencakup cara membangun logika untuk menggunakan respons dengan benar, menyelidiki sinyal lain dari API, serta kapan dan cara meminta informasi lebih lanjut dari pelanggan.

Secara umum, respons API menentukan cara berikut yang harus dilakukan sistem Anda untuk menangani alamat:

  • Perbaiki—alamat berkualitas rendah. Anda harus meminta informasi lebih lanjut.
  • Konfirmasi—alamat berkualitas tinggi, tetapi memiliki perubahan dari alamat input. Anda mungkin diminta untuk konfirmasi.
  • Terima—alamat berkualitas tinggi. Anda dapat menerima alamat yang diberikan.

Tujuan utama

Dokumen ini membantu Anda mengubah sistem untuk menganalisis respons API dengan sebaik-baiknya dan menentukan tindakan selanjutnya yang harus dilakukan dengan alamat yang diberikan. Pseudocode berikut menggambarkan kemungkinan alur.

if (the API response indicates significant problems in the address)
    FIX - prompt the user to fix the address
else if (the API response indicates less significant problems in the address)
    CONFIRM - confirm with the user that the address is correct
else
    ACCEPT - continue with the address returned by the API.

Logika yang tepat bergantung pada situasi Anda; lihat Panduan penerapan untuk mengetahui detail selengkapnya. Anda juga dapat menggunakan implementasi open source kami untuk logika ini, yang ada di Extended Component Library.

Ringkasan alur kerja

Tabel di bawah merangkum dua tindakan untuk sistem Anda:

  1. Alur kerja yang akan digunakan berdasarkan perilaku perbaiki, konfirmasi, terima.
  2. Sinyal pertama yang akan diperiksa dari respons. Sinyal yang dijelaskan di sini berasal dari properti verdict dan bukan satu-satunya sinyal yang perlu diperiksa, tetapi memberikan indikator awal kualitas alamat. Setiap jenis perilaku sesuai dengan bagian dalam dokumen ini yang menjelaskan sinyal lebih lanjut yang mungkin juga perlu Anda selidiki.
Perilaku sistem Anda
Perbaiki alamat

Respons dari verdict menunjukkan bahwa ada informasi penting yang tidak ada dan seharusnya diberikan. Alamat yang ditampilkan oleh API mungkin tidak berkualitas baik untuk pengiriman.

Alur kerja

  1. Selidiki komponen alamat jika perlu.
  2. Mendorong pelanggan untuk memperbaiki masalah alamat.
  3. Minta validasi untuk alamat yang diperbarui.
  4. Lanjutkan dengan alamat.

Sinyal putusan

Salah satu hal berikut berlaku:

Konfirmasi alamat

Respons dari verdict menunjukkan alamat yang dapat dikirim, tetapi telah melakukan perubahan pada input asli: menyimpulkan data yang dikoreksi ejaannya, atau data yang dapat dikonfirmasi.

Alur kerja

  1. Koreksi yang diperlukan:
    1. Selidiki komponen alamat jika perlu.
    2. Minta validasi untuk alamat yang diperbarui.
    3. Lanjutkan dengan alamat.
  2. Tidak perlu koreksi:
  3. Lanjutkan dengan alamat.

Sinyal putusan

Semua hal berikut berlaku:

Terima alamat

Respons Address Validation API menunjukkan alamat berkualitas sangat baik.

Alur kerja

Lanjutkan dengan alamat yang dikembalikan.

Sinyal putusan

Semua hal berikut berlaku:

Panduan implementasi

Saat mendesain cara sistem Anda merespons sinyal validasi alamat, rekomendasi berikut dapat membantu Anda membuat model respons yang lebih efektif. Namun, ini hanyalah rekomendasi, jadi ingatlah bahwa penerapan Anda harus sesuai dengan model bisnis Anda.

Panduan Detail
Tingkat risiko

Pertimbangkan tingkat toleransi untuk situasi Anda saat menyeimbangkan antara meminta koreksi dan menerima alamat yang dimasukkan.

Address Validation API menampilkan berbagai sinyal yang dapat Anda gabungkan dengan tingkat risiko untuk mengoptimalkan proses validasi.

Misalnya, jika alamat memiliki nomor jalan yang belum dikonfirmasi, Anda tetap dapat menerimanya. Di sisi lain, jika operasi bisnis Anda memerlukan akurasi alamat yang lebih tinggi, Anda dapat meminta pengguna. Untuk contoh yang dapat termasuk dalam salah satu kategori, lihat Nomor jalan yang tidak dikonfirmasi di luar AS di Terima alamat - contoh.

Menerima alamat

Sebaiknya izinkan sistem Anda menerima entri asli jika pelanggan tidak merespons perintah.

Dalam kasus ini, pelanggan mungkin telah memasukkan alamat yang tidak ada di sistem, seperti untuk konstruksi baru.

Perbaiki alamat

Perbaiki alamat jika hasilnya menunjukkan dengan jelas bahwa alamat tersebut tidak dapat digunakan untuk pengiriman. Sistem Anda kemudian dapat meminta pelanggan untuk memberikan informasi yang diperlukan, setelah itu Anda menerbitkan ulang alur kerja untuk mendapatkan alamat pengiriman.

Memperbaiki sinyal

Address Validation API menyediakan sejumlah sinyal untuk memberi tahu Anda jika alamat harus diperbaiki.

1. Perincian validasi dan komponen yang hilang

Kedua sinyal ini memberikan indikasi terbaik tentang alamat yang bermasalah:

  • Setiap kali kolom validationGranularity berisi OTHER, sistem Anda harus menyelidiki sinyal komponen alamat untuk mempelajari lebih lanjut lokasi terjadinya error dan cara memperbaikinya.
  • Setiap kali objek address yang diproses pasca-pemrosesan menampilkan kolom missingComponentTypes, sistem Anda harus memeriksa komponen tersebut. Komponen yang tidak ada juga membuat alamat tidak lengkap dan tidak dapat dikirim.

2. Sinyal lainnya

Address Validation API juga menyediakan sinyal lain untuk membantu mendiagnosis masalah tertentu:

Komponen mencurigakan Jika enum tingkat konfirmasi untuk komponen adalah UNCOMFIRMED_AND_SUSPICIOUS, kemungkinan komponen tersebut salah.
Komponen yang belum terselesaikan unresolvedToken adalah bagian dari input yang tidak dikenali sebagai bagian alamat yang valid.

3. Sinyal alamat AS

Kolom tertentu yang hanya berlaku untuk alamat AS memberikan sinyal yang berguna bahwa alamat tidak dapat dikirim dan harus diperbaiki. Untuk alamat yang perlu diperbaiki, Anda akan melihat hal berikut:

dpvConfirmation N, D, atau kosong.

Untuk mengetahui detail tentang dpvConfirmation, lihat Menangani alamat Amerika Serikat.

Contoh perbaikan alamat

Mengonfirmasi alamat

Anda mengonfirmasi alamat saat hasil menunjukkan bahwa Address Validation API menyimpulkan atau mengubah komponen alamat untuk menghasilkan alamat yang divalidasi. Dalam kasus ini, Anda memiliki alamat yang dapat dikirim, tetapi lebih memilih keyakinan yang lebih besar bahwa alamat yang dihasilkan adalah alamat yang dimaksudkan oleh pelanggan.

Untuk memberikan perintah yang benar kepada pelanggan, logika Anda akan mengidentifikasi komponen yang ditandai oleh layanan untuk menentukan tindakan atau tanda yang diterapkan API ke komponen, seperti inferred, replaced, atau spellCorrected. Lihat AddressComponent dalam referensi.

Konfirmasi sinyal

Address Validation API menyediakan sejumlah sinyal untuk memberi tahu Anda apakah alamat harus dikonfirmasi.

1. Perincian Validasi

validationGranularity ROUTE atau lebih baik dapat diterima, tetapi PREMISE atau SUBPREMISE memberikan sinyal yang lebih kuat terkait kemampuan penayangan.

2. Sinyal lainnya

Saat memutuskan untuk mengonfirmasi entri alamat dengan pelanggan, hasil putusan juga memberikan hal berikut untuk menentukan komponen yang perlu diselidiki:

Data yang disimpulkan Jika kolom hasInferredComponents adalah true, Anda tahu bahwa API mengisi informasi yang dikumpulkan dari komponen alamat lainnya.
Data yang diganti Jika kolom hasReplacedComponents adalah true, API mengganti data yang dimasukkan dengan data yang dianggap membuat alamat valid.

3. Sinyal alamat AS

Kolom tertentu yang hanya berlaku untuk alamat AS menunjukkan bahwa logika Anda harus mengonfirmasi detail dengan pelanggan. Salah satu hal berikut berlaku:

dpvConfirmation S

Untuk mengetahui detail tentang dpvConfirmation, lihat Menangani alamat Amerika Serikat.

Respons alamat Berisi kolom missingComponentTypes dengan nilai subpremise.

Contoh konfirmasi alamat

Menerima alamat

Anda menerima alamat jika hasil memberikan tingkat keyakinan yang tinggi bahwa alamat tersebut dapat digunakan untuk pengiriman dan dapat digunakan tanpa interaksi pelanggan lebih lanjut dalam proses hilir.

Menerima sinyal

Address Validation API menyediakan sejumlah sinyal untuk memberi tahu Anda apakah alamat harus dikonfirmasi.

1. Perincian Validasi

validationGranularity PREMISE atau lebih baik dapat diterima, tetapi dalam beberapa kasus, ROUTE masih menunjukkan alamat yang dapat dikirim.

2. Sinyal lainnya

Putusan untuk alamat berkualitas tinggi juga harus memberikan hal berikut:

  • Tidak ada data yang diganti. Dalam hal ini, hasReplacedComponents: FALSE.
  • Tidak ada komponen yang disimpulkan. Dalam hal ini, hasInferredComponents: FALSE.

3. Sinyal alamat AS

Kolom tertentu yang hanya berlaku untuk alamat AS menunjukkan alamat berkualitas tinggi yang dapat dikirimkan. Untuk alamat AS yang dapat diterima, Anda akan melihat berikut ini:

dpvConfirmation Y

Untuk mengetahui detail tentang dpvConfirmation, lihat Menangani alamat Amerika Serikat.

Contoh alamat yang diterima