Jericommerce speichert alle Kundeninteraktionen auf der Plattform. Auf diese Daten kann über den Endpunkt zugegriffen werden, der beim Hinzufügen der Integration in den Einstellungen konfiguriert wurde.
Nachdem Sie Ihren Webhook-Endpunkt in den Einstellungen > Integrationen > API hinzugefügt haben, erhalten Sie ein Objekt, das die für den Kunden durchgeführten Aktionen und die damit verbundenen Eigenschaften erklärt.
Alle API-Anfragen werden mit einem Header versehen x-jericommerce-hmac-sha256
die ein Geheimnis enthält, das mit dem auf der Integrationsseite angezeigten Geheimtext verschlüsselt ist.
Dieses Token wird mit HMAC-SHA256 verschlüsselt, was dazu beiträgt, dass jede POST-Anfrage von uns stammt, und somit Betrug verhindert.
Der Typ des Ereignisses wird in der Kopfzeile jeder POST definiert, insbesondere in der x-jericommerce-event-type
Kopfzeile. In dieser Kopfzeile werden die Daten der Anfrage definiert.
Hier sind die möglichen Ereignisse, die empfangen werden können:
Brieftasche klicken
Ein Kunde klickt auf einen der Brieftaschen-Links.
Besuch der Brieftasche
Ein Kunde besucht eine der Seiten der jericommerce-Webanwendung, aber nicht die Brieftasche.
Wallet Pass installiert
Der Kunde installiert einen Wallet-Pass auf seinem Gerät oder deaktiviert und reaktiviert die automatischen Updates in den Wallet-Pass-Einstellungen.
Wallet Pass deinstalliert
Der Kunde deinstalliert einen Wallet Pass auf seinem Gerät oder deaktiviert die automatischen Updates in den Wallet Pass-Einstellungen.
Kunde gescannt
Wenn die Shopify POS-App einen Wallet-Pass mit dem jericommerce Fliese.
Kunde erstellt
Wenn ein neuer Kunde in jericommerce angelegt wird.
Wallet Pass angefordert
Wenn der Kunde die Brieftasche über die Webanwendung anfordert.
Alle Webhooks werden mit einem Datenobjekt geliefert, das sich je nach Ereignistyp ändern kann. Die Grundstruktur ist jedoch oft die gleiche. Werfen wir einen Blick auf die Grundstruktur.
1// Data event type structure
2{
3 id: "string",
4 customerId: "string",
5 campaignId?: "string",
6 url?: "string",
7 browser?: "string",
8 createdAt: "string",
9 properties: object;
10}
11
Das Fragezeichen (?) zeigt an, dass der Wert optional ist und je nach Ereignistyp vorhanden oder nicht vorhanden sein kann.
Hier sind die verschiedenen Eigenschaften
die für jede Ereignisart gelten können
1// Properties by event-type
2
3Wallet click: {
4 name: "Wallet click",
5 url: entity.url,
6 browser: entity.browser,
7 utm_campaign: entity.campaignId || "generic_link",
8 utm_source: "wallet",
9 utm_medium: "wallet_pass",
10 }
11Wallet visit: {
12 name: "Wallet visit",
13 url: entity.url,
14 browser: entity.browser,
15 utm_campaign: "generic_link",
16 utm_source: "wallet",
17 utm_medium: "wallet_pass",
18 }
19Wallet pass installed: {}
20Wallet pass uninstalled: {}
21Customer scanned: {
22 shopId: string,
23 userId: string,
24 shopDomain: string,
25 locationId: string,
26 staffMemberId: string
27}
28Customer created: {
29 email: string
30}