URL-Benachrichtigungen¶
Bei bestimmten Aktionen ruft wpShopGermany eine von Ihnen hinterlegte Adresse (URL) auf und übergibt dabei Daten zu Produkt, Bestellung und Kunde per POST. Damit kann ein eigenes Skript auf einem Server z. B. Zugänge freischalten, eine Warenwirtschaft informieren oder Daten weiterverarbeiten.
Diese Seite beschreibt, wann der Shop benachrichtigt und welche Daten er sendet. Ein Beispielskript und die Einrichtung Schritt für Schritt finden Sie im Tutorial URL-Benachrichtigung.
Übersicht der Benachrichtigungen¶
| Auslöser | Wert von typ |
Einstellung |
|---|---|---|
| Kauf eines Produkts | buy |
je Produkt: URL Benachrichtigung mit Haken Beim Verkauf |
| Bezahlung eines Produkts | pay |
je Produkt: URL Benachrichtigung mit Haken Bei Bezahlung |
| Schreiben einer Rechnung | rechnung |
zentral im Modul Rechnungen, beim Schreiben anhaken |
| Aboprodukte (Kauf, Verlängerung, Ablauf, Start/Stopp) | abo_firstbuy, abo_rebuy, abo_expiration, abo_status_started, abo_status_stopp |
Modul Aboprodukte |
Auch das Modul Lieferschein hat eine eigene Einstellung für eine URL-Benachrichtigung beim Erstellen eines Lieferscheins.
Die URL muss vollständig sein und direkt auf das Skript zeigen, z. B. https://shop.test/benachrichtigung.php. Ungültige Adressen ruft der Shop nicht auf.
Benachrichtigung beim Kauf eines Produkts¶
Hinterlegen Sie die URL beim Produkt im Reiter Allgemein im Kasten URL Benachrichtigung und setzen Sie den Haken Beim Verkauf. Der Shop ruft die URL auf, sobald eine Bestellung mit diesem Produkt abgeschlossen wird – einmal je Produkt der Bestellung.
$_POST['typ'] hat dabei den Wert buy.
Benachrichtigung bei Bezahlung eines Produkts¶
Hinterlegen Sie die URL wie oben und setzen Sie den Haken Bei Bezahlung. Der Shop ruft die URL auf, wenn die Bestellung in den Status „Zahlung akzeptiert“ wechselt – z. B. durch die Rückmeldung des Zahlungsanbieters oder wenn Sie den Status in der Bestellverwaltung setzen.
$_POST['typ'] hat dabei den Wert pay. Die übrigen Daten entsprechen der Benachrichtigung beim Kauf.
Benachrichtigung beim Schreiben einer Rechnung¶
Die URL hinterlegen Sie zentral unter wpShopGermany → Konfiguration → Module → Rechnungen, Reiter Sonstiges, Feld URL Benachrichtigung. Sie gilt für alle Bestellungen.
Benachrichtigt wird nur, wenn beim Schreiben der Haken URL Benachrichtigung gesetzt ist:
- beim Schreiben einer einzelnen Rechnung in der Bestellansicht (Reiter Rechnung erstellen),
- beim Schreiben einer Sammelrechnung aus der Bestellübersicht (einmal je enthaltener Bestellung).
Rechnungen, die über die Sammelaktion Rechnung schreiben in der Bestellübersicht oder automatisch erstellt werden, lösen keine Benachrichtigung aus.
$_POST['typ'] hat dabei den Wert rechnung. Da sich diese Benachrichtigung auf die Bestellung bezieht, enthält sie keine Produktdaten, nur Bestell- und Kundendaten.
Übertragene Daten¶
| Parameter | Inhalt |
|---|---|
typ |
Art der Benachrichtigung (siehe oben) |
time |
Zeitstempel der Anfrage (Unix-Zeit) |
hash |
Prüfsumme: md5(SALT-Schlüssel + time), siehe Absicherung |
product_index |
Position des Produkts in der Bestellung (nur Kauf/Bezahlung) |
product_{Spalte} |
alle Felder des Produkts aus der Tabelle wp_wpsg_products, z. B. product_id, product_name, product_anr, product_preis (nur mit Produktbezug) |
produkt_key |
Produktschlüssel (bei Varianten inklusive Variante) |
menge |
bestellte Menge des Produkts |
order_{Spalte} |
alle Felder der Bestellung aus der Tabelle wp_wpsg_order, z. B. order_id, order_onr, order_price_gesamt_brutto, order_status |
customer_{Spalte} |
Kundendaten aus wp_wpsg_kunden und die Rechnungsadresse des Kunden, z. B. customer_knr, customer_email, customer_vname, customer_name, customer_strasse, customer_plz, customer_ort |
ov_{ID} |
Werte der Bestellvariablen (wenn das Modul aktiv ist) |
pv_{ID} |
Werte der Produktvariablen (wenn das Modul aktiv ist, nur mit Produktbezug) |
at_{ID} |
Werte der Produktattribute (wenn das Modul aktiv ist, nur mit Produktbezug) |
order, kunde |
Bestell- und Kundendaten noch einmal als verschachtelte Arrays (veraltet, nur für ältere Skripte) |
Beim Präfix {Spalte} steht der Name der Datenbankspalte. Welche Spalten es gibt, hängt von Version und aktiven Modulen ab. Lassen Sie sich die Daten beim Testen einmal vollständig ausgeben (siehe Tutorial).
Beispiel¶
Gekürztes Beispiel einer Benachrichtigung beim Kauf (Beispieldaten):
Array
(
[typ] => buy
[time] => 1758787200
[product_index] => 0
[product_id] => 12
[product_cdate] => 2025-03-01 10:15:00
[product_name] => Beispielprodukt
[product_detailname] =>
[product_anr] => A-1001
[product_preis] => 19.99
[product_ptemplate_file] => standard.phtml
[product_posturl] => https://shop.test/benachrichtigung.php
[product_posturl_verkauf] => 1
[product_posturl_bezahlung] => 1
…
[produkt_key] => 12
[menge] => 1
[order_id] => 89
[order_onr] => 2025-0089
[order_cdate] => 2025-09-25 09:30:12
[order_k_id] => 10
[order_ip] => 192.0.2.10
[order_price_gesamt_brutto] => 24.94
[order_type_shipping] => 1
[order_type_payment] => 1
[order_status] => 0
…
[customer_id] => 10
[customer_knr] => 10
[customer_email] => kunde@beispiel.test
[customer_title] => 0
[customer_vname] => Max
[customer_name] => Mustermann
[customer_strasse] => Musterstraße
[customer_nr] => 1
[customer_plz] => 12345
[customer_ort] => Musterstadt
[customer_land] => 1
…
[ov_1] => Keine Auswahl
[order] => Array ( … )
[kunde] => Array ( … )
[hash] => 5d41402abc4b2a76b9719d911017c592
)
Bei typ = rechnung fehlen die Felder product_…, produkt_key, menge, pv_… und at_….
Absicherung¶
Damit niemand Benachrichtigungen fälschen kann, sendet der Shop in hash eine Prüfsumme aus dem SALT Schlüssel und dem Zeitstempel time. Den Schlüssel finden Sie unter wpShopGermany → Konfiguration → Einstellungen → Erweitert → SALT Schlüssel (siehe Erweitert). Ihr Skript berechnet md5(SALT Schlüssel . $_POST['time']) und verarbeitet die Anfrage nur, wenn das Ergebnis mit $_POST['hash'] übereinstimmt.
Hinweis
Die Benachrichtigung überträgt personenbezogene Daten (Name, Adresse, E-Mail, IP-Adresse). Verwenden Sie für die URL HTTPS und berücksichtigen Sie die Übermittlung in Ihrer Datenschutzerklärung.