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
Sehen wir uns nun die Anwendungsfälle an, in denen die Adressenüberprüfung bei 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:
- Möglicherweise haben Sie Jobs geplant, um Adressen auf Details zu prüfen, die im Laufe des Tages erfasst wurden, z. B. von Kundenregistrierungen, Bestelldetails 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 die Adressen bei der Eingabe in das System validieren.
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ültigkeitsflaggen 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.
Beim Anwendungsfall „Adressenprüfung mit hohem Volumen“ muss das Daten-Caching den dienstspezifischen Nutzungsbedingungen der Address Validation API entsprechen, die in Abschnitt 11.3 beschrieben sind. Anhand dieser Informationen können Sie feststellen, ob die Adresse eines Nutzers möglicherweise ungültig ist. In diesem Fall bitten Sie den Nutzer bei der nächsten Interaktion mit Ihrer Anwendung, eine korrekte Adresse anzugeben.
- Daten aus dem AddressComponent-Objekt
confirmationLevel
inferred
spellCorrected
replaced
unexpected
Wenn Sie Informationen zur tatsächlichen Adresse im Cache speichern möchten, müssen diese Daten nur mit der Einwilligung 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 wäre 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 der Einwilligung des Nutzers kannst du formattedAddress
und andere wichtige Komponenten 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 headless-Szenario nur sehr wenige 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
addressComplete
-Markierung im Verdict-Objekt isttrue
. - Das
validationGranularity
im Verdict-Objekt istPREMISE
oderSUB_PREMISE
. - Keine der AddressComponent-Elemente ist mit folgendem Attribut gekennzeichnet:
Inferred
(Hinweis: inferred=true
kann passieren, wennaddressComplete=true
)spellCorrected
replaced
unexpected
und
confirmationLevel
: Die Bestätigungsebene für den 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. Detailliertere Flags wie „Rechtschreibkorrektur“ geben den spezifischen Typ des Problems mit der Adressenqualität an. Bei der nächsten Kundeninteraktion mit einer Adresse, die als minderwertig 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 Datenmengen implementieren können.
Schritt 1:
Im ersten Schritt sehen wir uns an, wie Sie ein Script zur Adressvalidierung mit hohem Volumen aus einer vorhandenen Datenpipeline 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 bei hohem Volumen erweitert werden kann.
Gemäß den Nutzungsbedingungen können Sie die folgenden Daten aus der addressComponent
im Cache speichern:
confirmationLevel
inferred
spellCorrected
replaced
unexpected
Daher werden in diesem Schritt der Implementierung die oben genannten Felder mit der User-ID im Cache gespeichert.
Weitere Informationen finden Sie unter Die tatsächliche Datenstruktur.
Schritt 2:
In Schritt 1 haben wir Feedback erhalten, dass einige Adressen im Eingabedatensatz möglicherweise nicht von hoher Qualität sind. Im nächsten Schritt zeigen wir dem Nutzer diese gemeldeten Adressen und bitten ihn um seine Einwilligung, die gespeicherte Adresse zu korrigieren.
Diagramm B: Dieses Diagramm zeigt, wie eine End-to-End-Integration des Einwilligungsvorgangs für Nutzer aussehen könnte:
- Wenn sich der Nutzer anmeldet, prüfen Sie zuerst, ob Sie in Ihrem System Validierungs-Flags im Cache gespeichert haben.
- Wenn es Probleme gibt, 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 anzeigen.
- 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 zur Implementierung einer solchen Lösung gemäß den Nutzungsbedingungen der Google Maps Platform veranschaulicht.
Außerdem haben wir eine Referenzimplementierung der Adressvalidierung mit hohem Volumen als Open-Source-Bibliothek auf GitHub 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.
Weitere Informationen:
- Anwendungen für die Adressbestätigung bei hohem Volumen
- Python-Bibliothek auf GitHub
- Demo für Address Validation ansehen
Beitragende
Dieser Artikel wird von Google gepflegt. Die folgenden Mitwirkenden haben den Artikel ursprünglich verfasst.
Hauptautoren:
Henrik Valve | Solutions Engineer
Thomas Anglaret | Solutions
Engineer
Sarthak Ganguly | Solutions
Engineer