Commit graph

1594 commits

Author SHA1 Message Date
Oriol Roqué Paniagua
93b31854f7 Merged PR 4754: Updates targets FY25 & FY26
# Description

Main changes:
* Modifies target seeds to include FY2025 and FY2026. This includes now absolute values for equivalent rate metrics. This also includes Booking Fees per Billable Booking, despite this metric is still not computed. This will be done in a separated PR.
* Removes Onboarding MRR as this requirement is no longer needed, and there has not been any target computed for this metric. This is modified to include Revenue Churn as an absolute figure.

Small note. Targets for FY 2025 rely on the actuals from Finance. Up to January 2025 included, these should match with our YTD values, but it's not the case due to small differences in Billable Bookings / Deals; as well as accrued revenue. Accrued revenue is very troublesome specially on Guesty side, since this affects Total Revenue, and this affects also Resolutions Payout Rate, and so on...

# Checklist

- [X] The edited models and dependants run properly with production data.
- [X] The edited models are sufficiently documented.
- [X] The edited models contain PK tests, and I've ran and passed them.
- [X] I have checked for DRY opportunities with other models and docs.
- [X] I've picked the right materialization for the affected models.

# Other

- [ ] Check if a full-refresh is required after this PR is merged.

Related work items: #28560
2025-03-20 13:10:22 +00:00
Pablo Martín
a4965ed9b2 Merged PR 4752: Move pipeline YAML
# Description

Starts a new `ci` folder and places the CI pipeline YAML definition file there.

Related work items: #28628
2025-03-20 11:30:12 +00:00
Pablo Martin
48528033d9 move file there 2025-03-20 12:24:40 +01:00
Pablo Martin
daea8d229b start ci folder 2025-03-20 12:24:32 +01:00
Joaquin Ossa
5d28f787a6 Merged PR 4743: Filtered test accounts
# Description

Filtered test accounts according to `Account_type` in Cosmos
Unfortunately this doesn't actually filter all test accounts, there are some that are correctly classified and I will have to ask specifically to either remove or classify correctly

# Checklist

- [x] The edited models and dependants run properly with production data.
- [x] The edited models are sufficiently documented.
- [x] The edited models contain PK tests, and I've ran and passed them.
- [ ] I have checked for DRY opportunities with other models and docs.
- [ ] I've picked the right materialization for the affected models.

# Other

- [ ] Check if a full-refresh is required after this PR is merged.

Filtered test accounts

Related work items: #28239
2025-03-20 08:36:49 +00:00
Joaquin
d06f58b76e Removed test users from staging 2025-03-20 09:30:33 +01:00
Joaquin Ossa
9e59fa4933 Merged PR 4723: Adding id_deal
# Description

Added `id_deal` to edeposit models for Invoice reporting

# Checklist

- [x] The edited models and dependants run properly with production data.
- [x] The edited models are sufficiently documented.
- [x] The edited models contain PK tests, and I've ran and passed them.
- [ ] I have checked for DRY opportunities with other models and docs.
- [ ] I've picked the right materialization for the affected models.

# Other

- [x] Check if a full-refresh is required after this PR is merged.

Adding id_deal

Related work items: #28239
2025-03-19 15:50:37 +00:00
Joaquin
a85033922c Filtered test accounts 2025-03-19 16:50:19 +01:00
Pablo Martín
c44a099751 Merged PR 4735: Test PR for CI stuff
You can ignore me, I'm not important.
2025-03-19 14:34:26 +00:00
Pablo Martin
918d618f75 adjust naming in deletion step 2025-03-19 15:26:50 +01:00
Pablo Martin
d334e95738 typo 2025-03-19 15:23:59 +01:00
Pablo Martin
841b64dc85 unfuck variables 2025-03-19 15:19:27 +01:00
Pablo Martin
1e19efc89f make temporal db name selection a bit smarter 2025-03-19 15:17:33 +01:00
Joaquin
bcdb39849d Addressed comments 2025-03-19 12:06:05 +01:00
Joaquin Ossa
cef363847a Merged PR 4736: adding id_deal to api models
# Description

Adding `id_deal` to API models in Check in Cover and Screen & Protect

# Checklist

- [x] The edited models and dependants run properly with production data.
- [x] The edited models are sufficiently documented.
- [x] The edited models contain PK tests, and I've ran and passed them.
- [ ] I have checked for DRY opportunities with other models and docs.
- [ ] I've picked the right materialization for the affected models.

# Other

- [ ] Check if a full-refresh is required after this PR is merged.

Related work items: #28239
2025-03-19 10:33:49 +00:00
Pablo Martin
821c7d2850 remove pr stuff because it's fake news 2025-03-19 09:26:03 +01:00
Joaquin
5d3f2f6908 adding id_deal to api models 2025-03-19 09:23:23 +01:00
Pablo Martin
4b33114d67 modify pipeline 2025-03-19 09:19:30 +01:00
Oriol Roqué Paniagua
5928a198b6 Merged PR 4734: Bugfix - Ensures accounts cannot be duplicated in Xero sales monthly trends
# Description

