@ingenx-io/valets-schema-mcp-server 0.2.6 → 0.2.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/data/docs/collections/firestore-paths.md +20 -0
- package/data/docs/enums/app-status.md +1 -1
- package/data/docs/enums/attention-status.md +1 -1
- package/data/docs/enums/booking-status.md +1 -1
- package/data/docs/enums/contract-status.md +1 -1
- package/data/docs/enums/customer-payment-status.md +1 -1
- package/data/docs/enums/customer-payment-target-type.md +1 -1
- package/data/docs/enums/delivery-type.md +1 -1
- package/data/docs/enums/deployment-link-type.md +1 -1
- package/data/docs/enums/event-status.md +1 -1
- package/data/docs/enums/expense-payment-status.md +24 -0
- package/data/docs/enums/fulfillment-status.md +2 -2
- package/data/docs/enums/loyalty-transaction-type.md +2 -2
- package/data/docs/enums/milestone-status.md +2 -2
- package/data/docs/enums/notification-channel.md +2 -2
- package/data/docs/enums/notification-entity-type.md +2 -2
- package/data/docs/enums/notification-status.md +2 -2
- package/data/docs/enums/order-status.md +2 -2
- package/data/docs/enums/outbound-message-format.md +2 -2
- package/data/docs/enums/outbound-message-purpose.md +2 -2
- package/data/docs/enums/outbound-message-status.md +2 -2
- package/data/docs/enums/payment-method.md +4 -3
- package/data/docs/enums/payment-proof-status.md +2 -2
- package/data/docs/enums/payment-status.md +2 -2
- package/data/docs/enums/pending-issue.md +2 -2
- package/data/docs/enums/return-status.md +2 -2
- package/data/docs/enums/session-status.md +2 -2
- package/data/docs/enums/site-status.md +2 -2
- package/data/docs/enums/stocktake-frequency.md +2 -2
- package/data/docs/enums/stocktake-item-status.md +2 -2
- package/data/docs/enums/stocktake-status.md +2 -2
- package/data/docs/enums/ticket-status.md +2 -2
- package/data/docs/enums/waba-label.md +2 -2
- package/data/docs/enums/whatsapp-button-sub-type.md +2 -2
- package/data/docs/enums/whatsapp-template-component.md +2 -2
- package/data/docs/enums/whatsapp-template-status.md +2 -2
- package/data/docs/index.md +6 -3
- package/data/docs/models/allowed-user.md +1 -1
- package/data/docs/models/analytics-backfill.md +1 -1
- package/data/docs/models/analytics-daily.md +1 -1
- package/data/docs/models/analytics-event.md +1 -1
- package/data/docs/models/analytics-hourly.md +1 -1
- package/data/docs/models/app-payment.md +1 -1
- package/data/docs/models/app.md +1 -1
- package/data/docs/models/booking-version.md +1 -1
- package/data/docs/models/booking.md +1 -1
- package/data/docs/models/contract.md +1 -1
- package/data/docs/models/customer-payment-allocation.md +1 -1
- package/data/docs/models/customer-payment.md +22 -21
- package/data/docs/models/customer.md +1 -1
- package/data/docs/models/event.md +1 -1
- package/data/docs/models/expense.md +434 -0
- package/data/docs/models/loyalty-config.md +2 -2
- package/data/docs/models/loyalty-reward.md +2 -2
- package/data/docs/models/loyalty-status.md +2 -2
- package/data/docs/models/loyalty-transaction.md +2 -2
- package/data/docs/models/magic-link-request.md +2 -2
- package/data/docs/models/metrics-current.md +22 -2
- package/data/docs/models/metrics-daily.md +92 -41
- package/data/docs/models/metrics-monthly.md +22 -2
- package/data/docs/models/notification-record.md +2 -2
- package/data/docs/models/order-item.md +2 -2
- package/data/docs/models/order.md +56 -55
- package/data/docs/models/outbound-payment-allocation.md +2 -2
- package/data/docs/models/outbound-payment.md +3 -2
- package/data/docs/models/payment-webhook-delivery.md +321 -0
- package/data/docs/models/payment-webhook-endpoint.md +2 -2
- package/data/docs/models/sale.md +2 -2
- package/data/docs/models/site-payment.md +2 -2
- package/data/docs/models/site.md +2 -2
- package/data/docs/models/stocktake-item.md +2 -2
- package/data/docs/models/stocktake.md +2 -2
- package/data/docs/models/ticket.md +2 -2
- package/data/docs/models/user.md +2 -2
- package/data/docs/models/whatsapp-inbound-message.md +2 -2
- package/data/docs/models/whatsapp-outbound-lifecycle-event.md +2 -2
- package/data/docs/models/whatsapp-outbound-message.md +2 -2
- package/data/docs/models/whatsapp-template.md +2 -2
- package/data/static/llms.txt +97 -5
- package/data/static/openapi.yaml +370 -9
- package/data/static/schemas.json +347 -9
- package/package.json +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: "LoyaltyReward"
|
|
3
3
|
sidebar_label: "LoyaltyReward"
|
|
4
|
-
sidebar_position:
|
|
4
|
+
sidebar_position: 17
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
# LoyaltyReward
|
|
@@ -229,7 +229,7 @@ Do not include in write requests. This field is set exclusively by the server (F
|
|
|
229
229
|
| **Required** | No |
|
|
230
230
|
|
|
231
231
|
----------------------------------------------------------------------------------------------------------------------------
|
|
232
|
-
Generated using [json-schema-for-humans](https://github.com/coveooss/json-schema-for-humans) on 2026-05-30 at 13:
|
|
232
|
+
Generated using [json-schema-for-humans](https://github.com/coveooss/json-schema-for-humans) on 2026-05-30 at 13:57:28 +0000
|
|
233
233
|
|
|
234
234
|
:::warning Server-set
|
|
235
235
|
Do not include in write requests. This field is set exclusively by the server (Firestore trigger or Admin SDK). Clients that send it will have the value silently ignored or may receive a validation error.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: "LoyaltyStatus"
|
|
3
3
|
sidebar_label: "LoyaltyStatus"
|
|
4
|
-
sidebar_position:
|
|
4
|
+
sidebar_position: 18
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
# LoyaltyStatus
|
|
@@ -315,7 +315,7 @@ Do not include in write requests. This field is set exclusively by the server (F
|
|
|
315
315
|
| **Required** | No |
|
|
316
316
|
|
|
317
317
|
----------------------------------------------------------------------------------------------------------------------------
|
|
318
|
-
Generated using [json-schema-for-humans](https://github.com/coveooss/json-schema-for-humans) on 2026-05-30 at 13:
|
|
318
|
+
Generated using [json-schema-for-humans](https://github.com/coveooss/json-schema-for-humans) on 2026-05-30 at 13:57:28 +0000
|
|
319
319
|
|
|
320
320
|
:::warning Server-set
|
|
321
321
|
Do not include in write requests. This field is set exclusively by the server (Firestore trigger or Admin SDK). Clients that send it will have the value silently ignored or may receive a validation error.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: "LoyaltyTransaction"
|
|
3
3
|
sidebar_label: "LoyaltyTransaction"
|
|
4
|
-
sidebar_position:
|
|
4
|
+
sidebar_position: 19
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
# LoyaltyTransaction
|
|
@@ -313,7 +313,7 @@ Set at creation only. This field cannot be modified after the document is create
|
|
|
313
313
|
**Description:** (Immutable, Denormalized) From User display name at creation time.
|
|
314
314
|
|
|
315
315
|
----------------------------------------------------------------------------------------------------------------------------
|
|
316
|
-
Generated using [json-schema-for-humans](https://github.com/coveooss/json-schema-for-humans) on 2026-05-30 at 13:
|
|
316
|
+
Generated using [json-schema-for-humans](https://github.com/coveooss/json-schema-for-humans) on 2026-05-30 at 13:57:28 +0000
|
|
317
317
|
|
|
318
318
|
:::info Immutable
|
|
319
319
|
Set at creation only. This field cannot be modified after the document is created. Include it in CREATE payloads; omit it (or leave unchanged) in UPDATE payloads.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: "MagicLinkRequest"
|
|
3
3
|
sidebar_label: "MagicLinkRequest"
|
|
4
|
-
sidebar_position:
|
|
4
|
+
sidebar_position: 20
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
# MagicLinkRequest
|
|
@@ -282,4 +282,4 @@ Set at creation only. This field cannot be modified after the document is create
|
|
|
282
282
|
| **Required** | No |
|
|
283
283
|
|
|
284
284
|
----------------------------------------------------------------------------------------------------------------------------
|
|
285
|
-
Generated using [json-schema-for-humans](https://github.com/coveooss/json-schema-for-humans) on 2026-05-30 at 13:
|
|
285
|
+
Generated using [json-schema-for-humans](https://github.com/coveooss/json-schema-for-humans) on 2026-05-30 at 13:57:28 +0000
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: "MetricsCurrent"
|
|
3
3
|
sidebar_label: "MetricsCurrent"
|
|
4
|
-
sidebar_position:
|
|
4
|
+
sidebar_position: 21
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
# MetricsCurrent
|
|
@@ -172,6 +172,10 @@ Do not include in write requests. This field is set exclusively by the server (F
|
|
|
172
172
|
Do not include in write requests. This field is set exclusively by the server (Firestore trigger or Admin SDK). Clients that send it will have the value silently ignored or may receive a validation error.
|
|
173
173
|
:::
|
|
174
174
|
|
|
175
|
+
:::note
|
|
176
|
+
Firestore REST API v1 writes integerValue when the stored value is whole (e.g. 0), doubleValue when fractional (e.g. 82.17). Admin SDK smooths this to a JS number; REST clients must coerce the union (#11).
|
|
177
|
+
:::
|
|
178
|
+
|
|
175
179
|
## <a name="todayPurchasesCount"></a>4. Property `todayPurchasesCount`
|
|
176
180
|
|
|
177
181
|
| | |
|
|
@@ -216,6 +220,10 @@ Do not include in write requests. This field is set exclusively by the server (F
|
|
|
216
220
|
Do not include in write requests. This field is set exclusively by the server (Firestore trigger or Admin SDK). Clients that send it will have the value silently ignored or may receive a validation error.
|
|
217
221
|
:::
|
|
218
222
|
|
|
223
|
+
:::note
|
|
224
|
+
Firestore REST API v1 writes integerValue when whole (e.g. 10070), doubleValue when fractional (e.g. 10006.5). Admin SDK smooths this; REST clients must coerce (#11).
|
|
225
|
+
:::
|
|
226
|
+
|
|
219
227
|
## <a name="monthlyRevenue"></a>7. Property `monthlyRevenue`
|
|
220
228
|
|
|
221
229
|
| | |
|
|
@@ -229,6 +237,10 @@ Do not include in write requests. This field is set exclusively by the server (F
|
|
|
229
237
|
Do not include in write requests. This field is set exclusively by the server (Firestore trigger or Admin SDK). Clients that send it will have the value silently ignored or may receive a validation error.
|
|
230
238
|
:::
|
|
231
239
|
|
|
240
|
+
:::note
|
|
241
|
+
Observed as integerValue on all sampled tenants (whole XOF amounts). Will be doubleValue if fractional. REST clients must coerce (#11).
|
|
242
|
+
:::
|
|
243
|
+
|
|
232
244
|
## <a name="monthlyPurchasesCount"></a>8. Property `monthlyPurchasesCount`
|
|
233
245
|
|
|
234
246
|
| | |
|
|
@@ -322,6 +334,10 @@ Do not include in write requests. This field is set exclusively by the server (F
|
|
|
322
334
|
Do not include in write requests. This field is set exclusively by the server (Firestore trigger or Admin SDK). Clients that send it will have the value silently ignored or may receive a validation error.
|
|
323
335
|
:::
|
|
324
336
|
|
|
337
|
+
:::note
|
|
338
|
+
Observed as integerValue "0" on all sampled tenants. Will be doubleValue if fractional payments occur. REST clients must coerce (#11).
|
|
339
|
+
:::
|
|
340
|
+
|
|
325
341
|
## <a name="todayRevenue"></a>14. Property `todayRevenue`
|
|
326
342
|
|
|
327
343
|
| | |
|
|
@@ -438,6 +454,10 @@ Do not include in write requests. This field is set exclusively by the server (F
|
|
|
438
454
|
Do not include in write requests. This field is set exclusively by the server (Firestore trigger or Admin SDK). Clients that send it will have the value silently ignored or may receive a validation error.
|
|
439
455
|
:::
|
|
440
456
|
|
|
457
|
+
:::note
|
|
458
|
+
Observed as integerValue "0" on all tenants (no reviews yet). Will be doubleValue once real ratings exist. REST clients must coerce (#11).
|
|
459
|
+
:::
|
|
460
|
+
|
|
441
461
|
## <a name="lowStockItemsCount"></a>21. Property `lowStockItemsCount`
|
|
442
462
|
|
|
443
463
|
| | |
|
|
@@ -657,7 +677,7 @@ Do not include in write requests. This field is set exclusively by the server (F
|
|
|
657
677
|
| **Maximum** | ≤ 9007199254740991 |
|
|
658
678
|
|
|
659
679
|
----------------------------------------------------------------------------------------------------------------------------
|
|
660
|
-
Generated using [json-schema-for-humans](https://github.com/coveooss/json-schema-for-humans) on 2026-05-30 at 13:
|
|
680
|
+
Generated using [json-schema-for-humans](https://github.com/coveooss/json-schema-for-humans) on 2026-05-30 at 13:57:28 +0000
|
|
661
681
|
|
|
662
682
|
:::warning Server-set
|
|
663
683
|
Do not include in write requests. This field is set exclusively by the server (Firestore trigger or Admin SDK). Clients that send it will have the value silently ignored or may receive a validation error.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: "MetricsDaily"
|
|
3
3
|
sidebar_label: "MetricsDaily"
|
|
4
|
-
sidebar_position:
|
|
4
|
+
sidebar_position: 22
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
# MetricsDaily
|
|
@@ -77,6 +77,8 @@ sidebar_position: 21
|
|
|
77
77
|
- [27. Property `onHoldOrdersCount`](#onHoldOrdersCount)
|
|
78
78
|
- [28. Property `paymentsByMethod`](#paymentsByMethod)
|
|
79
79
|
- [28.1. Property `additionalProperties`](#paymentsByMethod_additionalProperties)
|
|
80
|
+
- [28.1.1. Property `total`](#paymentsByMethod_additionalProperties_total)
|
|
81
|
+
- [28.1.2. Property `count`](#paymentsByMethod_additionalProperties_count)
|
|
80
82
|
- [29. Property `computedForDay`](#computedForDay)
|
|
81
83
|
- [30. Property `generatedAt`](#generatedAt)
|
|
82
84
|
- [30.1. Property `_seconds`](#generatedAt__seconds)
|
|
@@ -90,41 +92,41 @@ sidebar_position: 21
|
|
|
90
92
|
| **Additional properties** | Not allowed |
|
|
91
93
|
| **Defined in** | #/definitions/metrics-daily |
|
|
92
94
|
|
|
93
|
-
**Description:** Daily metrics snapshot. Collection: companies/\{companyId\}/metrics_daily/\{YYYY-MM-DD\}. Same fields as MetricsCurrent plus `date`. Written by computeDailyCompanyMetrics cron (02:00 UTC)
|
|
94
|
-
|
|
95
|
-
| Property | Pattern | Type | Deprecated | Definition | Title/Description
|
|
96
|
-
| ---------------------------------------------------------------------------- | ------- | --------------- | ---------- | ------------------------------------ |
|
|
97
|
-
| + [todayOrdersCount](#todayOrdersCount ) | No | integer | No | - | (Read-only) Orders created today (UTC). Resets at midnight.
|
|
98
|
-
| + [pendingOrdersCount](#pendingOrdersCount ) | No | integer | No | - | (Read-only) Orders currently in PENDING status (all-time cumulative). Corrected by full recalc on order updates.
|
|
99
|
-
| + [orderCompletionRate30d](#orderCompletionRate30d ) | No | number | No | - | (Read-only) Percentage of orders completed or delivered in the last 30 days. Always full recalc.
|
|
100
|
-
| + [todayPurchasesCount](#todayPurchasesCount ) | No | integer | No | - | (Read-only) Purchases created today (UTC). Resets at midnight.
|
|
101
|
-
| + [todayPurchasesSum](#todayPurchasesSum ) | No | number | No | - | (Read-only) Total value of purchases created today (UTC). Resets at midnight.
|
|
102
|
-
| + [averagePurchaseAmount](#averagePurchaseAmount ) | No | number | No | - | (Read-only) Average purchase value across last 200 purchases (rolling, not time-windowed).
|
|
103
|
-
| + [monthlyRevenue](#monthlyRevenue ) | No | number | No | - | (Read-only) Total purchase value in the current calendar month (UTC).
|
|
104
|
-
| + [monthlyPurchasesCount](#monthlyPurchasesCount ) | No | integer | No | - | (Read-only) Number of purchases in the current calendar month (UTC).
|
|
105
|
-
| + [todayBookingsCount](#todayBookingsCount ) | No | integer | No | - | (Read-only) Bookings with date == today AND status in [PENDING, CONFIRMED]. Resets at midnight.
|
|
106
|
-
| + [bookingsCreatedToday](#bookingsCreatedToday ) | No | integer | No | - | (Read-only) Bookings with createdAt today (all statuses). Resets at midnight.
|
|
107
|
-
| + [todayBookingsConfirmedAmount](#todayBookingsConfirmedAmount ) | No | number | No | - | (Read-only) Sum of totalAmount for bookings created today with status CONFIRMED or COMPLETED. Resets at midnight.
|
|
108
|
-
| + [monthlyBookingsConfirmedAmount](#monthlyBookingsConfirmedAmount ) | No | number | No | - | (Read-only) Sum of totalAmount for bookings created this month with status CONFIRMED or COMPLETED.
|
|
109
|
-
| + [todayCollectedAmount](#todayCollectedAmount ) | No | number | No | - | (Read-only) Sum of totalAmount for bookings where PAYMENT_PAID_AT is today. Resets at midnight.
|
|
110
|
-
| + [todayRevenue](#todayRevenue ) | No | number | No | - | (Read-only) Sum of totalAmount for COMPLETED bookings where startDate == endDate == today (numeric YYYYMMDD). Resets at midnight.
|
|
111
|
-
| + [bookingsPendingPaymentVerification](#bookingsPendingPaymentVerification ) | No | integer | No | - | (Read-only) Bookings with status PENDING/CANCELLATION_REQUESTED and a payment proof uploaded but not yet verified. Current state, always full recalc.
|
|
112
|
-
| + [bookingsPendingValidation](#bookingsPendingValidation ) | No | integer | No | - | (Read-only) PENDING bookings with startDate within ±30 days of today. Rolling window, always full recalc.
|
|
113
|
-
| + [bookingsPendingValidation24h](#bookingsPendingValidation24h ) | No | integer | No | - | (Read-only) PENDING bookings created in the last 24h with startDate >= tomorrow. Always full recalc.
|
|
114
|
-
| + [customersCount](#customersCount ) | No | integer | No | - | (Read-only) Total customer count (all-time cumulative).
|
|
115
|
-
| + [newCustomersThisMonth](#newCustomersThisMonth ) | No | integer | No | - | (Read-only) Customers with createdAt in the current calendar month (UTC).
|
|
116
|
-
| + [averageRating](#averageRating ) | No | number | No | - | (Read-only) Average rating from the last 200 reviews (rolling). Always full recalc.
|
|
117
|
-
| + [lowStockItemsCount](#lowStockItemsCount ) | No | integer | No | - | (Read-only) Active stock items where currentQuantity <= minimumQuantity. Current state, always full recalc.
|
|
118
|
-
| + [activeRecurringPaymentsCount](#activeRecurringPaymentsCount ) | No | integer | No | - | (Read-only) Recurring payments with status ACTIVE. Current state, always full recalc.
|
|
119
|
-
| + [monthlyRecurringRevenue](#monthlyRecurringRevenue ) | No | number | No | - | (Read-only) Sum of amount for ACTIVE + MONTHLY recurring payments. Always full recalc.
|
|
120
|
-
| - [escalatedOrdersCount](#escalatedOrdersCount ) | No | integer or null | No | - | (Read-only, Optional) Orders currently in an escalated state. Present once the current aggregator rewrites the document.
|
|
121
|
-
| - [staleOrdersCount](#staleOrdersCount ) | No | integer or null | No | - | (Read-only, Optional) Orders that have been in an incomplete status beyond the stale threshold.
|
|
122
|
-
| - [staleBookingsCount](#staleBookingsCount ) | No | integer or null | No | - | (Read-only, Optional) Bookings that have been in an incomplete status beyond the stale threshold.
|
|
123
|
-
| - [onHoldOrdersCount](#onHoldOrdersCount ) | No | integer or null | No | - | (Read-only, Optional) Orders currently in an on-hold state.
|
|
124
|
-
| - [paymentsByMethod](#paymentsByMethod ) | No | object or null | No | - | (Read-only, Optional)
|
|
125
|
-
| + [computedForDay](#computedForDay ) | No | string | No | - | (Read-only) YYYY-MM-DD string indicating which day these metrics reflect. Used to detect day boundaries and trigger midnight resets.
|
|
126
|
-
| + [generatedAt](#generatedAt ) | No | object | No | In #/definitions/firestore-timestamp | (Read-only) Server timestamp of the last metrics write.
|
|
127
|
-
| + [date](#date ) | No | string | No | - | (Read-only) YYYY-MM-DD document ID repeated as a field. Identifies the day this snapshot covers.
|
|
95
|
+
**Description:** Daily metrics snapshot. Collection: companies/\{companyId\}/metrics_daily/\{YYYY-MM-DD\}. Same fields as MetricsCurrent plus `date`. Written by computeDailyCompanyMetrics cron (02:00 UTC) when the company had activity that day; zero-activity days may produce no document (#9).
|
|
96
|
+
|
|
97
|
+
| Property | Pattern | Type | Deprecated | Definition | Title/Description |
|
|
98
|
+
| ---------------------------------------------------------------------------- | ------- | --------------- | ---------- | ------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
99
|
+
| + [todayOrdersCount](#todayOrdersCount ) | No | integer | No | - | (Read-only) Orders created today (UTC). Resets at midnight. |
|
|
100
|
+
| + [pendingOrdersCount](#pendingOrdersCount ) | No | integer | No | - | (Read-only) Orders currently in PENDING status (all-time cumulative). Corrected by full recalc on order updates. |
|
|
101
|
+
| + [orderCompletionRate30d](#orderCompletionRate30d ) | No | number | No | - | (Read-only) Percentage of orders completed or delivered in the last 30 days. Always full recalc. |
|
|
102
|
+
| + [todayPurchasesCount](#todayPurchasesCount ) | No | integer | No | - | (Read-only) Purchases created today (UTC). Resets at midnight. |
|
|
103
|
+
| + [todayPurchasesSum](#todayPurchasesSum ) | No | number | No | - | (Read-only) Total value of purchases created today (UTC). Resets at midnight. |
|
|
104
|
+
| + [averagePurchaseAmount](#averagePurchaseAmount ) | No | number | No | - | (Read-only) Average purchase value across last 200 purchases (rolling, not time-windowed). |
|
|
105
|
+
| + [monthlyRevenue](#monthlyRevenue ) | No | number | No | - | (Read-only) Total purchase value in the current calendar month (UTC). |
|
|
106
|
+
| + [monthlyPurchasesCount](#monthlyPurchasesCount ) | No | integer | No | - | (Read-only) Number of purchases in the current calendar month (UTC). |
|
|
107
|
+
| + [todayBookingsCount](#todayBookingsCount ) | No | integer | No | - | (Read-only) Bookings with date == today AND status in [PENDING, CONFIRMED]. Resets at midnight. |
|
|
108
|
+
| + [bookingsCreatedToday](#bookingsCreatedToday ) | No | integer | No | - | (Read-only) Bookings with createdAt today (all statuses). Resets at midnight. |
|
|
109
|
+
| + [todayBookingsConfirmedAmount](#todayBookingsConfirmedAmount ) | No | number | No | - | (Read-only) Sum of totalAmount for bookings created today with status CONFIRMED or COMPLETED. Resets at midnight. |
|
|
110
|
+
| + [monthlyBookingsConfirmedAmount](#monthlyBookingsConfirmedAmount ) | No | number | No | - | (Read-only) Sum of totalAmount for bookings created this month with status CONFIRMED or COMPLETED. |
|
|
111
|
+
| + [todayCollectedAmount](#todayCollectedAmount ) | No | number | No | - | (Read-only) Sum of totalAmount for bookings where PAYMENT_PAID_AT is today. Resets at midnight. |
|
|
112
|
+
| + [todayRevenue](#todayRevenue ) | No | number | No | - | (Read-only) Sum of totalAmount for COMPLETED bookings where startDate == endDate == today (numeric YYYYMMDD). Resets at midnight. |
|
|
113
|
+
| + [bookingsPendingPaymentVerification](#bookingsPendingPaymentVerification ) | No | integer | No | - | (Read-only) Bookings with status PENDING/CANCELLATION_REQUESTED and a payment proof uploaded but not yet verified. Current state, always full recalc. |
|
|
114
|
+
| + [bookingsPendingValidation](#bookingsPendingValidation ) | No | integer | No | - | (Read-only) PENDING bookings with startDate within ±30 days of today. Rolling window, always full recalc. |
|
|
115
|
+
| + [bookingsPendingValidation24h](#bookingsPendingValidation24h ) | No | integer | No | - | (Read-only) PENDING bookings created in the last 24h with startDate >= tomorrow. Always full recalc. |
|
|
116
|
+
| + [customersCount](#customersCount ) | No | integer | No | - | (Read-only) Total customer count (all-time cumulative). |
|
|
117
|
+
| + [newCustomersThisMonth](#newCustomersThisMonth ) | No | integer | No | - | (Read-only) Customers with createdAt in the current calendar month (UTC). |
|
|
118
|
+
| + [averageRating](#averageRating ) | No | number | No | - | (Read-only) Average rating from the last 200 reviews (rolling). Always full recalc. |
|
|
119
|
+
| + [lowStockItemsCount](#lowStockItemsCount ) | No | integer | No | - | (Read-only) Active stock items where currentQuantity <= minimumQuantity. Current state, always full recalc. |
|
|
120
|
+
| + [activeRecurringPaymentsCount](#activeRecurringPaymentsCount ) | No | integer | No | - | (Read-only) Recurring payments with status ACTIVE. Current state, always full recalc. |
|
|
121
|
+
| + [monthlyRecurringRevenue](#monthlyRecurringRevenue ) | No | number | No | - | (Read-only) Sum of amount for ACTIVE + MONTHLY recurring payments. Always full recalc. |
|
|
122
|
+
| - [escalatedOrdersCount](#escalatedOrdersCount ) | No | integer or null | No | - | (Read-only, Optional) Orders currently in an escalated state. Present once the current aggregator rewrites the document. |
|
|
123
|
+
| - [staleOrdersCount](#staleOrdersCount ) | No | integer or null | No | - | (Read-only, Optional) Orders that have been in an incomplete status beyond the stale threshold. |
|
|
124
|
+
| - [staleBookingsCount](#staleBookingsCount ) | No | integer or null | No | - | (Read-only, Optional) Bookings that have been in an incomplete status beyond the stale threshold. |
|
|
125
|
+
| - [onHoldOrdersCount](#onHoldOrdersCount ) | No | integer or null | No | - | (Read-only, Optional) Orders currently in an on-hold state. |
|
|
126
|
+
| - [paymentsByMethod](#paymentsByMethod ) | No | object or null | No | - | (Read-only, Optional) Payment breakdown by method for the day. Keys are PaymentMethod values (or legacy short code OM). Value is \{ total: XOF amount, count: number of payments \}. |
|
|
127
|
+
| + [computedForDay](#computedForDay ) | No | string | No | - | (Read-only) YYYY-MM-DD string indicating which day these metrics reflect. Used to detect day boundaries and trigger midnight resets. |
|
|
128
|
+
| + [generatedAt](#generatedAt ) | No | object | No | In #/definitions/firestore-timestamp | (Read-only) Server timestamp of the last metrics write. |
|
|
129
|
+
| + [date](#date ) | No | string | No | - | (Read-only) YYYY-MM-DD document ID repeated as a field. Identifies the day this snapshot covers. |
|
|
128
130
|
|
|
129
131
|
## <a name="todayOrdersCount"></a>1. Property `todayOrdersCount`
|
|
130
132
|
|
|
@@ -175,6 +177,10 @@ Do not include in write requests. This field is set exclusively by the server (F
|
|
|
175
177
|
Do not include in write requests. This field is set exclusively by the server (Firestore trigger or Admin SDK). Clients that send it will have the value silently ignored or may receive a validation error.
|
|
176
178
|
:::
|
|
177
179
|
|
|
180
|
+
:::note
|
|
181
|
+
Firestore REST API v1 writes integerValue when the stored value is whole (e.g. 0), doubleValue when fractional (e.g. 82.17). Admin SDK smooths this to a JS number; REST clients must coerce the union (#11).
|
|
182
|
+
:::
|
|
183
|
+
|
|
178
184
|
## <a name="todayPurchasesCount"></a>4. Property `todayPurchasesCount`
|
|
179
185
|
|
|
180
186
|
| | |
|
|
@@ -219,6 +225,10 @@ Do not include in write requests. This field is set exclusively by the server (F
|
|
|
219
225
|
Do not include in write requests. This field is set exclusively by the server (Firestore trigger or Admin SDK). Clients that send it will have the value silently ignored or may receive a validation error.
|
|
220
226
|
:::
|
|
221
227
|
|
|
228
|
+
:::note
|
|
229
|
+
Firestore REST API v1 writes integerValue when whole (e.g. 10070), doubleValue when fractional (e.g. 10006.5). Admin SDK smooths this; REST clients must coerce (#11).
|
|
230
|
+
:::
|
|
231
|
+
|
|
222
232
|
## <a name="monthlyRevenue"></a>7. Property `monthlyRevenue`
|
|
223
233
|
|
|
224
234
|
| | |
|
|
@@ -232,6 +242,10 @@ Do not include in write requests. This field is set exclusively by the server (F
|
|
|
232
242
|
Do not include in write requests. This field is set exclusively by the server (Firestore trigger or Admin SDK). Clients that send it will have the value silently ignored or may receive a validation error.
|
|
233
243
|
:::
|
|
234
244
|
|
|
245
|
+
:::note
|
|
246
|
+
Observed as integerValue on all sampled tenants (whole XOF amounts). Will be doubleValue if fractional. REST clients must coerce (#11).
|
|
247
|
+
:::
|
|
248
|
+
|
|
235
249
|
## <a name="monthlyPurchasesCount"></a>8. Property `monthlyPurchasesCount`
|
|
236
250
|
|
|
237
251
|
| | |
|
|
@@ -325,6 +339,10 @@ Do not include in write requests. This field is set exclusively by the server (F
|
|
|
325
339
|
Do not include in write requests. This field is set exclusively by the server (Firestore trigger or Admin SDK). Clients that send it will have the value silently ignored or may receive a validation error.
|
|
326
340
|
:::
|
|
327
341
|
|
|
342
|
+
:::note
|
|
343
|
+
Observed as integerValue "0" on all sampled tenants. Will be doubleValue if fractional payments occur. REST clients must coerce (#11).
|
|
344
|
+
:::
|
|
345
|
+
|
|
328
346
|
## <a name="todayRevenue"></a>14. Property `todayRevenue`
|
|
329
347
|
|
|
330
348
|
| | |
|
|
@@ -441,6 +459,10 @@ Do not include in write requests. This field is set exclusively by the server (F
|
|
|
441
459
|
Do not include in write requests. This field is set exclusively by the server (Firestore trigger or Admin SDK). Clients that send it will have the value silently ignored or may receive a validation error.
|
|
442
460
|
:::
|
|
443
461
|
|
|
462
|
+
:::note
|
|
463
|
+
Observed as integerValue "0" on all tenants (no reviews yet). Will be doubleValue once real ratings exist. REST clients must coerce (#11).
|
|
464
|
+
:::
|
|
465
|
+
|
|
444
466
|
## <a name="lowStockItemsCount"></a>21. Property `lowStockItemsCount`
|
|
445
467
|
|
|
446
468
|
| | |
|
|
@@ -585,25 +607,54 @@ Absent on tenants whose metrics/current was last written before aggregator v2. B
|
|
|
585
607
|
| **Type** | `object or null` |
|
|
586
608
|
| **Required** | No |
|
|
587
609
|
|
|
588
|
-
**Description:** (Read-only, Optional)
|
|
610
|
+
**Description:** (Read-only, Optional) Payment breakdown by method for the day. Keys are PaymentMethod values (or legacy short code OM). Value is \{ total: XOF amount, count: number of payments \}.
|
|
589
611
|
|
|
590
612
|
| Property | Pattern | Type | Deprecated | Definition | Title/Description |
|
|
591
613
|
| --------------------------------------------- | ------- | ------ | ---------- | ---------- | ----------------- |
|
|
592
|
-
| - [](#paymentsByMethod_additionalProperties ) | No |
|
|
614
|
+
| - [](#paymentsByMethod_additionalProperties ) | No | object | No | - | - |
|
|
593
615
|
|
|
594
616
|
### <a name="paymentsByMethod_additionalProperties"></a>28.1. Property `additionalProperties`
|
|
595
617
|
|
|
618
|
+
| | |
|
|
619
|
+
| ------------------------- | ----------- |
|
|
620
|
+
| **Type** | `object` |
|
|
621
|
+
| **Required** | No |
|
|
622
|
+
| **Additional properties** | Not allowed |
|
|
623
|
+
|
|
624
|
+
| Property | Pattern | Type | Deprecated | Definition | Title/Description |
|
|
625
|
+
| -------------------------------------------------------- | ------- | ------- | ---------- | ---------- | -------------------------------------------------------------- |
|
|
626
|
+
| + [total](#paymentsByMethod_additionalProperties_total ) | No | number | No | - | Sum of payment amounts for this method on the given day (XOF). |
|
|
627
|
+
| + [count](#paymentsByMethod_additionalProperties_count ) | No | integer | No | - | Number of payments using this method on the given day. |
|
|
628
|
+
|
|
629
|
+
#### <a name="paymentsByMethod_additionalProperties_total"></a>28.1.1. Property `total`
|
|
630
|
+
|
|
596
631
|
| | |
|
|
597
632
|
| ------------ | -------- |
|
|
598
633
|
| **Type** | `number` |
|
|
599
|
-
| **Required** |
|
|
634
|
+
| **Required** | Yes |
|
|
635
|
+
|
|
636
|
+
**Description:** Sum of payment amounts for this method on the given day (XOF).
|
|
637
|
+
|
|
638
|
+
#### <a name="paymentsByMethod_additionalProperties_count"></a>28.1.2. Property `count`
|
|
639
|
+
|
|
640
|
+
| | |
|
|
641
|
+
| ------------ | --------- |
|
|
642
|
+
| **Type** | `integer` |
|
|
643
|
+
| **Required** | Yes |
|
|
644
|
+
|
|
645
|
+
**Description:** Number of payments using this method on the given day.
|
|
646
|
+
|
|
647
|
+
| Restrictions | |
|
|
648
|
+
| ------------ | ---------------------- |
|
|
649
|
+
| **Minimum** | ≥ -9007199254740991 |
|
|
650
|
+
| **Maximum** | ≤ 9007199254740991 |
|
|
600
651
|
|
|
601
652
|
:::warning Server-set
|
|
602
653
|
Do not include in write requests. This field is set exclusively by the server (Firestore trigger or Admin SDK). Clients that send it will have the value silently ignored or may receive a validation error.
|
|
603
654
|
:::
|
|
604
655
|
|
|
605
656
|
:::note
|
|
606
|
-
|
|
657
|
+
Map keys use short codes in practice (OM, CASH, WAVE) — OM is a non-canonical alias for ORANGE_MONEY emitted by the metrics writer (#21). Value shape \{ total, count \} differs from MetricsCurrent.paymentsByMethod (bare number).
|
|
607
658
|
:::
|
|
608
659
|
|
|
609
660
|
## <a name="computedForDay"></a>29. Property `computedForDay`
|
|
@@ -673,7 +724,7 @@ Do not include in write requests. This field is set exclusively by the server (F
|
|
|
673
724
|
**Description:** (Read-only) YYYY-MM-DD document ID repeated as a field. Identifies the day this snapshot covers.
|
|
674
725
|
|
|
675
726
|
----------------------------------------------------------------------------------------------------------------------------
|
|
676
|
-
Generated using [json-schema-for-humans](https://github.com/coveooss/json-schema-for-humans) on 2026-05-30 at 13:
|
|
727
|
+
Generated using [json-schema-for-humans](https://github.com/coveooss/json-schema-for-humans) on 2026-05-30 at 13:57:28 +0000
|
|
677
728
|
|
|
678
729
|
:::warning Server-set
|
|
679
730
|
Do not include in write requests. This field is set exclusively by the server (Firestore trigger or Admin SDK). Clients that send it will have the value silently ignored or may receive a validation error.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: "MetricsMonthly"
|
|
3
3
|
sidebar_label: "MetricsMonthly"
|
|
4
|
-
sidebar_position:
|
|
4
|
+
sidebar_position: 23
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
# MetricsMonthly
|
|
@@ -175,6 +175,10 @@ Do not include in write requests. This field is set exclusively by the server (F
|
|
|
175
175
|
Do not include in write requests. This field is set exclusively by the server (Firestore trigger or Admin SDK). Clients that send it will have the value silently ignored or may receive a validation error.
|
|
176
176
|
:::
|
|
177
177
|
|
|
178
|
+
:::note
|
|
179
|
+
Firestore REST API v1 writes integerValue when the stored value is whole (e.g. 0), doubleValue when fractional (e.g. 82.17). Admin SDK smooths this to a JS number; REST clients must coerce the union (#11).
|
|
180
|
+
:::
|
|
181
|
+
|
|
178
182
|
## <a name="todayPurchasesCount"></a>4. Property `todayPurchasesCount`
|
|
179
183
|
|
|
180
184
|
| | |
|
|
@@ -219,6 +223,10 @@ Do not include in write requests. This field is set exclusively by the server (F
|
|
|
219
223
|
Do not include in write requests. This field is set exclusively by the server (Firestore trigger or Admin SDK). Clients that send it will have the value silently ignored or may receive a validation error.
|
|
220
224
|
:::
|
|
221
225
|
|
|
226
|
+
:::note
|
|
227
|
+
Firestore REST API v1 writes integerValue when whole (e.g. 10070), doubleValue when fractional (e.g. 10006.5). Admin SDK smooths this; REST clients must coerce (#11).
|
|
228
|
+
:::
|
|
229
|
+
|
|
222
230
|
## <a name="monthlyRevenue"></a>7. Property `monthlyRevenue`
|
|
223
231
|
|
|
224
232
|
| | |
|
|
@@ -232,6 +240,10 @@ Do not include in write requests. This field is set exclusively by the server (F
|
|
|
232
240
|
Do not include in write requests. This field is set exclusively by the server (Firestore trigger or Admin SDK). Clients that send it will have the value silently ignored or may receive a validation error.
|
|
233
241
|
:::
|
|
234
242
|
|
|
243
|
+
:::note
|
|
244
|
+
Observed as integerValue on all sampled tenants (whole XOF amounts). Will be doubleValue if fractional. REST clients must coerce (#11).
|
|
245
|
+
:::
|
|
246
|
+
|
|
235
247
|
## <a name="monthlyPurchasesCount"></a>8. Property `monthlyPurchasesCount`
|
|
236
248
|
|
|
237
249
|
| | |
|
|
@@ -325,6 +337,10 @@ Do not include in write requests. This field is set exclusively by the server (F
|
|
|
325
337
|
Do not include in write requests. This field is set exclusively by the server (Firestore trigger or Admin SDK). Clients that send it will have the value silently ignored or may receive a validation error.
|
|
326
338
|
:::
|
|
327
339
|
|
|
340
|
+
:::note
|
|
341
|
+
Observed as integerValue "0" on all sampled tenants. Will be doubleValue if fractional payments occur. REST clients must coerce (#11).
|
|
342
|
+
:::
|
|
343
|
+
|
|
328
344
|
## <a name="todayRevenue"></a>14. Property `todayRevenue`
|
|
329
345
|
|
|
330
346
|
| | |
|
|
@@ -441,6 +457,10 @@ Do not include in write requests. This field is set exclusively by the server (F
|
|
|
441
457
|
Do not include in write requests. This field is set exclusively by the server (Firestore trigger or Admin SDK). Clients that send it will have the value silently ignored or may receive a validation error.
|
|
442
458
|
:::
|
|
443
459
|
|
|
460
|
+
:::note
|
|
461
|
+
Observed as integerValue "0" on all tenants (no reviews yet). Will be doubleValue once real ratings exist. REST clients must coerce (#11).
|
|
462
|
+
:::
|
|
463
|
+
|
|
444
464
|
## <a name="lowStockItemsCount"></a>21. Property `lowStockItemsCount`
|
|
445
465
|
|
|
446
466
|
| | |
|
|
@@ -673,7 +693,7 @@ Do not include in write requests. This field is set exclusively by the server (F
|
|
|
673
693
|
**Description:** (Read-only) YYYY-MM document ID repeated as a field. Identifies the month this rollup covers.
|
|
674
694
|
|
|
675
695
|
----------------------------------------------------------------------------------------------------------------------------
|
|
676
|
-
Generated using [json-schema-for-humans](https://github.com/coveooss/json-schema-for-humans) on 2026-05-30 at 13:
|
|
696
|
+
Generated using [json-schema-for-humans](https://github.com/coveooss/json-schema-for-humans) on 2026-05-30 at 13:57:28 +0000
|
|
677
697
|
|
|
678
698
|
:::warning Server-set
|
|
679
699
|
Do not include in write requests. This field is set exclusively by the server (Firestore trigger or Admin SDK). Clients that send it will have the value silently ignored or may receive a validation error.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: "NotificationRecord"
|
|
3
3
|
sidebar_label: "NotificationRecord"
|
|
4
|
-
sidebar_position:
|
|
4
|
+
sidebar_position: 24
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
# NotificationRecord
|
|
@@ -612,7 +612,7 @@ Do not include in write requests. This field is set exclusively by the server (F
|
|
|
612
612
|
| **Maximum** | ≤ 9007199254740991 |
|
|
613
613
|
|
|
614
614
|
----------------------------------------------------------------------------------------------------------------------------
|
|
615
|
-
Generated using [json-schema-for-humans](https://github.com/coveooss/json-schema-for-humans) on 2026-05-30 at 13:
|
|
615
|
+
Generated using [json-schema-for-humans](https://github.com/coveooss/json-schema-for-humans) on 2026-05-30 at 13:57:28 +0000
|
|
616
616
|
|
|
617
617
|
:::warning Server-set
|
|
618
618
|
Do not include in write requests. This field is set exclusively by the server (Firestore trigger or Admin SDK). Clients that send it will have the value silently ignored or may receive a validation error.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: "OrderItem"
|
|
3
3
|
sidebar_label: "OrderItem"
|
|
4
|
-
sidebar_position:
|
|
4
|
+
sidebar_position: 26
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
# OrderItem
|
|
@@ -350,7 +350,7 @@ TBD/WIP — Originally from the archived Couchbase Lite (CBL) restaurant flow. C
|
|
|
350
350
|
| **Required** | No |
|
|
351
351
|
|
|
352
352
|
----------------------------------------------------------------------------------------------------------------------------
|
|
353
|
-
Generated using [json-schema-for-humans](https://github.com/coveooss/json-schema-for-humans) on 2026-05-30 at 13:
|
|
353
|
+
Generated using [json-schema-for-humans](https://github.com/coveooss/json-schema-for-humans) on 2026-05-30 at 13:57:28 +0000
|
|
354
354
|
|
|
355
355
|
:::warning Server-set
|
|
356
356
|
Do not include in write requests. This field is set exclusively by the server (Firestore trigger or Admin SDK). Clients that send it will have the value silently ignored or may receive a validation error.
|