Skip to main content

Booking Revenue Distributions

Experimental

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

NameTypeRead/WriteDescription
accountIntegerReadAccount's ID related to the Booking Revenue Distribution
bookingIntegerReadBooking's ID related to the Booking Revenue Distribution
rentalIntegerReadRental's ID related to the Booking Revenue Distribution
idStringReadBooking Revenue Distribution's id (UUID).
amount_in_centsIntegerReadTotal revenue distribution amount in cents.
currencyStringReadCurrency code (e.g. "EUR").
revenue_distributionObjectReadComplete hierarchical revenue distribution breakdown containing acquisition, owner, and property_manager sub-objects. See Revenue Distribution Structure for details.
created_atTimeReadBooking Revenue Distribution's create time.
updated_atTimeReadBooking Revenue Distribution's update time.

Revenue Distribution Structure

The revenue_distribution object contains three top-level keys:

KeyDescription
acquisitionCosts associated with acquiring the booking (OTA commissions, traveller fees, taxes, split payment fees).
ownerRevenue allocated to the property owner (rent share, booking fees).
property_managerRevenue allocated to the property manager (rent share, booking fees, owner fees).

Each top-level key contains:

NameTypeDescription
total_amount_in_centsIntegerTotal amount for this distribution type in cents.
currencyStringCurrency code.
itemsArrayNested 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

NameTypeDescription
nameStringHuman-readable name of the line item.
categoryStringCategory 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_centsIntegerAmount in cents for this line item.
itemsArrayNested sub-items providing further breakdown.

Optional metadata fields

Depending on the item's category, additional metadata fields may be present:

NameApplicable categoriesTypeDescription
percentageota_commission, rent, bookings_fee, traveller_fee, split_payment_fee, vatStringPercentage applied.
ota_nameota_commissionStringName of the OTA (e.g. "Airbnb").
bookings_fee_idbookings_fee, withheld_city_taxIntegerAssociated Bookings Fee's ID.
vat_percentagevatStringVAT percentage applied.
sourcevatStringSource of the VAT (e.g. "travelers_fees", "split_payment").
taxbookings_fee (owner/property_manager)BooleanWhether the fee is a tax.
upsellbookings_fee (owner/property_manager)BooleanWhether the fee is an upsell.
owner_fee_nameowners_feeStringName of the owner fee.
split_payment_fee_amount_to_owner_in_centssplit_payment_feeIntegerSplit payment fee amount allocated to the owner.
split_payment_fee_amount_to_property_manager_in_centssplit_payment_feeIntegerSplit payment fee amount allocated to the property manager.
traveller_fee_vat_amount_in_centstaxesIntegerVAT amount on traveller fees.
split_payment_vat_amount_in_centstaxesIntegerVAT amount on split payment fees.
split_payment_vat_to_owner_amount_in_centstaxesIntegerSplit payment VAT allocated to the owner.
split_payment_vat_to_property_manager_amount_in_centstaxesIntegerSplit payment VAT allocated to the property manager.
smily_pay_processing_fees_vat_amount_in_centstaxesIntegerVAT on Smily Pay processing fees.
cancelation_protection_vat_amount_in_centstaxesIntegerVAT on cancelation protection.

List booking revenue distributions

Based on the OAuth token scopes booking revenue distributions will be limited to a certain range.

ScopeRead Permissions
:bookings_write_ownedDisplay only booking revenue distributions for bookings created by app making the request
:bookings_readDisplay all booking revenue distributions
:bookings_writeDisplay all booking revenue distributions

List all booking revenue distributions for current account(s).

GET /booking_revenue_distributions
response.json
{
"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
response.json
{
"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": {}
}