This fixes the duplication error when the same deal has more than one contact. Impact was not massive, it just affected because of the Home to Host account and this has happened during the past week. There were other cases that contained duplicates but these were not invoiced so it didn't affect the total sum.

Changes:
* Contacts now has a boolean field indicating if a deal exists.
* Contacts now has a boolean field indicating if that contact has a deal informed and it's the last updated one. This is opinionated - it could have been done with creation, for instance.
* Sales monthly trends forces the last updated contact to be true.
* Improved robustness by adding tests.

Note that modifying the logic in intermediate on `int_xero__sales_monthly_trends` by changing `id_deal` per `id_contact` would not have worked - we need to do this compute by deal to ensure that any invoicing is reported MoM and YTD.

# Checklist

- [X] The edited models and dependants run properly with production data.
- [X] The edited models are sufficiently documented.
- [X] The edited models contain PK tests, and I've ran and passed them.
- [X] I have checked for DRY opportunities with other models and docs.
- [X] I've picked the right materialization for the affected models.

# Other

- [ ] Check if a full-refresh is required after this PR is merged.

Related work items: #28576
2025-03-19 08:19:20 +00:00
Pablo Martin
7cc893cad4 silly change just to trigger PR 2025-03-19 09:14:26 +01:00
Pablo Martin
c00d02685d add dbt compile step 2025-03-18 18:12:53 +01:00
Pablo Martin
a1ed622bee build docs 2025-03-18 18:02:28 +01:00
Pablo Martin
43132c41b5 typo 2025-03-18 17:51:51 +01:00
Pablo Martin
074ac0e2ce install dbt thingies in CI 2025-03-18 17:48:49 +01:00
Pablo Martin
f4769c2e55 delete database 2025-03-18 17:38:55 +01:00
Pablo Martin
8c7681581c typo 2025-03-18 17:35:07 +01:00
Pablo Martin
32ef6f36a4 create database 2025-03-18 17:33:49 +01:00
Pablo Martin
65e2dea2fc smoke test with env var sourcing included 2025-03-18 17:31:05 +01:00
Pablo Martin
74222a0007 smoke test postgres connection 2025-03-18 17:26:20 +01:00
Pablo Martin
6dea088b8f Merge branch 'master' of ssh.dev.azure.com:v3/guardhog/Data/data-dwh-dbt-project 2025-03-18 17:24:01 +01:00
Pablo Martin
c348430dae prepare env vars on ci script 2025-03-18 17:23:57 +01:00
Oriol Roqué Paniagua
06694faa68 Merged PR 4732: Removes accepted values test for guest product display name
# Description

It's a bit overkill to add an accepted tests in the display name, knowing that it can change. Note that I didn't remove it for the internal name.

This fixes the dbt test error.

# Checklist

- [X] The edited models and dependants run properly with production data.
- [X] The edited models are sufficiently documented.
- [X] The edited models contain PK tests, and I've ran and passed them.
- [ ] I have checked for DRY opportunities with other models and docs.
- [ ] I've picked the right materialization for the affected models.

# Other

- [ ] Check if a full-refresh is required after this PR is merged.

Removes accepted values test for guest product display name

Related work items: #28513
2025-03-18 16:03:49 +00:00
uri
09976bef13 Removes accepted values test for guest product display name 2025-03-18 16:34:00 +01:00
Pablo Martin
a988542679 simple smoke test 2025-03-18 16:16:04 +01:00
Pablo Martin
619c87e874 Merge branch 'master' of ssh.dev.azure.com:v3/guardhog/Data/data-dwh-dbt-project 2025-03-18 15:55:48 +01:00
Pablo Martin
525ed77a87 change pool name again cause i fucked up 2025-03-18 15:55:45 +01:00
Oriol Roqué Paniagua
f799a8d30f Merged PR 4727: Bookings fees are now Old Dashboard Booking Fees in Main KPIs
# Description

Booking fees is widely used with different meanings, for old dash, for new dash, for both, etc. This is painful. First step to align on a proper naming is ensure that what we report in Main KPIs is clearly stated, which in this case, Booking Fees are now called Old Dashboard Booking Fees.

Changes:
* Modify `stg_seed__accounting_aggregations` seed to rename Booking Fees to Old Dashboard Booking Fees. This is for us to clarify. This is only applied for KPIs compute. I also added an empty space that I mistakenly forgot in the past for `financial_l3_aggregation`.
* Modify KPIs source, i.e., `int_kpis__metric_daily_invoiced_revenue`. Here I forcefully modify the name of the field to `xero_old_dashboard_booking_net_fees_in_gbp`.
* Propagate changes of downstream usages of `xero_booking_net_fees_in_gbp` to `xero_old_dashboard_booking_net_fees_in_gbp`. This affects all models, including the reporting model. On this one we still have both names to avoid breaking it. I will need to modify the data glossary in PBI anyway so I'll do this change as well.
* Modify displayed metric name from Booking Fees Revenue to Old Dashboard Booking Fees Revenue.
* Modify schema so it reflects the proper names, descriptions, and tests.
* Ensure outlier and completion tests still work after this change.

