Hướng dẫn xác thực địa chỉ với số lượng lớn

Mục tiêu

Là nhà phát triển, bạn thường làm việc với các tập dữ liệu chứa địa chỉ của khách hàng có thể không có chất lượng tốt. Bạn cần đảm bảo rằng địa chỉ là chính xác cho các trường hợp sử dụng, từ xác minh giấy tờ tuỳ thân của khách hàng đến giao hàng, v.v.

Address Validation API là một sản phẩm của Google Maps Platform mà bạn có thể dùng để xác thực địa chỉ. Tuy nhiên, hàm này chỉ xử lý một địa chỉ tại một thời điểm. Trong tài liệu này, chúng ta sẽ tìm hiểu cách sử dụng tính năng Xác thực địa chỉ số lượng lớn trong nhiều trường hợp, từ thử nghiệm API đến xác thực địa chỉ một lần và định kỳ.

Trường hợp sử dụng

Bây giờ, chúng ta sẽ tìm hiểu các trường hợp sử dụng mà Xác thực địa chỉ số lượng lớn hữu ích.

Thử nghiệm

Bạn thường muốn kiểm thử Address Validation API bằng cách chạy hàng nghìn địa chỉ. Bạn có thể có địa chỉ trong tệp Giá trị được phân tách bằng dấu phẩy và muốn xác thực chất lượng của địa chỉ.

Xác thực địa chỉ một lần

Trong quá trình làm quen với Address Validation API, bạn muốn xác thực cơ sở dữ liệu địa chỉ hiện có của mình dựa trên cơ sở dữ liệu người dùng.

Xác thực địa chỉ định kỳ

Một số trường hợp cần xác thực địa chỉ định kỳ:

  • Bạn có thể đã lên lịch cho các công việc xác thực địa chỉ để biết thông tin chi tiết được ghi lại trong ngày, chẳng hạn như thông tin đăng ký của khách hàng, thông tin chi tiết về đơn đặt hàng, lịch giao hàng.
  • Bạn có thể nhận được các tệp kết xuất dữ liệu chứa địa chỉ từ nhiều phòng ban, ví dụ: từ phòng bán hàng đến phòng tiếp thị. Bộ phận mới nhận được địa chỉ thường muốn xác thực địa chỉ trước khi sử dụng.
  • Bạn có thể thu thập địa chỉ trong các cuộc khảo sát hoặc nhiều chương trình khuyến mãi, sau đó cập nhật trong hệ thống trực tuyến. Bạn muốn xác thực địa chỉ là chính xác khi nhập địa chỉ vào hệ thống.

Tìm hiểu chuyên sâu về kỹ thuật

Trong tài liệu này, chúng tôi giả định rằng:

  • Bạn đang gọi Address Validation API bằng địa chỉ từ cơ sở dữ liệu khách hàng (tức là cơ sở dữ liệu có thông tin chi tiết về khách hàng)
  • Bạn có thể lưu các cờ hợp lệ vào bộ nhớ đệm cho từng địa chỉ trong cơ sở dữ liệu của mình.
  • Cờ hợp lệ được truy xuất từ Address Validation API khi một khách hàng cá nhân đăng nhập.

Lưu vào bộ nhớ đệm để sử dụng trong môi trường thực tế

Khi sử dụng Address Validation API, bạn thường muốn lưu một số phần của phản hồi từ lệnh gọi API vào bộ nhớ đệm. Mặc dù Điều khoản dịch vụ của chúng tôi giới hạn dữ liệu có thể lưu vào bộ nhớ đệm, nhưng mọi dữ liệu có thể lưu vào bộ nhớ đệm từ Address Validation API đều phải được lưu vào bộ nhớ đệm cho một tài khoản người dùng. Điều này có nghĩa là trong cơ sở dữ liệu, địa chỉ hoặc siêu dữ liệu địa chỉ phải được lưu vào bộ nhớ đệm theo địa chỉ email của người dùng hoặc mã nhận dạng chính khác.

