Pre-Register Reservation Endpoint
Overview
The Pre-Register Reservation endpoint allows clients to create a pre-booking for a reservation. This can include setting up guest details, selecting booking dates, and configuring extra services or options. Using this endpoint, the system will reserve the specified accommodation details temporarily, returning pricing and unit information.
Endpoint
POST /api/pre-register-reservation
Request Body Parameters
The request payload requires details about the booking, including the accommodation unit, guest information, stay dates, and any optional services. The model for the request is structured as follows:
BookingModel Fields
| Field |
Type |
Required |
Description |
| transactionId |
string |
No |
Unique identifier for the transaction. If omitted, a new transaction ID will be generated. |
| houseID |
integer |
Yes |
ID of the house to be booked. |
| startDate |
string |
Yes |
Start date of the booking in ISO 8601 format. |
| endDate |
string |
Yes |
End date of the booking in ISO 8601 format. |
| child0002 |
integer |
No |
Number of children aged 0-2 years. |
| child0304 |
integer |
No |
Number of children aged 3-4 years. |
| child0512 |
integer |
No |
Number of children aged 5-12 years. |
| child1317 |
integer |
No |
Number of children aged 13-17 years. |
| adults |
integer |
No |
Number of adults. |
| animalNr |
integer |
No |
Number of animals/pets. |
| countryCode |
string |
No |
Country code of the guest. |
| language |
string |
No |
Preferred language for communication. Options: EN, DE, NL, etc. |
| firstname |
string |
No |
Guest’s first name. |
| insertion |
string |
No |
Additional name insertion (if applicable). |
| lastName |
string |
Yes |
Guest’s last name. |
| address |
string |
Yes |
Address of the guest. |
| houseNr |
string |
Yes |
House number of the address. |
| zipCode |
string |
Yes |
Postal code of the address. |
| city |
string |
Yes |
City of the address. |
| email |
string |
Yes |
Email of the guest. |
| phoneNumber |
string |
Yes |
Phone number of the guest. |
| mobilePhone |
string |
No |
Mobile phone number of the guest. |
| faxNumber |
string |
No |
Fax number of the guest. |
| birthDate |
string |
Yes |
Birthdate of the guest in ISO 8601 format. |
| cancelInsurance |
boolean |
No |
Indicates if cancellation insurance is selected. |
| extraStruct |
Array[BookingExtraStruct] |
No |
List of extra services or options. |
| remark |
string |
No |
Additional remarks for the booking. |
| gender |
string |
No |
Gender of the guest. Options: M, F, C. |
| houseUnitId |
integer |
No |
Specific unit ID within the house (if applicable). |
| voucherCode |
string |
No |
Promotional or discount voucher code. |
| reasonOfStay |
integer |
No |
Reason code for the stay (e.g., business, leisure). |
| Field |
Type |
Required |
Description |
| extraId |
integer |
No |
ID of the extra service. |
| extraNumber |
integer |
No |
Quantity of the extra service. |
| extraDays |
integer |
No |
Number of days for the extra service. |
| days |
Array[string] |
No |
Specific dates for the extra service in ISO 8601 format. |
Response Body Parameters
Upon success, the endpoint returns details about the pre-booking, including pricing and payment options.
PreBookingResult Fields
| Field |
Type |
Description |
| transactionId |
string |
The unique transaction ID for the pre-booking. |
| priceSpecifications |
Array[PriceItemSpecification] |
List of pricing details, broken down by item or service. |
| paymentBookingType |
string |
Type of booking payment. Options: Normal, EarlyBooking, LastMinute. |
| fullPayAmount |
number |
Total amount to pay for the booking. |
| firstPayAmount |
number |
Initial deposit required. |
| cancellationFundPossible |
boolean |
Indicates if a cancellation fund is available. |
| cancellationFund |
number |
Amount for cancellation coverage, if applicable. |
| houseUnits |
Array[HouseUnitInfo] |
Information about available units for this booking. |
PriceItemSpecification
| Field |
Type |
Description |
| itemName |
string |
Name of the item/service. |
| itemValue |
string |
Value or cost of the item/service. |
| extrainfo |
string |
Additional information about the item/service. |
| group |
string |
Payment group. Options: PayInAdvance, Deposit, PayAtLocation, Total. |
| isHeader |
boolean |
Indicates if this is a header item. |
| itemType |
string |
Type of item. Options: Normal, Discount. |
HouseUnitInfo
| Field |
Type |
Description |
| id |
integer |
ID of the house unit. |
| allowPets |
boolean |
Indicates if pets are allowed. |
| number |
string |
Unit number within the house. |
| preferenceIds |
Array[integer] |
IDs of specific preferences for the unit. |
Example Request
{
"transactionId": "string",
"houseID": 123,
"startDate": "2024-11-14T21:02:25.069Z",
"endDate": "2024-11-20T21:02:25.069Z",
"adults": 2,
"countryCode": "NL",
"language": "EN",
"firstname": "John",
"lastName": "Doe",
"address": "Main Street",
"houseNr": "10",
"zipCode": "12345",
"city": "Amsterdam",
"email": "john.doe@example.com",
"phoneNumber": "+123456789",
"birthDate": "1985-07-20T21:02:25.069Z"
}
Example Response
{
"transactionId": "string",
"priceSpecifications": [
{
"itemName": "Accommodation",
"itemValue": "300",
"extrainfo": "Special offer",
"group": "Total",
"isHeader": true,
"itemType": "Normal"
}
],
"paymentBookingType": "Normal",
"fullPayAmount": 300,
"firstPayAmount": 100,
"cancellationFundPossible": true,
"cancellationFund": 10,
"houseUnits": [
{
"id": 1,
"allowPets": true,
"number": "101",
"preferenceIds": [5, 7]
}
]
}
Error Handling
- 400 Bad Request: Invalid input data (e.g., missing required fields).
- 404 Not Found: House or unit ID does not exist.
- 500 Internal Server Error: Server error occurred.