Passa al contenuto principale

Introduzione

Questa sezione definisce gli schemi per tutti gli eventi relativi alla gestione dei clienti su Webround Commerce. Include la gestione del profilo, le richieste di sistema (reset password, verifica email) e gli indirizzi salvati.

Tabella Completa Eventi e Payload

EventoPayload SchemaEsempio JSON
store.customer.createdCustomer SchemaLink
store.customer.updatedCustomer Schema-
store.customer.deletedCustomer Deleted SchemaLink
store.customer.reset-password.requestRequest SchemaLink
store.customer.verify-email.requestRequest Schema-
store.customer.delete.requestRequest Schema-
store.customer.email.verifiedEmail Verified SchemaLink
store.customer.promotions.replacedPromotions Replaced SchemaLink
store.customer.address.createdAddress Event SchemaLink
store.customer.address.updatedAddress Event Schema-
store.customer.address.deletedAddress Deleted Schema-

Tipi di dato base

Oltre ai Tipi Base già definiti, questi eventi introducono il campo, che è inserito fuori dall'oggetto data:

CampoTipoDescrizione
autonomousbooleanIndica se l'azione è stata compiuta autonomamente dal cliente (true) o da un amministratore (false).

Schema Cliente (storeCustomerCreatedSchema)

CampoTipoNote
autonomousbooleanObbligatorio (fuori dall'oggetto data)
iduuidObbligatorio
storeIduuidObbligatorio
displayNamestring - nullNome visualizzato
emailstring - nullEmail del cliente
addressobject - nullIndirizzo (formato libero)
phonestring - nullNumero di telefono
metadataobject - nullMetadati custom
vatExemptbooleanObbligatorio (Esenzione IVA)
vatCodestring - nullPartita IVA
newsletterbooleanObbligatorio (Consenso marketing)
createdAtisoDateObbligatorio
updatedAtisoDateObbligatorio

Esempio Cliente

{
"envelopeId": "a1b2c3d4-e5f6-4a5b-b6c7-d8e9f0a1b2c3",
"eventType": "store.customer.created",
"initiatedBy": "[email protected]",
"storeId": "7292a83e-967b-4861-80a5-2964e52003c4",
"occurredAt": "2026-02-22T20:30:00.000Z",
"autonomous": true,
"data": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"storeId": "7292a83e-967b-4861-80a5-2964e52003c4",
"displayName": "John doe",
"email": "[email protected]",
"address": null,
"phone": "+391234567890",
"metadata": {
"key": "value"
},
"vatExempt": false,
"vatCode": null,
"newsletter": true,
"createdAt": "2026-02-22T20:30:00.000Z",
"updatedAt": "2026-02-22T20:30:00.000Z"
},
"eventId": "5b7137c3-d261-40d8-aeb0-ad4831209b4b"
}


Schema Cliente Eliminato (storeCustomerDeletedSchema)

