DOCS

Kundenprofile

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.

1

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
mutation checkoutCustomerProfileAuthenticate(
    $input: CheckoutCustomerProfileAuthenticateInput!
  ) {
  checkoutCustomerProfileAuthenticate(input: $input) {
    email
    customerId
    organizationId
    name
    phone
    locations {
      administrativeArea
      countryCode
      locality
      line1
      line2
      postalCode
    }
    oneTimePassword
  }
}

Variable

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
{
	"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.

2

Warenkorb mit Kundenprofil erstellen

Nachdem Sie beide Mutationen aufgerufen haben, erhalten Sie Folgendes zurück:

  • cartId von der createCart-Mutation zur Generierung des Warenkorbs.

  • Ein oneTimePassword von der checkoutCustomerProfileAuthenticate-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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
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 ||
          '',
      };
    }
  },
}
3

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.

War diese Seite hilfreich?