@wix/auto_sdk_bookings_services 1.0.243 → 1.0.244

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.
Files changed (45) hide show
  1. package/build/cjs/{bookings-services-v2-service-services.universal-BpDjq9wo.d.ts → bookings-services-v2-service-services.universal-BDo4HjUj.d.ts} +76 -35
  2. package/build/cjs/index.d.ts +11 -11
  3. package/build/cjs/index.js.map +1 -1
  4. package/build/cjs/index.typings.d.ts +2 -2
  5. package/build/cjs/index.typings.js.map +1 -1
  6. package/build/cjs/meta.d.ts +56 -18
  7. package/build/cjs/meta.js +2 -0
  8. package/build/cjs/meta.js.map +1 -1
  9. package/build/cjs/schemas.d.ts +676 -0
  10. package/build/cjs/schemas.js +1189 -46
  11. package/build/cjs/schemas.js.map +1 -1
  12. package/build/es/{bookings-services-v2-service-services.universal-BpDjq9wo.d.mts → bookings-services-v2-service-services.universal-BDo4HjUj.d.mts} +76 -35
  13. package/build/es/index.d.mts +11 -11
  14. package/build/es/index.mjs.map +1 -1
  15. package/build/es/index.typings.d.mts +2 -2
  16. package/build/es/index.typings.mjs.map +1 -1
  17. package/build/es/meta.d.mts +56 -18
  18. package/build/es/meta.mjs +2 -0
  19. package/build/es/meta.mjs.map +1 -1
  20. package/build/es/schemas.d.mts +676 -0
  21. package/build/es/schemas.mjs +1189 -46
  22. package/build/es/schemas.mjs.map +1 -1
  23. package/build/internal/cjs/{bookings-services-v2-service-services.universal-X8z1jH2M.d.ts → bookings-services-v2-service-services.universal-C2tQPxPU.d.ts} +69 -43
  24. package/build/internal/cjs/index.d.ts +11 -11
  25. package/build/internal/cjs/index.js.map +1 -1
  26. package/build/internal/cjs/index.typings.d.ts +2 -2
  27. package/build/internal/cjs/index.typings.js.map +1 -1
  28. package/build/internal/cjs/meta.d.ts +56 -18
  29. package/build/internal/cjs/meta.js +2 -0
  30. package/build/internal/cjs/meta.js.map +1 -1
  31. package/build/internal/cjs/schemas.d.ts +676 -0
  32. package/build/internal/cjs/schemas.js +1189 -46
  33. package/build/internal/cjs/schemas.js.map +1 -1
  34. package/build/internal/es/{bookings-services-v2-service-services.universal-X8z1jH2M.d.mts → bookings-services-v2-service-services.universal-C2tQPxPU.d.mts} +69 -43
  35. package/build/internal/es/index.d.mts +11 -11
  36. package/build/internal/es/index.mjs.map +1 -1
  37. package/build/internal/es/index.typings.d.mts +2 -2
  38. package/build/internal/es/index.typings.mjs.map +1 -1
  39. package/build/internal/es/meta.d.mts +56 -18
  40. package/build/internal/es/meta.mjs +2 -0
  41. package/build/internal/es/meta.mjs.map +1 -1
  42. package/build/internal/es/schemas.d.mts +676 -0
  43. package/build/internal/es/schemas.mjs +1189 -46
  44. package/build/internal/es/schemas.mjs.map +1 -1
  45. package/package.json +2 -2
@@ -179,7 +179,7 @@ var CreateServiceRequest = z.object({
179
179
  }).describe("Form the customer filled out when booking the service.").optional(),
