DOCS

Profili dei clienti

Profili dei clienti

Pre-carica le informazioni dei clienti ricorrenti in Zonos Checkout.

I profili dei clienti semplificano la tua esperienza di checkout consentendo ai clienti con un account di pre-caricare il proprio indirizzo e i dettagli di pagamento.

Questa funzionalità è attualmente disponibile solo per integrazioni API personalizzate. Questa funzionalità non è ancora disponibile per i commercianti che utilizzano i plugin di Checkout.

1

Inviare informazioni del cliente autenticate

Per autenticare un profilo cliente, il tuo server backend deve effettuare due chiamate API indipendenti, che ti consigliamo di eseguire in parallelo per migliori prestazioni:

  • createCart: Genera il carrello Zonos. Per indicazioni dettagliate, fai riferimento alla sezione Configura Zonos Checkout all'interno della documentazione per integrazioni personalizzate.

  • checkoutCustomerProfileAuthenticate: Invia e convalida le informazioni del cliente.

Mutazione

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

Variabile

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

Quando si convalida la sessione del cliente, assicurati che il customerId che passi nella richiesta corrisponda al profilo corretto per visualizzare informazioni accurate sul cliente in checkout. Tieni presente che quando crei un carrello, non dovresti includere customerId nei metadati, poiché verrà sovrascritto.

Dopo che il cliente è stato autenticato e l'ordine è stato effettuato, il customerId sarà disponibile in order.references quando recuperi i dettagli dell'ordine tramite la query dell'ordine, consentendoti di associare l'ordine con il cliente corretto.

2

Crea carrello con profilo cliente

Dopo aver chiamato entrambe le mutazioni, riceverai quanto segue:

  • cartId dalla mutazione createCart per generare il carrello.

  • Un oneTimePassword dalla mutazione checkoutCustomerProfileAuthenticate per l'autenticazione del cliente.

Puoi passare entrambi questi valori nel callback createCartId nella funzione Zonos.init per caricare le informazioni del profilo cliente fornite in Checkout.

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

Gestire i profili dei clienti

La prima volta che invii informazioni sui clienti, Zonos memorizzerà le informazioni fornite. I metodi di pagamento saranno memorizzati in modo sicuro in Stripe. Ogni volta che vengono forniti nuovi dettagli relativi all'indirizzo o al metodo di pagamento, verranno aggiunti al profilo del cliente.

Attualmente, i profili dei clienti possono essere aggiornati solo con informazioni aggiuntive: i dettagli esistenti non possono essere modificati o rimossi.

Questa pagina è stata utile?