Đối với trường hợp sử dụng Xác thực địa chỉ số lượng lớn, việc lưu dữ liệu vào bộ nhớ đệm phải tuân thủ Điều khoản dành riêng cho dịch vụ của Address Validation API, được nêu trong Mục 11.3. Dựa trên thông tin này, bạn có thể xác định xem địa chỉ của người dùng có thể không hợp lệ hay không. Trong trường hợp đó, bạn sẽ nhắc người dùng cung cấp địa chỉ chính xác trong lần tương tác tiếp theo với ứng dụng của bạn.

  • Dữ liệu từ đối tượng AddressComponent
    • confirmationLevel
    • inferred
    • spellCorrected
    • replaced
    • unexpected

Nếu muốn lưu vào bộ nhớ đệm mọi thông tin về địa chỉ thực tế, thì bạn chỉ được lưu dữ liệu đó vào bộ nhớ đệm khi có sự đồng ý của người dùng. Điều này đảm bảo rằng người dùng biết rõ lý do một dịch vụ cụ thể lưu trữ địa chỉ của họ và họ đồng ý với các điều khoản chia sẻ địa chỉ.

Ví dụ về sự đồng ý của người dùng là hoạt động tương tác trực tiếp với biểu mẫu địa chỉ thương mại điện tử trên trang thanh toán. Bạn hiểu rằng bạn sẽ lưu vào bộ nhớ đệm và xử lý địa chỉ cho mục đích vận chuyển gói hàng.

Khi có sự đồng ý của người dùng, bạn có thể lưu formattedAddress và các thành phần chính khác vào bộ nhớ đệm từ phản hồi. Tuy nhiên, trong trường hợp không có giao diện người dùng, người dùng không thể đưa ra sự đồng ý vì quá trình xác thực địa chỉ diễn ra từ phần phụ trợ. Do đó, bạn có thể lưu thông tin rất hạn chế vào bộ nhớ đệm trong trường hợp không có giao diện người dùng này.

Hiểu rõ câu trả lời

Nếu phản hồi của Address Validation API chứa các điểm đánh dấu sau, thì bạn có thể tin tưởng rằng địa chỉ đầu vào có chất lượng có thể phân phối:

  • Điểm đánh dấu addressComplete trong đối tượng Verdict là true,
  • validationGranularity trong đối tượng Verdict là PREMISE hoặc SUB_PREMISE
  • Không có AddressComponent nào được đánh dấu là:
    • Inferred(Lưu ý: inferred=truecó thể xảy ra khi addressComplete=true)
    • spellCorrected
    • replaced
    • unexpected và
  • confirmationLevel: Mức xác nhận trên AddressComponent được đặt thànhCONFIRMEDhoặcUNCONFIRMED_BUT_PLAUSIBLE

Nếu phản hồi của API không chứa các điểm đánh dấu nêu trên, thì địa chỉ đầu vào có thể có chất lượng kém và bạn có thể lưu các cờ vào bộ nhớ đệm trong cơ sở dữ liệu để phản ánh điều đó. Cờ được lưu vào bộ nhớ đệm cho biết địa chỉ nói chung có chất lượng kém, trong khi các cờ chi tiết hơn như Đã sửa lỗi chính tả cho biết loại vấn đề cụ thể về chất lượng địa chỉ. Trong lần tiếp theo khách hàng tương tác với một địa chỉ bị gắn cờ là có chất lượng kém, bạn có thể gọi Address Validation API bằng địa chỉ hiện có. Address Validation API sẽ trả về địa chỉ đã sửa mà bạn có thể hiển thị bằng lời nhắc trên giao diện người dùng. Sau khi khách hàng chấp nhận địa chỉ đã định dạng, bạn có thể lưu những thông tin sau đây vào bộ nhớ đệm từ phản hồi:

  • formattedAddress
  • postalAddress
  • addressComponent componentNameshoặc
  • UspsData standardizedAddress

Triển khai tính năng Xác thực địa chỉ không có giao diện người dùng

Dựa trên nội dung thảo luận ở trên:

  • Vì lý do kinh doanh, bạn thường cần lưu một số phần của phản hồi từ Address Validation API vào bộ nhớ đệm.
  • Tuy nhiên, Điều khoản dịch vụ trong Google Maps Platform hạn chế những dữ liệu có thể được lưu vào bộ nhớ đệm.

Trong phần sau, chúng ta sẽ thảo luận về quy trình gồm hai bước để tuân thủ Điều khoản dịch vụ và triển khai quy trình xác thực địa chỉ cho số lượng lớn địa chỉ.

