version: 2 models: - name: core__verification_payments description: | Payments that have happened as part of the Guest Journey. Each record matches one payment in a guest journey. For example, if a guest pays a fee and a deposit for a booking, this table will hold two records. Lookups to dimensions have been denormalized. The data is mostly coming from Superhog, with money conversion happening through hardcoded rates. columns: - name: id_verification_to_payment data_type: bigint description: Superhog id for the record that relates this Payment to a Verification. - name: id_payment data_type: bigint description: Superhog id for this Payment. tests: - unique - not_null - name: is_refundable data_type: boolean description: Whether they payment is refundable or not. - name: payment_due_at_utc data_type: timestamp without time zone description: The point in time at which this payment had to be paid. - name: payment_due_date_utc data_type: date description: The date on which this payment had to be paid. - name: payment_paid_at_utc data_type: timestamp without time zone description: The point in time at which this payment was paid. - name: payment_paid_date_utc data_type: date description: The date on which this payment was paid. - name: payment_reference data_type: character varying description: | The payment reference code in the payment processor. For Acquired, this is typically and 10-12 digits number. For Stripe, this is a payment intent code. This is formatted as `pi_3OieViJK46Ulzq6A16IWxeW5`, with the part after `pi_` being 24 digits long. You can use the Stripe code to match this payment with our Stripe records. - name: refund_due_at_utc data_type: timestamp without time zone description: The point in time at which this payment had to be refunded. - name: refund_due_date_utc data_type: date description: The date on which this payment had to be refunded. - name: payment_refunded_at_utc data_type: timestamp without time zone description: The point in time at which this payment was refunded. - name: payment_refunded_date_utc data_type: date description: The date on which this payment was refunded. - name: refund_payment_reference data_type: character varying description: | The payment reference for the refund in the payment processor. For Acquired, this is typically and 10-12 digits number. For Stripe, this is a refund code. This is formatted as `pyr_3OieViJK46Ulzq6A16IWxeW5` or `re_3OfWeTJK46Ulzq6A02gVvZuk`. You can use the Stripe code to match this refund with our Stripe records. - name: id_guest_user data_type: character varying description: The UUID of the guest user in the Superhog backend. - name: id_verification data_type: bigint description: The ID of the verification that generated this payment. - name: verification_payment_type data_type: character varying description: "The payment type. Can be one of: Waiver, Fee, Deposit, Reschedule, Cancellation." - name: amount_in_txn_currency data_type: numeric description: The payment amount in the currency in which the transaction actually happened. If the guest paid in Australian Dollars, this is measured in AUD. - name: currency data_type: character varying description: The currency in which the transaction actually happened. If the guest paid in Australian Dollars, this is measured in AUD. - name: amount_in_gbp data_type: numeric description: The payment amount value, converted to GBP, using the exchange rate for the day on which the payment happened. - name: payment_status data_type: character varying description: "The status of the payment. It can be one of: Paid, Refunded, Refund Failed." - name: notes data_type: character varying description: Free text description on the payment. Typically, contains explanations for integration issues with the payment processor. - name: core__bookings description: | Bookings that have been processed by the Superhog backend. Each record matches one booking. All data is coming from the Superhog backend. Some dimensions have been denormalized. Some pre-aggregations to the booking level have also been performed and added here. columns: - name: id_booking data_type: bigint description: The unique, Superhog generated id for this booking. tests: - unique - not_null - name: id_user_guest data_type: character varying description: The UUID of the Superhog user playing the guest role in the booking. - name: id_user_host data_type: character varying description: The UUID of the Superhog user playing the host role in the booking. - name: id_accommodation data_type: bigint description: The ID of the booked listing. - name: is_duplicate_booking data_type: boolean description: | A flag that identifies whether the booking is a duplicate. A booking is considered a duplicate if there's an older booking with the same user, accomodation and check-in date. If there are two or more bookings with the same user, accomodation and check-in date, the oldest one will have False as a value in this field, and the other ones will have True as a value in this Failed." Put simply, if you don't want to receive duplicates, filter this field to True. - name: booking_fee_local data_type: numeric description: | The fee that Superhog should charge the host for this booking, measured in local currency. This fee is calculated by finding what was the active price plan for the host user when the booking fee had to be charged. - name: booking_fee_charge_at_utc data_type: timestamp without time zone description: | The point in time in which the booking should be invoiced. This could be the check-in date of the booking or the date in which the guest verification started, depending on the billing settings of the host. - name: booking_fee_charge_date_utc data_type: date description: | The date in which the booking should be invoiced. This could be the check-in date of the booking or the date in which the guest verification started, depending on the billing settings of the host. - name: core__vr_check_in_cover description: | This is a check-in cover specific fact table designed to support basic reporting on the Check-In Hero product. Granularity is roughly on the Guest Journey (Verification Request) level. It contains data from many entities, including Verification Request, booking, payments, etc. columns: - name: id_verification_request data_type: bigint description: | Unique, incremental, internal ID for the related verification request. - name: uuid_verification_request data_type: text description: uuid for the related verification request. - name: id_user_guest data_type: character varying description: Unique, incremental, internal ID for the guest user. - name: id_user_host data_type: character varying description: Unique, incremental, internal ID for the host user. - name: id_booking data_type: bigint description: Unique, incremental, internal ID for the related booking. - name: id_accommodation data_type: bigint description: Unique, incremental, internal ID for the related listing. - name: is_verification_request_complete data_type: boolean description: | True if the verification request is considered is considered complete, AKA the guest has finished the full guest journey. - name: is_past_check_in data_type: boolean description: | True if the check-in date is in the past, false otherwise. This value only gets informed for users who have bought check-in cover. - name: is_awaiting_check_in data_type: boolean description: | True if the check-in date is in the future, false otherwise. This value only gets informed for users who have bought check-in cover. - name: cover_was_purchased data_type: boolean description: | True if the guest purchased the check-in cover. This is identified by the fact that there is a payment of type check-in cover associated with this guest journey. - name: cover_was_rejected data_type: boolean description: | True if the guest didn't choose to purchase the check-in cover. This is identified by the facts: - There is no payment of type check-in cover associated with this guest journey. - The guest journey is completed, meaning the guest can't make the choice of purchasing the check-in cover anymore. - name: guest_email data_type: character varying description: The email of the guest. - name: last_name data_type: character varying description: The last name of the guest. - name: first_name data_type: character varying description: The first name of the guest. - name: guest_phone_number data_type: character varying description: The phone number of the guest. - name: telephone_code data_type: character varying description: "" - name: guest_phone_number_2 data_type: character varying description: "" - name: check_in_at_utc data_type: timestamp without time zone description: The date time when the guest will check-in, in UTC. - name: check_in_date_utc data_type: date description: The date when the guest will check-in, in UTC. - name: check_out_at_utc data_type: timestamp without time zone description: The date time when the guest will check-out, in UTC. - name: check_out_date_utc data_type: date description: The date time when the guest will check-out, in UTC. - name: verification_start_at_utc data_type: timestamp without time zone description: | The date and time at which the guest started the guest journey. - name: verification_start_date_utc data_type: date description: The date on which the guest started the guest journey. - name: verification_end_at_utc data_type: timestamp without time zone description: | The date and time at which the guest finished the guest journey. - name: verification_end_date_utc data_type: date description: | The date at which the guest finished the guest journey. - name: amount_in_txn_currency data_type: numeric description: | The amount paid by the guest for the check-in cover, in the currency in which the payment actually took place. - name: currency data_type: character varying description: The currency used by the guest for the payment. - name: amount_in_gbp data_type: numeric description: The amount paid by the guest, converted into GBP. - name: payment_status data_type: character varying description: The status of the payment. - name: payment_paid_date_utc data_type: date description: The date in which the guest made the payment. - name: checkin_cover_cover_amount_local_curr data_type: numeric description: | The total amount for which the guest check-in is covered, according to the Superhog backend, in the same currency as the guest payment. Bear in mind that the implementation of Check-In Hero pricing in the backend holds some tremendous technical debt, which pretty much prevents changes in the pricing and has no concept of historical pricing. The current implementation of this model is very naive and assumes that prices have not changed. If prices have been changed somehow in the backend, but someone hasn't taken care of performing the right updates in upstream dependencies of this model, then it's most probably broken and unreliable. For more details, contact pablo.martin or Lawrence. - name: checkin_cover_cover_amount_in_gbp data_type: numeric description: | The total amount for which the guest check-in is covered, according to the Superhog backend, converted to GBP. Bear in mind that the implementation of Check-In Hero pricing in the backend holds some tremendous technical debt, which pretty much prevents changes in the pricing and has no concept of historical pricing. The current implementation of this model is very naive and assumes that prices have not changed. If prices have been changed somehow in the backend, but someone hasn't taken care of performing the right updates in upstream dependencies of this model, then it's most probably broken and unreliable. For more details, contact pablo.martin or Lawrence. - name: core__verification_requests description: This is a table that shows all guest journey from our guests users with each record matching each guest journey. It holds information about the guests like name, email, phone, etc.., as well as dates regarding the process of the guest journey like when it was started or finished. columns: - name: id_verification_request data_type: bigint description: Unique, incremental, internal ID for the related verification request. - name: uuid_verification_request data_type: text description: uuid for the related verification request. - name: id_verification_set data_type: bigint description: "" - name: id_superhog_verified_set data_type: bigint description: "" - name: id_payment_validation_set data_type: bigint description: "" - name: id_user_guest data_type: character varying description: Unique, incremental, internal ID for the guest user. - name: id_user_host data_type: character varying description: Unique, incremental, internal ID for the host user. - name: is_verification_request_complete data_type: boolean description: True if the verification request is considered complete, AKA the guest has finished the full guest journey. - name: verification_url data_type: character varying description: "" - name: callback_url data_type: character varying description: "" - name: redirect_url data_type: character varying description: "" - name: logo data_type: character varying description: "" - name: guest_email data_type: character varying description: The email of the guest. - name: last_name data_type: character varying description: The last name of the guest. - name: first_name data_type: character varying description: The first name of the guest. - name: guest_phone_number data_type: character varying description: The phone number of the guest. - name: telephone_code data_type: character varying description: The telephone code of the guest. - name: guest_phone_number_2 data_type: character varying description: "" - name: verification_start_at_utc data_type: timestamp without time zone description: The date and time at which the guest started the guest journey. - name: verification_start_date_utc data_type: date description: The date on which the guest started the guest journey. - name: verification_end_at_utc data_type: timestamp without time zone description: The date and time at which the guest finished the guest journey. - name: verification_end_date_utc data_type: date description: The date on which the guest finished the guest journey. - name: link_used_at_utc data_type: timestamp without time zone description: The date and time at which the guest used the link for the verification. - name: link_used_date_utc data_type: date description: The date on which the guest used the link for the verification. - name: expire_at_utc data_type: timestamp without time zone description: The date and time at which the link for the verification expires. - name: expire_date_utc data_type: date description: The date on which the link for the verification expires. - name: is_deleted data_type: boolean description: | True if the link for verification expired before finishing the verification. - name: redirect_name data_type: character varying description: "" - name: id_one_step_link data_type: bigint description: "" - name: success_message data_type: character varying description: "" - name: summary data_type: character varying description: "" - name: rejection_reason data_type: character varying description: Reason as to why the guest was rejected. - name: has_switched_to_mobile data_type: boolean description: | True if the guest changed has switched to mobile during the verification process. - name: is_verifier_rejected data_type: boolean description: "" - name: config data_type: character varying description: "" - name: metadata data_type: character varying description: "" - name: created_at_utc data_type: timestamp without time zone description: The date and time at which the verification process was created. - name: created_date_utc data_type: date description: The date on which the verification process was created. - name: updated_at_utc data_type: timestamp without time zone description: The date and time at which the last update on the entry happened. - name: updated_date_utc data_type: date description: The date on which the last update on the entry happened. - name: dwh_extracted_at_utc data_type: timestamp with time zone description: ""