Ziel
Als Entwickler arbeiten Sie häufig mit Datasets, die Kundenadressen enthalten, die möglicherweise nicht von guter Qualität sind. Sie müssen dafür sorgen, dass die Adressen für Anwendungsfälle wie die Bestätigung der Kundennummer und die Zustellung korrekt sind.
Die Address Validation API ist ein Produkt der Google Maps Platform, mit dem Sie eine Adresse validieren können. Es wird jedoch jeweils nur eine Adresse verarbeitet. In diesem Dokument erfahren Sie, wie Sie die Address Validation API für hohe Volumina in verschiedenen Szenarien verwenden können, von API-Tests bis hin zur einmaligen und wiederkehrenden Adressbestätigung.
Anwendungsfälle
Jetzt werden wir die Anwendungsfälle verstehen, in denen die Adressüberprüfung mit hohem Volumen nützlich ist.
Test
Sie möchten die Address Validation API häufig testen, indem Sie Tausende von Adressen verarbeiten. Angenommen, Sie haben die Adressen in einer CSV-Datei (Datei mit durch Kommas getrennten Werten) und möchten die Qualität der Adressen prüfen.
Einmalige Bestätigung von Adressen
Beim Onboarding in der Address Validation API möchten Sie Ihre vorhandene Adressdatenbank mit der Nutzerdatenbank abgleichen.
Regelmäßige Bestätigung von Adressen
In einer Reihe von Fällen müssen Adressen regelmäßig überprüft werden:
- Sie haben möglicherweise Jobs geplant, um Adressen auf Details zu validieren, die während des Tages erfasst wurden, z. B. aus Kundenregistrierungen, Auftragsdetails oder Lieferplänen.
- Möglicherweise erhalten Sie Datendumps mit Adressen aus verschiedenen Abteilungen, z. B. aus dem Vertrieb oder Marketing. Die neue Abteilung, die die Adressen erhält, möchte sie oft vor der Verwendung validieren.
- Sie können Adressen beispielsweise bei Umfragen oder bei verschiedenen Werbeaktionen erfassen und später im Onlinesystem aktualisieren. Sie möchten überprüfen, ob die Adressen korrekt sind, während Sie sie in das System eingeben.
Technische Details
In diesem Dokument wird Folgendes vorausgesetzt:
- Sie rufen die Address Validation API mit Adressen aus einer Kundendatenbank (d. h. einer Datenbank mit Kundendetails) auf.
- Sie können Gültigkeits-Flags für einzelne Adressen in Ihrer Datenbank im Cache speichern.
- Gültigkeitsflaggen werden von der Address Validation API abgerufen, wenn sich ein einzelner Kunde anmeldet.
Cache für die Produktion verwenden
Wenn Sie die Address Validation API verwenden, sollten Sie einen Teil der Antwort vom API-Aufruf häufig im Cache speichern. Gemäß unseren Nutzungsbedingungen sind die Daten, die im Cache gespeichert werden können, begrenzt. Alle Daten, die über die Address Validation API im Cache gespeichert werden können, müssen mit einem Nutzerkonto verknüpft sein. Das bedeutet, dass die Adresse oder die Adressmetadaten in der Datenbank im Cache der E-Mail-Adresse oder einer anderen primären ID eines Nutzers gespeichert werden müssen.
Für den Anwendungsfall „High Volume Address Validation“ muss das Daten-Caching den dienstspezifischen Nutzungsbedingungen der Address Validation API entsprechen, die in Abschnitt 11.3 erläutert werden. Anhand dieser Informationen können Sie feststellen, ob die Adresse eines Nutzers ungültig ist. In diesem Fall werden Sie den Nutzer bei der nächsten Interaktion mit Ihrer Anwendung zur Eingabe einer korrigierten Adresse auffordern.
- Daten aus dem Objekt AddressComponent
confirmationLevel
inferred
spellCorrected
replaced
unexpected
Wenn Sie Informationen zur tatsächlichen Adresse im Cache speichern möchten, dürfen diese Daten nur mit Zustimmung des Nutzers im Cache gespeichert werden. So ist der Nutzer sich bewusst, warum ein bestimmter Dienst seine Adresse speichert, und er stimmt den Bedingungen für die Weitergabe seiner Adresse zu.
Ein Beispiel für die Nutzereinwilligung ist die direkte Interaktion mit einem E-Commerce-Adressformular auf einer Zahlungsseite. Sie speichern die Adresse im Cache und verarbeiten sie zum Zwecke des Versands eines Pakets.
Mit Zustimmung des Nutzers kannst du formattedAddress
und andere Schlüsselkomponenten aus der Antwort im Cache speichern. In einem headless-Szenario kann ein Nutzer jedoch keine Einwilligung geben, da die Adressbestätigung über das Backend erfolgt. Daher können Sie in diesem monitorlosen Szenario nur sehr begrenzte Informationen im Cache speichern.
Antwort verstehen
Wenn die Antwort der Address Validation API die folgenden Markierungen enthält, können Sie sich darauf verlassen, dass die eingegebene Adresse zustellbar ist:
- Die Markierung
addressComplete
im Objekt Verdict isttrue
. - Die
validationGranularity
im Objekt Verdict istPREMISE
oderSUB_PREMISE
. - Keine der AddressComponent-Elemente sind mit folgendem Attribut gekennzeichnet:
Inferred
(Hinweis: inferred=true
kann passieren, wennaddressComplete=true
)spellCorrected
replaced
unexpected
und
confirmationLevel
: Die Bestätigungsebene für AddressComponent ist aufCONFIRMED
oderUNCONFIRMED_BUT_PLAUSIBLE
festgelegt.
Wenn die API-Antwort keine der oben genannten Markierungen enthält, war die Eingabeadresse wahrscheinlich von schlechter Qualität. Sie können Flags in Ihrer Datenbank im Cache speichern, um dies zu berücksichtigen. Cache-Flags geben an, dass die Adresse insgesamt von schlechter Qualität ist, während detailliertere Flags wie „Rechtschreibkorrektur“ den spezifischen Typ des Problems mit der Adressenqualität angeben. Bei der nächsten Kundeninteraktion mit einer Adresse, die als schlechte Qualität gekennzeichnet wurde, können Sie die Address Validation API mit der vorhandenen Adresse aufrufen. Die Address Validation API gibt die korrigierte Adresse zurück, die Sie über einen UI-Prompt anzeigen können. Sobald der Kunde die formatierte Adresse akzeptiert hat, kannst du Folgendes aus der Antwort im Cache speichern:
formattedAddress
postalAddress
addressComponent componentNames
oderUspsData standardizedAddress
Headless-Adressbestätigung implementieren
Basierend auf der obigen Diskussion:
- Aus geschäftlichen Gründen ist es oft erforderlich, einen Teil der Antwort der Address Validation API im Cache zu speichern.
- Die Nutzungsbedingungen der Google Maps Platform schränken jedoch ein, welche Daten im Cache gespeichert werden können.
Im folgenden Abschnitt wird ein zweistufiger Prozess beschrieben, mit dem Sie die Nutzungsbedingungen einhalten und die Adressbestätigung für große Mengen von Adressen implementieren können.
Schritt 1:
Im ersten Schritt erfahren Sie, wie Sie aus einer vorhandenen Datenpipeline ein Skript zur Adressvalidierung mit hohem Volumen implementieren. So können Sie bestimmte Felder aus der Antwort der Address Validation API gemäß den Nutzungsbedingungen speichern.
Diagramm A:Das folgende Diagramm zeigt, wie eine Datenpipeline mit einer Logik zur Adressvalidierung in großem Umfang erweitert werden kann.
Gemäß den Nutzungsbedingungen können Sie die folgenden Daten aus addressComponent
im Cache speichern:
confirmationLevel
inferred
spellCorrected
replaced
unexpected
Daher speichern wir bei diesem Implementierungsschritt die oben genannten Felder für die UserID im Cache.
Weitere Informationen finden Sie unter Die tatsächliche Datenstruktur.
Schritt 2:
In Schritt 1 haben wir Feedback eingeholt, dass einige Adressen im Eingabe-Dataset möglicherweise nicht von hoher Qualität sind. Im nächsten Schritt präsentieren wir diese markierten Adressen dem Nutzer und holen seine Einwilligung zur Korrektur der gespeicherten Adresse ein.
Diagramm B: Dieses Diagramm zeigt, wie eine End-to-End-Integration des Ablaufs der Nutzereinwilligung aussehen könnte:
- Prüfen Sie bei der Anmeldung des Nutzers zuerst, ob in Ihrem System Validierungs-Flags im Cache gespeichert sind.
- Wenn Probleme vorliegen, sollten Sie dem Nutzer eine Benutzeroberfläche präsentieren, über die er seine Adresse korrigieren und aktualisieren kann.
- Sie können die Address Validation API noch einmal mit der aktualisierten oder im Cache gespeicherten Adresse aufrufen und dem Nutzer die korrigierte Adresse zur Bestätigung vorlegen.
- Wenn die Adresse von guter Qualität ist, gibt die Address Validation API eine
formattedAddress
zurück. - Sie können diese Adresse entweder dem Nutzer präsentieren, wenn Korrekturen vorgenommen wurden, oder sie stillschweigend akzeptieren, wenn keine Korrekturen erforderlich sind.
- Sobald der Nutzer zugestimmt hat, kannst du die
formattedAddress
in der Datenbank im Cache speichern.
Fazit
Die Adressvalidierung mit hohem Volumen ist ein häufiger Anwendungsfall, den Sie wahrscheinlich in vielen Anwendungen finden. In diesem Dokument werden einige Szenarien und ein Designmuster für die Implementierung einer solchen Lösung gemäß den Nutzungsbedingungen der Google Maps Platform veranschaulicht.
Auf GitHub haben wir außerdem eine Referenzimplementierung von High Volume Address Validation als Open-Source-Bibliothek veröffentlicht. Sehen Sie sich die Demo an, um schnell mit der Adressenüberprüfung für hohes Volumen loszulegen. Lesen Sie auch den Artikel zu Designmustern, in dem beschrieben wird, wie Sie die Bibliothek in verschiedenen Szenarien verwenden können.
Nächste Schritte
Laden Sie das Whitepaper Mit gültigen Adressen den Bezahlvorgang und die Lieferung optimieren herunter und sehen Sie sich das Webinar Mit der Adressenüberprüfung den Bezahlvorgang und die Lieferung optimieren an.
Empfohlene weiterführende Informationen:
- Anwendungen der Adressvalidierung für hohe Volumen
- Python-Bibliothek auf GitHub
- Demo für Address Validation ansehen
Beitragende
Google verwaltet diesen Artikel. Er wurde von den folgenden Beitragenden verfasst.
Hauptautoren:
Henrik Valve | Solutions Engineer
Thomas Anglaret | Solutions
Engineer
Sarthak Ganguly | Solutions
Engineer