Bước 1:

Trong bước đầu tiên, chúng ta sẽ tìm hiểu cách triển khai tập lệnh xác thực địa chỉ có khối lượng lớn từ một quy trình dữ liệu hiện có. Quy trình này sẽ cho phép bạn lưu trữ các trường cụ thể từ phản hồi của Address Validation API theo cách tuân thủ Điều khoản dịch vụ.

Sơ đồ A: Sơ đồ sau đây cho thấy cách cải thiện quy trình dữ liệu bằng logic Xác thực địa chỉ số lượng lớn.

alt_text

Theo Điều khoản dịch vụ, bạn có thể lưu các dữ liệu sau đây vào bộ nhớ đệm từ addressComponent:

  • confirmationLevel
  • inferred
  • spellCorrected
  • replaced
  • unexpected

Do đó, trong bước triển khai này, chúng ta sẽ lưu các trường nêu trên vào bộ nhớ đệm theo UserID.

Để biết thêm thông tin, hãy xem thông tin chi tiết về cấu trúc dữ liệu thực tế.

Bước 2:

Trong bước 1, chúng tôi đã thu thập ý kiến phản hồi rằng một số địa chỉ trong tập dữ liệu đầu vào có thể không có chất lượng cao. Trong bước tiếp theo, chúng ta sẽ lấy những địa chỉ được gắn cờ này, trình bày cho người dùng và yêu cầu họ đồng ý sửa địa chỉ đã lưu trữ.

Sơ đồ B: Sơ đồ này cho thấy quy trình tích hợp toàn diện của quy trình lấy sự đồng ý của người dùng:

alt_text

  1. Khi người dùng đăng nhập, trước tiên, hãy kiểm tra xem bạn đã lưu vào bộ nhớ đệm bất kỳ cờ xác thực nào trong hệ thống hay chưa.
  2. Nếu có cờ, bạn nên cung cấp cho người dùng một giao diện người dùng để sửa và cập nhật địa chỉ của họ.
  3. Bạn có thể gọi lại Address Validation API bằng địa chỉ đã cập nhật hoặc được lưu vào bộ nhớ đệm, rồi hiển thị địa chỉ đã sửa cho người dùng để xác nhận.
  4. Nếu địa chỉ có chất lượng tốt, thì Address Validation API sẽ trả về một formattedAddress.
  5. Bạn có thể hiển thị địa chỉ đó cho người dùng nếu đã chỉnh sửa hoặc tự động chấp nhận nếu không có nội dung chỉnh sửa.
  6. Sau khi người dùng chấp nhận, bạn có thể lưu formattedAddress vào bộ nhớ đệm trong cơ sở dữ liệu.

Kết luận

Xác thực địa chỉ số lượng lớn là một trường hợp sử dụng phổ biến mà bạn có thể gặp phải trong nhiều ứng dụng. Tài liệu này cố gắng minh hoạ một số trường hợp và mẫu thiết kế về cách triển khai một giải pháp như vậy tuân thủ Điều khoản dịch vụ của Google Maps Platform.

Chúng tôi cũng đã viết một bản triển khai tham khảo cho tính năng Xác thực địa chỉ số lượng lớn dưới dạng thư viện nguồn mở trên GitHub. Hãy xem hướng dẫn này để bắt đầu xây dựng nhanh chóng bằng tính năng Xác thực địa chỉ số lượng lớn. Ngoài ra, hãy tham khảo bài viết về các mẫu thiết kế để biết cách sử dụng thư viện trong nhiều trường hợp.

Các bước tiếp theo

Tải Sách trắng về cách cải thiện quy trình thanh toán, giao hàng và vận hành bằng địa chỉ đáng tin cậy và xem Hội thảo trực tuyến về cách cải thiện quy trình thanh toán, giao hàng và vận hành bằng tính năng Xác thực địa chỉ .

Tài liệu đọc thêm được đề xuất:

Người đóng góp

Google duy trì bài viết này. Những người đóng góp sau đây là tác giả ban đầu của nội dung này.
Tác giả chính:

Henrik Valve | Kỹ sư giải pháp
Thomas Anglaret | Kỹ sư giải pháp
Sarthak Ganguly | Kỹ sư giải pháp