@wix/auto_sdk_bookings_pricing 1.0.30 → 1.0.32

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 (37) hide show
  1. package/build/cjs/index.d.ts +1 -1
  2. package/build/cjs/index.js +12 -3
  3. package/build/cjs/index.js.map +1 -1
  4. package/build/cjs/index.typings.d.ts +141 -105
  5. package/build/cjs/index.typings.js +12 -3
  6. package/build/cjs/index.typings.js.map +1 -1
  7. package/build/cjs/meta.d.ts +102 -96
  8. package/build/cjs/meta.js +12 -3
  9. package/build/cjs/meta.js.map +1 -1
  10. package/build/es/index.d.mts +1 -1
  11. package/build/es/index.mjs +12 -3
  12. package/build/es/index.mjs.map +1 -1
  13. package/build/es/index.typings.d.mts +141 -105
  14. package/build/es/index.typings.mjs +12 -3
  15. package/build/es/index.typings.mjs.map +1 -1
  16. package/build/es/meta.d.mts +102 -96
  17. package/build/es/meta.mjs +12 -3
  18. package/build/es/meta.mjs.map +1 -1
  19. package/build/internal/cjs/index.d.ts +1 -1
  20. package/build/internal/cjs/index.js +12 -3
  21. package/build/internal/cjs/index.js.map +1 -1
  22. package/build/internal/cjs/index.typings.d.ts +141 -105
  23. package/build/internal/cjs/index.typings.js +12 -3
  24. package/build/internal/cjs/index.typings.js.map +1 -1
  25. package/build/internal/cjs/meta.d.ts +102 -96
  26. package/build/internal/cjs/meta.js +12 -3
  27. package/build/internal/cjs/meta.js.map +1 -1
  28. package/build/internal/es/index.d.mts +1 -1
  29. package/build/internal/es/index.mjs +12 -3
  30. package/build/internal/es/index.mjs.map +1 -1
  31. package/build/internal/es/index.typings.d.mts +141 -105
  32. package/build/internal/es/index.typings.mjs +12 -3
  33. package/build/internal/es/index.typings.mjs.map +1 -1
  34. package/build/internal/es/meta.d.mts +102 -96
  35. package/build/internal/es/meta.mjs +12 -3
  36. package/build/internal/es/meta.mjs.map +1 -1
  37. package/package.json +2 -2
@@ -154,6 +154,23 @@ interface Duration {
154
154
  */
155
155
  name?: string | null;
156
156
  }
