paydirekt

paydirekt im Backend

paydirekt ist ein Zahlungsmodul unter den Zahlungsarten. Die Seite erklärt die anbieterspezifischen Zugangsdaten, den Betriebsmodus, den Checkout-Ablauf, die Statusfolgen und Rückzahlungen aus dem Bestellkontext.

Voraussetzungen und Einordnung

  • Zahlungsart aktivieren: paydirekt muss in der Zahlungsarten-Übersicht aktiv sein. Dort werden außerdem allgemeine Kosten, Wertgrenzen, Reihenfolge und Checkout-Verfügbarkeit gepflegt.
  • Spezifische Einstellungen: Das Zahnradsymbol in der Zahlungsarten-Tabelle öffnet das paydirekt-Konfigurationsformular. Die Werte werden je Shop im Bereich payment_paydirekt gespeichert.
  • Automatische Initialisierung: Fehlende Konfigurationsvariablen werden je Shop angelegt. Dazu gehören api_key, api_secret, modus, order_status_ok, status_ok_createBill, status_ok_sendBill und order_status_err.
  • Checkout-Verfügbarkeit: Die modulinterne Prüfung erlaubt paydirekt grundsätzlich. Weitere Einschränkungen kommen aus der allgemeinen Zahlungsart, dem Warenkorb, Versandkontext und Shop-Kontext.

Spezifische Einstellungen

Das Formular besitzt keine eigene Suchmaske, keine Tabelle und keine Optionsspalte. Es wird aus der Zahlungsarten-Übersicht geöffnet und über den ausgewählten Shop gespeichert.

FeldBackend-FeldWirkung
API-Keyapi_keyÖffentlicher Schlüssel für die Token-Anfrage bei paydirekt. Der Wert wird als Auth-Key in der API-Anmeldung verwendet.
Access Key IDapi_secretGeheimer Schlüssel für die HMAC-Signatur der Token-Anfrage. Ohne passenden Wert kann kein Zugriffstoken erzeugt werden.
Bestellstatus bei erfolgreicher Zahlungorder_status_okStatus, der nach bestätigtem Checkout-Status APPROVED auf die Bestellung gesetzt wird.
eigene Rechnung erstellenstatus_ok_createBillÜbergibt nach erfolgreicher Zahlung an die Checkout-Rechnungslogik, ob eine Rechnung erzeugt werden soll. Das Feld ist deaktiviert, wenn das FiBu-Modul nicht aktiv ist.
Rechnung bei erfolgreicher Zahlung an Kunde sendenstatus_ok_sendBillSteuert im gleichen Rechnungsablauf den Versand der erzeugten Rechnung. Auch diese Option hängt vom FiBu-Modul ab.
Betriebsmodusmodus0 nutzt den Live-Endpunkt. 1 nutzt den Sandbox-Endpunkt.

Speichern und Shop-Bezug

Beim Speichern werden die Formularwerte übernommen und für den ausgewählten Shop abgelegt. Danach lädt das Modul die Konfiguration neu. Der Betriebsmodus entscheidet bereits beim Modulstart, welcher paydirekt-Endpunkt angesprochen wird.

Hinweis: Zugangsdaten und Betriebsmodus müssen zusammenpassen. Sandbox-Zugangsdaten funktionieren nicht gegen den Live-Endpunkt und Live-Zugangsdaten nicht gegen den Sandbox-Endpunkt.

Checkout-Ablauf

  1. Im Checkout wird paydirekt als Zahlungsart gewählt.
  2. Vor der Weiterleitung werden versteckte Felder für Gesamtsumme und Währung ergänzt.
  3. Nach Anlage der Bestellung fordert das Modul ein Zugriffstoken an. Dafür werden API-Key, Access Key ID, Zeitstempel, Request-ID und Nonce signiert.
  4. Das Modul erstellt einen Direct-Sale-Checkout mit Gesamtbetrag, Versandbetrag, Positionsbetrag, Währung, Lieferadresse, Bestellnummer, Notiz und drei Rücksprungzielen für Erfolg, Abbruch und Ablehnung.
  5. Die paydirekt-Antwort wird als Checkout-Datensatz gespeichert. Erfasst werden order_id, checkout_id, status, amount, type, timestamp und log.
  6. Danach erfolgt die Weiterleitung zur Freigabe bei paydirekt.

Erfolgreiche Zahlung

Beim Erfolgsrücksprung lädt das Modul den gespeicherten Checkout-Datensatz und fragt den aktuellen paydirekt-Status erneut ab. Wenn eine Antwort vorliegt, wird der Status im Checkout-Datensatz aktualisiert. Anschließend leert das Backend den Warenkorb, markiert die Bestellung als abgeschlossen, aktualisiert Kundschaftsumsatz und Gutscheincodes und versendet bei aktivierter Shop-Einstellung die Bestellbestätigung.

Nur beim Status APPROVED setzt das Modul den konfigurierten Erfolgsstatus aus order_status_ok und ruft die Rechnungslogik mit status_ok_createBill und status_ok_sendBill auf.

Abbruch und Ablehnung

Bei Abbruch oder Ablehnung wird die gerade angelegte Bestellung gelöscht. Zusätzlich entfernt das Modul den zugehörigen paydirekt-Checkout-Datensatz. Danach führt der Ablauf zurück zum Warenkorb, damit eine andere Zahlungsart gewählt werden kann.

Wichtig: Verbindungsfehler beim Tokenabruf oder bei der Checkout-Erstellung löschen die neu angelegte Bestellung ebenfalls und führen zurück zum Warenkorb. Vor dem Live-Betrieb sollten Zugangsdaten, Betriebsmodus und Rücksprungkonfiguration in einem Testlauf geprüft werden.

Bestellansicht und Log

In der Bestellansicht zeigt paydirekt den aktuellen Zahlungsstatus und eine einklappbare Historie der gespeicherten Checkout-Datensätze. Die Historie enthält Datum und Uhrzeit, Typ und Status.

  • Statusnamen: OPEN wird als offen angezeigt, APPROVED als abgeschlossen.
  • Typen: DIRECT_SALE steht für Zahlung, REFUND für Rückzahlung.
  • Rückzahlung: Die Aktion erscheint nur, wenn der aktuelle Checkout-Status APPROVED ist.

Rückzahlung

Der Rückzahlungsdialog arbeitet mit der Bestellung und den gespeicherten paydirekt-Checkout-Datensätzen.

  1. Das Backend sucht den ursprünglichen DIRECT_SALE-Datensatz der Bestellung.
  2. Bereits gespeicherte REFUND-Datensätze werden summiert.
  3. Als technisches Maximum wird der doppelte ursprüngliche Checkout-Betrag verwendet. Davon werden bereits gebuchte Rückzahlungen abgezogen.
  4. Das Formular zeigt den noch möglichen Betrag und schlägt als Eingabewert den kleineren Wert aus offenem Betrag und ursprünglichem Checkout-Betrag vor.
  5. Beim Absenden wird amount normalisiert. Ein Betrag über dem freien Maximum führt zurück in den Dialog mit Fehlermeldung.
  6. Bei erfolgreicher API-Antwort wird ein neuer REFUND-Checkout-Datensatz mit Status APPROVED, Betrag, Typ, Zeitstempel und Log gespeichert.

War diese Seite hilfreich?

Hilf uns, das Handbuch weiter zu verbessern. Wenn etwas fehlt oder unverständlich ist, kannst Du direkt einen kurzen Kommentar senden.