Authentifizierte Kundeninformationen senden
Um ein Kundenprofil zu authentifizieren, muss Ihr Backend-Server zwei unabhängige API-Aufrufe durchführen, die wir empfehlen, parallel auszuführen, um die Leistung zu verbessern:
-
createCart
: Erstellt den Zonos-Warenkorb. Für detaillierte Anleitungen siehe den Abschnitt Zonos Checkout einrichten in der Dokumentation zur benutzerdefinierten Integration. -
checkoutCustomerProfileAuthenticate
: Reicht die Informationen des Kunden ein und validiert sie.
Mutation
mutation checkoutCustomerProfileAuthenticate(
$input: CheckoutCustomerProfileAuthenticateInput!
) {
checkoutCustomerProfileAuthenticate(input: $input) {
email
customerId
organizationId
name
phone
locations {
administrativeArea
countryCode
locality
line1
line2
postalCode
}
oneTimePassword
}
}
Variable
{
"input": {
"email": "test@zonos.com",
"locations": [
{
"administrativeArea": "BC",
"countryCode": "CA",
"line1": "411-1033 Davie Street",
"line2": "123 testAddress2",
"locality": "Vancouver",
"name": "TestCanada TestCanada",
"postalCode": "V6E1M7"
},
{
"administrativeArea": "UT",
"countryCode": "US",
"line1": "411-1033 Davie Street",
"line2": "123 testAddress2",
"locality": "Saint George",
"name": "TestUS TestLastName",
"postalCode": "84770"
}
],
"customerId": "1234567",
"name": "testFirstName1 testLastName",
"phone": "7022920000"
}
}
Beim Validieren der Kundensitzung stellen Sie sicher, dass die customerId
, die Sie in der Anfrage übergeben, mit dem richtigen Profil übereinstimmt, um genaue Kundeninformationen bei checkout anzuzeigen. Beachten Sie, dass Sie beim Erstellen eines Warenkorbs die customerId
nicht in den Metadaten einfügen sollten, da sie überschrieben wird.
Nachdem der Kunde authentifiziert ist und die Bestellung aufgegeben wurde, wird die customerId in order.references
verfügbar sein, wenn Sie die Bestelldetails über die Bestellabfrage abrufen, sodass Sie die Bestellung mit dem richtigen Kunden verknüpfen können.
Warenkorb mit Kundenprofil erstellen
Nachdem Sie beide Mutationen aufgerufen haben, erhalten Sie Folgendes zurück:
-
cartId
von dercreateCart
-Mutation zur Generierung des Warenkorbs. -
Ein
oneTimePassword
von dercheckoutCustomerProfileAuthenticate
-Mutation zur Kundenauthentifizierung.
Sie können beide Werte im createCartId
-Callback der Zonos.init
-Funktion übergeben, um die bereitgestellten Kundenprofilinformationen in Checkout zu laden.
Zonos.init
Zonos.init({
...
checkoutSettings: {
...
createCartId: async () => {
const result = await fetch(
'https://api.merchant.com/api/get-cart-info',
{
body: JSON.stringify(payload),
method: 'POST',
},
);
const json =
await result.json();
return {
cartId: json.cartId,
customerAuthenticationToken:
json.customerProfileAuthenticate
?.checkoutCustomerProfileAuthenticate.oneTimePassword ||
'',
};
}
},
}
Kundenprofile verwalten
Beim ersten Mal, wenn Sie Kundeninformationen übermitteln, wird Zonos die bereitgestellten Kundeninformationen speichern. Zahlungsmethoden werden sicher in Stripe gespeichert. Jedes Mal, wenn neue Adress- oder Zahlungsdetails übermittelt werden, werden diese dem Kundenprofil hinzugefügt.
Derzeit können Kundenprofile nur mit zusätzlichen Informationen aktualisiert werden—bestehende Details können nicht bearbeitet oder entfernt werden.
Kundenprofile
Wiederkehrende Käuferinformationen in Zonos Checkout vorab laden.
Kundenprofile optimieren Ihr checkout-Erlebnis, indem sie es Kunden mit einem Konto ermöglichen, ihre Adresse und Zahlungsdetails vorab zu laden.
Dieses Feature ist derzeit nur für benutzerdefinierte API-Integrationen verfügbar. Dieses Feature ist noch nicht für Händler verfügbar, die Checkout-Plugins verwenden.