Booking Revenue Distributions
This endpoint is experimental. The way it works might change and breaking changes are possible.
Overview
This resource represents the consolidated Revenue Distribution for a Booking. Each Booking has at most one Booking Revenue Distribution record which combines three distribution types — acquisition, owner, and property_manager — into a single JSON structure.
The revenue_distribution attribute contains a hierarchical breakdown of how the booking's revenue is distributed among parties. Each distribution type has a total_amount_in_cents, currency, and a nested items array representing individual line items (rent, fees, taxes, commissions, etc.) with their own amounts and metadata.
Revenue distributions are currently only available for bookings in EUR currency.
Parameters
- OAuth Scopes:
- bookings_read / bookings_write / bookings_write_owned
| Name | Type | Read/Write | Description |
|---|---|---|---|
| account | Integer | Read | Account's ID related to the Booking Revenue Distribution |
| booking | Integer | Read | Booking's ID related to the Booking Revenue Distribution |
| rental | Integer | Read | Rental's ID related to the Booking Revenue Distribution |
| id | String | Read | Booking Revenue Distribution's id (UUID). |
| amount_in_cents | Integer | Read | Total revenue distribution amount in cents. |
| currency | String | Read | Currency code (e.g. "EUR"). |
| revenue_distribution | Object | Read | Complete hierarchical revenue distribution breakdown containing acquisition, owner, and property_manager sub-objects. See Revenue Distribution Structure for details. |
| created_at | Time | Read | Booking Revenue Distribution's create time. |
| updated_at | Time | Read | Booking Revenue Distribution's update time. |
Revenue Distribution Structure
The revenue_distribution object contains three top-level keys:
| Key | Description |
|---|---|
acquisition | Costs associated with acquiring the booking (OTA commissions, traveller fees, taxes, split payment fees). |
owner | Revenue allocated to the property owner (rent share, booking fees). |
property_manager | Revenue allocated to the property manager (rent share, booking fees, owner fees). |
Each top-level key contains:
| Name | Type | Description |
|---|---|---|
| total_amount_in_cents | Integer | Total amount for this distribution type in cents. |
| currency | String | Currency code. |
| items | Array | Nested array of line items, each with name, category, amount_in_cents, and optional metadata fields. Items can contain nested items for further breakdown. |
Common item fields
| Name | Type | Description |
|---|---|---|
| name | String | Human-readable name of the line item. |
| category | String | Category identifier (e.g. rent, ota_commission, bookings_fee, traveller_fee, split_payment_fee, taxes, vat, withheld_city_tax, commissioned_rent, gross_amount, acquisition_cost). |
| amount_in_cents | Integer | Amount in cents for this line item. |
| items | Array | Nested sub-items providing further breakdown. |
Optional metadata fields
Depending on the item's category, additional metadata fields may be present:
| Name | Applicable categories | Type | Description |
|---|---|---|---|
| percentage | ota_commission, rent, bookings_fee, traveller_fee, split_payment_fee, vat | String | Percentage applied. |
| ota_name | ota_commission | String | Name of the OTA (e.g. "Airbnb"). |
| bookings_fee_id | bookings_fee, withheld_city_tax | Integer | Associated Bookings Fee's ID. |
| vat_percentage | vat | String | VAT percentage applied. |
| source | vat | String | Source of the VAT (e.g. "travelers_fees", "split_payment"). |
| tax | bookings_fee (owner/property_manager) | Boolean | Whether the fee is a tax. |
| upsell | bookings_fee (owner/property_manager) | Boolean | Whether the fee is an upsell. |
| owner_fee_name | owners_fee | String | Name of the owner fee. |
| split_payment_fee_amount_to_owner_in_cents | split_payment_fee | Integer | Split payment fee amount allocated to the owner. |
| split_payment_fee_amount_to_property_manager_in_cents | split_payment_fee | Integer | Split payment fee amount allocated to the property manager. |
| traveller_fee_vat_amount_in_cents | taxes | Integer | VAT amount on traveller fees. |
| split_payment_vat_amount_in_cents | taxes | Integer | VAT amount on split payment fees. |
| split_payment_vat_to_owner_amount_in_cents | taxes | Integer | Split payment VAT allocated to the owner. |
| split_payment_vat_to_property_manager_amount_in_cents | taxes | Integer | Split payment VAT allocated to the property manager. |
| smily_pay_processing_fees_vat_amount_in_cents | taxes | Integer | VAT on Smily Pay processing fees. |
| cancelation_protection_vat_amount_in_cents | taxes | Integer | VAT on cancelation protection. |
List booking revenue distributions
Based on the OAuth token scopes booking revenue distributions will be limited to a certain range.
| Scope | Read Permissions |
|---|---|
:bookings_write_owned | Display only booking revenue distributions for bookings created by app making the request |
:bookings_read | Display all booking revenue distributions |
:bookings_write | Display all booking revenue distributions |
List all booking revenue distributions for current account(s).
GET /booking_revenue_distributions
- OAuth Scopes:
- bookings_read / bookings_write / bookings_write_owned
{
"links": {
"booking_revenue_distributions.account": "http://www.bookingsync.com/api/v3/accounts/{booking_revenue_distributions.account}",
"booking_revenue_distributions.booking": "http://www.bookingsync.com/api/v3/bookings/{booking_revenue_distributions.booking}",
"booking_revenue_distributions.rental": "http://www.bookingsync.com/api/v3/rentals/{booking_revenue_distributions.rental}"
},
"booking_revenue_distributions": [
{
"links": {
"account": 1,
"booking": 200,
"rental": 50
},
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"amount_in_cents": 120000,
"currency": "EUR",
"revenue_distribution": {
"acquisition": {
"total_amount_in_cents": 24000,
"currency": "EUR",
"items": [
{
"name": "OTA Commission",
"category": "ota_commission",
"amount_in_cents": 18000,
"percentage": "15.0",
"ota_name": "Airbnb",
"items": [
{
"name": "Rent",
"category": "rent",
"amount_in_cents": 15000,
"percentage": "15.0",
"items": []
},
{
"name": "Cleaning Fee",
"category": "bookings_fee",
"amount_in_cents": 3000,
"percentage": "15.0",
"bookings_fee_id": 10,
"items": []
}
]
},
{
"name": "Traveller Fee",
"category": "traveller_fee",
"amount_in_cents": 2000,
"percentage": "2.0",
"items": []
},
{
"name": "Taxes",
"category": "taxes",
"amount_in_cents": 4000,
"traveller_fee_vat_amount_in_cents": 400,
"items": [
{
"name": "VAT",
"category": "vat",
"amount_in_cents": 4000,
"percentage": "20.0",
"vat_percentage": "20.0",
"items": []
}
]
}
]
},
"owner": {
"total_amount_in_cents": 76800,
"currency": "EUR",
"items": [
{
"name": "Rent",
"category": "rent",
"amount_in_cents": 64000,
"percentage": "80.0",
"items": [
{
"name": "Commissioned Rent",
"category": "commissioned_rent",
"amount_in_cents": 64000,
"items": [
{
"name": "Gross Amount",
"category": "gross_amount",
"amount_in_cents": 80000,
"items": []
},
{
"name": "Acquisition Cost",
"category": "acquisition_cost",
"amount_in_cents": -16000,
"items": []
}
]
}
]
},
{
"name": "Cleaning Fee",
"category": "bookings_fee",
"amount_in_cents": 12800,
"tax": false,
"upsell": false,
"bookings_fee_id": 10,
"items": []
}
]
},
"property_manager": {
"total_amount_in_cents": 19200,
"currency": "EUR",
"items": [
{
"name": "Rent",
"category": "rent",
"amount_in_cents": 16000,
"percentage": "20.0",
"items": [
{
"name": "Commissioned Rent",
"category": "commissioned_rent",
"amount_in_cents": 16000,
"items": [
{
"name": "Gross Amount",
"category": "gross_amount",
"amount_in_cents": 20000,
"items": []
},
{
"name": "Acquisition Cost",
"category": "acquisition_cost",
"amount_in_cents": -4000,
"items": []
}
]
}
]
},
{
"name": "Cleaning Fee",
"category": "bookings_fee",
"amount_in_cents": 3200,
"tax": false,
"upsell": false,
"bookings_fee_id": 10,
"items": []
}
]
}
},
"created_at": "2025-01-20T10:30:00Z",
"updated_at": "2025-01-20T10:30:00Z"
}
],
"meta": {}
}
Get a single booking revenue distribution
Returns a single booking revenue distribution identified by ID.
GET /booking_revenue_distributions/:booking_revenue_distribution_id
- OAuth Scopes:
- bookings_read / bookings_write / bookings_write_owned
{
"links": {
"booking_revenue_distributions.account": "http://www.bookingsync.com/api/v3/accounts/{booking_revenue_distributions.account}",
"booking_revenue_distributions.booking": "http://www.bookingsync.com/api/v3/bookings/{booking_revenue_distributions.booking}",
"booking_revenue_distributions.rental": "http://www.bookingsync.com/api/v3/rentals/{booking_revenue_distributions.rental}"
},
"booking_revenue_distributions": [
{
"links": {
"account": 1,
"booking": 200,
"rental": 50
},
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"amount_in_cents": 120000,
"currency": "EUR",
"revenue_distribution": {
"acquisition": {
"total_amount_in_cents": 24000,
"currency": "EUR",
"items": [
{
"name": "OTA Commission",
"category": "ota_commission",
"amount_in_cents": 18000,
"percentage": "15.0",
"ota_name": "Airbnb",
"items": [
{
"name": "Rent",
"category": "rent",
"amount_in_cents": 15000,
"percentage": "15.0",
"items": []
},
{
"name": "Cleaning Fee",
"category": "bookings_fee",
"amount_in_cents": 3000,
"percentage": "15.0",
"bookings_fee_id": 10,
"items": []
}
]
},
{
"name": "Traveller Fee",
"category": "traveller_fee",
"amount_in_cents": 2000,
"percentage": "2.0",
"items": []
},
{
"name": "Taxes",
"category": "taxes",
"amount_in_cents": 4000,
"traveller_fee_vat_amount_in_cents": 400,
"items": [
{
"name": "VAT",
"category": "vat",
"amount_in_cents": 4000,
"percentage": "20.0",
"vat_percentage": "20.0",
"items": []
}
]
}
]
},
"owner": {
"total_amount_in_cents": 76800,
"currency": "EUR",
"items": [
{
"name": "Rent",
"category": "rent",
"amount_in_cents": 64000,
"percentage": "80.0",
"items": [
{
"name": "Commissioned Rent",
"category": "commissioned_rent",
"amount_in_cents": 64000,
"items": [
{
"name": "Gross Amount",
"category": "gross_amount",
"amount_in_cents": 80000,
"items": []
},
{
"name": "Acquisition Cost",
"category": "acquisition_cost",
"amount_in_cents": -16000,
"items": []
}
]
}
]
},
{
"name": "Cleaning Fee",
"category": "bookings_fee",
"amount_in_cents": 12800,
"tax": false,
"upsell": false,
"bookings_fee_id": 10,
"items": []
}
]
},
"property_manager": {
"total_amount_in_cents": 19200,
"currency": "EUR",
"items": [
{
"name": "Rent",
"category": "rent",
"amount_in_cents": 16000,
"percentage": "20.0",
"items": [
{
"name": "Commissioned Rent",
"category": "commissioned_rent",
"amount_in_cents": 16000,
"items": [
{
"name": "Gross Amount",
"category": "gross_amount",
"amount_in_cents": 20000,
"items": []
},
{
"name": "Acquisition Cost",
"category": "acquisition_cost",
"amount_in_cents": -4000,
"items": []
}
]
}
]
},
{
"name": "Cleaning Fee",
"category": "bookings_fee",
"amount_in_cents": 3200,
"tax": false,
"upsell": false,
"bookings_fee_id": 10,
"items": []
}
]
}
},
"created_at": "2025-01-20T10:30:00Z",
"updated_at": "2025-01-20T10:30:00Z"
}
],
"meta": {}
}