180
180
  payment: z.intersection(
181
181
  z.object({
182
- rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE"]).optional(),
182
+ rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE", "SUBSCRIPTION"]).optional(),
183
183
  options: z.object({
184
184
  online: z.boolean().describe(
185
185
  "Customers can pay for the service online.\nWhen `true`:\n+ `rateType` must be `FIXED` or `VARIED`.\n+ `fixed.price` or `varied.defaultPrice` must be specified respectively.\nRead more about [getting paid online](https://support.wix.com/en/article/wix-bookings-about-getting-paid-online)."
@@ -221,11 +221,13 @@ var CreateServiceRequest = z.object({
221
221
  z.object({
222
222
  fixed: z.never().optional(),
223
223
  custom: z.never().optional(),
224
- varied: z.never().optional()
224
+ varied: z.never().optional(),
225
+ subscription: z.never().optional()
225
226
  }),
226
227
  z.object({
227
228
  custom: z.never().optional(),
228
229
  varied: z.never().optional(),
230
+ subscription: z.never().optional(),
229
231
  fixed: z.object({
230
232
  price: z.object({
231
233
  value: z.string().describe(
@@ -263,6 +265,7 @@ var CreateServiceRequest = z.object({
263
265
  z.object({
264
266
  fixed: z.never().optional(),
265
267
  varied: z.never().optional(),
268
+ subscription: z.never().optional(),
266
269
  custom: z.object({
267
270
  description: z.string().describe(
268
271
  "A custom description explaining to the customer how to pay for the service."
@@ -274,6 +277,7 @@ var CreateServiceRequest = z.object({
274
277
  z.object({
275
278
  fixed: z.never().optional(),
276
279
  custom: z.never().optional(),
280
+ subscription: z.never().optional(),
277
281
  varied: z.object({
278
282
  defaultPrice: z.object({
279
283
  value: z.string().describe(
@@ -333,6 +337,59 @@ var CreateServiceRequest = z.object({
333
337
  }).describe(
334
338
  "The details for the varied pricing of the service.\nRead more about [varied price options](https://support.wix.com/en/article/wix-bookings-about-getting-paid-online#offering-varied-price-options).\n\nRequired when: `rateType` is `VARIED`"
335
339
  )
340
+ }),
341
+ z.object({
342
+ fixed: z.never().optional(),
343
+ custom: z.never().optional(),
344
+ varied: z.never().optional(),
345
+ subscription: z.object({
346
+ amountPerBillingCycle: z.object({
347
+ value: z.string().describe(
348
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
349
+ ).optional(),
350
+ currency: z.string().describe(
351
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
352
+ ).optional(),
353
+ formattedValue: z.string().describe(
354
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
355
+ ).max(50).optional().nullable()
356
+ }).describe(
357
+ "Base price charged per billing cycle before tax and discounts.\nThe actual amount charged may differ after checkout applies tax and discounts."
358
+ ).optional(),
359
+ frequency: z.enum(["MONTHLY"]).describe(
360
+ "Billing frequency for recurring subscription charges.\nReflected as `billingFrequency` in the booking's subscription info.\n\nCurrently supports `MONTHLY` only."
361
+ ).optional(),
362
+ totalPayments: z.number().int().describe(
363
+ "Total number of billing cycles in the subscription. For example, `12` for a 12-month subscription with monthly payments.\nReflected as `totalCycles` in the booking's subscription info.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
364
+ ).min(2).optional().nullable(),
365
+ firstChargeDate: z.enum(["CHECKOUT", "SCHEDULED"]).describe(
366
+ "Determines when the first billing cycle payment is charged. Used together with `recurringStartDate` to define the subscription billing schedule."
367
+ ).optional(),
368
+ recurringStartDate: z.date().describe(
369
+ "Date and time when recurring billing starts.\n\nWhen `firstChargeDate` is `CHECKOUT`, the first charge occurs at checkout and subsequent billing cycles start from this date.\n\nWhen `firstChargeDate` is `SCHEDULED`, the first charge occurs on this date.\n\nCustomers who book after recurring billing starts are billed for the remaining billing cycles only.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
370
+ ).optional().nullable(),
371
+ enrollmentFeeAmount: z.object({
372
+ value: z.string().describe(
373
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
374
+ ).optional(),
375
+ currency: z.string().describe(
376
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
377
+ ).optional(),
378
+ formattedValue: z.string().describe(
379
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
380
+ ).max(50).optional().nullable()
381
+ }).describe("Deprecated.").optional(),
382
+ fullUpfrontPayment: z.object({
383
+ supported: z.boolean().describe(
384
+ "Whether customers can choose a one-time full payment instead of recurring subscription payments."
385
+ ).optional().nullable(),
386
+ discountPercent: z.string().describe(
387
+ "Percentage discount applied when a customer chooses the full payment option.\nMin: `0.01` percent\nMax: `100` percent"
388
+ ).optional().nullable()
389
+ }).describe("Deprecated.").optional()
390
+ }).describe(
391
+ "Subscription pricing details for the service. Supported for course services only.\nThe business charges recurring monthly payments instead of a one-time fee.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
392
+ )
336
393
  })
337
394
  ])
338
395
  ).describe(
@@ -851,7 +908,7 @@ var CreateServiceResponse = z.object({
851
908
  }).describe("Form the customer filled out when booking the service.").optional(),
852
909
  payment: z.intersection(
853
910
  z.object({
854
- rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE"]).describe("The rate the customer is expected to pay for the service.").optional(),
911
+ rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE", "SUBSCRIPTION"]).describe("The rate the customer is expected to pay for the service.").optional(),
855
912
  options: z.object({
856
913
  online: z.boolean().describe(
857
914
  "Customers can pay for the service online.\nWhen `true`:\n+ `rateType` must be `FIXED` or `VARIED`.\n+ `fixed.price` or `varied.defaultPrice` must be specified respectively.\nRead more about [getting paid online](https://support.wix.com/en/article/wix-bookings-about-getting-paid-online)."
@@ -895,11 +952,13 @@ var CreateServiceResponse = z.object({
895
952
  z.object({
896
953
  fixed: z.never().optional(),
897
954
  custom: z.never().optional(),
898
- varied: z.never().optional()
955
+ varied: z.never().optional(),
956
+ subscription: z.never().optional()
899
957
  }),
900
958
  z.object({
901
959
  custom: z.never().optional(),
902
960
  varied: z.never().optional(),
961
+ subscription: z.never().optional(),
903
962
  fixed: z.object({
904
963
  price: z.object({
905
964
  value: z.string().describe(
@@ -937,6 +996,7 @@ var CreateServiceResponse = z.object({
937
996
  z.object({
938
997
  fixed: z.never().optional(),
939
998
  varied: z.never().optional(),
999
+ subscription: z.never().optional(),
940
1000
  custom: z.object({
941
1001
  description: z.string().describe(
942
1002
  "A custom description explaining to the customer how to pay for the service."
@@ -948,6 +1008,7 @@ var CreateServiceResponse = z.object({
948
1008
  z.object({
949
1009
  fixed: z.never().optional(),
950
1010
  custom: z.never().optional(),
1011
+ subscription: z.never().optional(),
951
1012
  varied: z.object({
952
1013
  defaultPrice: z.object({
953
1014
  value: z.string().describe(
@@ -1007,6 +1068,59 @@ var CreateServiceResponse = z.object({
1007
1068
  }).describe(
1008
1069
  "The details for the varied pricing of the service.\nRead more about [varied price options](https://support.wix.com/en/article/wix-bookings-about-getting-paid-online#offering-varied-price-options).\n\nRequired when: `rateType` is `VARIED`"
1009
1070
  )
1071
+ }),
1072
+ z.object({
1073
+ fixed: z.never().optional(),
1074
+ custom: z.never().optional(),
1075
+ varied: z.never().optional(),
1076
+ subscription: z.object({
1077
+ amountPerBillingCycle: z.object({
1078
+ value: z.string().describe(
1079
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
1080
+ ).optional(),
1081
+ currency: z.string().describe(
1082
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
1083
+ ).optional(),
1084
+ formattedValue: z.string().describe(
1085
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
1086
+ ).max(50).optional().nullable()
1087
+ }).describe(
1088
+ "Base price charged per billing cycle before tax and discounts.\nThe actual amount charged may differ after checkout applies tax and discounts."
1089
+ ).optional(),
1090
+ frequency: z.enum(["MONTHLY"]).describe(
1091
+ "Billing frequency for recurring subscription charges.\nReflected as `billingFrequency` in the booking's subscription info.\n\nCurrently supports `MONTHLY` only."
1092
+ ).optional(),
1093
+ totalPayments: z.number().int().describe(
1094
+ "Total number of billing cycles in the subscription. For example, `12` for a 12-month subscription with monthly payments.\nReflected as `totalCycles` in the booking's subscription info.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
1095
+ ).min(2).optional().nullable(),
1096
+ firstChargeDate: z.enum(["CHECKOUT", "SCHEDULED"]).describe(
1097
+ "Determines when the first billing cycle payment is charged. Used together with `recurringStartDate` to define the subscription billing schedule."
1098
+ ).optional(),
1099
+ recurringStartDate: z.date().describe(
1100
+ "Date and time when recurring billing starts.\n\nWhen `firstChargeDate` is `CHECKOUT`, the first charge occurs at checkout and subsequent billing cycles start from this date.\n\nWhen `firstChargeDate` is `SCHEDULED`, the first charge occurs on this date.\n\nCustomers who book after recurring billing starts are billed for the remaining billing cycles only.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
1101
+ ).optional().nullable(),
1102
+ enrollmentFeeAmount: z.object({
1103
+ value: z.string().describe(
1104
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
1105
+ ).optional(),
1106
+ currency: z.string().describe(
1107
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
1108
+ ).optional(),
1109
+ formattedValue: z.string().describe(
1110
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
1111
+ ).max(50).optional().nullable()
1112
+ }).describe("Deprecated.").optional(),
1113
+ fullUpfrontPayment: z.object({
1114
+ supported: z.boolean().describe(
1115
+ "Whether customers can choose a one-time full payment instead of recurring subscription payments."
1116
+ ).optional().nullable(),
1117
+ discountPercent: z.string().describe(
1118
+ "Percentage discount applied when a customer chooses the full payment option.\nMin: `0.01` percent\nMax: `100` percent"
1119
+ ).optional().nullable()
1120
+ }).describe("Deprecated.").optional()
1121
+ }).describe(
1122
+ "Subscription pricing details for the service. Supported for course services only.\nThe business charges recurring monthly payments instead of a one-time fee.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
1123
+ )
1010
1124
  })
1011
1125
  ])
1012
1126
  ).describe(
@@ -1518,7 +1632,7 @@ var BulkCreateServicesRequest = z.object({
1518
1632
  }).describe("Form the customer filled out when booking the service.").optional(),
1519
1633
  payment: z.intersection(
1520
1634
  z.object({
1521
- rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE"]).optional(),
1635
+ rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE", "SUBSCRIPTION"]).optional(),
1522
1636
  options: z.object({
1523
1637
  online: z.boolean().describe(
1524
1638
  "Customers can pay for the service online.\nWhen `true`:\n+ `rateType` must be `FIXED` or `VARIED`.\n+ `fixed.price` or `varied.defaultPrice` must be specified respectively.\nRead more about [getting paid online](https://support.wix.com/en/article/wix-bookings-about-getting-paid-online)."
@@ -1560,11 +1674,13 @@ var BulkCreateServicesRequest = z.object({
1560
1674
  z.object({
1561
1675
  fixed: z.never().optional(),
1562
1676
  custom: z.never().optional(),
1563
- varied: z.never().optional()
1677
+ varied: z.never().optional(),
1678
+ subscription: z.never().optional()
1564
1679
  }),
1565
1680
  z.object({
1566
1681
  custom: z.never().optional(),
1567
1682
  varied: z.never().optional(),
1683
+ subscription: z.never().optional(),
1568
1684
  fixed: z.object({
1569
1685
  price: z.object({
1570
1686
  value: z.string().describe(
@@ -1602,6 +1718,7 @@ var BulkCreateServicesRequest = z.object({
1602
1718
  z.object({
1603
1719
  fixed: z.never().optional(),
1604
1720
  varied: z.never().optional(),
1721
+ subscription: z.never().optional(),
1605
1722
  custom: z.object({
1606
1723
  description: z.string().describe(
1607
1724
  "A custom description explaining to the customer how to pay for the service."
@@ -1613,6 +1730,7 @@ var BulkCreateServicesRequest = z.object({
1613
1730
  z.object({
1614
1731
  fixed: z.never().optional(),
1615
1732
  custom: z.never().optional(),
1733
+ subscription: z.never().optional(),
1616
1734
  varied: z.object({
1617
1735
  defaultPrice: z.object({
1618
1736
  value: z.string().describe(
@@ -1672,6 +1790,59 @@ var BulkCreateServicesRequest = z.object({
1672
1790
  }).describe(
1673
1791
  "The details for the varied pricing of the service.\nRead more about [varied price options](https://support.wix.com/en/article/wix-bookings-about-getting-paid-online#offering-varied-price-options).\n\nRequired when: `rateType` is `VARIED`"
1674
1792
  )
1793
+ }),
1794
+ z.object({
1795
+ fixed: z.never().optional(),
1796
+ custom: z.never().optional(),
1797
+ varied: z.never().optional(),
1798
+ subscription: z.object({
1799
+ amountPerBillingCycle: z.object({
1800
+ value: z.string().describe(
1801
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
1802
+ ).optional(),
1803
+ currency: z.string().describe(
1804
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
1805
+ ).optional(),
1806
+ formattedValue: z.string().describe(
1807
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
1808
+ ).max(50).optional().nullable()
1809
+ }).describe(
1810
+ "Base price charged per billing cycle before tax and discounts.\nThe actual amount charged may differ after checkout applies tax and discounts."
1811
+ ).optional(),
1812
+ frequency: z.enum(["MONTHLY"]).describe(
1813
+ "Billing frequency for recurring subscription charges.\nReflected as `billingFrequency` in the booking's subscription info.\n\nCurrently supports `MONTHLY` only."
1814
+ ).optional(),
1815
+ totalPayments: z.number().int().describe(
1816
+ "Total number of billing cycles in the subscription. For example, `12` for a 12-month subscription with monthly payments.\nReflected as `totalCycles` in the booking's subscription info.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
1817
+ ).min(2).optional().nullable(),
1818
+ firstChargeDate: z.enum(["CHECKOUT", "SCHEDULED"]).describe(
1819
+ "Determines when the first billing cycle payment is charged. Used together with `recurringStartDate` to define the subscription billing schedule."
1820
+ ).optional(),
1821
+ recurringStartDate: z.date().describe(
1822
+ "Date and time when recurring billing starts.\n\nWhen `firstChargeDate` is `CHECKOUT`, the first charge occurs at checkout and subsequent billing cycles start from this date.\n\nWhen `firstChargeDate` is `SCHEDULED`, the first charge occurs on this date.\n\nCustomers who book after recurring billing starts are billed for the remaining billing cycles only.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
1823
+ ).optional().nullable(),
1824
+ enrollmentFeeAmount: z.object({
1825
+ value: z.string().describe(
1826
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
1827
+ ).optional(),
1828
+ currency: z.string().describe(
1829
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
1830
+ ).optional(),
1831
+ formattedValue: z.string().describe(
1832
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
1833
+ ).max(50).optional().nullable()
1834
+ }).describe("Deprecated.").optional(),
1835
+ fullUpfrontPayment: z.object({
1836
+ supported: z.boolean().describe(
1837
+ "Whether customers can choose a one-time full payment instead of recurring subscription payments."
1838
+ ).optional().nullable(),
1839
+ discountPercent: z.string().describe(
1840
+ "Percentage discount applied when a customer chooses the full payment option.\nMin: `0.01` percent\nMax: `100` percent"
1841
+ ).optional().nullable()
1842
+ }).describe("Deprecated.").optional()
1843
+ }).describe(
1844
+ "Subscription pricing details for the service. Supported for course services only.\nThe business charges recurring monthly payments instead of a one-time fee.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
1845
+ )
1675
1846
  })
1676
1847
  ])
1677
1848
  ).describe(
@@ -2222,7 +2393,13 @@ var BulkCreateServicesResponse = z.object({
2222
2393
  ).optional(),
2223
2394
  payment: z.intersection(
2224
2395
  z.object({
2225
- rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE"]).describe(
2396
+ rateType: z.enum([
2397
+ "FIXED",
2398
+ "CUSTOM",
2399
+ "VARIED",
2400
+ "NO_FEE",
2401
+ "SUBSCRIPTION"
2402
+ ]).describe(
2226
2403
  "The rate the customer is expected to pay for the service."
2227
2404
  ).optional(),
2228
2405
  options: z.object({
@@ -2270,11 +2447,13 @@ var BulkCreateServicesResponse = z.object({
2270
2447
  z.object({
2271
2448
  fixed: z.never().optional(),
2272
2449
  custom: z.never().optional(),
2273
- varied: z.never().optional()
2450
+ varied: z.never().optional(),
2451
+ subscription: z.never().optional()
2274
2452
  }),
2275
2453
  z.object({
2276
2454
  custom: z.never().optional(),
2277
2455
  varied: z.never().optional(),
2456
+ subscription: z.never().optional(),
2278
2457
  fixed: z.object({
2279
2458
  price: z.object({
2280
2459
  value: z.string().describe(
@@ -2312,6 +2491,7 @@ var BulkCreateServicesResponse = z.object({
2312
2491
  z.object({
2313
2492
  fixed: z.never().optional(),
2314
2493
  varied: z.never().optional(),
2494
+ subscription: z.never().optional(),
2315
2495
  custom: z.object({
2316
2496
  description: z.string().describe(
2317
2497
  "A custom description explaining to the customer how to pay for the service."
@@ -2323,6 +2503,7 @@ var BulkCreateServicesResponse = z.object({
2323
2503
  z.object({
2324
2504
  fixed: z.never().optional(),
2325
2505
  custom: z.never().optional(),
2506
+ subscription: z.never().optional(),
2326
2507
  varied: z.object({
2327
2508
  defaultPrice: z.object({
2328
2509
  value: z.string().describe(
@@ -2382,6 +2563,59 @@ var BulkCreateServicesResponse = z.object({
2382
2563
  }).describe(
2383
2564
  "The details for the varied pricing of the service.\nRead more about [varied price options](https://support.wix.com/en/article/wix-bookings-about-getting-paid-online#offering-varied-price-options).\n\nRequired when: `rateType` is `VARIED`"
2384
2565
  )
2566
+ }),
2567
+ z.object({
2568
+ fixed: z.never().optional(),
2569
+ custom: z.never().optional(),
2570
+ varied: z.never().optional(),
2571
+ subscription: z.object({
2572
+ amountPerBillingCycle: z.object({
2573
+ value: z.string().describe(
2574
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
2575
+ ).optional(),
2576
+ currency: z.string().describe(
2577
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
2578
+ ).optional(),
2579
+ formattedValue: z.string().describe(
2580
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
2581
+ ).max(50).optional().nullable()
2582
+ }).describe(
2583
+ "Base price charged per billing cycle before tax and discounts.\nThe actual amount charged may differ after checkout applies tax and discounts."
2584
+ ).optional(),
2585
+ frequency: z.enum(["MONTHLY"]).describe(
2586
+ "Billing frequency for recurring subscription charges.\nReflected as `billingFrequency` in the booking's subscription info.\n\nCurrently supports `MONTHLY` only."
2587
+ ).optional(),
2588
+ totalPayments: z.number().int().describe(
2589
+ "Total number of billing cycles in the subscription. For example, `12` for a 12-month subscription with monthly payments.\nReflected as `totalCycles` in the booking's subscription info.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
2590
+ ).min(2).optional().nullable(),
2591
+ firstChargeDate: z.enum(["CHECKOUT", "SCHEDULED"]).describe(
2592
+ "Determines when the first billing cycle payment is charged. Used together with `recurringStartDate` to define the subscription billing schedule."
2593
+ ).optional(),
2594
+ recurringStartDate: z.date().describe(
2595
+ "Date and time when recurring billing starts.\n\nWhen `firstChargeDate` is `CHECKOUT`, the first charge occurs at checkout and subsequent billing cycles start from this date.\n\nWhen `firstChargeDate` is `SCHEDULED`, the first charge occurs on this date.\n\nCustomers who book after recurring billing starts are billed for the remaining billing cycles only.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
2596
+ ).optional().nullable(),
2597
+ enrollmentFeeAmount: z.object({
2598
+ value: z.string().describe(
2599
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
2600
+ ).optional(),
2601
+ currency: z.string().describe(
2602
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
2603
+ ).optional(),
2604
+ formattedValue: z.string().describe(
2605
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
2606
+ ).max(50).optional().nullable()
2607
+ }).describe("Deprecated.").optional(),
2608
+ fullUpfrontPayment: z.object({
2609
+ supported: z.boolean().describe(
2610
+ "Whether customers can choose a one-time full payment instead of recurring subscription payments."
2611
+ ).optional().nullable(),
2612
+ discountPercent: z.string().describe(
2613
+ "Percentage discount applied when a customer chooses the full payment option.\nMin: `0.01` percent\nMax: `100` percent"
2614
+ ).optional().nullable()
2615
+ }).describe("Deprecated.").optional()
2616
+ }).describe(
2617
+ "Subscription pricing details for the service. Supported for course services only.\nThe business charges recurring monthly payments instead of a one-time fee.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
2618
+ )
2385
2619
  })
2386
2620
  ])
2387
2621
  ).describe(
@@ -2930,7 +3164,7 @@ var GetServiceResponse = z.object({
2930
3164
  }).describe("Form the customer filled out when booking the service.").optional(),
2931
3165
  payment: z.intersection(
2932
3166
  z.object({
2933
- rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE"]).describe("The rate the customer is expected to pay for the service.").optional(),
3167
+ rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE", "SUBSCRIPTION"]).describe("The rate the customer is expected to pay for the service.").optional(),
2934
3168
  options: z.object({
2935
3169
  online: z.boolean().describe(
2936
3170
  "Customers can pay for the service online.\nWhen `true`:\n+ `rateType` must be `FIXED` or `VARIED`.\n+ `fixed.price` or `varied.defaultPrice` must be specified respectively.\nRead more about [getting paid online](https://support.wix.com/en/article/wix-bookings-about-getting-paid-online)."
@@ -2974,11 +3208,13 @@ var GetServiceResponse = z.object({
2974
3208
  z.object({
2975
3209
  fixed: z.never().optional(),
2976
3210
  custom: z.never().optional(),
2977
- varied: z.never().optional()
3211
+ varied: z.never().optional(),
3212
+ subscription: z.never().optional()
2978
3213
  }),
2979
3214
  z.object({
2980
3215
  custom: z.never().optional(),
2981
3216
  varied: z.never().optional(),
3217
+ subscription: z.never().optional(),
2982
3218
  fixed: z.object({
2983
3219
  price: z.object({
2984
3220
  value: z.string().describe(
@@ -3016,6 +3252,7 @@ var GetServiceResponse = z.object({
3016
3252
  z.object({
3017
3253
  fixed: z.never().optional(),
3018
3254
  varied: z.never().optional(),
3255
+ subscription: z.never().optional(),
3019
3256
  custom: z.object({
3020
3257
  description: z.string().describe(
3021
3258
  "A custom description explaining to the customer how to pay for the service."
@@ -3027,6 +3264,7 @@ var GetServiceResponse = z.object({
3027
3264
  z.object({
3028
3265
  fixed: z.never().optional(),
3029
3266
  custom: z.never().optional(),
3267
+ subscription: z.never().optional(),
3030
3268
  varied: z.object({
3031
3269
  defaultPrice: z.object({
3032
3270
  value: z.string().describe(
@@ -3086,6 +3324,59 @@ var GetServiceResponse = z.object({
3086
3324
  }).describe(
3087
3325
  "The details for the varied pricing of the service.\nRead more about [varied price options](https://support.wix.com/en/article/wix-bookings-about-getting-paid-online#offering-varied-price-options).\n\nRequired when: `rateType` is `VARIED`"
3088
3326
  )
3327
+ }),
3328
+ z.object({
3329
+ fixed: z.never().optional(),
3330
+ custom: z.never().optional(),
3331
+ varied: z.never().optional(),
3332
+ subscription: z.object({
3333
+ amountPerBillingCycle: z.object({
3334
+ value: z.string().describe(
3335
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
3336
+ ).optional(),
3337
+ currency: z.string().describe(
3338
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
3339
+ ).optional(),
3340
+ formattedValue: z.string().describe(
3341
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
3342
+ ).max(50).optional().nullable()
3343
+ }).describe(
3344
+ "Base price charged per billing cycle before tax and discounts.\nThe actual amount charged may differ after checkout applies tax and discounts."
3345
+ ).optional(),
3346
+ frequency: z.enum(["MONTHLY"]).describe(
3347
+ "Billing frequency for recurring subscription charges.\nReflected as `billingFrequency` in the booking's subscription info.\n\nCurrently supports `MONTHLY` only."
3348
+ ).optional(),
3349
+ totalPayments: z.number().int().describe(
3350
+ "Total number of billing cycles in the subscription. For example, `12` for a 12-month subscription with monthly payments.\nReflected as `totalCycles` in the booking's subscription info.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
3351
+ ).min(2).optional().nullable(),
3352
+ firstChargeDate: z.enum(["CHECKOUT", "SCHEDULED"]).describe(
3353
+ "Determines when the first billing cycle payment is charged. Used together with `recurringStartDate` to define the subscription billing schedule."
3354
+ ).optional(),
3355
+ recurringStartDate: z.date().describe(
3356
+ "Date and time when recurring billing starts.\n\nWhen `firstChargeDate` is `CHECKOUT`, the first charge occurs at checkout and subsequent billing cycles start from this date.\n\nWhen `firstChargeDate` is `SCHEDULED`, the first charge occurs on this date.\n\nCustomers who book after recurring billing starts are billed for the remaining billing cycles only.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
3357
+ ).optional().nullable(),
3358
+ enrollmentFeeAmount: z.object({
3359
+ value: z.string().describe(
3360
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
3361
+ ).optional(),
3362
+ currency: z.string().describe(
3363
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
3364
+ ).optional(),
3365
+ formattedValue: z.string().describe(
3366
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
3367
+ ).max(50).optional().nullable()
3368
+ }).describe("Deprecated.").optional(),
3369
+ fullUpfrontPayment: z.object({
3370
+ supported: z.boolean().describe(
3371
+ "Whether customers can choose a one-time full payment instead of recurring subscription payments."
3372
+ ).optional().nullable(),
3373
+ discountPercent: z.string().describe(
3374
+ "Percentage discount applied when a customer chooses the full payment option.\nMin: `0.01` percent\nMax: `100` percent"
3375
+ ).optional().nullable()
3376
+ }).describe("Deprecated.").optional()
3377
+ }).describe(
3378
+ "Subscription pricing details for the service. Supported for course services only.\nThe business charges recurring monthly payments instead of a one-time fee.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
3379
+ )
3089
3380
  })
3090
3381
  ])
3091
3382
  ).describe(
@@ -3600,7 +3891,7 @@ var UpdateServiceRequest = z.object({
3600
3891
  }).describe("Form the customer filled out when booking the service.").optional(),
3601
3892
  payment: z.intersection(
3602
3893
  z.object({
3603
- rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE"]).optional(),
3894
+ rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE", "SUBSCRIPTION"]).optional(),
3604
3895
  options: z.object({
3605
3896
  online: z.boolean().describe(
3606
3897
  "Customers can pay for the service online.\nWhen `true`:\n+ `rateType` must be `FIXED` or `VARIED`.\n+ `fixed.price` or `varied.defaultPrice` must be specified respectively.\nRead more about [getting paid online](https://support.wix.com/en/article/wix-bookings-about-getting-paid-online)."
@@ -3642,11 +3933,13 @@ var UpdateServiceRequest = z.object({
3642
3933
  z.object({
3643
3934
  fixed: z.never().optional(),
3644
3935
  custom: z.never().optional(),
3645
- varied: z.never().optional()
3936
+ varied: z.never().optional(),
3937
+ subscription: z.never().optional()
3646
3938
  }),
3647
3939
  z.object({
3648
3940
  custom: z.never().optional(),
3649
3941
  varied: z.never().optional(),
3942
+ subscription: z.never().optional(),
3650
3943
  fixed: z.object({
3651
3944
  price: z.object({
3652
3945
  value: z.string().describe(
@@ -3684,6 +3977,7 @@ var UpdateServiceRequest = z.object({
3684
3977
  z.object({
3685
3978
  fixed: z.never().optional(),
3686
3979
  varied: z.never().optional(),
3980
+ subscription: z.never().optional(),
3687
3981
  custom: z.object({
3688
3982
  description: z.string().describe(
3689
3983
  "A custom description explaining to the customer how to pay for the service."
@@ -3695,6 +3989,7 @@ var UpdateServiceRequest = z.object({
3695
3989
  z.object({
3696
3990
  fixed: z.never().optional(),
3697
3991
  custom: z.never().optional(),
3992
+ subscription: z.never().optional(),
3698
3993
  varied: z.object({
3699
3994
  defaultPrice: z.object({
3700
3995
  value: z.string().describe(
@@ -3754,6 +4049,59 @@ var UpdateServiceRequest = z.object({
3754
4049
  }).describe(
3755
4050
  "The details for the varied pricing of the service.\nRead more about [varied price options](https://support.wix.com/en/article/wix-bookings-about-getting-paid-online#offering-varied-price-options).\n\nRequired when: `rateType` is `VARIED`"
3756
4051
  )
4052
+ }),
4053
+ z.object({
4054
+ fixed: z.never().optional(),
4055
+ custom: z.never().optional(),
4056
+ varied: z.never().optional(),
4057
+ subscription: z.object({
4058
+ amountPerBillingCycle: z.object({
4059
+ value: z.string().describe(
4060
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
4061
+ ).optional(),
4062
+ currency: z.string().describe(
4063
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
4064
+ ).optional(),
4065
+ formattedValue: z.string().describe(
4066
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
4067
+ ).max(50).optional().nullable()
4068
+ }).describe(
4069
+ "Base price charged per billing cycle before tax and discounts.\nThe actual amount charged may differ after checkout applies tax and discounts."
4070
+ ).optional(),
4071
+ frequency: z.enum(["MONTHLY"]).describe(
4072
+ "Billing frequency for recurring subscription charges.\nReflected as `billingFrequency` in the booking's subscription info.\n\nCurrently supports `MONTHLY` only."
4073
+ ).optional(),
4074
+ totalPayments: z.number().int().describe(
4075
+ "Total number of billing cycles in the subscription. For example, `12` for a 12-month subscription with monthly payments.\nReflected as `totalCycles` in the booking's subscription info.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
4076
+ ).min(2).optional().nullable(),
4077
+ firstChargeDate: z.enum(["CHECKOUT", "SCHEDULED"]).describe(
4078
+ "Determines when the first billing cycle payment is charged. Used together with `recurringStartDate` to define the subscription billing schedule."
4079
+ ).optional(),
4080
+ recurringStartDate: z.date().describe(
4081
+ "Date and time when recurring billing starts.\n\nWhen `firstChargeDate` is `CHECKOUT`, the first charge occurs at checkout and subsequent billing cycles start from this date.\n\nWhen `firstChargeDate` is `SCHEDULED`, the first charge occurs on this date.\n\nCustomers who book after recurring billing starts are billed for the remaining billing cycles only.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
4082
+ ).optional().nullable(),
4083
+ enrollmentFeeAmount: z.object({
4084
+ value: z.string().describe(
4085
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
4086
+ ).optional(),
4087
+ currency: z.string().describe(
4088
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
4089
+ ).optional(),
4090
+ formattedValue: z.string().describe(
4091
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
4092
+ ).max(50).optional().nullable()
4093
+ }).describe("Deprecated.").optional(),
4094
+ fullUpfrontPayment: z.object({
4095
+ supported: z.boolean().describe(
4096
+ "Whether customers can choose a one-time full payment instead of recurring subscription payments."
4097
+ ).optional().nullable(),
4098
+ discountPercent: z.string().describe(
4099
+ "Percentage discount applied when a customer chooses the full payment option.\nMin: `0.01` percent\nMax: `100` percent"
4100
+ ).optional().nullable()
4101
+ }).describe("Deprecated.").optional()
4102
+ }).describe(
4103
+ "Subscription pricing details for the service. Supported for course services only.\nThe business charges recurring monthly payments instead of a one-time fee.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
4104
+ )
3757
4105
  })
3758
4106
  ])
3759
4107
  ).describe(
@@ -4272,7 +4620,7 @@ var UpdateServiceResponse = z.object({
4272
4620
  }).describe("Form the customer filled out when booking the service.").optional(),
4273
4621
  payment: z.intersection(
4274
4622
  z.object({
4275
- rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE"]).describe("The rate the customer is expected to pay for the service.").optional(),
4623
+ rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE", "SUBSCRIPTION"]).describe("The rate the customer is expected to pay for the service.").optional(),
4276
4624
  options: z.object({
4277
4625
  online: z.boolean().describe(
4278
4626
  "Customers can pay for the service online.\nWhen `true`:\n+ `rateType` must be `FIXED` or `VARIED`.\n+ `fixed.price` or `varied.defaultPrice` must be specified respectively.\nRead more about [getting paid online](https://support.wix.com/en/article/wix-bookings-about-getting-paid-online)."
@@ -4316,11 +4664,13 @@ var UpdateServiceResponse = z.object({
4316
4664
  z.object({
4317
4665
  fixed: z.never().optional(),
4318
4666
  custom: z.never().optional(),
4319
- varied: z.never().optional()
4667
+ varied: z.never().optional(),
4668
+ subscription: z.never().optional()
4320
4669
  }),
4321
4670
  z.object({
4322
4671
  custom: z.never().optional(),
4323
4672
  varied: z.never().optional(),
4673
+ subscription: z.never().optional(),
4324
4674
  fixed: z.object({
4325
4675
  price: z.object({
4326
4676
  value: z.string().describe(
@@ -4358,6 +4708,7 @@ var UpdateServiceResponse = z.object({
4358
4708
  z.object({
4359
4709
  fixed: z.never().optional(),
4360
4710
  varied: z.never().optional(),
4711
+ subscription: z.never().optional(),
4361
4712
  custom: z.object({
4362
4713
  description: z.string().describe(
4363
4714
  "A custom description explaining to the customer how to pay for the service."
@@ -4369,6 +4720,7 @@ var UpdateServiceResponse = z.object({
4369
4720
  z.object({
4370
4721
  fixed: z.never().optional(),
4371
4722
  custom: z.never().optional(),
4723
+ subscription: z.never().optional(),
4372
4724
  varied: z.object({
4373
4725
  defaultPrice: z.object({
4374
4726
  value: z.string().describe(
@@ -4428,6 +4780,59 @@ var UpdateServiceResponse = z.object({
4428
4780
  }).describe(
4429
4781
  "The details for the varied pricing of the service.\nRead more about [varied price options](https://support.wix.com/en/article/wix-bookings-about-getting-paid-online#offering-varied-price-options).\n\nRequired when: `rateType` is `VARIED`"
4430
4782
  )
4783
+ }),
4784
+ z.object({
4785
+ fixed: z.never().optional(),
4786
+ custom: z.never().optional(),
4787
+ varied: z.never().optional(),
4788
+ subscription: z.object({
4789
+ amountPerBillingCycle: z.object({
4790
+ value: z.string().describe(
4791
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
4792
+ ).optional(),
4793
+ currency: z.string().describe(
4794
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
4795
+ ).optional(),
4796
+ formattedValue: z.string().describe(
4797
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
4798
+ ).max(50).optional().nullable()
4799
+ }).describe(
4800
+ "Base price charged per billing cycle before tax and discounts.\nThe actual amount charged may differ after checkout applies tax and discounts."
4801
+ ).optional(),
4802
+ frequency: z.enum(["MONTHLY"]).describe(
4803
+ "Billing frequency for recurring subscription charges.\nReflected as `billingFrequency` in the booking's subscription info.\n\nCurrently supports `MONTHLY` only."
4804
+ ).optional(),
4805
+ totalPayments: z.number().int().describe(
4806
+ "Total number of billing cycles in the subscription. For example, `12` for a 12-month subscription with monthly payments.\nReflected as `totalCycles` in the booking's subscription info.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
4807
+ ).min(2).optional().nullable(),
4808
+ firstChargeDate: z.enum(["CHECKOUT", "SCHEDULED"]).describe(
4809
+ "Determines when the first billing cycle payment is charged. Used together with `recurringStartDate` to define the subscription billing schedule."
4810
+ ).optional(),
4811
+ recurringStartDate: z.date().describe(
4812
+ "Date and time when recurring billing starts.\n\nWhen `firstChargeDate` is `CHECKOUT`, the first charge occurs at checkout and subsequent billing cycles start from this date.\n\nWhen `firstChargeDate` is `SCHEDULED`, the first charge occurs on this date.\n\nCustomers who book after recurring billing starts are billed for the remaining billing cycles only.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
4813
+ ).optional().nullable(),
4814
+ enrollmentFeeAmount: z.object({
4815
+ value: z.string().describe(
4816
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
4817
+ ).optional(),
4818
+ currency: z.string().describe(
4819
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
4820
+ ).optional(),
4821
+ formattedValue: z.string().describe(
4822
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
4823
+ ).max(50).optional().nullable()
4824
+ }).describe("Deprecated.").optional(),
4825
+ fullUpfrontPayment: z.object({
4826
+ supported: z.boolean().describe(
4827
+ "Whether customers can choose a one-time full payment instead of recurring subscription payments."
4828
+ ).optional().nullable(),
4829
+ discountPercent: z.string().describe(
4830
+ "Percentage discount applied when a customer chooses the full payment option.\nMin: `0.01` percent\nMax: `100` percent"
4831
+ ).optional().nullable()
4832
+ }).describe("Deprecated.").optional()
4833
+ }).describe(
4834
+ "Subscription pricing details for the service. Supported for course services only.\nThe business charges recurring monthly payments instead of a one-time fee.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
4835
+ )
4431
4836
  })
4432
4837
  ])
4433
4838
  ).describe(
@@ -4945,7 +5350,13 @@ var BulkUpdateServicesRequest = z.object({
4945
5350
  ).optional(),
4946
5351
  payment: z.intersection(
4947
5352
  z.object({
4948
- rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE"]).optional(),
5353
+ rateType: z.enum([
5354
+ "FIXED",
5355
+ "CUSTOM",
5356
+ "VARIED",
5357
+ "NO_FEE",
5358
+ "SUBSCRIPTION"
5359
+ ]).optional(),
4949
5360
  options: z.object({
4950
5361
  online: z.boolean().describe(
4951
5362
  "Customers can pay for the service online.\nWhen `true`:\n+ `rateType` must be `FIXED` or `VARIED`.\n+ `fixed.price` or `varied.defaultPrice` must be specified respectively.\nRead more about [getting paid online](https://support.wix.com/en/article/wix-bookings-about-getting-paid-online)."
@@ -4989,11 +5400,13 @@ var BulkUpdateServicesRequest = z.object({
4989
5400
  z.object({
4990
5401
  fixed: z.never().optional(),
4991
5402
  custom: z.never().optional(),
4992
- varied: z.never().optional()
5403
+ varied: z.never().optional(),
5404
+ subscription: z.never().optional()
4993
5405
  }),
4994
5406
  z.object({
4995
5407
  custom: z.never().optional(),
4996
5408
  varied: z.never().optional(),
5409
+ subscription: z.never().optional(),
4997
5410
  fixed: z.object({
4998
5411
  price: z.object({
4999
5412
  value: z.string().describe(
@@ -5031,6 +5444,7 @@ var BulkUpdateServicesRequest = z.object({
5031
5444
  z.object({
5032
5445
  fixed: z.never().optional(),
5033
5446
  varied: z.never().optional(),
5447
+ subscription: z.never().optional(),
5034
5448
  custom: z.object({
5035
5449
  description: z.string().describe(
5036
5450
  "A custom description explaining to the customer how to pay for the service."
@@ -5042,6 +5456,7 @@ var BulkUpdateServicesRequest = z.object({
5042
5456
  z.object({
5043
5457
  fixed: z.never().optional(),
5044
5458
  custom: z.never().optional(),
5459
+ subscription: z.never().optional(),
5045
5460
  varied: z.object({
5046
5461
  defaultPrice: z.object({
5047
5462
  value: z.string().describe(
@@ -5101,6 +5516,59 @@ var BulkUpdateServicesRequest = z.object({
5101
5516
  }).describe(
5102
5517
  "The details for the varied pricing of the service.\nRead more about [varied price options](https://support.wix.com/en/article/wix-bookings-about-getting-paid-online#offering-varied-price-options).\n\nRequired when: `rateType` is `VARIED`"
5103
5518
  )
5519
+ }),
5520
+ z.object({
5521
+ fixed: z.never().optional(),
5522
+ custom: z.never().optional(),
5523
+ varied: z.never().optional(),
5524
+ subscription: z.object({
5525
+ amountPerBillingCycle: z.object({
5526
+ value: z.string().describe(
5527
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
5528
+ ).optional(),
5529
+ currency: z.string().describe(
5530
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
5531
+ ).optional(),
5532
+ formattedValue: z.string().describe(
5533
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
5534
+ ).max(50).optional().nullable()
5535
+ }).describe(
5536
+ "Base price charged per billing cycle before tax and discounts.\nThe actual amount charged may differ after checkout applies tax and discounts."
5537
+ ).optional(),
5538
+ frequency: z.enum(["MONTHLY"]).describe(
5539
+ "Billing frequency for recurring subscription charges.\nReflected as `billingFrequency` in the booking's subscription info.\n\nCurrently supports `MONTHLY` only."
5540
+ ).optional(),
5541
+ totalPayments: z.number().int().describe(
5542
+ "Total number of billing cycles in the subscription. For example, `12` for a 12-month subscription with monthly payments.\nReflected as `totalCycles` in the booking's subscription info.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
5543
+ ).min(2).optional().nullable(),
5544
+ firstChargeDate: z.enum(["CHECKOUT", "SCHEDULED"]).describe(
5545
+ "Determines when the first billing cycle payment is charged. Used together with `recurringStartDate` to define the subscription billing schedule."
5546
+ ).optional(),
5547
+ recurringStartDate: z.date().describe(
5548
+ "Date and time when recurring billing starts.\n\nWhen `firstChargeDate` is `CHECKOUT`, the first charge occurs at checkout and subsequent billing cycles start from this date.\n\nWhen `firstChargeDate` is `SCHEDULED`, the first charge occurs on this date.\n\nCustomers who book after recurring billing starts are billed for the remaining billing cycles only.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
5549
+ ).optional().nullable(),
5550
+ enrollmentFeeAmount: z.object({
5551
+ value: z.string().describe(
5552
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
5553
+ ).optional(),
5554
+ currency: z.string().describe(
5555
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
5556
+ ).optional(),
5557
+ formattedValue: z.string().describe(
5558
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
5559
+ ).max(50).optional().nullable()
5560
+ }).describe("Deprecated.").optional(),
5561
+ fullUpfrontPayment: z.object({
5562
+ supported: z.boolean().describe(
5563
+ "Whether customers can choose a one-time full payment instead of recurring subscription payments."
5564
+ ).optional().nullable(),
5565
+ discountPercent: z.string().describe(
5566
+ "Percentage discount applied when a customer chooses the full payment option.\nMin: `0.01` percent\nMax: `100` percent"
5567
+ ).optional().nullable()
5568
+ }).describe("Deprecated.").optional()
5569
+ }).describe(
5570
+ "Subscription pricing details for the service. Supported for course services only.\nThe business charges recurring monthly payments instead of a one-time fee.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
5571
+ )
5104
5572
  })
5105
5573
  ])
5106
5574
  ).describe(
@@ -5660,7 +6128,13 @@ var BulkUpdateServicesResponse = z.object({
5660
6128
  ).optional(),
5661
6129
  payment: z.intersection(
5662
6130
  z.object({
5663
- rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE"]).describe(
6131
+ rateType: z.enum([
6132
+ "FIXED",
6133
+ "CUSTOM",
6134
+ "VARIED",
6135
+ "NO_FEE",
6136
+ "SUBSCRIPTION"
6137
+ ]).describe(
5664
6138
  "The rate the customer is expected to pay for the service."
5665
6139
  ).optional(),
5666
6140
  options: z.object({
@@ -5708,11 +6182,13 @@ var BulkUpdateServicesResponse = z.object({
5708
6182
  z.object({
5709
6183
  fixed: z.never().optional(),
5710
6184
  custom: z.never().optional(),
5711
- varied: z.never().optional()
6185
+ varied: z.never().optional(),
6186
+ subscription: z.never().optional()
5712
6187
  }),
5713
6188
  z.object({
5714
6189
  custom: z.never().optional(),
5715
6190
  varied: z.never().optional(),
6191
+ subscription: z.never().optional(),
5716
6192
  fixed: z.object({
5717
6193
  price: z.object({
5718
6194
  value: z.string().describe(
@@ -5750,6 +6226,7 @@ var BulkUpdateServicesResponse = z.object({
5750
6226
  z.object({
5751
6227
  fixed: z.never().optional(),
5752
6228
  varied: z.never().optional(),
6229
+ subscription: z.never().optional(),
5753
6230
  custom: z.object({
5754
6231
  description: z.string().describe(
5755
6232
  "A custom description explaining to the customer how to pay for the service."
@@ -5761,6 +6238,7 @@ var BulkUpdateServicesResponse = z.object({
5761
6238
  z.object({
5762
6239
  fixed: z.never().optional(),
5763
6240
  custom: z.never().optional(),
6241
+ subscription: z.never().optional(),
5764
6242
  varied: z.object({
5765
6243
  defaultPrice: z.object({
5766
6244
  value: z.string().describe(
@@ -5820,6 +6298,59 @@ var BulkUpdateServicesResponse = z.object({
5820
6298
  }).describe(
5821
6299
  "The details for the varied pricing of the service.\nRead more about [varied price options](https://support.wix.com/en/article/wix-bookings-about-getting-paid-online#offering-varied-price-options).\n\nRequired when: `rateType` is `VARIED`"
5822
6300
  )
6301
+ }),
6302
+ z.object({
6303
+ fixed: z.never().optional(),
6304
+ custom: z.never().optional(),
6305
+ varied: z.never().optional(),
6306
+ subscription: z.object({
6307
+ amountPerBillingCycle: z.object({
6308
+ value: z.string().describe(
6309
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
6310
+ ).optional(),
6311
+ currency: z.string().describe(
6312
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
6313
+ ).optional(),
6314
+ formattedValue: z.string().describe(
6315
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
6316
+ ).max(50).optional().nullable()
6317
+ }).describe(
6318
+ "Base price charged per billing cycle before tax and discounts.\nThe actual amount charged may differ after checkout applies tax and discounts."
6319
+ ).optional(),
6320
+ frequency: z.enum(["MONTHLY"]).describe(
6321
+ "Billing frequency for recurring subscription charges.\nReflected as `billingFrequency` in the booking's subscription info.\n\nCurrently supports `MONTHLY` only."
6322
+ ).optional(),
6323
+ totalPayments: z.number().int().describe(
6324
+ "Total number of billing cycles in the subscription. For example, `12` for a 12-month subscription with monthly payments.\nReflected as `totalCycles` in the booking's subscription info.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
6325
+ ).min(2).optional().nullable(),
6326
+ firstChargeDate: z.enum(["CHECKOUT", "SCHEDULED"]).describe(
6327
+ "Determines when the first billing cycle payment is charged. Used together with `recurringStartDate` to define the subscription billing schedule."
6328
+ ).optional(),
6329
+ recurringStartDate: z.date().describe(
6330
+ "Date and time when recurring billing starts.\n\nWhen `firstChargeDate` is `CHECKOUT`, the first charge occurs at checkout and subsequent billing cycles start from this date.\n\nWhen `firstChargeDate` is `SCHEDULED`, the first charge occurs on this date.\n\nCustomers who book after recurring billing starts are billed for the remaining billing cycles only.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
6331
+ ).optional().nullable(),
6332
+ enrollmentFeeAmount: z.object({
6333
+ value: z.string().describe(
6334
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
6335
+ ).optional(),
6336
+ currency: z.string().describe(
6337
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
6338
+ ).optional(),
6339
+ formattedValue: z.string().describe(
6340
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
6341
+ ).max(50).optional().nullable()
6342
+ }).describe("Deprecated.").optional(),
6343
+ fullUpfrontPayment: z.object({
6344
+ supported: z.boolean().describe(
6345
+ "Whether customers can choose a one-time full payment instead of recurring subscription payments."
6346
+ ).optional().nullable(),
6347
+ discountPercent: z.string().describe(
6348
+ "Percentage discount applied when a customer chooses the full payment option.\nMin: `0.01` percent\nMax: `100` percent"
6349
+ ).optional().nullable()
6350
+ }).describe("Deprecated.").optional()
6351
+ }).describe(
6352
+ "Subscription pricing details for the service. Supported for course services only.\nThe business charges recurring monthly payments instead of a one-time fee.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
6353
+ )
5823
6354
  })
5824
6355
  ])
5825
6356
  ).describe(
@@ -6354,7 +6885,7 @@ var BulkUpdateServicesByFilterRequest = z.object({
6354
6885
  }).describe("Form the customer filled out when booking the service.").optional(),
6355
6886
  payment: z.intersection(
6356
6887
  z.object({
6357
- rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE"]).optional(),
6888
+ rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE", "SUBSCRIPTION"]).optional(),
6358
6889
  options: z.object({
6359
6890
  online: z.boolean().describe(
6360
6891
  "Customers can pay for the service online.\nWhen `true`:\n+ `rateType` must be `FIXED` or `VARIED`.\n+ `fixed.price` or `varied.defaultPrice` must be specified respectively.\nRead more about [getting paid online](https://support.wix.com/en/article/wix-bookings-about-getting-paid-online)."
@@ -6396,11 +6927,13 @@ var BulkUpdateServicesByFilterRequest = z.object({
6396
6927
  z.object({
6397
6928
  fixed: z.never().optional(),
6398
6929
  custom: z.never().optional(),
6399
- varied: z.never().optional()
6930
+ varied: z.never().optional(),
6931
+ subscription: z.never().optional()
6400
6932
  }),
6401
6933
  z.object({
6402
6934
  custom: z.never().optional(),
6403
6935
  varied: z.never().optional(),
6936
+ subscription: z.never().optional(),
6404
6937
  fixed: z.object({
6405
6938
  price: z.object({
6406
6939
  value: z.string().describe(
@@ -6438,6 +6971,7 @@ var BulkUpdateServicesByFilterRequest = z.object({
6438
6971
  z.object({
6439
6972
  fixed: z.never().optional(),
6440
6973
  varied: z.never().optional(),
6974
+ subscription: z.never().optional(),
6441
6975
  custom: z.object({
6442
6976
  description: z.string().describe(
6443
6977
  "A custom description explaining to the customer how to pay for the service."
@@ -6449,6 +6983,7 @@ var BulkUpdateServicesByFilterRequest = z.object({
6449
6983
  z.object({
6450
6984
  fixed: z.never().optional(),
6451
6985
  custom: z.never().optional(),
6986
+ subscription: z.never().optional(),
6452
6987
  varied: z.object({
6453
6988
  defaultPrice: z.object({
6454
6989
  value: z.string().describe(
@@ -6508,6 +7043,59 @@ var BulkUpdateServicesByFilterRequest = z.object({
6508
7043
  }).describe(
6509
7044
  "The details for the varied pricing of the service.\nRead more about [varied price options](https://support.wix.com/en/article/wix-bookings-about-getting-paid-online#offering-varied-price-options).\n\nRequired when: `rateType` is `VARIED`"
6510
7045
  )
7046
+ }),
7047
+ z.object({
7048
+ fixed: z.never().optional(),
7049
+ custom: z.never().optional(),
7050
+ varied: z.never().optional(),
7051
+ subscription: z.object({
7052
+ amountPerBillingCycle: z.object({
7053
+ value: z.string().describe(
7054
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
7055
+ ).optional(),
7056
+ currency: z.string().describe(
7057
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
7058
+ ).optional(),
7059
+ formattedValue: z.string().describe(
7060
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
7061
+ ).max(50).optional().nullable()
7062
+ }).describe(
7063
+ "Base price charged per billing cycle before tax and discounts.\nThe actual amount charged may differ after checkout applies tax and discounts."
7064
+ ).optional(),
7065
+ frequency: z.enum(["MONTHLY"]).describe(
7066
+ "Billing frequency for recurring subscription charges.\nReflected as `billingFrequency` in the booking's subscription info.\n\nCurrently supports `MONTHLY` only."
7067
+ ).optional(),
7068
+ totalPayments: z.number().int().describe(
7069
+ "Total number of billing cycles in the subscription. For example, `12` for a 12-month subscription with monthly payments.\nReflected as `totalCycles` in the booking's subscription info.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
7070
+ ).min(2).optional().nullable(),
7071
+ firstChargeDate: z.enum(["CHECKOUT", "SCHEDULED"]).describe(
7072
+ "Determines when the first billing cycle payment is charged. Used together with `recurringStartDate` to define the subscription billing schedule."
7073
+ ).optional(),
7074
+ recurringStartDate: z.date().describe(
7075
+ "Date and time when recurring billing starts.\n\nWhen `firstChargeDate` is `CHECKOUT`, the first charge occurs at checkout and subsequent billing cycles start from this date.\n\nWhen `firstChargeDate` is `SCHEDULED`, the first charge occurs on this date.\n\nCustomers who book after recurring billing starts are billed for the remaining billing cycles only.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
7076
+ ).optional().nullable(),
7077
+ enrollmentFeeAmount: z.object({
7078
+ value: z.string().describe(
7079
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
7080
+ ).optional(),
7081
+ currency: z.string().describe(
7082
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
7083
+ ).optional(),
7084
+ formattedValue: z.string().describe(
7085
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
7086
+ ).max(50).optional().nullable()
7087
+ }).describe("Deprecated.").optional(),
7088
+ fullUpfrontPayment: z.object({
7089
+ supported: z.boolean().describe(
7090
+ "Whether customers can choose a one-time full payment instead of recurring subscription payments."
7091
+ ).optional().nullable(),
7092
+ discountPercent: z.string().describe(
7093
+ "Percentage discount applied when a customer chooses the full payment option.\nMin: `0.01` percent\nMax: `100` percent"
7094
+ ).optional().nullable()
7095
+ }).describe("Deprecated.").optional()
7096
+ }).describe(
7097
+ "Subscription pricing details for the service. Supported for course services only.\nThe business charges recurring monthly payments instead of a one-time fee.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
7098
+ )
6511
7099
  })
6512
7100
  ])
6513
7101
  ).describe(
@@ -7105,7 +7693,13 @@ var BulkDeleteServicesResponse = z.object({
7105
7693
  ).optional(),
7106
7694
  payment: z.intersection(
7107
7695
  z.object({
7108
- rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE"]).describe(
7696
+ rateType: z.enum([
7697
+ "FIXED",
7698
+ "CUSTOM",
7699
+ "VARIED",
7700
+ "NO_FEE",
7701
+ "SUBSCRIPTION"
7702
+ ]).describe(
7109
7703
  "The rate the customer is expected to pay for the service."
7110
7704
  ).optional(),
7111
7705
  options: z.object({
@@ -7153,11 +7747,13 @@ var BulkDeleteServicesResponse = z.object({
7153
7747
  z.object({
7154
7748
  fixed: z.never().optional(),
7155
7749
  custom: z.never().optional(),
7156
- varied: z.never().optional()
7750
+ varied: z.never().optional(),
7751
+ subscription: z.never().optional()
7157
7752
  }),
7158
7753
  z.object({
7159
7754
  custom: z.never().optional(),
7160
7755
  varied: z.never().optional(),
7756
+ subscription: z.never().optional(),
7161
7757
  fixed: z.object({
7162
7758
  price: z.object({
7163
7759
  value: z.string().describe(
@@ -7195,6 +7791,7 @@ var BulkDeleteServicesResponse = z.object({
7195
7791
  z.object({
7196
7792
  fixed: z.never().optional(),
7197
7793
  varied: z.never().optional(),
7794
+ subscription: z.never().optional(),
7198
7795
  custom: z.object({
7199
7796
  description: z.string().describe(
7200
7797
  "A custom description explaining to the customer how to pay for the service."
@@ -7206,6 +7803,7 @@ var BulkDeleteServicesResponse = z.object({
7206
7803
  z.object({
7207
7804
  fixed: z.never().optional(),
7208
7805
  custom: z.never().optional(),
7806
+ subscription: z.never().optional(),
7209
7807
  varied: z.object({
7210
7808
  defaultPrice: z.object({
7211
7809
  value: z.string().describe(
@@ -7265,6 +7863,59 @@ var BulkDeleteServicesResponse = z.object({
7265
7863
  }).describe(
7266
7864
  "The details for the varied pricing of the service.\nRead more about [varied price options](https://support.wix.com/en/article/wix-bookings-about-getting-paid-online#offering-varied-price-options).\n\nRequired when: `rateType` is `VARIED`"
7267
7865
  )
7866
+ }),
7867
+ z.object({
7868
+ fixed: z.never().optional(),
7869
+ custom: z.never().optional(),
7870
+ varied: z.never().optional(),
7871
+ subscription: z.object({
7872
+ amountPerBillingCycle: z.object({
7873
+ value: z.string().describe(
7874
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
7875
+ ).optional(),
7876
+ currency: z.string().describe(
7877
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
7878
+ ).optional(),
7879
+ formattedValue: z.string().describe(
7880
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
7881
+ ).max(50).optional().nullable()
7882
+ }).describe(
7883
+ "Base price charged per billing cycle before tax and discounts.\nThe actual amount charged may differ after checkout applies tax and discounts."
7884
+ ).optional(),
7885
+ frequency: z.enum(["MONTHLY"]).describe(
7886
+ "Billing frequency for recurring subscription charges.\nReflected as `billingFrequency` in the booking's subscription info.\n\nCurrently supports `MONTHLY` only."
7887
+ ).optional(),
7888
+ totalPayments: z.number().int().describe(
7889
+ "Total number of billing cycles in the subscription. For example, `12` for a 12-month subscription with monthly payments.\nReflected as `totalCycles` in the booking's subscription info.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
7890
+ ).min(2).optional().nullable(),
7891
+ firstChargeDate: z.enum(["CHECKOUT", "SCHEDULED"]).describe(
7892
+ "Determines when the first billing cycle payment is charged. Used together with `recurringStartDate` to define the subscription billing schedule."
7893
+ ).optional(),
7894
+ recurringStartDate: z.date().describe(
7895
+ "Date and time when recurring billing starts.\n\nWhen `firstChargeDate` is `CHECKOUT`, the first charge occurs at checkout and subsequent billing cycles start from this date.\n\nWhen `firstChargeDate` is `SCHEDULED`, the first charge occurs on this date.\n\nCustomers who book after recurring billing starts are billed for the remaining billing cycles only.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
7896
+ ).optional().nullable(),
7897
+ enrollmentFeeAmount: z.object({
7898
+ value: z.string().describe(
7899
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
7900
+ ).optional(),
7901
+ currency: z.string().describe(
7902
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
7903
+ ).optional(),
7904
+ formattedValue: z.string().describe(
7905
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
7906
+ ).max(50).optional().nullable()
7907
+ }).describe("Deprecated.").optional(),
7908
+ fullUpfrontPayment: z.object({
7909
+ supported: z.boolean().describe(
7910
+ "Whether customers can choose a one-time full payment instead of recurring subscription payments."
7911
+ ).optional().nullable(),
7912
+ discountPercent: z.string().describe(
7913
+ "Percentage discount applied when a customer chooses the full payment option.\nMin: `0.01` percent\nMax: `100` percent"
7914
+ ).optional().nullable()
7915
+ }).describe("Deprecated.").optional()
7916
+ }).describe(
7917
+ "Subscription pricing details for the service. Supported for course services only.\nThe business charges recurring monthly payments instead of a one-time fee.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
7918
+ )
7268
7919
  })
7269
7920
  ])
7270
7921
  ).describe(
@@ -7848,6 +8499,20 @@ var QueryServicesRequest = z.object({
7848
8499
  $nin: z.array(z.string()),
7849
8500
  $startsWith: z.string()
7850
8501
  }).partial().strict().optional(),
8502
+ "serviceResources.resourceIds.values": z.object({
8503
+ $eq: z.any(),
8504
+ $exists: z.boolean(),
8505
+ $gt: z.any(),
8506
+ $gte: z.any(),
8507
+ $hasAll: z.array(z.any()),
8508
+ $hasSome: z.array(z.any()),
8509
+ $in: z.array(z.any()),
8510
+ $lt: z.any(),
8511
+ $lte: z.any(),
8512
+ $ne: z.any(),
8513
+ $nin: z.array(z.any()),
8514
+ $startsWith: z.string()
8515
+ }).partial().strict().optional(),
7851
8516
  "form._id": z.object({
7852
8517
  $eq: z.string(),
7853
8518
  $exists: z.boolean(),
@@ -8031,6 +8696,7 @@ var QueryServicesRequest = z.object({
8031
8696
  "hidden",
8032
8697
  "tagLine",
8033
8698
  "staffMemberIds",
8699
+ "serviceResources.resourceIds.values",
8034
8700
  "form._id",
8035
8701
  "category._id",
8036
8702
  "category.name",
@@ -8151,7 +8817,7 @@ var QueryServicesResponse = z.object({
8151
8817
  }).describe("Form the customer filled out when booking the service.").optional(),
8152
8818
  payment: z.intersection(
8153
8819
  z.object({
8154
- rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE"]).describe(
8820
+ rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE", "SUBSCRIPTION"]).describe(
8155
8821
  "The rate the customer is expected to pay for the service."
8156
8822
  ).optional(),
8157
8823
  options: z.object({
@@ -8197,11 +8863,13 @@ var QueryServicesResponse = z.object({
8197
8863
  z.object({
8198
8864
  fixed: z.never().optional(),
8199
8865
  custom: z.never().optional(),
8200
- varied: z.never().optional()
8866
+ varied: z.never().optional(),
8867
+ subscription: z.never().optional()
8201
8868
  }),
8202
8869
  z.object({
8203
8870
  custom: z.never().optional(),
8204
8871
  varied: z.never().optional(),
8872
+ subscription: z.never().optional(),
8205
8873
  fixed: z.object({
8206
8874
  price: z.object({
8207
8875
  value: z.string().describe(
@@ -8239,6 +8907,7 @@ var QueryServicesResponse = z.object({
8239
8907
  z.object({
8240
8908
  fixed: z.never().optional(),
8241
8909
  varied: z.never().optional(),
8910
+ subscription: z.never().optional(),
8242
8911
  custom: z.object({
8243
8912
  description: z.string().describe(
8244
8913
  "A custom description explaining to the customer how to pay for the service."
@@ -8250,6 +8919,7 @@ var QueryServicesResponse = z.object({
8250
8919
  z.object({
8251
8920
  fixed: z.never().optional(),
8252
8921
  custom: z.never().optional(),
8922
+ subscription: z.never().optional(),
8253
8923
  varied: z.object({
8254
8924
  defaultPrice: z.object({
8255
8925
  value: z.string().describe(
@@ -8290,7 +8960,57 @@ var QueryServicesResponse = z.object({
8290
8960
  }).describe(
8291
8961
  "The minimal price a customer may pay for this service, based on its variants."
8292
8962
  ).optional(),
8293
- maxPrice: z.object({
8963
+ maxPrice: z.object({
8964
+ value: z.string().describe(
8965
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
8966
+ ).optional(),
8967
+ currency: z.string().describe(
8968
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
8969
+ ).optional(),
8970
+ formattedValue: z.string().describe(
8971
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
8972
+ ).max(50).optional().nullable()
8973
+ }).describe(
8974
+ "The maximum price a customer may pay for this service, based on its variants."
8975
+ ).optional(),
8976
+ fullUpfrontPaymentAllowed: z.boolean().describe(
8977
+ "Whether customers can choose to pay the full service price upfront instead of only the deposit.\n\nUsed only when a `deposit` amount is set.\n\nDefault: `false`."
8978
+ ).optional().nullable()
8979
+ }).describe(
8980
+ "The details for the varied pricing of the service.\nRead more about [varied price options](https://support.wix.com/en/article/wix-bookings-about-getting-paid-online#offering-varied-price-options).\n\nRequired when: `rateType` is `VARIED`"
8981
+ )
8982
+ }),
8983
+ z.object({
8984
+ fixed: z.never().optional(),
8985
+ custom: z.never().optional(),
8986
+ varied: z.never().optional(),
8987
+ subscription: z.object({
8988
+ amountPerBillingCycle: z.object({
8989
+ value: z.string().describe(
8990
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
8991
+ ).optional(),
8992
+ currency: z.string().describe(
8993
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
8994
+ ).optional(),
8995
+ formattedValue: z.string().describe(
8996
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
8997
+ ).max(50).optional().nullable()
8998
+ }).describe(
8999
+ "Base price charged per billing cycle before tax and discounts.\nThe actual amount charged may differ after checkout applies tax and discounts."
9000
+ ).optional(),
9001
+ frequency: z.enum(["MONTHLY"]).describe(
9002
+ "Billing frequency for recurring subscription charges.\nReflected as `billingFrequency` in the booking's subscription info.\n\nCurrently supports `MONTHLY` only."
9003
+ ).optional(),
9004
+ totalPayments: z.number().int().describe(
9005
+ "Total number of billing cycles in the subscription. For example, `12` for a 12-month subscription with monthly payments.\nReflected as `totalCycles` in the booking's subscription info.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
9006
+ ).min(2).optional().nullable(),
9007
+ firstChargeDate: z.enum(["CHECKOUT", "SCHEDULED"]).describe(
9008
+ "Determines when the first billing cycle payment is charged. Used together with `recurringStartDate` to define the subscription billing schedule."
9009
+ ).optional(),
9010
+ recurringStartDate: z.date().describe(
9011
+ "Date and time when recurring billing starts.\n\nWhen `firstChargeDate` is `CHECKOUT`, the first charge occurs at checkout and subsequent billing cycles start from this date.\n\nWhen `firstChargeDate` is `SCHEDULED`, the first charge occurs on this date.\n\nCustomers who book after recurring billing starts are billed for the remaining billing cycles only.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
9012
+ ).optional().nullable(),
9013
+ enrollmentFeeAmount: z.object({
8294
9014
  value: z.string().describe(
8295
9015
  "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
8296
9016
  ).optional(),
@@ -8300,14 +9020,17 @@ var QueryServicesResponse = z.object({
8300
9020
  formattedValue: z.string().describe(
8301
9021
  "Monetary amount. Decimal string in local format. For example, `1 000,30`."
8302
9022
  ).max(50).optional().nullable()
8303
- }).describe(
8304
- "The maximum price a customer may pay for this service, based on its variants."
8305
- ).optional(),
8306
- fullUpfrontPaymentAllowed: z.boolean().describe(
8307
- "Whether customers can choose to pay the full service price upfront instead of only the deposit.\n\nUsed only when a `deposit` amount is set.\n\nDefault: `false`."
8308
- ).optional().nullable()
9023
+ }).describe("Deprecated.").optional(),
9024
+ fullUpfrontPayment: z.object({
9025
+ supported: z.boolean().describe(
9026
+ "Whether customers can choose a one-time full payment instead of recurring subscription payments."
9027
+ ).optional().nullable(),
9028
+ discountPercent: z.string().describe(
9029
+ "Percentage discount applied when a customer chooses the full payment option.\nMin: `0.01` percent\nMax: `100` percent"
9030
+ ).optional().nullable()
9031
+ }).describe("Deprecated.").optional()
8309
9032
  }).describe(
8310
- "The details for the varied pricing of the service.\nRead more about [varied price options](https://support.wix.com/en/article/wix-bookings-about-getting-paid-online#offering-varied-price-options).\n\nRequired when: `rateType` is `VARIED`"
9033
+ "Subscription pricing details for the service. Supported for course services only.\nThe business charges recurring monthly payments instead of a one-time fee.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
8311
9034
  )
8312
9035
  })
8313
9036
  ])
@@ -8876,6 +9599,20 @@ var SearchServicesRequest = z.object({
8876
9599
  $nin: z.array(z.string()),
8877
9600
  $startsWith: z.string()
8878
9601
  }).partial().strict().optional(),
9602
+ "serviceResources.resourceIds.values": z.object({
9603
+ $eq: z.any(),
9604
+ $exists: z.boolean(),
9605
+ $gt: z.any(),
9606
+ $gte: z.any(),
9607
+ $hasAll: z.array(z.any()),
9608
+ $hasSome: z.array(z.any()),
9609
+ $in: z.array(z.any()),
9610
+ $lt: z.any(),
9611
+ $lte: z.any(),
9612
+ $ne: z.any(),
9613
+ $nin: z.array(z.any()),
9614
+ $startsWith: z.string()
9615
+ }).partial().strict().optional(),
8879
9616
  "form._id": z.object({
8880
9617
  $eq: z.string(),
8881
9618
  $exists: z.boolean(),
@@ -9115,6 +9852,7 @@ var SearchServicesRequest = z.object({
9115
9852
  "hidden",
9116
9853
  "tagLine",
9117
9854
  "staffMemberIds",
9855
+ "serviceResources.resourceIds.values",
9118
9856
  "form._id",
9119
9857
  "category._id",
9120
9858
  "category.name",
@@ -9232,7 +9970,7 @@ var SearchServicesResponse = z.object({
9232
9970
  }).describe("Form the customer filled out when booking the service.").optional(),
9233
9971
  payment: z.intersection(
9234
9972
  z.object({
9235
- rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE"]).describe(
9973
+ rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE", "SUBSCRIPTION"]).describe(
9236
9974
  "The rate the customer is expected to pay for the service."
9237
9975
  ).optional(),
9238
9976
  options: z.object({
@@ -9278,11 +10016,13 @@ var SearchServicesResponse = z.object({
9278
10016
  z.object({
9279
10017
  fixed: z.never().optional(),
9280
10018
  custom: z.never().optional(),
9281
- varied: z.never().optional()
10019
+ varied: z.never().optional(),
10020
+ subscription: z.never().optional()
9282
10021
  }),
9283
10022
  z.object({
9284
10023
  custom: z.never().optional(),
9285
10024
  varied: z.never().optional(),
10025
+ subscription: z.never().optional(),
9286
10026
  fixed: z.object({
9287
10027
  price: z.object({
9288
10028
  value: z.string().describe(
@@ -9320,6 +10060,7 @@ var SearchServicesResponse = z.object({
9320
10060
  z.object({
9321
10061
  fixed: z.never().optional(),
9322
10062
  varied: z.never().optional(),
10063
+ subscription: z.never().optional(),
9323
10064
  custom: z.object({
9324
10065
  description: z.string().describe(
9325
10066
  "A custom description explaining to the customer how to pay for the service."
@@ -9331,6 +10072,7 @@ var SearchServicesResponse = z.object({
9331
10072
  z.object({
9332
10073
  fixed: z.never().optional(),
9333
10074
  custom: z.never().optional(),
10075
+ subscription: z.never().optional(),
9334
10076
  varied: z.object({
9335
10077
  defaultPrice: z.object({
9336
10078
  value: z.string().describe(
@@ -9390,6 +10132,59 @@ var SearchServicesResponse = z.object({
9390
10132
  }).describe(
9391
10133
  "The details for the varied pricing of the service.\nRead more about [varied price options](https://support.wix.com/en/article/wix-bookings-about-getting-paid-online#offering-varied-price-options).\n\nRequired when: `rateType` is `VARIED`"
9392
10134
  )
10135
+ }),
10136
+ z.object({
10137
+ fixed: z.never().optional(),
10138
+ custom: z.never().optional(),
10139
+ varied: z.never().optional(),
10140
+ subscription: z.object({
10141
+ amountPerBillingCycle: z.object({
10142
+ value: z.string().describe(
10143
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
10144
+ ).optional(),
10145
+ currency: z.string().describe(
10146
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
10147
+ ).optional(),
10148
+ formattedValue: z.string().describe(
10149
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
10150
+ ).max(50).optional().nullable()
10151
+ }).describe(
10152
+ "Base price charged per billing cycle before tax and discounts.\nThe actual amount charged may differ after checkout applies tax and discounts."
10153
+ ).optional(),
10154
+ frequency: z.enum(["MONTHLY"]).describe(
10155
+ "Billing frequency for recurring subscription charges.\nReflected as `billingFrequency` in the booking's subscription info.\n\nCurrently supports `MONTHLY` only."
10156
+ ).optional(),
10157
+ totalPayments: z.number().int().describe(
10158
+ "Total number of billing cycles in the subscription. For example, `12` for a 12-month subscription with monthly payments.\nReflected as `totalCycles` in the booking's subscription info.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
10159
+ ).min(2).optional().nullable(),
10160
+ firstChargeDate: z.enum(["CHECKOUT", "SCHEDULED"]).describe(
10161
+ "Determines when the first billing cycle payment is charged. Used together with `recurringStartDate` to define the subscription billing schedule."
10162
+ ).optional(),
10163
+ recurringStartDate: z.date().describe(
10164
+ "Date and time when recurring billing starts.\n\nWhen `firstChargeDate` is `CHECKOUT`, the first charge occurs at checkout and subsequent billing cycles start from this date.\n\nWhen `firstChargeDate` is `SCHEDULED`, the first charge occurs on this date.\n\nCustomers who book after recurring billing starts are billed for the remaining billing cycles only.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
10165
+ ).optional().nullable(),
10166
+ enrollmentFeeAmount: z.object({
10167
+ value: z.string().describe(
10168
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
10169
+ ).optional(),
10170
+ currency: z.string().describe(
10171
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
10172
+ ).optional(),
10173
+ formattedValue: z.string().describe(
10174
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
10175
+ ).max(50).optional().nullable()
10176
+ }).describe("Deprecated.").optional(),
10177
+ fullUpfrontPayment: z.object({
10178
+ supported: z.boolean().describe(
10179
+ "Whether customers can choose a one-time full payment instead of recurring subscription payments."
10180
+ ).optional().nullable(),
10181
+ discountPercent: z.string().describe(
10182
+ "Percentage discount applied when a customer chooses the full payment option.\nMin: `0.01` percent\nMax: `100` percent"
10183
+ ).optional().nullable()
10184
+ }).describe("Deprecated.").optional()
10185
+ }).describe(
10186
+ "Subscription pricing details for the service. Supported for course services only.\nThe business charges recurring monthly payments instead of a one-time fee.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
10187
+ )
9393
10188
  })
9394
10189
  ])
9395
10190
  ).describe(
@@ -10401,7 +11196,13 @@ var QueryPoliciesResponse = z.object({
10401
11196
  ).optional(),
10402
11197
  payment: z.intersection(
10403
11198
  z.object({
10404
- rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE"]).describe(
11199
+ rateType: z.enum([
11200
+ "FIXED",
11201
+ "CUSTOM",
11202
+ "VARIED",
11203
+ "NO_FEE",
11204
+ "SUBSCRIPTION"
11205
+ ]).describe(
10405
11206
  "The rate the customer is expected to pay for the service."
10406
11207
  ).optional(),
10407
11208
  options: z.object({
@@ -10449,11 +11250,13 @@ var QueryPoliciesResponse = z.object({
10449
11250
  z.object({
10450
11251
  fixed: z.never().optional(),
10451
11252
  custom: z.never().optional(),
10452
- varied: z.never().optional()
11253
+ varied: z.never().optional(),
11254
+ subscription: z.never().optional()
10453
11255
  }),
10454
11256
  z.object({
10455
11257
  custom: z.never().optional(),
10456
11258
  varied: z.never().optional(),
11259
+ subscription: z.never().optional(),
10457
11260
  fixed: z.object({
10458
11261
  price: z.object({
10459
11262
  value: z.string().describe(
@@ -10491,6 +11294,7 @@ var QueryPoliciesResponse = z.object({
10491
11294
  z.object({
10492
11295
  fixed: z.never().optional(),
10493
11296
  varied: z.never().optional(),
11297
+ subscription: z.never().optional(),
10494
11298
  custom: z.object({
10495
11299
  description: z.string().describe(
10496
11300
  "A custom description explaining to the customer how to pay for the service."
@@ -10502,6 +11306,7 @@ var QueryPoliciesResponse = z.object({
10502
11306
  z.object({
10503
11307
  fixed: z.never().optional(),
10504
11308
  custom: z.never().optional(),
11309
+ subscription: z.never().optional(),
10505
11310
  varied: z.object({
10506
11311
  defaultPrice: z.object({
10507
11312
  value: z.string().describe(
@@ -10561,6 +11366,59 @@ var QueryPoliciesResponse = z.object({
10561
11366
  }).describe(
10562
11367
  "The details for the varied pricing of the service.\nRead more about [varied price options](https://support.wix.com/en/article/wix-bookings-about-getting-paid-online#offering-varied-price-options).\n\nRequired when: `rateType` is `VARIED`"
10563
11368
  )
11369
+ }),
11370
+ z.object({
11371
+ fixed: z.never().optional(),
11372
+ custom: z.never().optional(),
11373
+ varied: z.never().optional(),
11374
+ subscription: z.object({
11375
+ amountPerBillingCycle: z.object({
11376
+ value: z.string().describe(
11377
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
11378
+ ).optional(),
11379
+ currency: z.string().describe(
11380
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
11381
+ ).optional(),
11382
+ formattedValue: z.string().describe(
11383
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
11384
+ ).max(50).optional().nullable()
11385
+ }).describe(
11386
+ "Base price charged per billing cycle before tax and discounts.\nThe actual amount charged may differ after checkout applies tax and discounts."
11387
+ ).optional(),
11388
+ frequency: z.enum(["MONTHLY"]).describe(
11389
+ "Billing frequency for recurring subscription charges.\nReflected as `billingFrequency` in the booking's subscription info.\n\nCurrently supports `MONTHLY` only."
11390
+ ).optional(),
11391
+ totalPayments: z.number().int().describe(
11392
+ "Total number of billing cycles in the subscription. For example, `12` for a 12-month subscription with monthly payments.\nReflected as `totalCycles` in the booking's subscription info.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
11393
+ ).min(2).optional().nullable(),
11394
+ firstChargeDate: z.enum(["CHECKOUT", "SCHEDULED"]).describe(
11395
+ "Determines when the first billing cycle payment is charged. Used together with `recurringStartDate` to define the subscription billing schedule."
11396
+ ).optional(),
11397
+ recurringStartDate: z.date().describe(
11398
+ "Date and time when recurring billing starts.\n\nWhen `firstChargeDate` is `CHECKOUT`, the first charge occurs at checkout and subsequent billing cycles start from this date.\n\nWhen `firstChargeDate` is `SCHEDULED`, the first charge occurs on this date.\n\nCustomers who book after recurring billing starts are billed for the remaining billing cycles only.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
11399
+ ).optional().nullable(),
11400
+ enrollmentFeeAmount: z.object({
11401
+ value: z.string().describe(
11402
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
11403
+ ).optional(),
11404
+ currency: z.string().describe(
11405
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
11406
+ ).optional(),
11407
+ formattedValue: z.string().describe(
11408
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
11409
+ ).max(50).optional().nullable()
11410
+ }).describe("Deprecated.").optional(),
11411
+ fullUpfrontPayment: z.object({
11412
+ supported: z.boolean().describe(
11413
+ "Whether customers can choose a one-time full payment instead of recurring subscription payments."
11414
+ ).optional().nullable(),
11415
+ discountPercent: z.string().describe(
11416
+ "Percentage discount applied when a customer chooses the full payment option.\nMin: `0.01` percent\nMax: `100` percent"
11417
+ ).optional().nullable()
11418
+ }).describe("Deprecated.").optional()
11419
+ }).describe(
11420
+ "Subscription pricing details for the service. Supported for course services only.\nThe business charges recurring monthly payments instead of a one-time fee.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
11421
+ )
10564
11422
  })
10565
11423
  ])
10566
11424
  ).describe(
@@ -11502,7 +12360,7 @@ var SetServiceLocationsResponse = z.object({
11502
12360
  }).describe("Form the customer filled out when booking the service.").optional(),
11503
12361
  payment: z.intersection(
11504
12362
  z.object({
11505
- rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE"]).describe(
12363
+ rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE", "SUBSCRIPTION"]).describe(
11506
12364
  "The rate the customer is expected to pay for the service."
11507
12365
  ).optional(),
11508
12366
  options: z.object({
@@ -11548,11 +12406,13 @@ var SetServiceLocationsResponse = z.object({
11548
12406
  z.object({
11549
12407
  fixed: z.never().optional(),
11550
12408
  custom: z.never().optional(),
11551
- varied: z.never().optional()
12409
+ varied: z.never().optional(),
12410
+ subscription: z.never().optional()
11552
12411
  }),
11553
12412
  z.object({
11554
12413
  custom: z.never().optional(),
11555
12414
  varied: z.never().optional(),
12415
+ subscription: z.never().optional(),
11556
12416
  fixed: z.object({
11557
12417
  price: z.object({
11558
12418
  value: z.string().describe(
@@ -11590,6 +12450,7 @@ var SetServiceLocationsResponse = z.object({
11590
12450
  z.object({
11591
12451
  fixed: z.never().optional(),
11592
12452
  varied: z.never().optional(),
12453
+ subscription: z.never().optional(),
11593
12454
  custom: z.object({
11594
12455
  description: z.string().describe(
11595
12456
  "A custom description explaining to the customer how to pay for the service."
@@ -11601,6 +12462,7 @@ var SetServiceLocationsResponse = z.object({
11601
12462
  z.object({
11602
12463
  fixed: z.never().optional(),
11603
12464
  custom: z.never().optional(),
12465
+ subscription: z.never().optional(),
11604
12466
  varied: z.object({
11605
12467
  defaultPrice: z.object({
11606
12468
  value: z.string().describe(
@@ -11660,6 +12522,59 @@ var SetServiceLocationsResponse = z.object({
11660
12522
  }).describe(
11661
12523
  "The details for the varied pricing of the service.\nRead more about [varied price options](https://support.wix.com/en/article/wix-bookings-about-getting-paid-online#offering-varied-price-options).\n\nRequired when: `rateType` is `VARIED`"
11662
12524
  )
12525
+ }),
12526
+ z.object({
12527
+ fixed: z.never().optional(),
12528
+ custom: z.never().optional(),
12529
+ varied: z.never().optional(),
12530
+ subscription: z.object({
12531
+ amountPerBillingCycle: z.object({
12532
+ value: z.string().describe(
12533
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
12534
+ ).optional(),
12535
+ currency: z.string().describe(
12536
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
12537
+ ).optional(),
12538
+ formattedValue: z.string().describe(
12539
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
12540
+ ).max(50).optional().nullable()
12541
+ }).describe(
12542
+ "Base price charged per billing cycle before tax and discounts.\nThe actual amount charged may differ after checkout applies tax and discounts."
12543
+ ).optional(),
12544
+ frequency: z.enum(["MONTHLY"]).describe(
12545
+ "Billing frequency for recurring subscription charges.\nReflected as `billingFrequency` in the booking's subscription info.\n\nCurrently supports `MONTHLY` only."
12546
+ ).optional(),
12547
+ totalPayments: z.number().int().describe(
12548
+ "Total number of billing cycles in the subscription. For example, `12` for a 12-month subscription with monthly payments.\nReflected as `totalCycles` in the booking's subscription info.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
12549
+ ).min(2).optional().nullable(),
12550
+ firstChargeDate: z.enum(["CHECKOUT", "SCHEDULED"]).describe(
12551
+ "Determines when the first billing cycle payment is charged. Used together with `recurringStartDate` to define the subscription billing schedule."
12552
+ ).optional(),
12553
+ recurringStartDate: z.date().describe(
12554
+ "Date and time when recurring billing starts.\n\nWhen `firstChargeDate` is `CHECKOUT`, the first charge occurs at checkout and subsequent billing cycles start from this date.\n\nWhen `firstChargeDate` is `SCHEDULED`, the first charge occurs on this date.\n\nCustomers who book after recurring billing starts are billed for the remaining billing cycles only.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
12555
+ ).optional().nullable(),
12556
+ enrollmentFeeAmount: z.object({
12557
+ value: z.string().describe(
12558
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
12559
+ ).optional(),
12560
+ currency: z.string().describe(
12561
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
12562
+ ).optional(),
12563
+ formattedValue: z.string().describe(
12564
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
12565
+ ).max(50).optional().nullable()
12566
+ }).describe("Deprecated.").optional(),
12567
+ fullUpfrontPayment: z.object({
12568
+ supported: z.boolean().describe(
12569
+ "Whether customers can choose a one-time full payment instead of recurring subscription payments."
12570
+ ).optional().nullable(),
12571
+ discountPercent: z.string().describe(
12572
+ "Percentage discount applied when a customer chooses the full payment option.\nMin: `0.01` percent\nMax: `100` percent"
12573
+ ).optional().nullable()
12574
+ }).describe("Deprecated.").optional()
12575
+ }).describe(
12576
+ "Subscription pricing details for the service. Supported for course services only.\nThe business charges recurring monthly payments instead of a one-time fee.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
12577
+ )
11663
12578
  })
11664
12579
  ])
11665
12580
  ).describe(
@@ -12186,7 +13101,7 @@ var EnablePricingPlansForServiceResponse = z.object({
12186
13101
  }).describe("Form the customer filled out when booking the service.").optional(),
12187
13102
  payment: z.intersection(
12188
13103
  z.object({
12189
- rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE"]).describe(
13104
+ rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE", "SUBSCRIPTION"]).describe(
12190
13105
  "The rate the customer is expected to pay for the service."
12191
13106
  ).optional(),
12192
13107
  options: z.object({
@@ -12232,11 +13147,13 @@ var EnablePricingPlansForServiceResponse = z.object({
12232
13147
  z.object({
12233
13148
  fixed: z.never().optional(),
12234
13149
  custom: z.never().optional(),
12235
- varied: z.never().optional()
13150
+ varied: z.never().optional(),
13151
+ subscription: z.never().optional()
12236
13152
  }),
12237
13153
  z.object({
12238
13154
  custom: z.never().optional(),
12239
13155
  varied: z.never().optional(),
13156
+ subscription: z.never().optional(),
12240
13157
  fixed: z.object({
12241
13158
  price: z.object({
12242
13159
  value: z.string().describe(
@@ -12274,6 +13191,7 @@ var EnablePricingPlansForServiceResponse = z.object({
12274
13191
  z.object({
12275
13192
  fixed: z.never().optional(),
12276
13193
  varied: z.never().optional(),
13194
+ subscription: z.never().optional(),
12277
13195
  custom: z.object({
12278
13196
  description: z.string().describe(
12279
13197
  "A custom description explaining to the customer how to pay for the service."
@@ -12285,6 +13203,7 @@ var EnablePricingPlansForServiceResponse = z.object({
12285
13203
  z.object({
12286
13204
  fixed: z.never().optional(),
12287
13205
  custom: z.never().optional(),
13206
+ subscription: z.never().optional(),
12288
13207
  varied: z.object({
12289
13208
  defaultPrice: z.object({
12290
13209
  value: z.string().describe(
@@ -12344,6 +13263,59 @@ var EnablePricingPlansForServiceResponse = z.object({
12344
13263
  }).describe(
12345
13264
  "The details for the varied pricing of the service.\nRead more about [varied price options](https://support.wix.com/en/article/wix-bookings-about-getting-paid-online#offering-varied-price-options).\n\nRequired when: `rateType` is `VARIED`"
12346
13265
  )
13266
+ }),
13267
+ z.object({
13268
+ fixed: z.never().optional(),
13269
+ custom: z.never().optional(),
13270
+ varied: z.never().optional(),
13271
+ subscription: z.object({
13272
+ amountPerBillingCycle: z.object({
13273
+ value: z.string().describe(
13274
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
13275
+ ).optional(),
13276
+ currency: z.string().describe(
13277
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
13278
+ ).optional(),
13279
+ formattedValue: z.string().describe(
13280
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
13281
+ ).max(50).optional().nullable()
13282
+ }).describe(
13283
+ "Base price charged per billing cycle before tax and discounts.\nThe actual amount charged may differ after checkout applies tax and discounts."
13284
+ ).optional(),
13285
+ frequency: z.enum(["MONTHLY"]).describe(
13286
+ "Billing frequency for recurring subscription charges.\nReflected as `billingFrequency` in the booking's subscription info.\n\nCurrently supports `MONTHLY` only."
13287
+ ).optional(),
13288
+ totalPayments: z.number().int().describe(
13289
+ "Total number of billing cycles in the subscription. For example, `12` for a 12-month subscription with monthly payments.\nReflected as `totalCycles` in the booking's subscription info.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
13290
+ ).min(2).optional().nullable(),
13291
+ firstChargeDate: z.enum(["CHECKOUT", "SCHEDULED"]).describe(
13292
+ "Determines when the first billing cycle payment is charged. Used together with `recurringStartDate` to define the subscription billing schedule."
13293
+ ).optional(),
13294
+ recurringStartDate: z.date().describe(
13295
+ "Date and time when recurring billing starts.\n\nWhen `firstChargeDate` is `CHECKOUT`, the first charge occurs at checkout and subsequent billing cycles start from this date.\n\nWhen `firstChargeDate` is `SCHEDULED`, the first charge occurs on this date.\n\nCustomers who book after recurring billing starts are billed for the remaining billing cycles only.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
13296
+ ).optional().nullable(),
13297
+ enrollmentFeeAmount: z.object({
13298
+ value: z.string().describe(
13299
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
13300
+ ).optional(),
13301
+ currency: z.string().describe(
13302
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
13303
+ ).optional(),
13304
+ formattedValue: z.string().describe(
13305
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
13306
+ ).max(50).optional().nullable()
13307
+ }).describe("Deprecated.").optional(),
13308
+ fullUpfrontPayment: z.object({
13309
+ supported: z.boolean().describe(
13310
+ "Whether customers can choose a one-time full payment instead of recurring subscription payments."
13311
+ ).optional().nullable(),
13312
+ discountPercent: z.string().describe(
13313
+ "Percentage discount applied when a customer chooses the full payment option.\nMin: `0.01` percent\nMax: `100` percent"
13314
+ ).optional().nullable()
13315
+ }).describe("Deprecated.").optional()
13316
+ }).describe(
13317
+ "Subscription pricing details for the service. Supported for course services only.\nThe business charges recurring monthly payments instead of a one-time fee.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
13318
+ )
12347
13319
  })
12348
13320
  ])
12349
13321
  ).describe(
@@ -12870,7 +13842,7 @@ var DisablePricingPlansForServiceResponse = z.object({
12870
13842
  }).describe("Form the customer filled out when booking the service.").optional(),
12871
13843
  payment: z.intersection(
12872
13844
  z.object({
12873
- rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE"]).describe(
13845
+ rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE", "SUBSCRIPTION"]).describe(
12874
13846
  "The rate the customer is expected to pay for the service."
12875
13847
  ).optional(),
12876
13848
  options: z.object({
@@ -12916,11 +13888,13 @@ var DisablePricingPlansForServiceResponse = z.object({
12916
13888
  z.object({
12917
13889
  fixed: z.never().optional(),
12918
13890
  custom: z.never().optional(),
12919
- varied: z.never().optional()
13891
+ varied: z.never().optional(),
13892
+ subscription: z.never().optional()
12920
13893
  }),
12921
13894
  z.object({
12922
13895
  custom: z.never().optional(),
12923
13896
  varied: z.never().optional(),
13897
+ subscription: z.never().optional(),
12924
13898
  fixed: z.object({
12925
13899
  price: z.object({
12926
13900
  value: z.string().describe(
@@ -12958,6 +13932,7 @@ var DisablePricingPlansForServiceResponse = z.object({
12958
13932
  z.object({
12959
13933
  fixed: z.never().optional(),
12960
13934
  varied: z.never().optional(),
13935
+ subscription: z.never().optional(),
12961
13936
  custom: z.object({
12962
13937
  description: z.string().describe(
12963
13938
  "A custom description explaining to the customer how to pay for the service."
@@ -12969,6 +13944,7 @@ var DisablePricingPlansForServiceResponse = z.object({
12969
13944
  z.object({
12970
13945
  fixed: z.never().optional(),
12971
13946
  custom: z.never().optional(),
13947
+ subscription: z.never().optional(),
12972
13948
  varied: z.object({
12973
13949
  defaultPrice: z.object({
12974
13950
  value: z.string().describe(
@@ -13028,6 +14004,59 @@ var DisablePricingPlansForServiceResponse = z.object({
13028
14004
  }).describe(
13029
14005
  "The details for the varied pricing of the service.\nRead more about [varied price options](https://support.wix.com/en/article/wix-bookings-about-getting-paid-online#offering-varied-price-options).\n\nRequired when: `rateType` is `VARIED`"
13030
14006
  )
14007
+ }),
14008
+ z.object({
14009
+ fixed: z.never().optional(),
14010
+ custom: z.never().optional(),
14011
+ varied: z.never().optional(),
14012
+ subscription: z.object({
14013
+ amountPerBillingCycle: z.object({
14014
+ value: z.string().describe(
14015
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
14016
+ ).optional(),
14017
+ currency: z.string().describe(
14018
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
14019
+ ).optional(),
14020
+ formattedValue: z.string().describe(
14021
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
14022
+ ).max(50).optional().nullable()
14023
+ }).describe(
14024
+ "Base price charged per billing cycle before tax and discounts.\nThe actual amount charged may differ after checkout applies tax and discounts."
14025
+ ).optional(),
14026
+ frequency: z.enum(["MONTHLY"]).describe(
14027
+ "Billing frequency for recurring subscription charges.\nReflected as `billingFrequency` in the booking's subscription info.\n\nCurrently supports `MONTHLY` only."
14028
+ ).optional(),
14029
+ totalPayments: z.number().int().describe(
14030
+ "Total number of billing cycles in the subscription. For example, `12` for a 12-month subscription with monthly payments.\nReflected as `totalCycles` in the booking's subscription info.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
14031
+ ).min(2).optional().nullable(),
14032
+ firstChargeDate: z.enum(["CHECKOUT", "SCHEDULED"]).describe(
14033
+ "Determines when the first billing cycle payment is charged. Used together with `recurringStartDate` to define the subscription billing schedule."
14034
+ ).optional(),
14035
+ recurringStartDate: z.date().describe(
14036
+ "Date and time when recurring billing starts.\n\nWhen `firstChargeDate` is `CHECKOUT`, the first charge occurs at checkout and subsequent billing cycles start from this date.\n\nWhen `firstChargeDate` is `SCHEDULED`, the first charge occurs on this date.\n\nCustomers who book after recurring billing starts are billed for the remaining billing cycles only.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
14037
+ ).optional().nullable(),
14038
+ enrollmentFeeAmount: z.object({
14039
+ value: z.string().describe(
14040
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
14041
+ ).optional(),
14042
+ currency: z.string().describe(
14043
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
14044
+ ).optional(),
14045
+ formattedValue: z.string().describe(
14046
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
14047
+ ).max(50).optional().nullable()
14048
+ }).describe("Deprecated.").optional(),
14049
+ fullUpfrontPayment: z.object({
14050
+ supported: z.boolean().describe(
14051
+ "Whether customers can choose a one-time full payment instead of recurring subscription payments."
14052
+ ).optional().nullable(),
14053
+ discountPercent: z.string().describe(
14054
+ "Percentage discount applied when a customer chooses the full payment option.\nMin: `0.01` percent\nMax: `100` percent"
14055
+ ).optional().nullable()
14056
+ }).describe("Deprecated.").optional()
14057
+ }).describe(
14058
+ "Subscription pricing details for the service. Supported for course services only.\nThe business charges recurring monthly payments instead of a one-time fee.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
14059
+ )
13031
14060
  })
13032
14061
  ])
13033
14062
  ).describe(
@@ -13565,7 +14594,7 @@ var SetCustomSlugResponse = z.object({
13565
14594
  }).describe("Form the customer filled out when booking the service.").optional(),
13566
14595
  payment: z.intersection(
13567
14596
  z.object({
13568
- rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE"]).describe(
14597
+ rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE", "SUBSCRIPTION"]).describe(
13569
14598
  "The rate the customer is expected to pay for the service."
13570
14599
  ).optional(),
13571
14600
  options: z.object({
@@ -13611,11 +14640,13 @@ var SetCustomSlugResponse = z.object({
13611
14640
  z.object({
13612
14641
  fixed: z.never().optional(),
13613
14642
  custom: z.never().optional(),
13614
- varied: z.never().optional()
14643
+ varied: z.never().optional(),
14644
+ subscription: z.never().optional()
13615
14645
  }),
13616
14646
  z.object({
13617
14647
  custom: z.never().optional(),
13618
14648
  varied: z.never().optional(),
14649
+ subscription: z.never().optional(),
13619
14650
  fixed: z.object({
13620
14651
  price: z.object({
13621
14652
  value: z.string().describe(
@@ -13653,6 +14684,7 @@ var SetCustomSlugResponse = z.object({
13653
14684
  z.object({
13654
14685
  fixed: z.never().optional(),
13655
14686
  varied: z.never().optional(),
14687
+ subscription: z.never().optional(),
13656
14688
  custom: z.object({
13657
14689
  description: z.string().describe(
13658
14690
  "A custom description explaining to the customer how to pay for the service."
@@ -13664,6 +14696,7 @@ var SetCustomSlugResponse = z.object({
13664
14696
  z.object({
13665
14697
  fixed: z.never().optional(),
13666
14698
  custom: z.never().optional(),
14699
+ subscription: z.never().optional(),
13667
14700
  varied: z.object({
13668
14701
  defaultPrice: z.object({
13669
14702
  value: z.string().describe(
@@ -13723,6 +14756,59 @@ var SetCustomSlugResponse = z.object({
13723
14756
  }).describe(
13724
14757
  "The details for the varied pricing of the service.\nRead more about [varied price options](https://support.wix.com/en/article/wix-bookings-about-getting-paid-online#offering-varied-price-options).\n\nRequired when: `rateType` is `VARIED`"
13725
14758
  )
14759
+ }),
14760
+ z.object({
14761
+ fixed: z.never().optional(),
14762
+ custom: z.never().optional(),
14763
+ varied: z.never().optional(),
14764
+ subscription: z.object({
14765
+ amountPerBillingCycle: z.object({
14766
+ value: z.string().describe(
14767
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
14768
+ ).optional(),
14769
+ currency: z.string().describe(
14770
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
14771
+ ).optional(),
14772
+ formattedValue: z.string().describe(
14773
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
14774
+ ).max(50).optional().nullable()
14775
+ }).describe(
14776
+ "Base price charged per billing cycle before tax and discounts.\nThe actual amount charged may differ after checkout applies tax and discounts."
14777
+ ).optional(),
14778
+ frequency: z.enum(["MONTHLY"]).describe(
14779
+ "Billing frequency for recurring subscription charges.\nReflected as `billingFrequency` in the booking's subscription info.\n\nCurrently supports `MONTHLY` only."
14780
+ ).optional(),
14781
+ totalPayments: z.number().int().describe(
14782
+ "Total number of billing cycles in the subscription. For example, `12` for a 12-month subscription with monthly payments.\nReflected as `totalCycles` in the booking's subscription info.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
14783
+ ).min(2).optional().nullable(),
14784
+ firstChargeDate: z.enum(["CHECKOUT", "SCHEDULED"]).describe(
14785
+ "Determines when the first billing cycle payment is charged. Used together with `recurringStartDate` to define the subscription billing schedule."
14786
+ ).optional(),
14787
+ recurringStartDate: z.date().describe(
14788
+ "Date and time when recurring billing starts.\n\nWhen `firstChargeDate` is `CHECKOUT`, the first charge occurs at checkout and subsequent billing cycles start from this date.\n\nWhen `firstChargeDate` is `SCHEDULED`, the first charge occurs on this date.\n\nCustomers who book after recurring billing starts are billed for the remaining billing cycles only.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
14789
+ ).optional().nullable(),
14790
+ enrollmentFeeAmount: z.object({
14791
+ value: z.string().describe(
14792
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
14793
+ ).optional(),
14794
+ currency: z.string().describe(
14795
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
14796
+ ).optional(),
14797
+ formattedValue: z.string().describe(
14798
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
14799
+ ).max(50).optional().nullable()
14800
+ }).describe("Deprecated.").optional(),
14801
+ fullUpfrontPayment: z.object({
14802
+ supported: z.boolean().describe(
14803
+ "Whether customers can choose a one-time full payment instead of recurring subscription payments."
14804
+ ).optional().nullable(),
14805
+ discountPercent: z.string().describe(
14806
+ "Percentage discount applied when a customer chooses the full payment option.\nMin: `0.01` percent\nMax: `100` percent"
14807
+ ).optional().nullable()
14808
+ }).describe("Deprecated.").optional()
14809
+ }).describe(
14810
+ "Subscription pricing details for the service. Supported for course services only.\nThe business charges recurring monthly payments instead of a one-time fee.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
14811
+ )
13726
14812
  })
13727
14813
  ])
13728
14814
  ).describe(
@@ -14262,7 +15348,7 @@ var CloneServiceResponse = z.object({
14262
15348
  }).describe("Form the customer filled out when booking the service.").optional(),
14263
15349
  payment: z.intersection(
14264
15350
  z.object({
14265
- rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE"]).describe(
15351
+ rateType: z.enum(["FIXED", "CUSTOM", "VARIED", "NO_FEE", "SUBSCRIPTION"]).describe(
14266
15352
  "The rate the customer is expected to pay for the service."
14267
15353
  ).optional(),
14268
15354
  options: z.object({
@@ -14308,11 +15394,13 @@ var CloneServiceResponse = z.object({
14308
15394
  z.object({
14309
15395
  fixed: z.never().optional(),
14310
15396
  custom: z.never().optional(),
14311
- varied: z.never().optional()
15397
+ varied: z.never().optional(),
15398
+ subscription: z.never().optional()
14312
15399
  }),
14313
15400
  z.object({
14314
15401
  custom: z.never().optional(),
14315
15402
  varied: z.never().optional(),
15403
+ subscription: z.never().optional(),
14316
15404
  fixed: z.object({
14317
15405
  price: z.object({
14318
15406
  value: z.string().describe(
@@ -14350,6 +15438,7 @@ var CloneServiceResponse = z.object({
14350
15438
  z.object({
14351
15439
  fixed: z.never().optional(),
14352
15440
  varied: z.never().optional(),
15441
+ subscription: z.never().optional(),
14353
15442
  custom: z.object({
14354
15443
  description: z.string().describe(
14355
15444
  "A custom description explaining to the customer how to pay for the service."
@@ -14361,6 +15450,7 @@ var CloneServiceResponse = z.object({
14361
15450
  z.object({
14362
15451
  fixed: z.never().optional(),
14363
15452
  custom: z.never().optional(),
15453
+ subscription: z.never().optional(),
14364
15454
  varied: z.object({
14365
15455
  defaultPrice: z.object({
14366
15456
  value: z.string().describe(
@@ -14420,6 +15510,59 @@ var CloneServiceResponse = z.object({
14420
15510
  }).describe(
14421
15511
  "The details for the varied pricing of the service.\nRead more about [varied price options](https://support.wix.com/en/article/wix-bookings-about-getting-paid-online#offering-varied-price-options).\n\nRequired when: `rateType` is `VARIED`"
14422
15512
  )
15513
+ }),
15514
+ z.object({
15515
+ fixed: z.never().optional(),
15516
+ custom: z.never().optional(),
15517
+ varied: z.never().optional(),
15518
+ subscription: z.object({
15519
+ amountPerBillingCycle: z.object({
15520
+ value: z.string().describe(
15521
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
15522
+ ).optional(),
15523
+ currency: z.string().describe(
15524
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
15525
+ ).optional(),
15526
+ formattedValue: z.string().describe(
15527
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
15528
+ ).max(50).optional().nullable()
15529
+ }).describe(
15530
+ "Base price charged per billing cycle before tax and discounts.\nThe actual amount charged may differ after checkout applies tax and discounts."
15531
+ ).optional(),
15532
+ frequency: z.enum(["MONTHLY"]).describe(
15533
+ "Billing frequency for recurring subscription charges.\nReflected as `billingFrequency` in the booking's subscription info.\n\nCurrently supports `MONTHLY` only."
15534
+ ).optional(),
15535
+ totalPayments: z.number().int().describe(
15536
+ "Total number of billing cycles in the subscription. For example, `12` for a 12-month subscription with monthly payments.\nReflected as `totalCycles` in the booking's subscription info.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
15537
+ ).min(2).optional().nullable(),
15538
+ firstChargeDate: z.enum(["CHECKOUT", "SCHEDULED"]).describe(
15539
+ "Determines when the first billing cycle payment is charged. Used together with `recurringStartDate` to define the subscription billing schedule."
15540
+ ).optional(),
15541
+ recurringStartDate: z.date().describe(
15542
+ "Date and time when recurring billing starts.\n\nWhen `firstChargeDate` is `CHECKOUT`, the first charge occurs at checkout and subsequent billing cycles start from this date.\n\nWhen `firstChargeDate` is `SCHEDULED`, the first charge occurs on this date.\n\nCustomers who book after recurring billing starts are billed for the remaining billing cycles only.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
15543
+ ).optional().nullable(),
15544
+ enrollmentFeeAmount: z.object({
15545
+ value: z.string().describe(
15546
+ "Monetary amount. Decimal string with a period as a decimal separator. For example `25.05`."
15547
+ ).optional(),
15548
+ currency: z.string().describe(
15549
+ "Currency code in [ISO 4217 format](https://en.wikipedia.org/wiki/ISO_4217). For example, `USD`."
15550
+ ).optional(),
15551
+ formattedValue: z.string().describe(
15552
+ "Monetary amount. Decimal string in local format. For example, `1 000,30`."
15553
+ ).max(50).optional().nullable()
15554
+ }).describe("Deprecated.").optional(),
15555
+ fullUpfrontPayment: z.object({
15556
+ supported: z.boolean().describe(
15557
+ "Whether customers can choose a one-time full payment instead of recurring subscription payments."
15558
+ ).optional().nullable(),
15559
+ discountPercent: z.string().describe(
15560
+ "Percentage discount applied when a customer chooses the full payment option.\nMin: `0.01` percent\nMax: `100` percent"
15561
+ ).optional().nullable()
15562
+ }).describe("Deprecated.").optional()
15563
+ }).describe(
15564
+ "Subscription pricing details for the service. Supported for course services only.\nThe business charges recurring monthly payments instead of a one-time fee.\n\nRequired when: `rateType` is `SUBSCRIPTION`."
15565
+ )
14423
15566
  })
14424
15567
  ])
14425
15568
  ).describe(