collana pay bildet den gesamten Zahlungsprozess ab, von der Erstellung einer Transaktion über die Reservierung und den Einzug des Betrags bis hin zu Rückerstattungen und Stornierungen. Jeder Prozessschritt wird als eigenständige Interaktion über die collana pay API angestoßen und folgt dem asynchronen Kommunikationsmuster: Request → synchrone Bestätigung → Notification. Eine detaillierte Beschreibung dieses Musters findet sich im Artikel zur Kommunikation.
Prozessschritte im Überblick
| Schritt | Interaktion | Beschreibung | Phase |
| 1 | Create | Erstellt eine neue Transaktion in collana pay. | Autorisierung |
| 2 | Prepare | Bereitet die Zahlung beim PSP vor. Ggf. Weiterleitung des Kunden zur Zahlungsdateneingabe. | Autorisierung |
| 3 | Reserve | Reserviert den Zahlbetrag beim PSP. Der Betrag wird geblockt, aber noch nicht eingezogen. | Autorisierung |
| 4 | Capture | Zieht den reservierten Betrag ein. Auch Teilcaptures sind möglich. | Zahlungseinzug |
| 5 | Refund | Erstattet einen bereits eingezogenen Betrag, vollständig oder als Teilrefund. | Rückerstattung |
| 6 | Void | Storniert eine offene Reservierung, bevor ein Capture erfolgt ist. | Stornierung |
Jede Interaktion wird durch eine eigene interactionId identifiziert. Alle Interaktionen einer Zahlung laufen unter einer gemeinsamen transactionId.
Autorisierung: Create, Prepare, Reserve
Die Autorisierung umfasst die ersten drei Prozessschritte und führt dazu, dass der Zahlbetrag beim Payment Service Provider (PSP) reserviert wird. Diese Schritte finden typischerweise während des Checkout-Prozesses im Webshop statt.
Create
Der Create-Schritt erstellt eine neue Transaktion in collana pay. Dabei werden die wesentlichen Transaktionsdaten (Betrag, Währung, Warenkorb, Zahlart) übergeben. Als Antwort erhält das anbindende System eine eindeutige transactionId, die als übergreifende Kennung für alle weiteren Interaktionen dient.
In diesem Schritt findet noch keine Kommunikation mit dem PSP statt.
Prepare
Das Prepare bereitet die Zahlung vor. In diesem Schritt kommuniziert collana pay erstmals mit dem PSP. Abhängig von PSP und Zahlart kann eine Weiterleitung des Kunden erforderlich sein — beispielsweise zur Eingabe von Kreditkartendaten oder zur Authentifizierung über das Verfahren des PSP.
Je nach PSP und Zahlart enthält die Notification unterschiedliche Informationen für die Kundeninteraktion:
-
RedirectUri— Der Kunde wird zur Zahlungsdateneingabe oder Authentifizierung auf eine externe Seite des PSP weitergeleitet. -
EmbedmentUri— Ein iFrame wird im Shop eingebettet, über den der Kunde die Zahlungsdaten eingibt. -
ScriptSrcUri/ScriptTagId— Ein Script wird im Shop geladen, das einen Payment-Button rendert (z. B. bei Expresszahlarten wie PayPal Express oder Apple Pay).
Reserve
Beim Reserve wird der Zahlbetrag beim PSP reserviert. Der Betrag wird auf dem Zahlungsmittel des Kunden geblockt, aber noch nicht eingezogen. Auch in diesem Schritt kann bei einigen Zahlungsarten und PSPs eine Kundeninteraktion (Weiterleitung, Einbettung oder Button) stattfinden.
Nach einer erfolgreichen Reservierung ist die Autorisierung abgeschlossen. Der Kunde hat den Checkout beendet, und die Bestellung kann an das ERP-System zur weiteren Verarbeitung übergeben werden.
| Die Kundeninteraktion (Weiterleitung, Einbettung oder Button) findet je nach PSP und Zahlart im Prepare- oder im Reserve-Schritt statt. Das anbindende System sollte in beiden Schritten auf die verschiedenen Interaktionstypen vorbereitet sein. |
Capture: Zahlungseinzug
Der Capture zieht den zuvor reservierten Betrag ein. Das Geld wird vom PSP beim Kunden angefordert und dem Händler gutgeschrieben. Der Capture wird in der Regel nach dem Warenversand oder der Leistungserbringung angestoßen, typischerweise durch das ERP-System.
Teilcaptures
Es ist möglich, nur einen Teil des reservierten Betrags einzuziehen (Teilcapture). Dies ist relevant bei Teillieferungen, wenn nicht alle Positionen einer Bestellung gleichzeitig versendet werden.
Beispiel
Die Bestellung wurde im ERP-System geprüft und die Ware ist lieferbereit. Das ERP-System stößt einen Capture über collana pay an. collana pay leitet den Einzug an den PSP weiter und bestätigt den erfolgreichen Capture per Notification.
Refund: Rückerstattung
Der Refund erstattet einen bereits eingezogenen Betrag über den PSP an den Kunden zurück. Refunds können vollständig oder als Teilrefund erfolgen.
Teilrefunds
Bei Teilretouren oder anteiligen Gutschriften kann ein Teilrefund für einen Teilbetrag der ursprünglichen Zahlung ausgelöst werden.
Beispiel
Der Kunde schickt die erhaltene Ware zurück. Nach Eingang und Prüfung der Retoure stößt das ERP-System einen Refund über collana pay an. collana pay veranlasst die Rückerstattung beim PSP und bestätigt den erfolgreichen Refund per Notification.
Void: Stornierung
Der Void (auch: Cancel, Reversal) storniert eine offene Reservierung, bevor ein Capture erfolgt ist. Der geblockte Betrag wird auf dem Zahlungsmittel des Kunden freigegeben.
Typische Anwendungsfälle sind:
- Auftragslöschung: Der Auftrag wird vor dem Versand storniert
- Teilstorno: Einzelne Positionen werden vor dem Capture entfernt
| Ein Void ist nur möglich, solange der reservierte Betrag noch nicht eingezogen wurde. Nach einem Capture muss stattdessen ein Refund verwendet werden. |
Automatisierung im ERP
Die nachgelagerten Zahlungsprozesse (Capture, Refund, Void) können im ERP-System automatisiert werden, beispielsweise automatische Captures bei Buchung oder Freigabe, automatische Refunds bei Gutschriften oder automatische Voids bei Auftragslöschungen.