DOCS

Klantprofielen

Klantprofielen

Voer informatie van terugkerende shoppers vooraf in bij Zonos Checkout.

Klantprofielen stroomlijnen uw checkout ervaring door klanten met een account in staat te stellen hun adres- en betalingsgegevens vooraf in te voeren.

Deze functie is momenteel alleen beschikbaar voor aangepaste API-integraties. Deze functie is nog niet beschikbaar voor handelaren die Checkout-plug-ins gebruiken.

1

Stuur geauthenticeerde klantinformatie

Om een klantprofiel te authentiseren, moet uw backendserver twee onafhankelijke API-aanroepen doen, die we aanbevelen parallel uit te voeren voor betere prestaties:

  • createCart: Genereert de Zonos winkelwagentje. Voor gedetailleerde richtlijnen, raadpleeg de Sectie Zonos Checkout instellen binnen de documentatie voor aangepaste integratie.

  • checkoutCustomerProfileAuthenticate: Dien de informatie van de klant in en valideer deze.

Mutatie

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
  }
}

Variabele

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"
	}
}

Bij het valideren van de klantensessie, zorg ervoor dat de customerId die je in de aanvraag doorgeeft overeenkomt met het juiste profiel om nauwkeurige klantinformatie weer te geven bij checkout. Houd er rekening mee dat je bij het aanmaken van een winkelwagentje customerId niet in de metadata moet opnemen, omdat dit zal worden overschreven.

Nadat de klant is geverifieerd en de bestelling is geplaatst, zal de customerId beschikbaar zijn in order.references wanneer je de bestelgegevens opvraagt via de orderquery, zodat je de bestelling kunt associëren met de juiste klant.

2

Maak een winkelwagentje met klantprofiel

Nadat je beide mutaties hebt aangeroepen, ontvang je het volgende terug:

  • cartId van de createCart mutatie om het winkelwagentje te genereren.

  • Een oneTimePassword van de checkoutCustomerProfileAuthenticate mutatie voor de klantauthenticatie.

Je kunt beide waarden doorgeven in de createCartId callback in de Zonos.init functie om de verstrekte klantprofielinformatie in Checkout te 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

Beheer klantprofielen

De eerste keer dat u klantinformatie indient, zal Zonos de verstrekte klantinformatie opslaan. Betalingsmethoden worden veilig opgeslagen in Stripe. Elke keer dat nieuwe adres- of betalingsgegevens worden doorgegeven, worden deze toegevoegd aan het profiel van de klant.

Momenteel kunnen klantprofielen alleen worden bijgewerkt met aanvullende informatie—bestaande details kunnen niet worden bewerkt of verwijderd.

Was deze pagina nuttig?