Welke betaalmethodes kan ik via de API starten?
Er zijn twee manieren om een reservering te laten betalen via de API. Welke je kunt gebruiken, hangt af van de betaalprovider van de omgeving. Deze pagina beschrijft beide routes, de toegestane waarden voor method, en wat de foutmeldingen betekenen.
Route 1: de betaallink (werkt met elke provider)
Een geslaagde booking/add geeft naast het reserveringsnummer een veld payment_link terug, zodra de betaalmodule actief is:
https://<jouw-omgeving>/front?mod=payments&booknumber=1234
Stuur de bezoeker naar die link. Hij komt dan op de betaalpagina van i-Reserve, kiest daar zijn betaalwijze en wordt doorgestuurd naar de provider. Dit werkt met iedere betaalprovider die in de omgeving is ingericht, en je hoeft zelf geen betaalformulier te bouwen. Voor de meeste integraties is dit de route.
Route 2: de checkout-aanroep (beperkt beschikbaar)
Wil je het betaalformulier zelf bouwen, dan kun je de velden van de provider opvragen:
POST api/rest/payment/booking
{
"booking_id": 1234,
"method": "BUCKAROO"
}In versie 2 van de API staat het reserveringsnummer in het pad: POST api/rest/v2/payment/booking/1234/checkout, met alleen {"method": "BUCKAROO"} in de body. Voor een factuur werkt payment/invoice op dezelfde manier.
Let op: deze aanroep is niet voor alle providers geïmplementeerd — zie de kolom Implemented in de tabel hieronder. Providers zonder implementatie antwoorden met {"message": "Not implemented"}. Krijg je dat terug, dan is de aanroep niet fout: die provider heeft simpelweg geen checkout via de API. Gebruik dan route 1. Omdat Ingenico en Ogone worden uitgefaseerd, is Buckaroo in de praktijk de provider die je voor deze route kiest.
Toegestane waarden voor method
De waarde is de naam van de betaalprovider, niet van een betaalwijze als iDEAL of Bancontact. Welke betaalwijzen de klant te zien krijgt, bepaalt de provider in zijn eigen checkout. De waarde is niet hoofdlettergevoelig.
| method | Betaalprovider | Implemented | Opmerking |
|---|---|---|---|
INGENICO | Ingenico (Worldline) | Ja | Wordt uitgefaseerd |
OGONE | Alias voor Ingenico, de oude naam Ogone | Ja | Wordt uitgefaseerd |
BUCKAROO | Buckaroo | Ja | |
MOLLIE | Mollie | Nee | Gebruik de betaallink (route 1) |
CARDGATE | CardGate | Nee | Gebruik de betaallink (route 1) |
STRIPE | Stripe | Nee | Gebruik de betaallink (route 1) |
PAYDOT | Pay. (voorheen Pay.nl) | Nee | Gebruik de betaallink (route 1) |
Let op dat Pay. wordt aangeroepen als PAYDOT. De schrijfwijzen PAYNL en PAY.NL herkent i-Reserve niet.
Betaalwijzen die i-Reserve zelf administreert — contant, pin, PayPal, knipkaart en betalen op rekening — hebben geen online checkout en start je dus niet met deze aanroep.
method of pay_id
- method — gebruik dit normaal gesproken. i-Reserve zoekt zelf de eerste actieve betaalinstelling van die provider, binnen de licentie waar de reservering onder valt.
- pay_id — het nummer van één specifieke betaalinstelling, te vinden onder Configuratie > Modules > Betaalinstellingen. Gebruik dit alleen als je meerdere instellingen van dezelfde provider hebt en precies weet welke checkout je wilt.
Staat er een pay_id groter dan 0 in het verzoek, dan wordt method genegeerd. Laat pay_id dus weg, of op 0, zolang je met method werkt.
Foutmeldingen
| Code | Melding | Betekenis |
|---|---|---|
| 200 | {"message": "Not implemented"} | Deze provider kent geen checkout via de API. Gebruik de betaallink uit booking/add. |
| 412 | No valid method could be found | De opgegeven method staat niet in de tabel hierboven. Controleer de schrijfwijze. |
| 404 | Cannot find payment config for method [X] | De method is geldig, maar er staat in deze omgeving geen betaalinstelling voor die provider. Is de instelling er wel maar onvolledig ingevuld, dan krijg je deze melding niet. |
| 412 | No valid booking_id could be found | Er staat geen reserveringsnummer in het verzoek. |
| 404 | Booking id supplied but not found | Het opgegeven reserveringsnummer bestaat niet. |
| 412 | The invoice is not final | Alleen een definitieve factuur kan betaald worden. |






