Repository navigation
Pricing
Pricing is always a headache as we transit from the old model to the new model.
This spreadsheet outlines the old and new pricing model, and the current state of the pricing.
- inquiry.fee and inquiry.fee_percentage refers to fee that Bridge earns for the inquiry, and is added by
app/models/concerns/inquiry/pricing.rb#add_roomorama_fee - Settings.site.markup and Settings.site.monthly_markup is declared at
config/settings.ymlto be 15% - For OR bookings,
fee_percentageis added byInquiry#initialize_default_values_from_room
The part that is still missing from current implementation is the distributor_fee. Currently we hard code it at 15%.
See app/services/distributors/margin_calculator.rb#contractual_fee_percentage.
TODO: Vary it by distributor contracts.
On the supplier side, we have host_fee and host_fee_percentage (sent from concierge, and saved to inquiry.host_fee and inquiry.host_fee_percentage). See an example in the Current(supplier side) tab of the pricing spreadsheet.
NOTE: The current calculation assumes that the total that is quoted from the supplier is the gross_rate = net_rate + host_fee. The host_fee_percentage columns thus subtracts from the total quoted to find the net_rate (the final amount to pay to host).
Another type of contract says quotation returned from supplier is already the net_rate, and so we have to pay that amount to the host. We are advised to charge net_rate + net_rate*host_fee_percentage, so that we can earn from the booking. For such contracts, currently we set host_fee_percentage to 0 on concierge.