157
+ interface PricingServiceChoices {
158
+ /**
159
+ * Number of participants for this variant
160
+ * @min 1
161
+ */
162
+ numberOfParticipants?: number | null;
163
+ /**
164
+ * Service choices for these participants.
165
+ * @maxSize 5
166
+ */
167
+ choices?: ServiceChoice[];
168
+ /**
169
+ * Price per participant for the line item.
170
+ * @readonly
171
+ */
172
+ pricePerParticipant?: number | null;
173
+ }
157
174
  interface PriceDescriptionInfo {
158
175
  /**
159
176
  * Price description in the site's main language. Refer to the *Site Properties API*
@@ -192,16 +209,19 @@ interface CalculatePriceRequest {
192
209
  /** An entity representing a scheduled appointment, class session, or course. */
193
210
  interface Booking extends BookingParticipantsInfoOneOf {
194
211
  /**
195
- * Total number of participants. Available only when the relevant service
196
- * doesn't have _variants and options_
197
- * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/service-options-and-variants/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/services/service-options-and-variants/introduction)).
212
+ * Total number of participants.
213
+ * When creating a booking, use this field only if the relevant service has fixed pricing and doesn't offer variants and options ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/service-options-and-variants/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/services/service-options-and-variants/introduction)).
198
214
  * @min 1
199
215
  */
200
216
  totalParticipants?: number;
201
217
  /**
202
- * Information about the booked service choices and participants.
203
- * Available only when the booking includes multiple _service variants_
218
+ * Information about the booked service choices and participant count for each choice.
219
+ * When creating a booking, use this field only if the booking includes multiple service variants
204
220
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/service-options-and-variants/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/services/service-options-and-variants/introduction)).
221
+ *
222
+ * For example, use this for a spa package booking that includes different service levels:
223
+ * - 2 participants chose "Standard Package".
224
+ * - 1 participant chose "VIP Package".
205
225
  */
206
226
  participantsChoices?: ParticipantChoices;
207
227
  /**
@@ -211,15 +231,24 @@ interface Booking extends BookingParticipantsInfoOneOf {
211
231
  */
212
232
  _id?: string | null;
213
233
  /**
214
- * An object describing the *slot*
215
- * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/availability-calendar/query-availability) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings-and-time-slots/time-slots/availability-calendar/query-availability))
216
- * or *schedule*
217
- * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/calendar/schedules/introduction) | [REST](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/introduction))
218
- * that was booked.
234
+ * An object describing the bookable entity - either a specific time slot or a recurring schedule.
235
+ *
236
+ * The structure depends on the type of service being booked:
237
+ *
238
+ * *For appointment services:** Use `slot` to book a specific time slot with a
239
+ * service provider. Appointments are typically one-time sessions at a specific date and time.
240
+ *
241
+ * *For class services:** Use `slot` to book a specific class session. Classes
242
+ * are individual sessions that can have multiple participants.
243
+ *
244
+ * *For course services:** Use `schedule` to book an entire course consisting of
245
+ * multiple sessions over time. Courses are recurring, multi-session offerings.
246
+ *
247
+ * Choose the appropriate field based on your service type and booking requirements.
219
248
  */
220
249
  bookedEntity?: BookedEntity;
221
250
  /**
222
- * Contact details of the site visitor or *member*
251
+ * Contact details of the site visitor or member
223
252
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/members/members/introduction) | [REST](https://dev.wix.com/docs/rest/crm/members-contacts/members/members/introduction))
224
253
  * making the booking.
225
254
  */
@@ -234,20 +263,27 @@ interface Booking extends BookingParticipantsInfoOneOf {
234
263
  */
235
264
  status?: BookingStatusWithLiterals;
236
265
  /**
237
- * The payment status of the booking corresponds to the `paymentStatus` of the
238
- * related *eCommerce order*
239
- * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/ecom/orders/setup)| [REST](https://dev.wix.com/docs/rest/business-solutions/e-commerce/orders/introduction)),
240
- * if one exists. All payment statuses are supported for every booking `status`.
266
+ * The payment status of the booking. This field automatically syncs with the
267
+ * `paymentStatus` of the corresponding eCommerce order
268
+ * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/ecom/orders/setup)| [REST](https://dev.wix.com/docs/rest/business-solutions/e-commerce/orders/introduction))
269
+ * when customers use Wix eCommerce checkout.
270
+ *
271
+ * ## Integration patterns
272
+ *
273
+ * *When using Wix eCommerce checkout:** Wix Bookings automatically syncs the payment status based on the eCommerce order's payment status.
274
+ * Do not manually update this field.
275
+ *
276
+ * *When using custom payment flows:** You can manually update the payment status with Confirm Booking or Decline Booking ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings-writer-v2/confirm-or-decline-booking) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/confirm-or-decline-booking)) to reflect the customer's payment state.
277
+ *
278
+ * *For membership/pricing plan payments:** Wix Bookings automatically manages the payment status when customers pay with an active pricing plan ([SDK](https://dev.wix.com/docs/sdk/backend-modules/pricing-plans/plans/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/pricing-plans/pricing-plans/introduction)) subscription.
279
+ *
280
+ * All payment statuses are supported for every booking `status`.
241
281
  */
242
282
  paymentStatus?: PaymentStatusWithLiterals;
243
283
  /**
244
- * Payment option selected by the customer. If the customer hasn't completed their
245
- * checkout, they may still change the payment method. Must be one of the payment
246
- * options offered by the service ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/services/setup) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/services/services-v2/introduction)),
247
- * unless `skipSelectedPaymentOptionValidation` is `true`.
248
- * When undefined during an *eCommerce checkout*
249
- * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/ecom/checkout/setup) | [REST](https://dev.wix.com/docs/rest/business-solutions/e-commerce/checkout/introduction)),
250
- * Wix Bookings uses the service's default payment option
284
+ * Payment option selected by the customer. If the customer hasn't completed their checkout, they may still change the payment method. Must be one of the payment options offered by the service ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/services/setup) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/services/services-v2/introduction)), unless `skipSelectedPaymentOptionValidation` is `true`.
285
+ *
286
+ * When undefined during an eCommerce checkout ([SDK](https://dev.wix.com/docs/sdk/backend-modules/ecom/checkout/setup) | [REST](https://dev.wix.com/docs/rest/business-solutions/e-commerce/checkout/introduction)), Wix Bookings uses the service's default payment option
251
287
  */
252
288
  selectedPaymentOption?: SelectedPaymentOptionWithLiterals;
253
289
  /**
@@ -258,10 +294,8 @@ interface Booking extends BookingParticipantsInfoOneOf {
258
294
  /** External user ID that you can provide. */
259
295
  externalUserId?: string | null;
260
296
  /**
261
- * Revision number to be used when updating, rescheduling, or cancelling the
262
- * booking. Increments by 1 each time the booking is updated, rescheduled, or
263
- * canceled. To prevent conflicting changes, the current revision must be
264
- * specified when updating the booking.
297
+ * Revision number to be used when updating, rescheduling, or cancelling the booking.
298
+ * Increments by 1 each time the booking is updated, rescheduled, or canceled. To prevent conflicting changes, the current revision must be specified when updating the booking.
265
299
  */
266
300
  revision?: string | null;
267
301
  /**
@@ -302,21 +336,24 @@ interface Booking extends BookingParticipantsInfoOneOf {
302
336
  /** @oneof */
303
337
  interface BookingParticipantsInfoOneOf {
304
338
  /**
305
- * Total number of participants. Available only when the relevant service
306
- * doesn't have _variants and options_
307
- * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/service-options-and-variants/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/services/service-options-and-variants/introduction)).
339
+ * Total number of participants.
340
+ * When creating a booking, use this field only if the relevant service has fixed pricing and doesn't offer variants and options ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/service-options-and-variants/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/services/service-options-and-variants/introduction)).
308
341
  * @min 1
309
342
  */
310
343
  totalParticipants?: number;
311
344
  /**
312
- * Information about the booked service choices and participants.
313
- * Available only when the booking includes multiple _service variants_
345
+ * Information about the booked service choices and participant count for each choice.
346
+ * When creating a booking, use this field only if the booking includes multiple service variants
314
347
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/service-options-and-variants/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/services/service-options-and-variants/introduction)).
348
+ *
349
+ * For example, use this for a spa package booking that includes different service levels:
350
+ * - 2 participants chose "Standard Package".
351
+ * - 1 participant chose "VIP Package".
315
352
  */
316
353
  participantsChoices?: ParticipantChoices;
317
354
  }
318
355
  /**
319
- * A multi-service booking is considered available if all individual bookings are available as returned from List Multi Service Availability Time Slots.
356
+ * A multi-service booking is considered available if all single-service bookings are available as returned from List Multi Service Availability Time Slots.
320
357
  * Currently, `SEPARATE_BOOKINGS` and `PARALLEL_BOOKINGS` are not supported.
321
358
  * Multi-service booking is available if each of its bookings is available separately.
322
359
  * For `SEQUENTIAL_BOOKINGS`, see `List Multi Service Availability Time Slots` documentation.
@@ -330,22 +367,30 @@ declare enum MultiServiceBookingType {
330
367
  type MultiServiceBookingTypeWithLiterals = MultiServiceBookingType | 'SEQUENTIAL_BOOKINGS' | 'SEPARATE_BOOKINGS' | 'PARALLEL_BOOKINGS';
331
368
  interface BookedEntity extends BookedEntityItemOneOf {
332
369
  /**
333
- * Booked *slot*
370
+ * Booked slot
334
371
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/availability-calendar/query-availability) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings-and-time-slots/time-slots/availability-calendar/query-availability)).
335
- * Available only for appointment-based services and classes.
336
- * For appointment-based services, a new session is created, while for classes,
337
- * the booking is automatically linked to the existing session.
372
+ *
373
+ * Specify `slot` when creating bookings for:
374
+ * - **Appointment-based services:** Individual sessions with service providers (consultations, treatments).
375
+ * Wix Bookings creates a new session when the booking is confirmed.
376
+ * - **Class services:** Group sessions at specific times (fitness classes, workshops).
377
+ * Wix Bookings links the booking to an existing scheduled session.
378
+ *
379
+ * For course services, specify `schedule` instead of `slot`.
338
380
  */
339
381
  slot?: BookedSlot;
340
382
  /**
341
- * Booked *schedule*
383
+ * Booked schedule
342
384
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/calendar/schedules/introduction) | [REST](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/introduction)).
343
- * Available only for course bookings.
385
+ *
386
+ * Specify `schedule` when creating bookings for:
387
+ * - **Course services:** Multi-session offerings spanning weeks or months (educational courses, training programs).
388
+ * Wix Bookings enrolls participants in all sessions defined by the course schedule.
344
389
  */
345
390
  schedule?: BookedSchedule;
346
391
  /**
347
392
  * Session title at the time of booking. If there is no pre-existing session,
348
- * for example for appointment-based services, `title` is set to the service name.
393
+ * for example for appointment-based services, Wix Bookings sets `title` to the service name.
349
394
  * @readonly
350
395
  * @maxLength 6000
351
396
  */
@@ -362,17 +407,25 @@ interface BookedEntity extends BookedEntityItemOneOf {
362
407
  /** @oneof */
363
408
  interface BookedEntityItemOneOf {
364
409
  /**
365
- * Booked *slot*
410
+ * Booked slot
366
411
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/availability-calendar/query-availability) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings-and-time-slots/time-slots/availability-calendar/query-availability)).
367
- * Available only for appointment-based services and classes.
368
- * For appointment-based services, a new session is created, while for classes,
369
- * the booking is automatically linked to the existing session.
412
+ *
413
+ * Specify `slot` when creating bookings for:
414
+ * - **Appointment-based services:** Individual sessions with service providers (consultations, treatments).
415
+ * Wix Bookings creates a new session when the booking is confirmed.
416
+ * - **Class services:** Group sessions at specific times (fitness classes, workshops).
417
+ * Wix Bookings links the booking to an existing scheduled session.
418
+ *
419
+ * For course services, specify `schedule` instead of `slot`.
370
420
  */
371
421
  slot?: BookedSlot;
372
422
  /**
373
- * Booked *schedule*
423
+ * Booked schedule
374
424
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/calendar/schedules/introduction) | [REST](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/introduction)).
375
- * Available only for course bookings.
425
+ *
426
+ * Specify `schedule` when creating bookings for:
427
+ * - **Course services:** Multi-session offerings spanning weeks or months (educational courses, training programs).
428
+ * Wix Bookings enrolls participants in all sessions defined by the course schedule.
376
429
  */
377
430
  schedule?: BookedSchedule;
378
431
  }
@@ -384,35 +437,25 @@ interface BookedSlot {
384
437
  /** Schedule ID. */
385
438
  scheduleId?: string;
386
439
  /**
387
- * ID of the corresponding *event*
440
+ * ID of the corresponding event
388
441
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/calendar/events/introduction) | [REST](https://dev.wix.com/docs/rest/business-management/calendar/events-v3/introduction)).
389
442
  * Available for both appointment and class bookings, not available for course bookings.
390
- * For appointment-based services, Wix Bookings automatically populates `eventId`
391
- * when the booking `status` changes to `CONFIRMED`. For class bookings, it's
392
- * automatically populated upon booking creation.
443
+ * For appointment-based services, Wix Bookings automatically populates `eventId` when the booking `status` changes to `CONFIRMED`.
444
+ * For class bookings, Wix Bookings automatically populates `eventId` upon booking creation.
393
445
  * @minLength 36
394
446
  * @maxLength 250
395
447
  */
396
448
  eventId?: string | null;
397
- /**
398
- * The start time of this slot in [RFC 3339](https://www.rfc-editor.org/rfc/rfc3339)
399
- * format.
400
- */
449
+ /** The start time of this slot in [RFC 3339](https://www.rfc-editor.org/rfc/rfc3339) format. */
401
450
  startDate?: string | null;
402
- /**
403
- * The end time of this slot in [RFC 3339](https://www.rfc-editor.org/rfc/rfc3339)
404
- * format.
405
- */
451
+ /** The end time of this slot in [RFC 3339](https://www.rfc-editor.org/rfc/rfc3339) format. */
406
452
  endDate?: string | null;
407
- /** The timezone according to which the slot was shown to the user when booking, and should be shown in the future. */
453
+ /** The time zone according to which the slot was shown to the user when booking, and should be shown in the future. */
408
454
  timezone?: string | null;
409
455
  /**
410
- * Primary *resource*
411
- * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/resources/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/resources/resources-v2/introduction))
412
- * for the booking. For example, the *staff member*
413
- * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/staff-members/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/staff-members/introduction))
414
- * providing the
415
- * service.
456
+ * Primary resource
457
+ * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/resources/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/resources/resources-v2/introduction)) for the booking.
458
+ * For example, the staff member ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/staff-members/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/staff-members/introduction)) providing the service.
416
459
  */
417
460
  resource?: BookedResource;
418
461
  /** Location where the session takes place. */
@@ -474,10 +517,7 @@ declare enum LocationType {
474
517
  /** @enumType */
475
518
  type LocationTypeWithLiterals = LocationType | 'UNDEFINED' | 'OWNER_BUSINESS' | 'OWNER_CUSTOM' | 'CUSTOM';
476
519
  interface BookedSchedule {
477
- /**
478
- * _Schedule ID_
479
- * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/calendar/schedules/introduction) | [REST](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/introduction)).
480
- */
520
+ /** Schedule ID ([SDK](https://dev.wix.com/docs/sdk/backend-modules/calendar/schedules/introduction) | [REST](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/introduction)). */
481
521
  scheduleId?: string;
482
522
  /**
483
523
  * Booked service ID.
@@ -485,26 +525,22 @@ interface BookedSchedule {
485
525
  */
486
526
  serviceId?: string | null;
487
527
  /**
488
- * _Location_
489
- * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/business-tools/locations/introduction) | [REST](https://dev.wix.com/docs/rest/business-management/locations/introduction))
490
- * where the schedule's sessions take place.
528
+ * Location ([SDK](https://dev.wix.com/docs/sdk/backend-modules/business-tools/locations/introduction) | [REST](https://dev.wix.com/docs/rest/business-management/locations/introduction)) where the schedule's sessions take place.
491
529
  * @readonly
492
530
  */
493
531
  location?: Location;
494
532
  /**
495
- * Timezone in which the slot or session was shown to the customer when they booked.
533
+ * Time zone in which the slot or session was shown to the customer when they booked.
496
534
  * Also used whenever the customer reviews the booking's timing in the future.
497
535
  */
498
536
  timezone?: string | null;
499
537
  /**
500
- * Start time of the first session related to the booking in
501
- * [RFC 3339](https://www.rfc-editor.org/rfc/rfc3339) format.
538
+ * Start time of the first session related to the booking in [RFC 3339](https://www.rfc-editor.org/rfc/rfc3339) format.
502
539
  * @readonly
503
540
  */
504
541
  firstSessionStart?: string | null;
505
542
  /**
506
- * End time of the last session related to the booking in
507
- * [RFC 3339](https://www.rfc-editor.org/rfc/rfc3339) format.
543
+ * End time of the last session related to the booking in [RFC 3339](https://www.rfc-editor.org/rfc/rfc3339) format.
508
544
  * @readonly
509
545
  */
510
546
  lastSessionEnd?: string | null;
@@ -631,38 +667,26 @@ declare enum ValueType {
631
667
  type ValueTypeWithLiterals = ValueType | 'SHORT_TEXT' | 'LONG_TEXT' | 'CHECK_BOX';
632
668
  /** Booking status. */
633
669
  declare enum BookingStatus {
634
- /**
635
- * The booking was created, but the customer hasn't completed the related
636
- * eCommerce order yet.
637
- */
670
+ /** The booking was created, but the customer hasn't completed the related eCommerce order yet. */
638
671
  CREATED = "CREATED",
639
672
  /**
640
- * The merchant has confirmed the booking and it appears in the
641
- * business calendar. Merchants can set up their *services*
642
- * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/services/setup) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/services/services-v2/introduction))
643
- * to automatically confirm all `PENDING` bookings.
673
+ * The merchant has confirmed the booking and it appears in the business calendar. Merchants can set up their services
674
+ * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/services/setup) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/services/services-v2/introduction)) to automatically confirm all `PENDING` bookings.
644
675
  */
645
676
  CONFIRMED = "CONFIRMED",
646
677
  /**
647
- * The customer has canceled the booking. Depending on the relevant service's
648
- * _policy snapshot_
678
+ * The customer has canceled the booking. Depending on the relevant service's policy snapshot
649
679
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/booking-policy-snapshots/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/policies/booking-policy-snapshots/introduction))
650
- * they may have to pay a _cancellation fee_
651
- * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/booking-fees/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/pricing/booking-fees/introduction)).
680
+ * they may have to pay a cancellation fee ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/booking-fees/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/pricing/booking-fees/introduction)).
652
681
  */
653
682
  CANCELED = "CANCELED",
654
- /**
655
- * The merchant must manually confirm the booking before it appears
656
- * in the business calendar.
657
- */
683
+ /** The merchant must manually confirm the booking before it appears in the business calendar. */
658
684
  PENDING = "PENDING",
659
685
  /** The merchant has declined the booking before the customer was charged. */
660
686
  DECLINED = "DECLINED",
661
687
  /**
662
688
  * The booking is on a waitlist.
663
- * Currently, you can't call Register to Waitlist
664
- * ([REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/waitlist/register-to-waitlist))
665
- * for course or appointment bookings, even though this is supported in live sites.
689
+ * Currently, you can't call Register to Waitlist ([REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/waitlist/register-to-waitlist)) for course or appointment bookings, even though this is supported in live sites.
666
690
  * You can call Register to Waitlist only for class session bookings.
667
691
  */
668
692
  WAITING_LIST = "WAITING_LIST"
@@ -813,12 +837,25 @@ declare enum IdentityType {
813
837
  }
814
838
  /** @enumType */
815
839
  type IdentityTypeWithLiterals = IdentityType | 'UNKNOWN' | 'ANONYMOUS_VISITOR' | 'MEMBER' | 'WIX_USER' | 'APP';
840
+ /**
841
+ * Settings that control booking flow behavior and override default business rules.
842
+ *
843
+ * These settings allow administrators to bypass standard validation checks
844
+ * and policies when creating, confirming, rescheduling, or canceling bookings.
845
+ * Most settings require elevated permissions to use.
846
+ *
847
+ * Use flow control settings to handle special scenarios like:
848
+ * - Emergency bookings outside normal business hours
849
+ * - Admin-initiated bookings that bypass availability checks
850
+ * - Custom payment flows that don't use standard eCommerce checkout
851
+ * - Overriding cancellation or rescheduling policies in exceptional cases
852
+ */
816
853
  interface FlowControlSettings {
817
854
  /** Whether availability is checked when creating or confirming the booking. */
818
855
  skipAvailabilityValidation?: boolean;
819
856
  /**
820
857
  * Whether the booking's `status` is automatically updated to `CONFIRMED` when
821
- * the customer completes the *eCommerce checkout*
858
+ * the customer completes the eCommerce checkout
822
859
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/ecom/checkout/setup) | [REST](https://dev.wix.com/docs/rest/business-solutions/e-commerce/checkout/introduction)),
823
860
  * regardless of whether the relevant service requires manual business confirmation.
824
861
  */
@@ -856,8 +893,7 @@ interface ParticipantChoices {
856
893
  }
857
894
  interface ServiceChoices {
858
895
  /**
859
- * Number of participants for this _variant_
860
- * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/service-options-and-variants/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/services/service-options-and-variants/introduction)).
896
+ * Number of participants for this variant ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/service-options-and-variants/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/services/service-options-and-variants/introduction)).
861
897
  * @min 1
862
898
  */
863
899
  numberOfParticipants?: number | null;
@@ -879,36 +915,36 @@ interface MultiServiceBookingInfo {
879
915
  }
880
916
  interface BookedAddOn {
881
917
  /**
882
- * The ID of the Add-On.
918
+ * The ID of the add-on.
883
919
  * @format GUID
884
920
  */
885
921
  _id?: string;
886
922
  /**
887
- * The ID of the Add-Ons group.
923
+ * The ID of the add-on group.
888
924
  * @format GUID
889
925
  */
890
926
  groupId?: string;
891
927
  /**
892
- * The Add-On duration in minutes at the time of Booking.
928
+ * The add-on duration in minutes at the time of booking.
893
929
  * @min 1
894
930
  * @max 1440
895
931
  * @readonly
896
932
  */
897
933
  durationInMinutes?: number | null;
898
934
  /**
899
- * The quantity of booked Add-Ons.
935
+ * The quantity of booked add-ons.
900
936
  * @min 1
901
937
  * @max 1000
902
938
  */
903
939
  quantity?: number | null;
904
940
  /**
905
- * Add-On name at the time of booking.
941
+ * Add-on `name` at the time of booking.
906
942
  * @maxLength 100
907
943
  * @readonly
908
944
  */
909
945
  name?: string | null;
910
946
  /**
911
- * Add-On name translated to the language the booking was made in.
947
+ * Add-on name translated to the language the customer used during booking.
912
948
  * @maxLength 100
913
949
  * @readonly
914
950
  */
@@ -1038,4 +1074,4 @@ declare function calculatePrice(booking: Booking): Promise<NonNullablePaths<Calc
1038
1074
  __applicationErrorsType?: CalculatePriceApplicationErrors;
1039
1075
  }>;
1040
1076
 
1041
- export { Actor, type ActorWithLiterals, type Address, type AddressLocation, type AddressStreetOneOf, type BookedAddOn, type BookedEntity, type BookedEntityItemOneOf, type BookedResource, type BookedSchedule, type BookedSlot, type Booking, type BookingLineItem, type BookingParticipantsInfoOneOf, type BookingSource, BookingStatus, type BookingStatusWithLiterals, type CalculatePriceApplicationErrors, type CalculatePriceRequest, type CalculatePriceResponse, type ContactDetails, type CustomFormField, type Duration, type ExtendedFields, type FlowControlSettings, type IdentificationData, type IdentificationDataIdOneOf, IdentityType, type IdentityTypeWithLiterals, type Location, LocationType, type LocationTypeWithLiterals, type MultiServiceBookingInfo, MultiServiceBookingType, type MultiServiceBookingTypeWithLiterals, type ParticipantChoices, type ParticipantNotification, PaymentStatus, type PaymentStatusWithLiterals, Platform, type PlatformWithLiterals, type PreviewPriceApplicationErrors, type PreviewPriceRequest, type PreviewPriceResponse, type PriceDescriptionInfo, type PriceInfo, type PriceInfoTotalPriceOneOf, SelectedPaymentOption, type SelectedPaymentOptionWithLiterals, type ServiceChoice, type ServiceChoiceChoiceOneOf, type ServiceChoices, type StreetAddress, type Subdivision, ValueType, type ValueTypeWithLiterals, calculatePrice, previewPrice };
1077
+ export { Actor, type ActorWithLiterals, type Address, type AddressLocation, type AddressStreetOneOf, type BookedAddOn, type BookedEntity, type BookedEntityItemOneOf, type BookedResource, type BookedSchedule, type BookedSlot, type Booking, type BookingLineItem, type BookingParticipantsInfoOneOf, type BookingSource, BookingStatus, type BookingStatusWithLiterals, type CalculatePriceApplicationErrors, type CalculatePriceRequest, type CalculatePriceResponse, type ContactDetails, type CustomFormField, type Duration, type ExtendedFields, type FlowControlSettings, type IdentificationData, type IdentificationDataIdOneOf, IdentityType, type IdentityTypeWithLiterals, type Location, LocationType, type LocationTypeWithLiterals, type MultiServiceBookingInfo, MultiServiceBookingType, type MultiServiceBookingTypeWithLiterals, type ParticipantChoices, type ParticipantNotification, PaymentStatus, type PaymentStatusWithLiterals, Platform, type PlatformWithLiterals, type PreviewPriceApplicationErrors, type PreviewPriceRequest, type PreviewPriceResponse, type PriceDescriptionInfo, type PriceInfo, type PriceInfoTotalPriceOneOf, type PricingServiceChoices, SelectedPaymentOption, type SelectedPaymentOptionWithLiterals, type ServiceChoice, type ServiceChoiceChoiceOneOf, type ServiceChoices, type StreetAddress, type Subdivision, ValueType, type ValueTypeWithLiterals, calculatePrice, previewPrice };
@@ -85,7 +85,10 @@ function previewPrice(payload) {
85
85
  const serializedData = (0, import_transform_paths.transformPaths)(payload, [
86
86
  {
87
87
  transformFn: import_float.transformSDKFloatToRESTFloat,
88
- paths: [{ path: "bookingLineItems.pricePerParticipant" }]
88
+ paths: [
89
+ { path: "bookingLineItems.pricePerParticipant" },
90
+ { path: "bookingLineItems.serviceChoices.pricePerParticipant" }
91
+ ]
89
92
  }
90
93
  ]);
91
94
  const metadata = {
@@ -105,7 +108,10 @@ function previewPrice(payload) {
105
108
  paths: [
106
109
  { path: "priceInfo.calculatedPrice" },
107
110
  { path: "priceInfo.deposit" },
108
- { path: "priceInfo.bookingLineItems.pricePerParticipant" }
111
+ { path: "priceInfo.bookingLineItems.pricePerParticipant" },
112
+ {
113
+ path: "priceInfo.bookingLineItems.serviceChoices.pricePerParticipant"
114
+ }
109
115
  ]
110
116
  }
111
117
  ])
@@ -152,7 +158,10 @@ function calculatePrice(payload) {
152
158
  paths: [
153
159
  { path: "priceInfo.calculatedPrice" },
154
160
  { path: "priceInfo.deposit" },
155
- { path: "priceInfo.bookingLineItems.pricePerParticipant" }
161
+ { path: "priceInfo.bookingLineItems.pricePerParticipant" },
162
+ {
163
+ path: "priceInfo.bookingLineItems.serviceChoices.pricePerParticipant"
164
+ }
156
165
  ]
157
166
  }
158
167
  ])