Welche Zahlungsmethoden kann ich über die API starten?
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.
| method | Zahlungsanbieter | Implementiert | Anmerkung |
|---|---|---|---|
INGENICO | Ingenico (Worldline) | Ja | Wird schrittweise eingestellt |
OGONE | Alias für Ingenico, der frühere Name Ogone | Ja | Wird schrittweise eingestellt |
BUCKAROO | Buckaroo | Ja | |
MOLLIE | Mollie | Nein | Zahlungslink verwenden (Weg 1) |
CARDGATE | CardGate | Nein | Zahlungslink verwenden (Weg 1) |
STRIPE | Stripe | Nein | Zahlungslink verwenden (Weg 1) |
PAYDOT | Pay. (früher Pay.nl) | Nein | Zahlungslink 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
| Code | Meldung | Bedeutung |
|---|---|---|
| 200 | {"message": "Not implemented"} | Dieser Anbieter hat keinen Checkout über die API. Verwenden Sie den Zahlungslink aus booking/add. |
| 412 | No valid method could be found | Die angegebene method steht nicht in der Tabelle oben. Prüfen Sie die Schreibweise. |
| 404 | Cannot 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. |
| 412 | No valid booking_id could be found | Die Anfrage enthält keine Reservierungsnummer. |
| 404 | Booking id supplied but not found | Die angegebene Reservierungsnummer existiert nicht. |
| 412 | The invoice is not final | Nur eine endgültige Rechnung kann bezahlt werden. |






