Payment configuration
Let's talk about payment rates
Payment Basics
- Configure payment rates and methods per apartment.
- If you have the same rates and payment methods for each apartment, they can be configured on your account level.
- To update the payment rates or payment methods, you need to push the entire object; partial updates are not possible.
- If Holidu handles the payments, then this endpoint should not be developed!
Field | Type | Required | Usage |
---|---|---|---|
paymentMethods | string | A list of supported payment methods valid for booking. At least one payment method must be provided. | |
paymentRates | object | YES | |
paymentRates.ratePaidOnBookingInPercentage | number | YES | A percentage of the total amount that must be paid on booking. |
paymentRates.ratesPerDate | object | YES | |
paymentRates.ratesPerDate.daysBeforeArrival | number | YES | The limit of the number of days before arrival until when a specified percentage should be paid. Example: Until 7 days before arrival, 70% should be paid. |
paymentRates.ratesPerDate.rateAmountInPercentage | int | YES | Percentage of booking cost that should be paid. |
List of Supported payment methods:
Payment methods | ||
---|---|---|
BANK_TRANSFER | ||
CREDIT_CARD | ||
PAYPAL | ||
CHEQUE_VACANCES | ||
IDEAL | ||
INVOICE |
The customer expects you to handle the payments. The customer will select one of those payment methods.
Examples
{
"paymentMethods": [
"CREDIT_CARD",
"BANK_TRANSFER"
],
"paymentRates": {
"ratesPerDate": [
{
"daysBeforeArrival": 30,
"rateAmountInPercentage": 50
},
{
"daysBeforeArrival": 7,
"rateAmountInPercentage": 20
}
],
"ratePaidOnBookingInPercentage": 30
}
}
In this sample code, you can see that the supported payment methods for this apartment are:
- CREDIT_CARD & BANK_TRANSFER
The payment rates in the sample code are calculated as follows:
- At the time of booking, the amount to be paid is 30%.
- 30 days before check-in, the amount to be paid is 50%.
- 7 days before check-in, the amount to be paid is 20%.
Use case 1: The total amount of the booking is 1000€, and the guest booked 50 days before check-in. Then, at the time of booking, the guest has to pay 300€ (30%), 500€ (50%) 30 days before the check-in day, and the rest 200€ (20%) 7 days before the check-in day.
Use case 2: The total amount of the booking is 1000€, and the guest booked 14 days before check-in. Then, at the time of booking, the guest has to pay 800€ (30% + 50%), and the rest 200€ (20%) 7 days before the check-in day. Similarly, if the booking happens 5 days before check-in, then the full amount of 1000€ (30% + 50% + 20%) should be paid at the time of booking.
To remember:
The accumulative sum of configured payment rates can not exceed a hundred percent. The request to the API would fail in that situation.
Using rateId
with Payment Configuration
rateId
with Payment Configurationa) Get Payment Configuration (GET /v2/apartments/payment-configuration
)
You can retrieve the payment configuration specific to a rate:
Example Request:
GET /v2/apartments/payment-configuration?providerApartmentId=ABC123&rateId=STANDARD
Notes:
- If rateId is provided, you get payment settings for that specific rate.
- Without rateId, you get the default configuration.
b) Delete Payment Configuration (DELETE /v2/apartments/payment-configuration
)
You can delete payment configurations for a specific rate:
Example Request:
DELETE /v2/apartments/payment-configuration?providerApartmentId=ABC123&rateId=NON_REFUNDABLE
c) Update Payment Configuration (POST /v2/apartments/payment-configuration
)
When creating or updating payment configuration, specify the rateId to target the correct rate:
Example Request Body:
{
"rateId": "NON_REFUNDABLE",
"paymentMethods": ["credit_card", "paypal"],
"paymentRates": [
{
"paymentMethod": "credit_card",
"downPayment": 20,
"fullPaymentBeforeArrival": true
}
]
}
Updated 15 days ago