Extra costs
The extra for your apartment
Extra cost basics
- Extra costs are a crucial part of the booking experience of the traveller, so please make sure to follow the guidance
- To update or delete extra costs, you need to push the entire extra cost object, updates for a single extra cost are not possible
- To delete all extra costs you need to push an empty object
How to use extra cost
Holidu supports a long list of possible extra costs to offer to the traveler.
You have multiple options to configure extra cost:
- Define how it should be calculated - for instance per night, per stay or per person
- Make it mandatory or selectable for the traveler
- Choose your preferred time of payment - for instance on site, on booking or with the first payment rate
The extra cost object
Parameter | Type | Required | Usage |
---|---|---|---|
"id" | string | YES | Unique identifier of the extra cost which we will send you back together with the booking. |
"name" | string | YES | Name of the extra costs we show to the customer. We only allow a defined subset of names that you can see here below |
"basisOfCalculation" | string | YES | Defining how the cost of the extra cost will be calculated. |
"maximumCount" | int32 | No | Defining how many units of the extra is maximum available for the customer. |
"type" | string | YES | Defining if the extra cost is mandatory, selectable or based on usage. |
"paymentTime" | string | YES | The point in time the extra cost will be paid, which does not influence the way a extraCost will be displayed though |
"price" | object | YES | The price object, consistent of the type , the amount and currency |
"price"."type" | string | YES | Fixed amount or percentage of bare rental price |
"price"."amount" | number | YES | Amount |
"price"."currency" | string | YES* | Currency in which the extra costs will be charged *Required when price.type is fixed |
"condition" | object | Conditions under while extra cost should be applicable | |
"condition"."seasonApplicable" | object | In which season should the extra cost be applicable | |
"condition"."seasonApplicable"."onlyApplicableFrom" | date | YES* | Start of applicable season *Required if "seasonApplicable" object is pushed |
"condition"."seasonApplicable"."onlyApplicableUntil" | date | YES* | End of applicable season *Required if "seasonApplicable" object is pushed |
"condition"."numberOfNights" | object | For which range of nights should the extra cost be applicable | |
"condition"."numberOfNights"."fromStayLengthInNights" | date | YES* | Minimum nights of stay for the extra cost to be applicable *Required if "numberOfNights" object is pushed |
"condition"."numberOfNights"."toStayLengthInNights" | date | YES* | Maximum nights of stay for the extra cost to be applicable *Required if "numberOfNights" object is pushed |
List of allowed extra cost names
name | Usage |
---|---|
"FINAL_CLEANING" | Cost of final cleaning |
"EXTRA_CLEANING" | Cost of extra cleaning (during stay) |
"REFUNDABLE_SECURITY_DEPOSIT" | Security deposit which is refunded to the guest after check-out |
"TOURIST_OR_CITY_TAX" | Tourist or city tax |
"VAT_OF_RENTAL_PRICE" | Value-added tax applied on the rental price |
"BOOKING_FEE" | Booking Fee |
"SERVICE_COSTS" | Additional fees applied for services to enhance the traveler experience. |
"PET" | Cost of bringing a pet |
"TRAVEL_INSURANCE" | Travel Insurance |
"TOWEL" | Cost of a towel |
"BEDLINEN" | Cost of Bedlinen |
"TOWEL_BEDLINEN_PACKAGE" | Cost of towel and bed linen |
"BABY_BED" | Cost of a baby bed |
"BABY_CHAIR" | Cost of a baby chair |
"BABY_COT" | Cost of a baby cot |
"BABY_BUGGY" | Cost of a baby buggy |
"HEATING" | Heating usage cost |
"AIRCONDITION" | Air conditioning usage cost |
"FIREWOOD" | Cost for firewood |
"ELECTRICITY" | Electricity usage cost |
"WATER" | Cost for Water usage |
"SAUNA" | Sauna usage cost |
"POOL" | Pool usage cost |
"WASHING_MACHINE" | Cost of using the Washing machine |
"INTERNET" | Cost of internet usage |
"PARKING" | Cost for parking |
"AIRPORT_SHUTTLE" | Airport shuttle cost |
Basis of calculation
basisOfCalculation | Usage |
---|---|
"PER_STAY" | The cost will be applied once per stay |
"PER_PERSON_PER_NIGHT" | The cost will be applied per person times the nights of the stay |
"PER_NIGHT" | The cost will be applied per night, independent on persons |
"PER_PERSON" | The cost will be applied per person, independent on the length of the stay |
"PER_UNIT" | The cost will be applied to the number of units. If the type of the extra cost is marked as SELECTABLE, the traveller can select the amount of units. |
"PER_UNIT_PER_NIGHT" | The cost will be applied to the number of units times the number of days of the stay. If the type of the extra cost is marked as SELECTABLE, the traveller can select the amount of units. |
Types of extra costs
type | Usage |
---|---|
"MANDATORY" | Cost of this type will always be added |
"SELECTABLE" | The customer can decide if the extra cost should be applied |
"ON_USAGE" | The cost will be applied base on usage for example electricity or water based on consumption, it will always to be paid "On site" |
Payment time
paymentTime | Usage |
---|---|
"ON_BOOKING" | The extra cost is paid on booking |
"WITH_RATES" | DO NOT USE - will be deprecated |
"ONSITE" | The extra cost is paid on spot, extra costs will be excluded from the payment rates |
Examples
Final Cleaning mandatory on booking
Cost to of Final Cleaning per stay paid on booking is only applied during high season
{
"name": "FINAL_CLEANING",
"basisOfCalculation": "PER_STAY",
"type": "MANDATORY",
"paymentTime": "ON_BOOKING",
"price": {
"type": "FIXED",
"amount": 100,
"currency": "EUR"
},
"condition": {
"seasonApplicable": {
"onlyApplicableFrom": "2024-05-01",
"onlyApplicableUntil": "2024-09-30"
}
},
"id": "111"
Parameter | Usage |
---|---|
"id" | "111" |
"name" | "FINAL_CLEANING" |
"basisOfCalculation" | "PER_STAY" |
"type" | "MANDATORY" |
"paymentTime" | "ON_BOOKING" |
"price"."type" | "FIXED" |
"price"."amount" | 100 |
"price"."currency" | EUR |
"condition"."seasonApplicable"."onlyApplicableFrom" | "2024-05-01" |
"condition"."seasonApplicable"."onlyApplicableUntil" | "2024-09-30" |
Bedlinen selectable for all persons
Cost for bedlinen set is 10€ paid on booking per person and a maximum of 2 sets can be selected (for instance 1 at check-in and 1 extra set to change it half of the stay).
The cost will be applied to the number of persons present in the booking.
[
{
"id": "YYY",
"name": "BEDLINEN",
"basisOfCalculation": "PER_PERSON_PER_NIGHT",
"maximumCount": 2,
"type": "SELECTABLE",
"paymentTime": "ON_BOOKING",
"price": {
"type": "FIXED"
"amount": 10,
"currency": "EUR",
}
}
]
Parameter | Usage |
---|---|
"id" | "YYY" |
"name" | "BEDLINEN" |
"basisOfCalculation" | "PER_PERSON_PER_NIGHT" |
"maximumCount" | 2 |
"type" | "SELECTABLE" |
"paymentTime" | "ON_BOOKING" |
"price"."type" | "FIXED" |
"price"."amount" | 10 |
"price"."currency" | "EUR" |
Bedlinen selectable per unit
Cost for bedlinen set is 10€ per unit and a maximum of 2 sets can be selected (guests can select the amount of sets they need). Tt will be available to select only if number of nights is between 1 and 6.
{
"name": "BEDLINEN",
"basisOfCalculation": "PER_UNIT",
"type": "SELECTABLE",
"paymentTime": "ONSITE",
"price": {
"type": "FIXED",
"amount": 10,
"currency": "EUR"
},
"condition": {
"numberOfNights": {
"fromStayLengthInNights": 1,
"toStayLengthInNights": 6
}
},
"id": "222",
"maximumCount": 2
},
Field | Usage |
---|---|
"id" | "222" |
"name" | "BEDLINEN" |
"basisOfCalculation" | "PER_UNIT" |
"maximumCount" | 2 |
"type" | "SELECTABLE" |
"paymentTime" | "ONSITE" |
"price"."type" | "FIXED" |
"price"."amount" | 10 |
"price"."currency" | "EUR" |
"condition"."numberOfNights"."fromStayLengthInNights" | 1 |
"condition"."numberOfNights"."toStayLengthInNights" | 6 |
Refundable security deposit
Cost for refundable security deposit 100€ paid on site:
[
{
"id": ZZZ",
"name": "REFUNDABLE_SECURITY_DEPOSIT",
"basisOfCalculation": "PER_UNIT",
"maximumCount": 1,
"type": "MANDATORY",
"paymentTime": "ONSITE",
"price": {
"type": "FIXED"
"amount": 100,
"currency": "EUR",
}
}
]
Field | Usage |
---|---|
"id" | "ZZZ" |
"name" | "REFUNDABLE_SECURITY_DEPOSIT" |
"basisOfCalculation" | "PER_UNIT" |
"maximumCount" | 1 |
"type" | "MANDATORY" |
"paymentTime" | "ONSITE" |
"price.type" | "FIXED" |
"price"."amount" | 100 |
"price"."currency" | "EUR" |
️ Be aware
Extras to be paid for extra guest or for a short stay are not supported by the extra cost endpoint. Our pricing model supports defining prices based on the number of persons and for different length of stay Length of stay section.
If a
condition
object is pushed withseasonApplicable
object, be aware thatonlyApplicableFrom
andonlyApplicableUntil
cannot be null.If a
condition
object is pushed withnumberOfNights
object, be aware thatfromStayLengthInNights
andtoStayLengthInNights
cannot be null.
Special treated extra costs
There are certain extra costs that are treated special on Holidu
"REFUNDABLE_SECURITY_DEPOSIT"
: It is always excluded from total collected price and from payment rates. Also deposit cannot be pushed with a percentage price, only with fixed price."TOURIST_OR_CITY_TAX"
: PaymentTime should be"ONSITE"
"VAT_OF_RENTAL_PRICE"
For the above extra costs the type will be ignored and we consider them all as
"MANDATORY"
SERVICE_COSTS
: This cost type should only be used in exceptional cases. Please ensure to discuss and review the usage of this type of extra costs with our technical support team, as costs under this label will draw extra attention on our side as it is often used to exploit booking costs and commissionable amounts.
Updated about 1 month ago