CampoTipoNote
autonomousbooleanObbligatorio
isSoftDeletionbooleanObbligatorio (Indica se l'eliminazione è solo una procedura di anonimizzazione)
customerIduuidObbligatorio
storeIduuidObbligatorio
suggerimento

I clienti che hanno eseguito un ordine in passato ed erano autenticati, vengono anonimizzati ma non cancellati.

Esempio Cliente Eliminato

{
"envelopeId": "b2c3d4e5-f6g7-h8i9-j0k1-l2m3n4o5p6q7",
"eventType": "store.customer.deleted",
"initiatedBy": "[email protected]",
"storeId": "7292a83e-967b-4861-80a5-2964e52003c4",
"occurredAt": "2026-02-22T20:35:00.000Z",
"autonomous": false,
"isSoftDeletion": true,
"data": {
"customerId": "cb183be9-cd26-4061-ab27-f859a79a745e",
"storeId": "7292a83e-967b-4861-80a5-2964e52003c4"
},
"eventId": "ed80464a-4d5b-4644-b55b-a8e4099e422a"
}


Schema Richiesta di Sistema (Request Schema)

Questo schema viene utilizzato per gli eventi di servizio che richiedono un'azione tramite URL firmato, come il reset della password, la verifica dell'email o la richiesta di cancellazione dell'account.

CampoTipoNote
autonomousbooleanObbligatorio
customerIduuidObbligatorio
emailstringObbligatorio (Email del destinatario)
signedUrlstringObbligatorio (URL firmato con scadenza per completare l'azione)

Esempio Richiesta di Sistema

{
"envelopeId": "c3d4e5f6-a1b2-4c3d-d4e5-f6g7h8i9j0k1",
"eventType": "store.customer.reset-password.request",
"initiatedBy": "[email protected]",
"storeId": "7292a83e-967b-4861-80a5-2964e52003c4",
"occurredAt": "2026-02-22T20:40:00.000Z",
"autonomous": true,
"data": {
"customerId": "3eb35f07-1aa8-4e24-b221-3502d53d0837",
"email": "[email protected]",
"signedUrl": "https://commerce-api.webround.com/store-customers-auth/reset-password?token=abc123signed"
},
"eventId": "1a635d33-9233-4131-8e9b-c5b7539f152a"
}


Schema Email Verificata (storeCustomerEmailVerifiedSchema)

CampoTipoNote
customerIduuidObbligatorio
emailstringObbligatorio

Esempio Email Verificata

{
"envelopeId": "d4e5f6g7-h8i9-j0k1-l2m3-n4o5p6q7r8s9",
"eventType": "store.customer.email.verified",
"initiatedBy": "[email protected]",
"storeId": "7292a83e-967b-4861-80a5-2964e52003c4",
"occurredAt": "2026-02-22T20:45:00.000Z",
"data": {
"customerId": "9670a73e-7b85-4dc2-88b7-e475c26073bd",
"email": "[email protected]"
},
"eventId": "9670a73e-7b85-4dc2-88b7-e475c26073bd"
}


Schema Promozioni Cliente (storeCustomerPromotionsReplacedSchema)

CampoTipoNote
customerIduuidObbligatorio
emailstringObbligatorio
promotionsobject[]Array di oggetti contenenti id (uuid) e code (string)

Esempio Promozioni Cliente

{
"envelopeId": "e5f6g7h8-i9j0-k1l2-m3n4-o5p6q7r8s9t0",
"eventType": "store.customer.promotions.replaced",
"initiatedBy": "[email protected]",
"storeId": "7292a83e-967b-4861-80a5-2964e52003c4",
"occurredAt": "2026-02-22T20:50:00.000Z",
"data": {
"customerId": "550e8400-e29b-41d4-a716-446655440000",
"email": "[email protected]",
"promotions": [
{
"id": "e1c37ef6-70a5-40a8-9651-61ebcbb2d175",
"code": "WELCOME2026"
}
]
},
"eventId": "db44d050-532c-4634-846f-29623650647e"
}


Schema Indirizzo Cliente (storeCustomerAddressCreatedSchema)

Utilizzato per gli eventi di creazione e aggiornamento degli indirizzi nel profilo del cliente.

CampoTipoNote
autonomousbooleanObbligatorio
customerIduuidObbligatorio
address.iduuidObbligatorio
address.fullNamestring - nullNome completo
address.companystring - nullRagione sociale
address.addressLine1stringObbligatorio
address.addressLine2string - nullRiga 2
address.citystringObbligatorio
address.postalCodestringObbligatorio
address.countryCodestringObbligatorio (ISO 3166-1 alpha-2)
address.phonestring - nullTelefono
address.provincestring - nullProvincia
address.additionalInfostring - nullNote extra
address.isDefaultShippingbooleanObbligatorio
address.isDefaultBillingbooleanObbligatorio
address.createdAtisoDateObbligatorio
address.updatedAtisoDateObbligatorio

Esempio Indirizzo Cliente

{
"envelopeId": "f6g7h8i9-j0k1-l2m3-n4o5-p6q7r8s9t0u1",
"eventType": "store.customer.address.created",
"initiatedBy": "[email protected]",
"storeId": "7292a83e-967b-4861-80a5-2964e52003c4",
"occurredAt": "2026-02-22T21:00:00.000Z",
"autonomous": true,
"data": {
"customerId": "88337d3d-889c-4a52-b80c-4593a2d19c5e",
"address": {
"id": "830b9969-46f5-4147-9d8e-cac88d10aba1",
"fullName": "John Doe",
"company": null,
"addressLine1": "Corso Vittorio Emanuele II, 1",
"addressLine2": null,
"city": "Torino",
"postalCode": "10121",
"countryCode": "IT",
"phone": "+390111234567",
"province": "TO",
"additionalInfo": "Secondo piano",
"isDefaultShipping": true,
"isDefaultBilling": true,
"createdAt": "2026-02-22T21:00:00.000Z",
"updatedAt": "2026-02-22T21:00:00.000Z"
}
},
"eventId": "84e37079-84c5-4889-9309-f2bd35f6b25d"
}


Schema Indirizzo Eliminato (storeCustomerAddressDeletedSchema)

CampoTipoNote
autonomousbooleanObbligatorio
customerIduuidObbligatorio
addressIduuidObbligatorio (ID dell'indirizzo rimosso)

Esempio Indirizzo Eliminato

{
"envelopeId": "0a1b2c3d-4e5f-6g7h-8i9j-k0l1m2n3o4p5",
"eventType": "store.customer.address.deleted",
"initiatedBy": "[email protected]",
"storeId": "7292a83e-967b-4861-80a5-2964e52003c4",
"occurredAt": "2026-02-22T21:05:00.000Z",
"autonomous": true,
"data": {
"customerId": "550e8400-e29b-41d4-a716-446655440000",
"addressId": "0164a96e-62cf-42e6-9fbd-16308f4d7e85"
},
"eventId": "84e37079-84c5-4889-9309-f2bd35f6b25d"
}