1. Home
  2. Dokumente
  3. Bonuspunkte Plugin für JT...
  4. Konfiguration
  5. Webhooks

Webhooks

Webhooks eigenen sich ideal, um Bonuspunkte zu setzen oder zu löschen.

Ein Webhook setzt sich immer aus einer definierten URL, einem Token und Anfrageparameter zusammen.

Für den Webhook wird immer ein Token benötigt, der bei der Plugininstallation Generiert wurde und im Pluginbackend einsehbar ist.

Die Webhook URL setzt sich wie folgt zusammen, wobei DEINE_URL durch die Webshop URL ausgetauscht wird:

				
					https://DEINE_URL?plugin=xv_rewardpoints&controller=Webhook
				
			

Der eben kopierte Token wird als Bearer Token übermittelt.

Der Body enthalt JSON Kodiert die Parameter.

Mittels der Methode kann man festlegen, was genau gemacht werden soll.

GET: Ein GET Request holt einen Eintrag ab und gibt Ihn als JSON zurück.
POST: Mittels der POST Methode kann man einen manuellen Eintrag anlegen (analog zu der Nutzung mittels Backend)
DELETE: Ein DELETE macht den Bonuspunkt ungültig (Eintrag bleibt in der History erhalten, aber die Punkte können nicht mehr verwendet werden).
PUT: Ein PUT ändert einen Eintrag (z.b. kann man so Punkte von Ausstehend zu Verfügbar ändern).

In PHP könnte das wie folgt aussehen:

				
					<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://DEINE_URL/?plugin=xv_rewardpoints&controller=Webhook',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'GET',
  CURLOPT_POSTFIELDS =>'{"id": "order__order", "value": 68}',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Authorization: Bearer tem3iDVBiIJYEaZRXCR2GXU6Vu4OWjwzw09BtK99'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

				
			

Dies würde den Eintrag für die Bonuspunkte zur Bestellung 68 abolen.

Wir möchten anhand einem Beispiel aus der JTL-WAWI heraus erklären, wie man mittels JTL-Workflows Bonuspunkte entfernen kann, wenn eine Retoure abgeschlossen wurde.