I confirm the field `xero_booking_net_fees_in_gbp` does not exist anymore in the rest of DWH after these changes, except for the abovementioned comment on the reporting line.

# Checklist

- [X] The edited models and dependants run properly with production data.
- [X] The edited models are sufficiently documented.
- [X] The edited models contain PK tests, and I've ran and passed them.
- [X] I have checked for DRY opportunities with other models and docs.
- [X] I've picked the right materialization for the affected models.

# Other

- [ ] Check if a full-refresh is required after this PR is merged.

Related work items: #28560
2025-03-18 14:55:32 +00:00
Pablo Martin
35cd4f4fcd change pool 2025-03-18 15:54:46 +01:00
Pablo Martin
c786ccf5c1 remove compile 2025-03-18 13:44:30 +01:00
Pablo Martin
e424ed7581 add ci yml 2025-03-18 13:41:40 +01:00
Joaquin
a145a00b4d Adding id_deal 2025-03-18 12:06:25 +01:00
Oriol Roqué Paniagua
dd9bb8a11b Merged PR 4713: Adds a master table for guest products price plans
# Description

Adds a master table for pricing regarding Guest Products in intermediate.

I also added in staging a missing description for a field.

This is a necessary step to work out the prices on guest products payments, which will come in a separated PR.

# Checklist

- [X] The edited models and dependants run properly with production data.
- [X] The edited models are sufficiently documented.
- [X] The edited models contain PK tests, and I've ran and passed them.
- [X] I have checked for DRY opportunities with other models and docs.
- [ ] I've picked the right materialization for the affected models. **Left it as a view, let's adapt in the future if needed**

# Other

- [ ] Check if a full-refresh is required after this PR is merged.

Related work items: #28513
2025-03-18 10:56:33 +00:00
uri
74a76fe8fc Removes configuration status and adds config id for further joins 2025-03-18 09:20:31 +01:00
uri
91e7fe09b1 Adds end date 2025-03-18 09:09:59 +01:00
uri
cba4b97082 Adds a master table for guest products price plans 2025-03-17 16:35:50 +01:00
Joaquin Ossa
b518c536f2 Merged PR 4698: Added business scope to models
# Description

Added business scope to models `monthly_aggregated_metrics_history_by_deal`

# Checklist

- [x] The edited models and dependants run properly with production data.
- [x] The edited models are sufficiently documented.
- [x] The edited models contain PK tests, and I've ran and passed them.
- [ ] I have checked for DRY opportunities with other models and docs.
- [ ] I've picked the right materialization for the affected models.

# Other

- [ ] Check if a full-refresh is required after this PR is merged.

Added business scope to models

Related work items: #28501
2025-03-14 13:33:10 +00:00
Joaquin
e9cfb6c2bd Addressed comments 2025-03-14 14:20:57 +01:00
Oriol Roqué Paniagua
918ed969d8 Merged PR 4699: Creates a master table for guest products
# Description

Creates a master table for guest products in intermediate. It just gathers information on the name and the latest display name, as well as a couple of additional time fields.

I opted for "latest" rather than "current" because technically Guest Products can be enabled and disabled, and I believe current name would be weird if the product is disabled. Anyway. Next step will be actually creating a master table on guest product configuration, that will handle this disable logic and so on.

# Checklist

- [X] The edited models and dependants run properly with production data.
- [X] The edited models are sufficiently documented.
- [X] The edited models contain PK tests, and I've ran and passed them.
- [X] I have checked for DRY opportunities with other models and docs.
- [X] I've picked the right materialization for the affected models.

# Other

- [ ] Check if a full-refresh is required after this PR is merged.

Related work items: #28513
2025-03-14 13:04:46 +00:00
Joaquin
89b3989d19 Added business scope to models 2025-03-14 11:48:22 +01:00
Joaquin Ossa
72118389d6 Merged PR 4693: Live Dates according to HubSpot
# Description

Made the change as discussed during the daily.
Here we can see an example of the impact with the change (left old lifecycle, right new one)
The biggest impact comes from the Never Booked deals, 110, and Active 34.
![image.png](https://guardhog.visualstudio.com/4148d95f-4b6d-4205-bcff-e9c8e0d2ca65/_apis/git/repositories/54ac356f-aad7-46d2-b62c-e8c5b3bb8ebf/pullRequests/4693/attachments/image.png)

# Checklist

- [x] The edited models and dependants run properly with production data.
- [x] The edited models are sufficiently documented.
- [x] The edited models contain PK tests, and I've ran and passed them.
- [ ] I have checked for DRY opportunities with other models and docs.
- [ ] I've picked the right materialization for the affected models.

# Other

- [ ] Check if a full-refresh is required after this PR is merged.

Related work items: #28475
2025-03-14 10:20:34 +00:00