This section contains sample messages illustrating how to interact with the Deposit API.
To read the deposit policy of a property, a GET of /depositPolicy for the property will return it:
GET https://services.expediapartnercentral.com/properties/12933870/depositPolicy
Accept: application/json
{
"entity": {
"defaultPolicy": {
"payments": [
{
"type": "PERCENT",
"value": 10,
"when": {
"type": "UPON_BOOKING"
}
},
{
"type": "PERCENT",
"value": 40,
"when": {
"type": "DAYS_PRIOR",
"value": 30
}
},
{
"type": "PERCENT",
"value": 25,
"when": {
"type": "DAYS_PRIOR",
"value": 15
}
},
{
"type": "REMAINDER",
"when": {
"type": "UPON_ARRIVAL"
}
}
]
},
"exceptionPolicies": [
{
"description": "Peak Summer Season",
"dateRanges": [
{
"startDate": "2017-06-25",
"endDate": "2017-07-31",
"daysOfWeek": [
"SUN",
"MON",
"TUE",
"WED",
"THU",
"FRI",
"SAT"
]
},
{
"startDate": "2017-08-13",
"endDate": "2017-08-31",
"daysOfWeek": [
"SUN",
"MON",
"TUE",
"WED",
"THU",
"FRI",
"SAT"
]
}
],
"payments": [
{
"type": "PERCENT",
"value": 100,
"when": {
"type": "UPON_BOOKING"
}
}
]
},
{
"description": "Low Season",
"dateRanges": [
{
"startDate": "2017-09-01",
"endDate": "2017-11-30",
"daysOfWeek": [
"SUN",
"FRI",
"SAT"
]
}
],
"payments": [
{
"type": "NIGHT",
"value": 1,
"when": {
"type": "UPON_BOOKING"
}
}
]
}
],
"_links": {
"self": {
"href": "https://services.expediapartnercentral.com/properties/12933870/depositPolicy"
},
"ratePlans": [
{
"href": "https://services.expediapartnercentral.com/properties/12933870/roomTypes/201706774/ratePlans/208503977"
},
{
"href": "https://services.expediapartnercentral.com/properties/12933870/roomTypes/201706774/ratePlans/208504009"
},
{
"href": "https://services.expediapartnercentral.com/properties/12933870/roomTypes/201706774/ratePlans/208537868"
},
{
"href": "https://services.expediapartnercentral.com/properties/12933870/roomTypes/201706639/ratePlans/208503427"
},
{
"href": "https://services.expediapartnercentral.com/properties/12933870/roomTypes/201706639/ratePlans/208511485"
},
{
"href": "https://services.expediapartnercentral.com/properties/12933870/roomTypes/201706639/ratePlans/208511588"
},
{
"href": "https://services.expediapartnercentral.com/properties/12933870/roomTypes/201706639/ratePlans/208537732"
},
{
"href": "https://services.expediapartnercentral.com/properties/12933870/roomTypes/201706639/ratePlans/208537755"
}
]
}
}
}
To setup the default deposit policy of a property, you can provide a policy without any exceptions.
PUT https://services.expediapartnercentral.com/properties/12933870/depositPolicy
Accept: application/json
Content-Type: application/json
{
"defaultPolicy": {
"payments": [
{
"type": "PERCENT",
"value": 50.0,
"when": {
"type": "UPON_BOOKING"
}
},
{
"type": "REMAINDER",
"when": {
"type": "UPON_ARRIVAL"
}
}
]
}
}
This would setup a simply policy that is applicable all the time, where 50% of the payment is asked upfront upon booking and the remainder is collected upon arrival.
The response when successful will only return a 201 Created without a reponse body.
On top of the default policy, the partner can also specify exceptions that are applicable for certain date ranges.
PUT https://services.expediapartnercentral.com/properties/12933870/depositPolicy
Accept: application/json
Content-Type: application/json
{
"defaultPolicy": {
"payments": [
{
"type": "PERCENT",
"value": 50.0,
"when": {
"type": "UPON_BOOKING"
}
},
{
"type": "REMAINDER",
"when": {
"type": "UPON_ARRIVAL"
}
}
]
},
"exceptionPolicies": [
{
"dateRanges": [
{
"startDate": "2017-06-25",
"endDate": "2017-07-31",
"daysOfWeek": [
"SAT",
"SUN"
]
}
],
"description": "Peak Summer Season Weekends",
"payments": [
{
"type": "PERCENT",
"value": 100,
"when": {
"type": "UPON_BOOKING"
}
}
]
}
]
}
In this case, we'd be overriding the default deposit policy for weekends between June 25th and August 31st where 100% of the payment is asked upfront upon booking, instead of the default policy where only half is aksed upon booking and the remainder is collected upon arrival.
The partner can issue a delete statement to prevent the deposit policy from being applied.
DELETE https://services.expediapartnercentral.com/properties/12933870/depositPolicy
Accept: application/json
The response when successful will only return a 204 No Content without a reponse body.
Here's an example of how the Deposit API returns errors to customers. If a partner provides an invalid propertyId:
GET https://services.expediapartnercentral.com/properties/123/depositPolicy
Accept: application/json
An error is returned
{
"errors": [
{
"code": 1000,
"message": "Access denied: your account is not authorized to manage this property."
}
]
}