edeposit_agg_fee_per_user to reporting

This commit is contained in:
Joaquin Ossa 2024-08-29 11:09:09 +02:00
parent 951bc70123
commit ad2eb2544c
6 changed files with 309 additions and 230 deletions

View file

@ -0,0 +1,231 @@
version: 2
models:
- name: int_edeposit__verifications
description:
"This table holds records on verifications for e-deposit bookings.
It contains details on validations checked on the guests, guest information
and some booking details like checkin-checkout date or the status of the verification.
The id values found here are completely unrelated to the ones found in Core DWH."
columns:
- name: id_verification
data_type: text
description: "unique Superhog generated id for this verification"
tests:
- unique
- not_null
- name: id_booking
data_type: text
description: "unique Superhog generated id for a booking"
- name: id_user_host
data_type: text
description: "unique Superhog generated id for host"
- name: id_accommodation
data_type: text
description: "unique Superhog generated id for a listing"
- name: version
data_type: text
description:
"value to identify if it is Guesty (V1) or E-deposit (V2)"
tests:
- accepted_values:
values:
- V1
- V2
- name: verification_source
data_type: text
description:
"source of the verification for the booking"
tests:
- accepted_values:
values:
- Guesty
- Edeposit
- name: verification_status
data_type: text
description: "status of the verification"
- name: verification_status_reason
data_type: text
description: "short explanation for status"
- name: nightly_fee_local
data_type: text
description: "fee charged per night"
- name: number_nights
data_type: integer
description: "number of nights for the booking"
- name: email_flag
data_type: text
description: ""
- name: phone_flag
data_type: text
description: ""
- name: watch_list
data_type: text
description: ""
- name: channel
data_type: text
description: ""
- name: checkin_at_utc
data_type: timestamp without time zone
description: "Timestamp of checkin for the booking"
- name: checkout_at_utc
data_type: timestamp without time zone
description: "Timestamp of checkout for the booking"
- name: is_cancelled
data_type: boolean
description: ""
- name: cancelled_at_utc
data_type: timestamp without time zone
description: "Timestamp of cancellation of the booking"
- name: user_email
data_type: text
description: ""
- name: guest_email
data_type: text
description: ""
- name: guest_last_name
data_type: text
description: ""
- name: guest_first_name
data_type: text
description: ""
- name: guest_telephone
data_type: text
description: ""
- name: company_name
data_type: text
description: ""
- name: property_manager_name
data_type: text
description: ""
- name: property_manager_email
data_type: text
description: ""
- name: listing_name
data_type: text
description: ""
- name: listing_town
data_type: text
description: ""
- name: listing_country
data_type: text
description: ""
- name: listing_postcode
data_type: text
description: ""
- name: pets_allowed
data_type: boolean
description: ""
- name: level_of_protection_amount
data_type: integer
description: ""
- name: level_of_protection_currency
data_type: text
description: ""
- name: status_updated_at_utc
data_type: timestamp without time zone
description: "Timestamp when status was last updated"
- name: updated_at_utc
data_type: timestamp without time zone
description: "Timestamp of last updated"
- name: creation_at_utc
data_type: timestamp without time zone
description: ""
- name: created_at_utc
data_type: timestamp without time zone
description: ""
- name: int_edeposit__agg_fee_per_user
description:
"This table holds detailed data on revenue generated through e-deposit verifications.
Each record provides insights into booking activities per user, including the number
of bookings, cancellations, and associated fees within specific months. Each record
captures data for bookings created in a particular month along with their corresponding
checkout month, allowing for a comprehensive view of the booking lifecycle and associated
revenues within those periods."
tests:
- dbt_utils.unique_combination_of_columns:
combination_of_columns:
- year_month_created
- year_month_checkout
- id_user_host
columns:
- name: year_month_created
data_type: text
description: "first day of month of created date"
- name: year_month_checkout
data_type: text
description: "first day of month of check-out date"
- name: id_user_host
data_type: text
description: "unique id value for user host"
- name: bookings_per_month
data_type: bigint
description: "total number of bookings"
- name: cancelled_per_month
data_type: bigint
description: "number of cancelled bookings"
- name: cancelled_ratio
data_type: numeric
description: "ratio of cancelled bookings over total bookings"
- name: sum_cancelled_fee
data_type: numeric
description: "sum of fees charged for cancelled bookings
(currency-less)"
- name: sum_ok_status_fee
data_type: double precision
description: |
"sum of fees charged for bookings with status 'Approved' or 'Flagged'
(currency-less)"
- name: sum_rejected_fee
data_type: numeric
description: "sum of fees charged for rejected bookings
(currency-less)"
- name: total_revenue
data_type: double precision
description: "total sum of fees charged (currency-less)"