Dokumentation

Es gibt zwei Wege, eine Reservierung über die API bezahlen zu lassen. Welcher möglich ist, hängt vom Zahlungsanbieter der Umgebung ab. Diese Seite beschreibt beide Wege, die erlaubten Werte für method und die Bedeutung der Fehlermeldungen.

Weg 1: der Zahlungslink (funktioniert mit jedem Anbieter)

Ein erfolgreicher booking/add liefert neben der Reservierungsnummer ein Feld payment_link zurück, sobald das Zahlungsmodul aktiv ist:

https://<jouw-omgeving>/front?mod=payments&booknumber=1234

Schicken Sie den Besucher auf diesen Link. Er landet auf der Zahlungsseite von i-Reserve, wählt dort seine Zahlungsart und wird zum Anbieter weitergeleitet. Das funktioniert mit jedem in der Umgebung eingerichteten Zahlungsanbieter, und Sie müssen kein eigenes Zahlungsformular bauen. Für die meisten Integrationen ist das der richtige Weg.

Weg 2: der Checkout-Aufruf (eingeschränkt verfügbar)

Wenn Sie das Zahlungsformular selbst bauen wollen, können Sie die Felder des Anbieters abrufen:

POST api/rest/payment/booking
{
  "booking_id": 1234,
  "method": "BUCKAROO"
}

In Version 2 der API steht die Reservierungsnummer im Pfad: POST api/rest/v2/payment/booking/1234/checkout, mit nur {"method": "BUCKAROO"} im Body. Für eine Rechnung funktioniert payment/invoice genauso.

Achtung: dieser Aufruf ist nicht für jeden Anbieter implementiert — siehe die Spalte Implementiert in der Tabelle unten. Anbieter ohne Implementierung antworten mit {"message": "Not implemented"}. Bekommen Sie das zurück, ist Ihr Aufruf nicht falsch: dieser Anbieter hat schlicht keinen Checkout über die API. Nehmen Sie dann Weg 1. Da Ingenico und Ogone schrittweise eingestellt werden, ist in der Praxis Buckaroo der Anbieter, den Sie für diesen Weg wählen.

Erlaubte Werte für method

Der Wert ist der Name des Zahlungsanbieters, nicht der einer Zahlungsart wie iDEAL oder Bancontact. Welche Zahlungsarten der Kunde zu sehen bekommt, entscheidet der Anbieter in seinem eigenen Checkout. Der Wert ist nicht case-sensitiv.

methodZahlungsanbieterImplementiertAnmerkung
INGENICOIngenico (Worldline)JaWird schrittweise eingestellt
OGONEAlias für Ingenico, der frühere Name OgoneJaWird schrittweise eingestellt
BUCKAROOBuckarooJa 
MOLLIEMollieNeinZahlungslink verwenden (Weg 1)
CARDGATECardGateNeinZahlungslink verwenden (Weg 1)
STRIPEStripeNeinZahlungslink verwenden (Weg 1)
PAYDOTPay. (früher Pay.nl)NeinZahlungslink verwenden (Weg 1)

Beachten Sie, dass Pay. als PAYDOT aufgerufen wird. PAYNL und PAY.NL erkennt i-Reserve nicht.

Zahlungsarten, die i-Reserve selbst verwaltet — bar, Kartenterminal, PayPal, Mehrfachkarte und Zahlung auf Rechnung — haben keinen Online-Checkout und lassen sich mit diesem Aufruf nicht starten.

method oder pay_id

  • method — im Normalfall diesen Weg nehmen. i-Reserve sucht selbst die erste aktive Zahlungseinstellung dieses Anbieters, innerhalb der Lizenz, zu der die Reservierung gehört.
  • pay_id — die Nummer einer bestimmten Zahlungseinstellung, zu finden unter Konfiguration > Module > Zahlungseinstellungen. Nur verwenden, wenn Sie mehrere Einstellungen desselben Anbieters haben und genau wissen, welchen Checkout Sie wollen.

Enthält die Anfrage eine pay_id größer als 0, wird method ignoriert. Lassen Sie pay_id also weg oder auf 0, solange Sie mit method arbeiten.

Fehlermeldungen

CodeMeldungBedeutung
200{"message": "Not implemented"}Dieser Anbieter hat keinen Checkout über die API. Verwenden Sie den Zahlungslink aus booking/add.
412No valid method could be foundDie angegebene method steht nicht in der Tabelle oben. Prüfen Sie die Schreibweise.
404Cannot find payment config for method [X]Die method ist gültig, aber in dieser Umgebung gibt es überhaupt keine Zahlungseinstellung für diesen Anbieter. Existiert die Einstellung, ist aber unvollständig ausgefüllt, erhalten Sie diese Meldung nicht.
412No valid booking_id could be foundDie Anfrage enthält keine Reservierungsnummer.
404Booking id supplied but not foundDie angegebene Reservierungsnummer existiert nicht.
412The invoice is not finalNur eine endgültige Rechnung kann bezahlt werden.