# Address Element Verwenden Sie das Address Element, um vollständige Rechnungs- und Versandadressen zu erfassen. Das Address Element ist eine integrierbare Komponente der Nutzeroberfläche zum Akzeptieren vollständiger Adressen. Mit diesem können Sie Versandadressen erfassen oder vollständige Rechnungsadressen erhalten, z. B. für Steuerzwecke. | Option | Beschreibung | | ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | **Design** | Verwenden Sie das Dropdown-Menü, um ein Thema auszuwählen oder das Thema mit der [Elements Appearance API](https://docs.stripe.com/elements/address-element.md#appearance) anzupassen. | | **Desktop- und Mobilgröße** | Verwenden Sie das Dropdown-Menü, um die maximale Pixelbreite des übergeordneten Elements festzulegen, an das das Adresselement angebunden ist. Sie können die Breite auf 750 px (Desktop) oder 320 px (Mobil) einstellen. | | **Kundenstandort** | Verwenden Sie das Dropdown-Menü, um einen Ort für die Annahme vollständiger Adressen auszuwählen. Durch Ändern des Standorts wird die Sprache der Nutzeroberfläche lokalisiert und lokal relevante Zahlungsmethoden werden angezeigt. | | **Telefonnummer** | Aktivieren Sie diese Option, um die Erfassung von Telefonnummern zu ermöglichen, wenn eine Adresse eingegeben oder ein vorhandener Kontakt verwendet wird. | | **Automatische Vervollständigung** | Aktivieren Sie diese Option, um den Bezahlvorgang zu verkürzen, Validierungsfehler zu reduzieren und die Konversionsraten im Bezahlvorgang mit der integrierten automatischen Adressvervollständigung zu erhöhen. Stripe unterstützt 236 regionale Adressformate, einschließlich Formaten, die von rechts nach links aufgebaut sind. | | **Kontakte** | Aktivieren Sie diese Option, um eine neue Adresse hinzuzufügen oder eine bestehende Adresse oder Telefonnummer zu ändern. | ## Jetzt starten Sie können das Address-Element entweder mit der Integration von Embedded Components (Elements with Checkout Sessions API) oder mit der Advanced-Integration (Elements mit Payment Intents API) verwenden. [Vergleichen Sie die Funktionen und die Verfügbarkeit](https://docs.stripe.com/payments/online-payments.md#compare-features-and-availability), um zu ermitteln, welche Integration für Ihren Use-Case geeignet ist. [Erfassen von Adressen (Elemente mit Checkout Sessions API)](https://docs.stripe.com/payments/collect-addresses.md?payment-ui=embedded-components): Verwenden Sie die Integration von eingebetteten Komponenten, um Adressen zu erfassen. [Erfassen von Adressen (Advanced-Integration)](https://docs.stripe.com/payments/advanced/collect-addresses.md?payment-ui=elements): Verwenden Sie die Advanced-Integration, um Adressen zu erfassen. [Klonen einer Beispielanwendung (Advanced-Integration)](https://github.com/stripe-samples/link) ## Ein Address Element erstellen Wenn Sie ein Address Element erstellen, geben Sie an, ob es im Versand- oder im Abrechnungsmodus verwendet werden soll. #### Versandmodus Im Versandmodus führt das Element zwei Dinge aus: - Eine Versandadresse erfassen. - Bieten Sie dem Kunden/der Kundin an, diese Adresse auch als Rechnungsadresse zu verwenden. ```javascript const stripe = Stripe('<>'); const appearance = { /* appearance */ }; const options = { mode: 'shipping' }; const elements = stripe.elements({ clientSecret, appearance }); // Bei einer funktionierenden Integration ist dies ein Wert, den Ihr Backend mit Details wie dem Betrag einer Zahlung übergibt. Einzelheiten finden Sie im vollständigen Beispiel. const addressElement = elements.create('address', options); addressElement.mount('#address-element'); ``` #### Abrechnungsmodus Im Abrechnungsmodus erfasst das Element nur eine Rechnungsadresse. ```javascript const stripe = Stripe('<>'); const appearance = { /* appearance */ }; const options = { mode: 'billing' }; const elements = stripe.elements({ clientSecret, appearance }); // Bei einer funktionierenden Integration ist dies ein Wert, den Ihr Backend mit Details wie dem Betrag einer Zahlung übergibt. Einzelheiten finden Sie im vollständigen Beispiel. const addressElement = elements.create('address', options); addressElement.mount('#address-element'); ``` ### Address Element mit anderen Elementen verwenden Sie können sowohl Versand- als auch Rechnungsadressen erfassen, indem Sie auf Ihrer Seite mehrere Address Elements, eines pro Modus, verwenden. Wenn Sie sowohl die Versand- als auch die Rechnungsadresse erfassen müssen und nur ein Adresselement verwenden möchten, verwenden Sie das Adresselement im Versandmodus und verwenden Sie das [Payment Element](https://docs.stripe.com/payments/payment-element.md), um nur die erforderlichen Rechnungsadressen zu erfassen. Wenn Sie das Address Element mit anderen Elementen verwenden, können Sie ein gewisses automatisches Verhalten beim Bestätigen des PaymentIntent oder SetupIntent erwarten. Das Adresselement validiert die Vollständigkeit bei der Bestätigung des PaymentIntent oder SetupIntent und zeigt dann Fehler für jedes Feld an, wenn Validierungsfehler vorliegen. ## Eine Adresse verwenden Das Address Element funktioniert automatisch mit dem [Payment](https://docs.stripe.com/payments/payment-element.md) oder Express Checkout Element. Wenn eine Kundin/ein Kunde eine Adresse und eine Zahlungsmethode angibt, kombiniert Stripe diese zu einem einzelnen *PaymentIntent* (The Payment Intents API tracks the lifecycle of a customer checkout flow and triggers additional authentication steps when required by regulatory mandates, custom Radar fraud rules, or redirect-based payment methods) mit der Adresse im korrekten Feld. ### Automatisches Verhalten Das Standardverhalten des Elements hängt von seinem Modus ab. #### Versandmodus Im Versandmodus wird die Adresse in diesen Feldern gespeichert: - Wird im Feld [Versand](https://docs.stripe.com/api/payment_intents/confirm.md#confirm_payment_intent-shipping) angezeigt. - Wenn die Kundin/der Kunde angibt, dass es sich dabei auch um die Rechnungsadresse handelt, erscheint diese auch im Feld [billing_details](https://docs.stripe.com/api/payment_intents/confirm.md#confirm_payment_intent-payment_method_data-billing_details). Um die Kombination von Informationen zu aktivieren, erstellen Sie alle Elemente aus demselben `Elements`-Objekt, wie in diesem Beispiel: ```javascript const stripe = Stripe('<>'); const appearance = { /* appearance */ }; const options = { mode: 'shipping' }; const paymentElementOptions = { layout: 'accordion'}; const elements = stripe.elements({ clientSecret }); // Bei einer funktionierenden Integration ist dies ein Wert, den Ihr Backend mit Details wie dem Betrag einer Zahlung übergibt. Einzelheiten finden Sie im vollständigen Beispiel. const addressElement = elements.create('address', options); const paymentElement = elements.create('payment', paymentElementOptions); addressElement.mount('#address-element'); paymentElement.mount('#payment-element'); ``` #### Abrechnungsmodus Im Abrechnungsmodus wird die Adresse im Feld [billing_details](https://docs.stripe.com/api/payment_intents/confirm.md#confirm_payment_intent-payment_method_data-billing_details) gespeichert. Um die Kombination von Informationen zu aktivieren, erstellen Sie alle Elemente aus demselben `Elements`-Objekt, wie in diesem Beispiel: ```javascript const stripe = Stripe('<>'); const appearance = { /* appearance */ }; const options = { mode: 'billing' }; const paymentElementOptions = { layout: 'accordion'}; const elements = stripe.elements({ clientSecret }); // Bei einer funktionierenden Integration ist dies ein Wert, den Ihr Backend mit Details wie dem Betrag einer Zahlung übergibt. Einzelheiten finden Sie im vollständigen Beispiel. const addressElement = elements.create('address', options); const paymentElement = elements.create('payment', paymentElementOptions); addressElement.mount('#address-element'); paymentElement.mount('#payment-element'); ``` ### Benutzerdefiniertes Verhalten Normalerweise ist das Standardverhalten des Address Element ausreichend. In einem komplexen Zahlungsablauf müssen Sie jedoch möglicherweise benutzerdefinierte Antworten auf die Eingaben der Kund/innen schreiben. Weitere Informationen finden Sie unter [Adresseingabe überwachen](https://docs.stripe.com/payments/advanced/collect-addresses.md). ## Automatische Vervollständigung Wenn Ihr Kunde/Ihre Kundin ein unterstütztes Land für seine/ihre Adresse auswählt, werden ihm/ihr die Optionen zur automatischen Vervollständigung angezeigt. Das Address Element kann Adressen für die folgenden Länder automatisch ausfüllen: - AU - BE - BR - CA - CH - DE - ES - FR - GB - IE - IN - IT - JP - MX - MY - NL - NO - NZ - PH - PL - RU - SE - SG - TR - US - ZA Wenn Sie das Address Element und das Payment Element zusammen verwenden, aktiviert Stripe die automatische Vervollständigung ohne Konfiguration. Dies geschieht mithilfe eines von Stripe bereitgestellten Google Maps API-Schlüssels. > Durch die Verwendung der Funktion zur automatischen Vervollständigung erklären Sie sich mit den [Nutzungsbedingungen der Google Maps Platform](https://cloud.google.com/maps-platform/terms/aup) einverstanden. Wenn Sie gegen diese Richtlinie verstoßen, deaktivieren wir möglicherweise die automatische Vervollständigung oder ergreifen andere erforderliche Maßnahmen. Wenn Sie nur das Address Element verwenden, müssen Sie Ihren eigenen [Google Maps API Places-Bibliotheksschlüssel](https://developers.google.com/maps/documentation/javascript/places) verwenden, der separat von Ihrem Stripe-Konto verwaltet wird. Übergeben Sie den Schlüssel in der Option [autocomplete.apiKey](https://docs.stripe.com/js/elements_object/create_address_element#address_element_create-options-autocomplete-apiKey). ## Mit Link automatisch ausfüllen [Link](https://docs.stripe.com/payments/link.md) speichert und füllt die Zahlungs- und Versandinformationen für die von Ihnen aktivierten Optionen automatisch aus. Wenn der Link-Kunde beispielsweise eine Telefonnummer gespeichert hat, füllt Stripe die Telefonnummer nur dann automatisch aus, wenn die Erfassung von Telefonnummern aktiviert ist. Wenn sich wiederkehrende Link-Kundinnen/Kunden authentifizieren, füllt Stripe ihre Versandinformationen automatisch im Adresselement aus. ![Ein Zahlungsformular mit mehreren Elements erstellen](https://b.stripecdn.com/docs-statics-srv/assets/link-with-elements.f60af275f69b6e6e73c766d1f9928457.png) Ein Zahlungsformular mit mehreren Elements erstellen Um das automatische Ausfüllen zu aktivieren, erstellen Sie alle Elemente aus demselben `Elements`-Objekt, wie in diesem Beispiel: ```javascript const stripe = Stripe('<>'); const appearance = { /* appearance */ }; const options = { mode: 'shipping' }; const paymentElementOptions = { layout: 'accordion'}; const elements = stripe.elements({ clientSecret }); // Bei einer funktionierenden Integration ist dies ein Wert, den Ihr Backend mit Details wie dem Betrag einer Zahlung übergibt. Einzelheiten finden Sie im vollständigen Beispiel. const linkAuthElement = elements.create('linkAuthentication'); const addressElement = elements.create('address', options); const paymentElement = elements.create('payment', paymentElementOptions); linkAuthElement.mount('#link-auth-element'); addressElement.mount('#address-element'); paymentElement.mount('#payment-element'); ``` ## Erscheinungsbild Verwenden Sie die Appearance API, um das Design aller Elemente zu steuern. Wählen Sie einen Stil oder aktualisieren Sie bestimmte Details. ![Beispiele für helle und dunkle Modi für das Adresselement.](https://b.stripecdn.com/docs-statics-srv/assets/address_appearance_example.c7884ea763b05e5881d65ed2b2afadbc.png) Wähle Sie zum Beispiel das „flache“ Design und überschreiben Sie die Standardtextfarbe. ```javascript const stripe = Stripe('<>'); const appearance = { theme: 'flat', variables: { colorPrimaryText: '#262626' } }; const options = { /* options */ }; const elements = stripe.elements({ clientSecret, appearance }); // Bei einer funktionierenden Integration ist dies ein Wert, den Ihr Backend mit Details wie dem Betrag einer Zahlung übergibt. Einzelheiten finden Sie im vollständigen Beispiel. const addressElement = elements.create('address', options); addressElement.mount('#address-element'); ``` Eine vollständige Liste der Themen und Variablen finden Sie in der Appearance API-Dokumentation für die Integration von [Elements mit Checkout Sessions API](https://docs.stripe.com/payments/checkout/customization/appearance.md?payment-ui=embedded-components) oder unter [Advanced-Integration](https://docs.stripe.com/elements/appearance-api.md).