@wix/auto_sdk_bookings_bookings 1.0.40 → 1.0.42

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.
@@ -3,16 +3,19 @@ import { NonNullablePaths } from '@wix/sdk-types';
3
3
  /** An entity representing a scheduled appointment, class session, or course. */
4
4
  interface Booking extends BookingParticipantsInfoOneOf {
5
5
  /**
6
- * Total number of participants. Available only when the relevant service
7
- * doesn't have _variants and options_
8
- * ([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)).
6
+ * Total number of participants.
7
+ * 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)).
9
8
  * @min 1
10
9
  */
11
10
  totalParticipants?: number;
12
11
  /**
13
- * Information about the booked service choices and participants.
14
- * Available only when the booking includes multiple _service variants_
12
+ * Information about the booked service choices and participant count for each choice.
13
+ * When creating a booking, use this field only if the booking includes multiple service variants
15
14
  * ([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)).
15
+ *
16
+ * For example, use this for a spa package booking that includes different service levels:
17
+ * - 2 participants chose "Standard Package".
18
+ * - 1 participant chose "VIP Package".
16
19
  */
17
20
  participantsChoices?: ParticipantChoices;
18
21
  /**
@@ -22,15 +25,24 @@ interface Booking extends BookingParticipantsInfoOneOf {
22
25
  */
23
26
  _id?: string | null;
24
27
  /**
25
- * An object describing the *slot*
26
- * ([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))
27
- * or *schedule*
28
- * ([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))
29
- * that was booked.
28
+ * An object describing the bookable entity - either a specific time slot or a recurring schedule.
29
+ *
30
+ * The structure depends on the type of service being booked:
31
+ *
32
+ * *For appointment services:** Use `slot` to book a specific time slot with a
33
+ * service provider. Appointments are typically one-time sessions at a specific date and time.
34
+ *
35
+ * *For class services:** Use `slot` to book a specific class session. Classes
36
+ * are individual sessions that can have multiple participants.
37
+ *
38
+ * *For course services:** Use `schedule` to book an entire course consisting of
39
+ * multiple sessions over time. Courses are recurring, multi-session offerings.
40
+ *
41
+ * Choose the appropriate field based on your service type and booking requirements.
30
42
  */
31
43
  bookedEntity?: BookedEntity;
32
44
  /**
33
- * Contact details of the site visitor or *member*
45
+ * Contact details of the site visitor or member
34
46
  * ([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))
35
47
  * making the booking.
36
48
  */
@@ -45,20 +57,27 @@ interface Booking extends BookingParticipantsInfoOneOf {
45
57
  */
46
58
  status?: BookingStatusWithLiterals;
47
59
  /**
48
- * The payment status of the booking corresponds to the `paymentStatus` of the
49
- * related *eCommerce order*
50
- * ([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)),
51
- * if one exists. All payment statuses are supported for every booking `status`.
60
+ * The payment status of the booking. This field automatically syncs with the
61
+ * `paymentStatus` of the corresponding eCommerce order
62
+ * ([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))
63
+ * when customers use Wix eCommerce checkout.
64
+ *
65
+ * ## Integration patterns
66
+ *
67
+ * *When using Wix eCommerce checkout:** Wix Bookings automatically syncs the payment status based on the eCommerce order's payment status.
68
+ * Do not manually update this field.
69
+ *
70
+ * *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.
71
+ *
72
+ * *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.
73
+ *
74
+ * All payment statuses are supported for every booking `status`.
52
75
  */
53
76
  paymentStatus?: PaymentStatusWithLiterals;
54
77
  /**
55
- * Payment option selected by the customer. If the customer hasn't completed their
56
- * checkout, they may still change the payment method. Must be one of the payment
57
- * 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)),
58
- * unless `skipSelectedPaymentOptionValidation` is `true`.
59
- * When undefined during an *eCommerce checkout*
60
- * ([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)),
61
- * Wix Bookings uses the service's default payment option
78
+ * 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`.
79
+ *
80
+ * 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
62
81
  */
63
82
  selectedPaymentOption?: SelectedPaymentOptionWithLiterals;
64
83
  /**
@@ -69,10 +88,8 @@ interface Booking extends BookingParticipantsInfoOneOf {
69
88
  /** External user ID that you can provide. */
70
89
  externalUserId?: string | null;
71
90
  /**
72
- * Revision number to be used when updating, rescheduling, or cancelling the
73
- * booking. Increments by 1 each time the booking is updated, rescheduled, or
74
- * canceled. To prevent conflicting changes, the current revision must be
75
- * specified when updating the booking.
91
+ * Revision number to be used when updating, rescheduling, or cancelling the booking.
92
+ * 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.
76
93
  */
77
94
  revision?: string | null;
78
95
  /**
@@ -113,50 +130,64 @@ interface Booking extends BookingParticipantsInfoOneOf {
113
130
  /** @oneof */
114
131
  interface BookingParticipantsInfoOneOf {
115
132
  /**
116
- * Total number of participants. Available only when the relevant service
117
- * doesn't have _variants and options_
118
- * ([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)).
133
+ * Total number of participants.
134
+ * 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)).
119
135
  * @min 1
120
136
  */
121
137
  totalParticipants?: number;
122
138
  /**
123
- * Information about the booked service choices and participants.
124
- * Available only when the booking includes multiple _service variants_
139
+ * Information about the booked service choices and participant count for each choice.
140
+ * When creating a booking, use this field only if the booking includes multiple service variants
125
141
  * ([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)).
142
+ *
143
+ * For example, use this for a spa package booking that includes different service levels:
144
+ * - 2 participants chose "Standard Package".
145
+ * - 1 participant chose "VIP Package".
126
146
  */
127
147
  participantsChoices?: ParticipantChoices;
128
148
  }
129
149
  /**
130
- * A multi-service booking is considered available if all individual bookings are available as returned from List Multi Service Availability Time Slots.
150
+ * A multi-service booking is considered available if all single-service bookings are available as returned from List Multi Service Availability Time Slots.
131
151
  * Currently, `SEPARATE_BOOKINGS` and `PARALLEL_BOOKINGS` are not supported.
132
152
  * Multi-service booking is available if each of its bookings is available separately.
133
153
  * For `SEQUENTIAL_BOOKINGS`, see `List Multi Service Availability Time Slots` documentation.
134
154
  */
135
155
  declare enum MultiServiceBookingType {
156
+ /** You must schedule single-service bookings back-to-back with each booking starting when the previous booking ends */
136
157
  SEQUENTIAL_BOOKINGS = "SEQUENTIAL_BOOKINGS",
158
+ /** Not currently supported. */
137
159
  SEPARATE_BOOKINGS = "SEPARATE_BOOKINGS",
160
+ /** Not currently supported. */
138
161
  PARALLEL_BOOKINGS = "PARALLEL_BOOKINGS"
139
162
  }
140
163
  /** @enumType */
141
164
  type MultiServiceBookingTypeWithLiterals = MultiServiceBookingType | 'SEQUENTIAL_BOOKINGS' | 'SEPARATE_BOOKINGS' | 'PARALLEL_BOOKINGS';
142
165
  interface BookedEntity extends BookedEntityItemOneOf {
143
166
  /**
144
- * Booked *slot*
167
+ * Booked slot
145
168
  * ([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)).
146
- * Available only for appointment-based services and classes.
147
- * For appointment-based services, a new session is created, while for classes,
148
- * the booking is automatically linked to the existing session.
169
+ *
170
+ * Specify `slot` when creating bookings for:
171
+ * - **Appointment-based services:** Individual sessions with service providers (consultations, treatments).
172
+ * Wix Bookings creates a new session when the booking is confirmed.
173
+ * - **Class services:** Group sessions at specific times (fitness classes, workshops).
174
+ * Wix Bookings links the booking to an existing scheduled session.
175
+ *
176
+ * For course services, specify `schedule` instead of `slot`.
149
177
  */
150
178
  slot?: BookedSlot;
151
179
  /**
152
- * Booked *schedule*
180
+ * Booked schedule
153
181
  * ([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)).
154
- * Available only for course bookings.
182
+ *
183
+ * Specify `schedule` when creating bookings for:
184
+ * - **Course services:** Multi-session offerings spanning weeks or months (educational courses, training programs).
185
+ * Wix Bookings enrolls participants in all sessions defined by the course schedule.
155
186
  */
156
187
  schedule?: BookedSchedule;
157
188
  /**
158
189
  * Session title at the time of booking. If there is no pre-existing session,
159
- * for example for appointment-based services, `title` is set to the service name.
190
+ * for example for appointment-based services, Wix Bookings sets `title` to the service name.
160
191
  * @readonly
161
192
  * @maxLength 6000
162
193
  */
@@ -173,17 +204,25 @@ interface BookedEntity extends BookedEntityItemOneOf {
173
204
  /** @oneof */
174
205
  interface BookedEntityItemOneOf {
175
206
  /**
176
- * Booked *slot*
207
+ * Booked slot
177
208
  * ([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)).
178
- * Available only for appointment-based services and classes.
179
- * For appointment-based services, a new session is created, while for classes,
180
- * the booking is automatically linked to the existing session.
209
+ *
210
+ * Specify `slot` when creating bookings for:
211
+ * - **Appointment-based services:** Individual sessions with service providers (consultations, treatments).
212
+ * Wix Bookings creates a new session when the booking is confirmed.
213
+ * - **Class services:** Group sessions at specific times (fitness classes, workshops).
214
+ * Wix Bookings links the booking to an existing scheduled session.
215
+ *
216
+ * For course services, specify `schedule` instead of `slot`.
181
217
  */
182
218
  slot?: BookedSlot;
183
219
  /**
184
- * Booked *schedule*
220
+ * Booked schedule
185
221
  * ([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)).
186
- * Available only for course bookings.
222
+ *
223
+ * Specify `schedule` when creating bookings for:
224
+ * - **Course services:** Multi-session offerings spanning weeks or months (educational courses, training programs).
225
+ * Wix Bookings enrolls participants in all sessions defined by the course schedule.
187
226
  */
188
227
  schedule?: BookedSchedule;
189
228
  }
@@ -195,35 +234,25 @@ interface BookedSlot {
195
234
  /** Schedule ID. */
196
235
  scheduleId?: string;
197
236
  /**
198
- * ID of the corresponding *event*
237
+ * ID of the corresponding event
199
238
  * ([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)).
200
239
  * Available for both appointment and class bookings, not available for course bookings.
201
- * For appointment-based services, Wix Bookings automatically populates `eventId`
202
- * when the booking `status` changes to `CONFIRMED`. For class bookings, it's
203
- * automatically populated upon booking creation.
240
+ * For appointment-based services, Wix Bookings automatically populates `eventId` when the booking `status` changes to `CONFIRMED`.
241
+ * For class bookings, Wix Bookings automatically populates `eventId` upon booking creation.
204
242
  * @minLength 36
205
243
  * @maxLength 250
206
244
  */
207
245
  eventId?: string | null;
208
- /**
209
- * The start time of this slot in [RFC 3339](https://www.rfc-editor.org/rfc/rfc3339)
210
- * format.
211
- */
246
+ /** The start time of this slot in [RFC 3339](https://www.rfc-editor.org/rfc/rfc3339) format. */
212
247
  startDate?: string | null;
213
- /**
214
- * The end time of this slot in [RFC 3339](https://www.rfc-editor.org/rfc/rfc3339)
215
- * format.
216
- */
248
+ /** The end time of this slot in [RFC 3339](https://www.rfc-editor.org/rfc/rfc3339) format. */
217
249
  endDate?: string | null;
218
- /** The timezone according to which the slot was shown to the user when booking, and should be shown in the future. */
250
+ /** The time zone according to which the slot was shown to the user when booking, and should be shown in the future. */
219
251
  timezone?: string | null;
220
252
  /**
221
- * Primary *resource*
222
- * ([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))
223
- * for the booking. For example, the *staff member*
224
- * ([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))
225
- * providing the
226
- * service.
253
+ * Primary resource
254
+ * ([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.
255
+ * 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.
227
256
  */
228
257
  resource?: BookedResource;
229
258
  /** Location where the session takes place. */
@@ -285,10 +314,7 @@ declare enum LocationType {
285
314
  /** @enumType */
286
315
  type LocationTypeWithLiterals = LocationType | 'UNDEFINED' | 'OWNER_BUSINESS' | 'OWNER_CUSTOM' | 'CUSTOM';
287
316
  interface BookedSchedule {
288
- /**
289
- * _Schedule ID_
290
- * ([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)).
291
- */
317
+ /** 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)). */
292
318
  scheduleId?: string;
293
319
  /**
294
320
  * Booked service ID.
@@ -296,26 +322,22 @@ interface BookedSchedule {
296
322
  */
297
323
  serviceId?: string | null;
298
324
  /**
299
- * _Location_
300
- * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/business-tools/locations/introduction) | [REST](https://dev.wix.com/docs/rest/business-management/locations/introduction))
301
- * where the schedule's sessions take place.
325
+ * 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.
302
326
  * @readonly
303
327
  */
304
328
  location?: Location;
305
329
  /**
306
- * Timezone in which the slot or session was shown to the customer when they booked.
330
+ * Time zone in which the slot or session was shown to the customer when they booked.
307
331
  * Also used whenever the customer reviews the booking's timing in the future.
308
332
  */
309
333
  timezone?: string | null;
310
334
  /**
311
- * Start time of the first session related to the booking in
312
- * [RFC 3339](https://www.rfc-editor.org/rfc/rfc3339) format.
335
+ * Start time of the first session related to the booking in [RFC 3339](https://www.rfc-editor.org/rfc/rfc3339) format.
313
336
  * @readonly
314
337
  */
315
338
  firstSessionStart?: string | null;
316
339
  /**
317
- * End time of the last session related to the booking in
318
- * [RFC 3339](https://www.rfc-editor.org/rfc/rfc3339) format.
340
+ * End time of the last session related to the booking in [RFC 3339](https://www.rfc-editor.org/rfc/rfc3339) format.
319
341
  * @readonly
320
342
  */
321
343
  lastSessionEnd?: string | null;
@@ -442,38 +464,26 @@ declare enum ValueType {
442
464
  type ValueTypeWithLiterals = ValueType | 'SHORT_TEXT' | 'LONG_TEXT' | 'CHECK_BOX';
443
465
  /** Booking status. */
444
466
  declare enum BookingStatus {
445
- /**
446
- * The booking was created, but the customer hasn't completed the related
447
- * eCommerce order yet.
448
- */
467
+ /** The booking was created, but the customer hasn't completed the related eCommerce order yet. */
449
468
  CREATED = "CREATED",
450
469
  /**
451
- * The merchant has confirmed the booking and it appears in the
452
- * business calendar. Merchants can set up their *services*
453
- * ([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))
454
- * to automatically confirm all `PENDING` bookings.
470
+ * The merchant has confirmed the booking and it appears in the business calendar. Merchants can set up their services
471
+ * ([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.
455
472
  */
456
473
  CONFIRMED = "CONFIRMED",
457
474
  /**
458
- * The customer has canceled the booking. Depending on the relevant service's
459
- * _policy snapshot_
475
+ * The customer has canceled the booking. Depending on the relevant service's policy snapshot
460
476
  * ([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))
461
- * they may have to pay a _cancellation fee_
462
- * ([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)).
477
+ * 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)).
463
478
  */
464
479
  CANCELED = "CANCELED",
465
- /**
466
- * The merchant must manually confirm the booking before it appears
467
- * in the business calendar.
468
- */
480
+ /** The merchant must manually confirm the booking before it appears in the business calendar. */
469
481
  PENDING = "PENDING",
470
482
  /** The merchant has declined the booking before the customer was charged. */
471
483
  DECLINED = "DECLINED",
472
484
  /**
473
485
  * The booking is on a waitlist.
474
- * Currently, you can't call Register to Waitlist
475
- * ([REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/waitlist/register-to-waitlist))
476
- * for course or appointment bookings, even though this is supported in live sites.
486
+ * 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.
477
487
  * You can call Register to Waitlist only for class session bookings.
478
488
  */
479
489
  WAITING_LIST = "WAITING_LIST"
@@ -557,7 +567,7 @@ declare enum Actor {
557
567
  type ActorWithLiterals = Actor | 'UNDEFINED_ACTOR' | 'BUSINESS' | 'CUSTOMER';
558
568
  interface ParticipantNotification {
559
569
  /**
560
- * Whether to send the message about the changes to the customer.
570
+ * Whether to send a message about the changes to the customer.
561
571
  *
562
572
  * Default: `false`
563
573
  */
@@ -624,12 +634,25 @@ declare enum IdentificationDataIdentityType {
624
634
  }
625
635
  /** @enumType */
626
636
  type IdentificationDataIdentityTypeWithLiterals = IdentificationDataIdentityType | 'UNKNOWN' | 'ANONYMOUS_VISITOR' | 'MEMBER' | 'WIX_USER' | 'APP';
637
+ /**
638
+ * Settings that control booking flow behavior and override default business rules.
639
+ *
640
+ * These settings allow administrators to bypass standard validation checks
641
+ * and policies when creating, confirming, rescheduling, or canceling bookings.
642
+ * Most settings require elevated permissions to use.
643
+ *
644
+ * Use flow control settings to handle special scenarios like:
645
+ * - Emergency bookings outside normal business hours
646
+ * - Admin-initiated bookings that bypass availability checks
647
+ * - Custom payment flows that don't use standard eCommerce checkout
648
+ * - Overriding cancellation or rescheduling policies in exceptional cases
649
+ */
627
650
  interface FlowControlSettings {
628
651
  /** Whether availability is checked when creating or confirming the booking. */
629
652
  skipAvailabilityValidation?: boolean;
630
653
  /**
631
654
  * Whether the booking's `status` is automatically updated to `CONFIRMED` when
632
- * the customer completes the *eCommerce checkout*
655
+ * the customer completes the eCommerce checkout
633
656
  * ([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)),
634
657
  * regardless of whether the relevant service requires manual business confirmation.
635
658
  */
@@ -667,8 +690,7 @@ interface ParticipantChoices {
667
690
  }
668
691
  interface ServiceChoices {
669
692
  /**
670
- * Number of participants for this _variant_
671
- * ([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)).
693
+ * 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)).
672
694
  * @min 1
673
695
  */
674
696
  numberOfParticipants?: number | null;
@@ -733,36 +755,36 @@ interface MultiServiceBookingInfo {
733
755
  }
734
756
  interface BookedAddOn {
735
757
  /**
736
- * The ID of the Add-On.
758
+ * The ID of the add-on.
737
759
  * @format GUID
738
760
  */
739
761
  _id?: string;
740
762
  /**
741
- * The ID of the Add-Ons group.
763
+ * The ID of the add-on group.
742
764
  * @format GUID
743
765
  */
744
766
  groupId?: string;
745
767
  /**
746
- * The Add-On duration in minutes at the time of Booking.
768
+ * The add-on duration in minutes at the time of booking.
747
769
  * @min 1
748
770
  * @max 1440
749
771
  * @readonly
750
772
  */
751
773
  durationInMinutes?: number | null;
752
774
  /**
753
- * The quantity of booked Add-Ons.
775
+ * The quantity of booked add-ons.
754
776
  * @min 1
755
777
  * @max 1000
756
778
  */
757
779
  quantity?: number | null;
758
780
  /**
759
- * Add-On name at the time of booking.
781
+ * Add-on `name` at the time of booking.
760
782
  * @maxLength 100
761
783
  * @readonly
762
784
  */
763
785
  name?: string | null;
764
786
  /**
765
- * Add-On name translated to the language the booking was made in.
787
+ * Add-on name translated to the language the customer used during booking.
766
788
  * @maxLength 100
767
789
  * @readonly
768
790
  */
@@ -1482,7 +1504,14 @@ interface CreateBookingFlowControlSettings {
1482
1504
  /**
1483
1505
  * Whether the availability is checked before creating the booking.
1484
1506
  *
1485
- * When passing `false`, a booking is only created when the slot or schedule is available.
1507
+ * - `false`: A booking is only created when the slot or schedule is available.
1508
+ * - `true`: The booking is created regardless of availability conflicts. Make sure the call's [identity](https://dev.wix.com/docs/build-apps/develop-your-app/access/about-identities) has the required permissions.
1509
+ *
1510
+ * *Use cases for `true`:**
1511
+ * - Emergency or priority bookings that must be accommodated.
1512
+ * - Administrative bookings that override normal availability rules.
1513
+ * - Testing or demonstration purposes.
1514
+ *
1486
1515
  * Default: `false`.
1487
1516
  */
1488
1517
  skipAvailabilityValidation?: boolean;
@@ -1490,7 +1519,7 @@ interface CreateBookingFlowControlSettings {
1490
1519
  * Whether `PENDING` bookings are automatically set to `CONFIRMED` for
1491
1520
  * services that normally require the owner's manual confirmation.
1492
1521
  *
1493
- * Your app must have the `BOOKINGS.OVERRIDE_AVAILABILITY` permission scope
1522
+ * Your app must have the `BOOKINGS.OVERRIDE_AVAILABILITY` permission
1494
1523
  * when passing `true`.
1495
1524
  * Default: `false`.
1496
1525
  */
@@ -1499,7 +1528,7 @@ interface CreateBookingFlowControlSettings {
1499
1528
  * Whether customers can pay using a payment method that isn't supported
1500
1529
  * for the service, but that's supported for other services.
1501
1530
  *
1502
- * Your app must have the `BOOKINGS.MANAGE_PAYMENTS` permission scope when passing
1531
+ * Your app must have the `BOOKINGS.MANAGE_PAYMENTS` permission when passing
1503
1532
  * `true`.
1504
1533
  * Default: `false`.
1505
1534
  */
@@ -2595,47 +2624,58 @@ interface CountBookingsResponse {
2595
2624
  }
2596
2625
  interface CreateMultiServiceBookingRequest {
2597
2626
  /**
2598
- * Single-service bookings to combine in a multi-service booking.
2627
+ * Between 2 to 8 new single-service booking specifications to create and combine in a multi-service booking.
2628
+ *
2629
+ * Each single-service booking specification must include `slot` details (`scheduleId`, `startDate`, and `endDate`).
2630
+ * Specify contact details, number of participants, and any additional fields as needed.
2631
+ *
2632
+ * For sequential bookings, ensure the timing allows services to be scheduled back-to-back.
2599
2633
  * @minSize 2
2600
2634
  * @maxSize 8
2601
2635
  */
2602
2636
  bookings: Booking[];
2603
- /**
2604
- * Information about whether to notify the customer and
2605
- * the message to send.
2606
- */
2637
+ /** Information about whether to notify the customer and the message to send. */
2607
2638
  participantNotification?: ParticipantNotification;
2608
2639
  /**
2609
- * Whether to send an SMS reminder to the customer 24 hours before the
2610
- * session starts. The phone number is taken from `contactDetails.phone`.
2640
+ * Whether to send an SMS reminder to the customer 24 hours before the session starts.
2641
+ * Wix Bookings takes the phone number from `contactDetails.phone`.
2611
2642
  *
2612
2643
  * Default: `true`
2613
2644
  */
2614
2645
  sendSmsReminder?: boolean | null;
2615
2646
  /**
2616
2647
  * Whether to ignore specific standard procedures of the Wix Bookings flow.
2617
- * For example, whether to check availability before updating the status.
2648
+ * For example, whether to skip checking availability before updating the status.
2618
2649
  */
2619
2650
  flowControlSettings?: CreateBookingFlowControlSettings;
2620
2651
  /** Whether to return the created single-service bookings. */
2621
2652
  returnFullEntity?: boolean;
2622
- /** Multi service booking type. */
2653
+ /**
2654
+ * Multi-service booking type.
2655
+ *
2656
+ * Currently only `SEQUENTIAL_BOOKINGS` is supported.
2657
+ */
2623
2658
  multiServiceBookingType?: MultiServiceBookingTypeWithLiterals;
2624
2659
  }
2625
2660
  interface CreateMultiServiceBookingResponse {
2626
2661
  /**
2627
- * Created multi service booking.
2628
- * Contains the booking results in the same order as specified in the request.
2662
+ * Created multi-service booking.
2663
+ * Contains the single-service bookings in the same order as specified in the request.
2629
2664
  */
2630
2665
  multiServiceBooking?: MultiServiceBooking;
2631
2666
  }
2667
+ /**
2668
+ * A multi-service booking combines multiple single-service bookings into a package.
2669
+ *
2670
+ * Currently, multi-service bookings support only sequential scheduling where services are scheduled back-to-back at the same location, with each single-service booking starting when the previous 1 ends.
2671
+ */
2632
2672
  interface MultiServiceBooking {
2633
2673
  /**
2634
2674
  * Multi-service booking ID.
2635
2675
  * @format GUID
2636
2676
  */
2637
2677
  _id?: string | null;
2638
- /** The created bookings that are part of the multi-service booking. */
2678
+ /** The single-service bookings that make up the multi-service booking package. */
2639
2679
  bookings?: BookingResult[];
2640
2680
  }
2641
2681
  interface BookingResult {
@@ -2649,22 +2689,17 @@ interface BookingResult {
2649
2689
  }
2650
2690
  interface RescheduleMultiServiceBookingRequest {
2651
2691
  /**
2652
- * ID of the multi service booking to reschedule.
2692
+ * ID of the multi-service booking to reschedule.
2653
2693
  * @format GUID
2654
2694
  */
2655
2695
  multiServiceBookingId: string | null;
2656
2696
  /** Information about the single-service bookings to reschedule. */
2657
2697
  rescheduleBookingsInfo: RescheduleBookingInfo[];
2658
- /**
2659
- * Information about whether to notify the customer and
2660
- * the message to send.
2661
- */
2698
+ /** Information about whether to notify the customer and the message to send. */
2662
2699
  participantNotification?: ParticipantNotification;
2663
2700
  /**
2664
- * Information about whether specific procedures of the standard Wix Bookings
2665
- * rescheduling flow are changed. For example, whether the availability of
2666
- * the new slot is checked before rescheduling the booking or if you can
2667
- * reschedule the booking even though the rescheduling policy doesn't allow it.
2701
+ * Information about whether specific procedures of the standard Wix Bookings rescheduling flow are changed.
2702
+ * For example, whether the availability of the new slot is checked before rescheduling the booking or if the customer can reschedule the booking even though the service's rescheduling policy doesn't allow it.
2668
2703
  */
2669
2704
  flowControlSettings?: RescheduleBookingFlowControlSettings;
2670
2705
  /** Whether to return the rescheduled bookings entities. */
@@ -2672,13 +2707,12 @@ interface RescheduleMultiServiceBookingRequest {
2672
2707
  }
2673
2708
  interface RescheduleBookingInfo extends RescheduleBookingInfoParticipantsInfoOneOf {
2674
2709
  /**
2675
- * Total number of participants. Available only for services with variants.
2710
+ * Total number of participants. Available only for services with variants ([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)).
2676
2711
  * Specify when all participants book the same variant.
2677
2712
  */
2678
2713
  totalParticipants?: number;
2679
2714
  /**
2680
- * Information about the service choices to book. Available only for services with
2681
- * variants.
2715
+ * Information about the service choices to book. Available only for services with variants ([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)).
2682
2716
  * Specify when not all participants book the same variant.
2683
2717
  */
2684
2718
  participantsChoices?: ParticipantChoices;
@@ -2691,21 +2725,19 @@ interface RescheduleBookingInfo extends RescheduleBookingInfoParticipantsInfoOne
2691
2725
  slot?: V2Slot;
2692
2726
  /**
2693
2727
  * Revision number, which increments by 1 each time the booking is updated.
2694
- * To prevent conflicting changes, the current revision must be specified when
2695
- * managing the booking.
2728
+ * To prevent conflicting changes, the current revision must be specified when managing the booking.
2696
2729
  */
2697
2730
  revision?: string | null;
2698
2731
  }
2699
2732
  /** @oneof */
2700
2733
  interface RescheduleBookingInfoParticipantsInfoOneOf {
2701
2734
  /**
2702
- * Total number of participants. Available only for services with variants.
2735
+ * Total number of participants. Available only for services with variants ([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)).
2703
2736
  * Specify when all participants book the same variant.
2704
2737
  */
2705
2738
  totalParticipants?: number;
2706
2739
  /**
2707
- * Information about the service choices to book. Available only for services with
2708
- * variants.
2740
+ * Information about the service choices to book. Available only for services with variants ([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)).
2709
2741
  * Specify when not all participants book the same variant.
2710
2742
  */
2711
2743
  participantsChoices?: ParticipantChoices;
@@ -2728,11 +2760,11 @@ interface GetMultiServiceBookingAvailabilityResponse {
2728
2760
  totalCapacity?: number | null;
2729
2761
  /** Number of open spots. */
2730
2762
  remainingCapacity?: number | null;
2731
- /** Indicators for policy violations of the multi service booking. */
2763
+ /** Indicators for policy violations of the multi-service booking. */
2732
2764
  policyViolations?: BookingPolicyViolations;
2733
2765
  /** Multi-service booking policy settings. */
2734
2766
  policySettings?: BookingPolicySettings;
2735
- /** Info of the bookings this availability was calculated for. */
2767
+ /** Details of the multi-service booking. */
2736
2768
  multiServiceBookingInfo?: GetMultiServiceBookingAvailabilityResponseBookingInfo[];
2737
2769
  }
2738
2770
  interface GetMultiServiceBookingAvailabilityResponseBookingInfo {
@@ -2748,16 +2780,11 @@ interface CancelMultiServiceBookingRequest {
2748
2780
  * @format GUID
2749
2781
  */
2750
2782
  multiServiceBookingId: string | null;
2751
- /**
2752
- * Information about whether to notify the customer and
2753
- * the message to send.
2754
- */
2783
+ /** Information about whether to notify the customer and the message to send. */
2755
2784
  participantNotification?: ParticipantNotification;
2756
2785
  /**
2757
- * Information about whether specific procedures of the standard Wix Bookings
2758
- * cancellation flow are changed. For example, whether you can cancel
2759
- * a booking even though the cancellation policy doesn't allow it or whether
2760
- * to issue a refund.
2786
+ * Information about whether specific procedures of the standard Wix Bookings cancellation flow are changed.
2787
+ * For example, whether the customer can cancel the booking even though the service's cancellation policy doesn't allow it or whether to issue a refund upon cancellation.
2761
2788
  */
2762
2789
  flowControlSettings?: CancelBookingFlowControlSettings;
2763
2790
  /** Whether to return the canceled single-service bookings. */
@@ -2775,26 +2802,26 @@ interface MarkMultiServiceBookingAsPendingRequest {
2775
2802
  multiServiceBookingId: string | null;
2776
2803
  /** Information about the single-service bookings to mark as `PENDING`. */
2777
2804
  markAsPendingBookingsInfo?: BookingInfo[];
2778
- /**
2779
- * Information about whether to notify the customer and
2780
- * the message to send.
2781
- */
2805
+ /** Information about whether to notify the customer and the message to send. */
2782
2806
  participantNotification?: ParticipantNotification;
2783
2807
  /**
2784
- * Whether to send an SMS reminder to the customer 24 hours before the
2785
- * session starts. The phone number is taken from `contactDetails.phone`.
2808
+ * Whether to send an SMS reminder to the customer 24 hours before the session starts.
2809
+ * Wix Bookings takes the phone number from `contactDetails.phone`.
2786
2810
  *
2787
2811
  * Default: `true`
2788
2812
  */
2789
2813
  sendSmsReminder?: boolean | null;
2790
2814
  /** Whether this booking has a conflict with at least 1 other confirmed booking. */
2791
2815
  doubleBooked?: boolean | null;
2792
- /** Whether to return the single-service bookings that were marked as `PENDING`. */
2816
+ /**
2817
+ * Whether to return the single-service bookings that were marked as `PENDING`.
2818
+ *
2819
+ * Default: `false`
2820
+ */
2793
2821
  returnFullEntity?: boolean;
2794
2822
  /**
2795
- * Information about whether specific procedures of the standard Wix Bookings
2796
- * creation flow are changed. For example, whether the availability is checked
2797
- * before updating the booking.
2823
+ * Information about whether specific procedures of the standard Wix Bookings creation flow are changed.
2824
+ * For example, whether Wix Bookings checks availability before updating the booking.
2798
2825
  */
2799
2826
  flowControlSettings?: MarkBookingAsPendingFlowControlSettings;
2800
2827
  }
@@ -2806,8 +2833,7 @@ interface BookingInfo {
2806
2833
  bookingId?: string | null;
2807
2834
  /**
2808
2835
  * Revision number, which increments by 1 each time the booking is updated.
2809
- * To prevent conflicting changes, the current revision must be specified when
2810
- * managing the booking.
2836
+ * To prevent conflicting changes, the current revision must be specified when managing the booking.
2811
2837
  */
2812
2838
  revision?: string | null;
2813
2839
  /** Payment status to set for the single-service booking. */
@@ -2825,14 +2851,11 @@ interface ConfirmMultiServiceBookingRequest {
2825
2851
  multiServiceBookingId: string | null;
2826
2852
  /** Information about the single-service bookings to confirm. */
2827
2853
  confirmBookingsInfo?: BookingInfo[];
2828
- /**
2829
- * Information about whether to notify the customer and
2830
- * the message to send.
2831
- */
2854
+ /** Information about whether to notify the customer and the message to send. */
2832
2855
  participantNotification?: ParticipantNotification;
2833
2856
  /**
2834
- * Whether to send an SMS reminder to the customer 24 hours before the
2835
- * session starts. The phone number is taken from `contactDetails.phone`.
2857
+ * Whether to send an SMS reminder to the customer 24 hours before the session starts.
2858
+ * Wix Bookings takes the phone number from `contactDetails.phone`.
2836
2859
  *
2837
2860
  * Default: `true`
2838
2861
  */
@@ -2842,36 +2865,32 @@ interface ConfirmMultiServiceBookingRequest {
2842
2865
  /** Whether to return the confirmed single-service bookings. */
2843
2866
  returnFullEntity?: boolean;
2844
2867
  /**
2845
- * Information about whether specific procedures of the standard Wix Bookings
2846
- * confirmation flow are changed. For example, whether the availability is
2847
- * checked before confirming the booking.
2868
+ * Information about whether specific procedures of the standard Wix Bookings confirmation flow are changed.
2869
+ * For example, whether Wix Bookings checks availability before confirming the booking.
2848
2870
  */
2849
2871
  flowControlSettings?: ConfirmBookingFlowControlSettings;
2850
2872
  }
2851
2873
  interface ConfirmMultiServiceBookingResponse {
2852
- /** Confirmed multi service booking. */
2874
+ /** Confirmed multi-service booking. */
2853
2875
  multiServiceBooking?: MultiServiceBooking;
2854
2876
  }
2855
2877
  interface DeclineMultiServiceBookingRequest {
2856
2878
  /**
2857
- * ID of the multi service booking to decline.
2879
+ * ID of the multi-service booking to decline.
2858
2880
  * @format GUID
2859
2881
  */
2860
2882
  multiServiceBookingId: string | null;
2861
2883
  /** Information about the single-service bookings to decline. */
2862
2884
  declineBookingsInfo?: BookingInfo[];
2863
- /**
2864
- * Information about whether to notify the customer and
2865
- * the message to send.
2866
- */
2885
+ /** Information about whether to notify the customer and the message to send. */
2867
2886
  participantNotification?: ParticipantNotification;
2868
2887
  /** Whether this booking has a conflict with at least 1 other confirmed booking. */
2869
2888
  doubleBooked?: boolean | null;
2870
2889
  /** Whether to return the declined single-service bookings. */
2871
2890
  returnFullEntity?: boolean;
2872
2891
  /**
2873
- * Information about whether specific procedures of the standard Wix Bookings
2874
- * declining flow are changed. For example, whether to issue a refund.
2892
+ * Information about whether specific procedures of the standard Wix Bookings declining flow are changed.
2893
+ * For example, whether to issue a refund upon cancellation.
2875
2894
  */
2876
2895
  flowControlSettings?: DeclineBookingFlowControlSettings;
2877
2896
  }
@@ -2891,11 +2910,10 @@ interface BulkGetMultiServiceBookingAllowedActionsRequest {
2891
2910
  interface BulkGetMultiServiceBookingAllowedActionsResponse {
2892
2911
  /**
2893
2912
  * Information about the multi-service bookings that were retrieved.
2894
- * Including their ID, index in the bulk request and whether they were
2895
- * successfully updated.
2913
+ * Includes their ID, index in the bulk request and whether they were successfully processed.
2896
2914
  */
2897
2915
  results?: BulkCalculateAllowedActionsResult[];
2898
- /** Total number of successes and failures for Bulk Update Bookings. */
2916
+ /** Total number of successes and failures for Bulk Get Multi Service Booking Allowed Actions. */
2899
2917
  bulkActionMetadata?: BulkActionMetadata;
2900
2918
  }
2901
2919
  interface GetMultiServiceBookingRequest {
@@ -2913,9 +2931,8 @@ interface GetMultiServiceBookingResponse {
2913
2931
  }
2914
2932
  interface MultiServiceBookingMetadata {
2915
2933
  /**
2916
- * Total number of `CONFIRMED` and `PENDING` single-service bookings belonging
2917
- * to the multi-service booking. The total includes the number of single-service
2918
- * bookings which couldn't be retrieved due to lack of permissions.
2934
+ * Total number of `CONFIRMED` and `PENDING` single-service bookings belonging to the multi-service booking.
2935
+ * The total includes the number of single-service bookings which couldn't be retrieved due to lack of permissions.
2919
2936
  */
2920
2937
  totalNumberOfScheduledBookings?: number | null;
2921
2938
  }
@@ -2930,19 +2947,22 @@ interface AddBookingsToMultiServiceBookingRequest {
2930
2947
  * @maxSize 8
2931
2948
  */
2932
2949
  bookings: BookingIdAndRevision[];
2933
- /** Whether to return the single-service bookings that were added to the multi-service booking. */
2950
+ /**
2951
+ * Whether to return the single-service bookings that were added to the multi-service booking.
2952
+ *
2953
+ * Default: `false`
2954
+ */
2934
2955
  returnFullEntity?: boolean;
2935
2956
  }
2936
2957
  interface BookingIdAndRevision {
2937
2958
  /**
2938
- * ID of the booking.
2959
+ * ID of the single-service booking.
2939
2960
  * @format GUID
2940
2961
  */
2941
2962
  bookingId?: string | null;
2942
2963
  /**
2943
2964
  * Revision number, which increments by 1 each time the booking is updated.
2944
- * To prevent conflicting changes, the current revision must be specified when
2945
- * managing the booking.
2965
+ * To prevent conflicting changes, the current revision must be specified when managing the booking.
2946
2966
  */
2947
2967
  revision?: string | null;
2948
2968
  }
@@ -2961,7 +2981,11 @@ interface RemoveBookingsFromMultiServiceBookingRequest {
2961
2981
  * @maxSize 8
2962
2982
  */
2963
2983
  bookings?: BookingIdAndRevision[];
2964
- /** Whether to return the single-service bookings. */
2984
+ /**
2985
+ * Whether to return the single-service bookings.
2986
+ *
2987
+ * Default: `false`
2988
+ */
2965
2989
  returnFullEntity?: boolean;
2966
2990
  }
2967
2991
  interface RemoveBookingsFromMultiServiceBookingResponse {
@@ -3828,16 +3852,16 @@ interface BulkConfirmOrDeclineBookingOptions {
3828
3852
  *
3829
3853
  * For appointment-based services, specify the relevant `slot` in
3830
3854
  * `bookedEntity.slot`. We recommend specifying the complete
3831
- * `availabilityEntries.slot` returned in *Query Availability*
3855
+ * `availabilityEntries.slot` returned in Query Availability
3832
3856
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/availability-calendar/query-availability) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/time-slots/availability-calendar/query-availability))
3833
3857
  * in your call's request to avoid failed calls due to unavailability.
3834
3858
  *
3835
3859
  * ## Class session booking
3836
3860
  *
3837
- * For class services, specify the relevant *event ID*
3861
+ * For class services, specify the relevant event ID
3838
3862
  * ([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))
3839
3863
  * as `bookedEntity.slot.eventId`.
3840
- * We recommend retrieving the event ID from *Query Availability's*
3864
+ * We recommend retrieving the event ID from Query Availability's
3841
3865
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/availability-calendar/query-availability) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/time-slots/availability-calendar/query-availability))
3842
3866
  * `availabilityEntries.slot.eventId` to avoid failed calls due to unavailability.
3843
3867
  * Specifying an event ID leads to automatic calculations of `slot.startDate`, `slot.endDate`,
@@ -3892,12 +3916,12 @@ interface BulkConfirmOrDeclineBookingOptions {
3892
3916
  * _eCommerce checkout_
3893
3917
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/ecom/orders/setup) | [REST](https://dev.wix.com/docs/rest/business-solutions/e-commerce/checkout/introduction)),
3894
3918
  * Wix Bookings automatically syncs the booking's payment status from
3895
- * the corresponding *eCommerce order*
3919
+ * the corresponding eCommerce order
3896
3920
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/ecom/checkout/setup) | [REST](https://dev.wix.com/docs/rest/business-solutions/e-commerce/orders/introduction)).
3897
3921
  *
3898
3922
  * If a booking doesn't have a corresponding eCommerce order, for example, since
3899
3923
  * the customer didn't use the eCommerce checkout, you can update the booking's
3900
- * payment status with *Confirm Or Decline Booking*
3924
+ * payment status with Confirm Or Decline Booking
3901
3925
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings/confirm-or-decline-booking) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/confirm-or-decline-booking)).
3902
3926
  *
3903
3927
  * ## Booking form data
@@ -3972,7 +3996,7 @@ interface CreateBookingOptions {
3972
3996
  * Creates up to 8 bookings.
3973
3997
  *
3974
3998
  *
3975
- * See *Create Booking*
3999
+ * See Create Booking
3976
4000
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings/create-booking) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/create-booking))
3977
4001
  * for more information.
3978
4002
  *
@@ -4016,7 +4040,7 @@ interface BulkCreateBookingOptions {
4016
4040
  * ## Appointment sessions
4017
4041
  *
4018
4042
  * For appointments, the old session is removed from the business calendar
4019
- * while a new session is added. We recommend calling *Query Availability*
4043
+ * while a new session is added. We recommend calling Query Availability
4020
4044
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/availability-calendar/query-availability) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/time-slots/availability-calendar/query-availability))
4021
4045
  * first and specifying the entire retrieved `slot`.
4022
4046
  *
@@ -4024,7 +4048,7 @@ interface BulkCreateBookingOptions {
4024
4048
  *
4025
4049
  * For classes, the new session must be an existing session belonging to the
4026
4050
  * same class. We recommend retrieving `availabilityEntries.slot.eventId`
4027
- * from *Query Availability*
4051
+ * from Query Availability
4028
4052
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/availability-calendar/query-availability) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/time-slots/availability-calendar/query-availability))
4029
4053
  * to avoid failed Reschedule Booking calls due to unavailability. Specify
4030
4054
  * only `slot.eventId` instead of the entire `slot` object.
@@ -4122,24 +4146,22 @@ interface RescheduleBookingOptionsParticipantsInfoOneOf {
4122
4146
  participantsChoices?: ParticipantChoices;
4123
4147
  }
4124
4148
  /**
4125
- * Updates the booking status to `CONFIRMED` and updates the relevant session's
4126
- * `participants.approvalStatus` to `APPROVED` without checking whether the relevant
4127
- * slot or schedule is still available.
4149
+ * Updates the booking status to `CONFIRMED` without checking whether the relevant slot or schedule is still available.
4150
+ *
4128
4151
  *
4129
4152
  * ## eCommerce checkout restriction
4130
4153
  *
4131
4154
  * Call this method only when using a custom checkout page. Don't
4132
- * call it when using a *Wix eCommerce checkout*
4155
+ * call it when using a Wix eCommerce checkout
4133
4156
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/ecom/orders/setup) | [REST](https://dev.wix.com/docs/rest/business-solutions/e-commerce/checkout/introduction)).
4134
4157
  * In such cases, Wix automatically updates the booking status based on
4135
- * the `paymentStatus` of the corresponding *Wix eCommerce order*
4158
+ * the `paymentStatus` of the corresponding Wix eCommerce order
4136
4159
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/ecom/checkout/setup) | [REST](https://dev.wix.com/docs/rest/business-solutions/e-commerce/orders/introduction)).
4137
4160
  *
4138
4161
  * ## When to call Confirm Or Decline Booking instead
4139
4162
  *
4140
- * Confirm Booking doesn't check whether a slot or schedule is still available. For
4141
- * these checks you can call *Confirm or Decline Booking*
4142
- * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings/confirm-or-decline-booking) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/confirm-or-decline-booking)).
4163
+ * Confirm Booking doesn't check whether a slot or schedule is still available.
4164
+ * For these checks, call Confirm or Decline Booking ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings/confirm-or-decline-booking) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/confirm-or-decline-booking)) instead.
4143
4165
  *
4144
4166
  * ## Original status validation
4145
4167
  *
@@ -4266,16 +4288,16 @@ interface UpdateExtendedFieldsOptions {
4266
4288
  * ## eCommerce checkout restriction
4267
4289
  *
4268
4290
  * Call this method only when using a custom checkout page. Don't
4269
- * call it when using a *Wix eCommerce checkout*
4291
+ * call it when using a Wix eCommerce checkout
4270
4292
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/ecom/orders/setup) | [REST](https://dev.wix.com/docs/rest/business-solutions/e-commerce/checkout/introduction)).
4271
4293
  * In such cases, Wix automatically updates the booking status based on
4272
- * the `paymentStatus` of the corresponding *Wix eCommerce order*
4294
+ * the `paymentStatus` of the corresponding Wix eCommerce order
4273
4295
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/ecom/checkout/setup) | [REST](https://dev.wix.com/docs/rest/business-solutions/e-commerce/orders/introduction)).
4274
4296
  *
4275
4297
  * ## When to call Confirm Or Decline Booking instead
4276
4298
  *
4277
4299
  * The method doesn't check whether a slot or schedule is still available. For
4278
- * these checks you can call *Confirm or Decline Booking*
4300
+ * these checks you can call Confirm or Decline Booking
4279
4301
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings/confirm-or-decline-booking) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/confirm-or-decline-booking)).
4280
4302
  *
4281
4303
  * ## Original status validation
@@ -4421,7 +4443,7 @@ interface CancelBookingOptions {
4421
4443
  *
4422
4444
  * You must specify either `participantsChoices` or `totalParticipants`.
4423
4445
  * The call fails if the specified `participantsChoices` aren't among the
4424
- * supported *service options and variants*
4446
+ * supported service options and variants
4425
4447
  * ([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)).
4426
4448
  * @param bookingId - ID of the booking to update the number of participants for.
4427
4449
  * @public
@@ -4469,11 +4491,34 @@ interface UpdateNumberOfParticipantsOptionsParticipantsInfoOneOf {
4469
4491
  participantsChoices?: ParticipantChoices;
4470
4492
  }
4471
4493
  /**
4472
- * Creates a multi-service booking.
4494
+ * Creates a multi-service booking and all included single-service bookings simultaneously.
4495
+ *
4496
+ *
4497
+ * ## When to call this method
4498
+ *
4499
+ * Create sequential appointments where customers book related services together. For adding existing single-service bookings to an existing multi-service booking, call Add Bookings to Multi Service Booking ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings-writer-v2/add-bookings-to-multi-service-booking) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/add-bookings-to-multi-service-booking)) instead.
4500
+ *
4501
+ * ## Requirements and behavior
4502
+ *
4503
+ * __Package constraints__: Multi-service bookings support 2-8 appointment-based single-service bookings only (course and class bookings aren't supported). All single-service bookings must be at the same location with sequential scheduling and no gaps between appointments.
4504
+ *
4505
+ * __Timing specification__: You must provide complete `slot` details (`scheduleId`, `startDate`, `endDate`) for each single-service booking. Wix Bookings validates sequential timing but doesn't auto-calculate it.
4506
+ *
4507
+ * __Package pricing__: The total price equals the sum of individual services. Wix Bookings automatically syncs the payment status from the corresponding Wix eCommerce order ([SDK](https://dev.wix.com/docs/sdk/backend-modules/ecommerce/orders/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/e-commerce/orders/introduction)) if the customer paid via an eCommerce checkout ([SDK](https://dev.wix.com/docs/sdk/backend-modules/ecommerce/checkout/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/e-commerce/checkout/introduction)).
4473
4508
  *
4509
+ * __Package notifications__: Customers receive 1 unified notification for the entire multi-service booking. Wix Bookings doesn't send notifications for the package's individual single-service bookings.
4474
4510
  *
4475
- * See Create Booking for more information.
4476
- * @param bookings - Single-service bookings to combine in a multi-service booking.
4511
+ * ## Related methods
4512
+ *
4513
+ * Verify availability first with List Multi Service Availability Time Slots ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings-reader-v2/list-multi-service-availability-time-slots) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-reader-v2/list-multi-service-availability-time-slots)).
4514
+ *
4515
+ * See Create Booking ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings-writer-v2/create-booking) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/create-booking)) for more details about constraints and effects of creating single-service bookings.
4516
+ * @param bookings - Between 2 to 8 new single-service booking specifications to create and combine in a multi-service booking.
4517
+ *
4518
+ * Each single-service booking specification must include `slot` details (`scheduleId`, `startDate`, and `endDate`).
4519
+ * Specify contact details, number of participants, and any additional fields as needed.
4520
+ *
4521
+ * For sequential bookings, ensure the timing allows services to be scheduled back-to-back.
4477
4522
  * @public
4478
4523
  * @documentationMaturity preview
4479
4524
  * @requiredField bookings
@@ -4496,38 +4541,39 @@ declare function createMultiServiceBooking(bookings: NonNullablePaths<Booking, `
4496
4541
  __applicationErrorsType?: CreateMultiServiceBookingApplicationErrors;
4497
4542
  }>;
4498
4543
  interface CreateMultiServiceBookingOptions {
4499
- /**
4500
- * Information about whether to notify the customer and
4501
- * the message to send.
4502
- */
4544
+ /** Information about whether to notify the customer and the message to send. */
4503
4545
  participantNotification?: ParticipantNotification;
4504
4546
  /**
4505
- * Whether to send an SMS reminder to the customer 24 hours before the
4506
- * session starts. The phone number is taken from `contactDetails.phone`.
4547
+ * Whether to send an SMS reminder to the customer 24 hours before the session starts.
4548
+ * Wix Bookings takes the phone number from `contactDetails.phone`.
4507
4549
  *
4508
4550
  * Default: `true`
4509
4551
  */
4510
4552
  sendSmsReminder?: boolean | null;
4511
4553
  /**
4512
4554
  * Whether to ignore specific standard procedures of the Wix Bookings flow.
4513
- * For example, whether to check availability before updating the status.
4555
+ * For example, whether to skip checking availability before updating the status.
4514
4556
  */
4515
4557
  flowControlSettings?: CreateBookingFlowControlSettings;
4516
4558
  /** Whether to return the created single-service bookings. */
4517
4559
  returnFullEntity?: boolean;
4518
- /** Multi service booking type. */
4560
+ /**
4561
+ * Multi-service booking type.
4562
+ *
4563
+ * Currently only `SEQUENTIAL_BOOKINGS` is supported.
4564
+ */
4519
4565
  multiServiceBookingType?: MultiServiceBookingTypeWithLiterals;
4520
4566
  }
4521
4567
  /**
4522
- * Reschedules a multi-service booking.
4568
+ * Reschedules a multi-service booking by changing the timing for all or specific single-service bookings in the package.
4523
4569
  *
4524
4570
  *
4525
- * The call fails if at least 1 individual booking can't be rescheduled due
4526
- * the service being unavailable or a rescheduling policy violation.
4571
+ * This method reschedules single-service bookings within the multi-service booking while maintaining sequential order. You must specify exact new timing for each service to ensure they remain back-to-back with no gaps or overlaps.
4527
4572
  *
4573
+ * This method fails if it can't reschedule at least 1 single-service booking. You must provide the current revision number for each single-service booking you're rescheduling to prevent conflicting changes.
4528
4574
  *
4529
- * See Reschedule Booking for more information.
4530
- * @param multiServiceBookingId - ID of the multi service booking to reschedule.
4575
+ * See Reschedule Booking ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings-writer-v2/reschedule-booking) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/reschedule-booking)) for single-service booking rescheduling details.
4576
+ * @param multiServiceBookingId - ID of the multi-service booking to reschedule.
4531
4577
  * @param rescheduleBookingsInfo - Information about the single-service bookings to reschedule.
4532
4578
  * @public
4533
4579
  * @documentationMaturity preview
@@ -4547,27 +4593,29 @@ declare function rescheduleMultiServiceBooking(multiServiceBookingId: string, re
4547
4593
  __applicationErrorsType?: RescheduleMultiServiceBookingApplicationErrors;
4548
4594
  }>;
4549
4595
  interface RescheduleMultiServiceBookingOptions {
4550
- /**
4551
- * Information about whether to notify the customer and
4552
- * the message to send.
4553
- */
4596
+ /** Information about whether to notify the customer and the message to send. */
4554
4597
  participantNotification?: ParticipantNotification;
4555
4598
  /**
4556
- * Information about whether specific procedures of the standard Wix Bookings
4557
- * rescheduling flow are changed. For example, whether the availability of
4558
- * the new slot is checked before rescheduling the booking or if you can
4559
- * reschedule the booking even though the rescheduling policy doesn't allow it.
4599
+ * Information about whether specific procedures of the standard Wix Bookings rescheduling flow are changed.
4600
+ * For example, whether the availability of the new slot is checked before rescheduling the booking or if the customer can reschedule the booking even though the service's rescheduling policy doesn't allow it.
4560
4601
  */
4561
4602
  flowControlSettings?: RescheduleBookingFlowControlSettings;
4562
4603
  /** Whether to return the rescheduled bookings entities. */
4563
4604
  returnFullEntity?: boolean;
4564
4605
  }
4565
4606
  /**
4566
- * Retrieves a multi-service booking's availability.
4607
+ * Checks if the business can still accommodate an existing multi-service booking and returns overall bookability status, capacity details, and policy violations.
4567
4608
  *
4568
4609
  *
4569
- * Use List Multi Service Availability Time Slots to check availability for a
4570
- * `SEQUENTIAL_BOOKINGS` multi-service booking.
4610
+ * Wix Bookings considers:
4611
+ * - The relevant services' booking policies ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/booking-policies/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/policies/booking-policies/introduction)).
4612
+ * - The availability of all required resources ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/resources/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/resources/introduction)).
4613
+ *
4614
+ * Call this method to check if an existing multi-service booking is still valid after business configuration changes.
4615
+ * For example, staff changes, policy updates, or capacity modifications.
4616
+ *
4617
+ * For checking availability before creating new multi-service bookings, call List Multi Service Availability Time Slots
4618
+ * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/time-slots/multi-service-availability-time-slots/list-multi-service-availability-time-slots) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/time-slots/time-slots-v2/list-multi-service-availability-time-slots)) instead.
4571
4619
  * @param multiServiceBookingId - ID of the multi-service booking to retrieve.
4572
4620
  * @public
4573
4621
  * @documentationMaturity preview
@@ -4581,7 +4629,13 @@ declare function getMultiServiceBookingAvailability(multiServiceBookingId: strin
4581
4629
  __applicationErrorsType?: GetMultiServiceBookingAvailabilityApplicationErrors;
4582
4630
  }>;
4583
4631
  /**
4584
- * Cancels a multi-service booking and thus all its individual bookings.
4632
+ * Cancels a multi-service booking and all its associated single-service bookings.
4633
+ *
4634
+ *
4635
+ * Cancels the entire multi-service booking, updating the status of all single-service bookings to `CANCELED`.
4636
+ * The call fails if all single-service bookings are already canceled or declined.
4637
+ *
4638
+ * See Cancel Booking ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings-writer-v2/cancel-booking) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/cancel-booking)) for single-service booking cancellation details.
4585
4639
  * @param multiServiceBookingId - ID of the multi-service booking to cancel.
4586
4640
  * @public
4587
4641
  * @documentationMaturity preview
@@ -4597,30 +4651,39 @@ declare function cancelMultiServiceBooking(multiServiceBookingId: string, option
4597
4651
  __applicationErrorsType?: CancelMultiServiceBookingApplicationErrors;
4598
4652
  }>;
4599
4653
  interface CancelMultiServiceBookingOptions {
4600
- /**
4601
- * Information about whether to notify the customer and
4602
- * the message to send.
4603
- */
4654
+ /** Information about whether to notify the customer and the message to send. */
4604
4655
  participantNotification?: ParticipantNotification;
4605
4656
  /**
4606
- * Information about whether specific procedures of the standard Wix Bookings
4607
- * cancellation flow are changed. For example, whether you can cancel
4608
- * a booking even though the cancellation policy doesn't allow it or whether
4609
- * to issue a refund.
4657
+ * Information about whether specific procedures of the standard Wix Bookings cancellation flow are changed.
4658
+ * For example, whether the customer can cancel the booking even though the service's cancellation policy doesn't allow it or whether to issue a refund upon cancellation.
4610
4659
  */
4611
4660
  flowControlSettings?: CancelBookingFlowControlSettings;
4612
4661
  /** Whether to return the canceled single-service bookings. */
4613
4662
  returnFullEntity?: boolean;
4614
4663
  }
4615
4664
  /**
4616
- * Updates the status of a multi-service booking to `PENDING`.
4665
+ * Updates the status for all single-service bookings in a multi-service booking to `PENDING`.
4666
+ *
4667
+ *
4668
+ * Call this method for multi-service bookings requiring manual business approval before confirmation.
4617
4669
  *
4670
+ * ## Status requirements
4618
4671
  *
4619
- * Also updates the status of each of individual bookings within the multi-service booking to `PENDING`.
4672
+ * - __Original status__: All single-service bookings must have `CREATED` status.
4673
+ * - __Target status__: All bookings move to `PENDING` together (all-or-nothing operation).
4620
4674
  *
4621
- * The call fails if the status for at least a single individual booking can't be updated.
4675
+ * ## Checkout restrictions
4622
4676
  *
4623
- * See Mark Booking as Pending for more information.
4677
+ * Only call this method if the customer paid via a custom checkout. For Wix eCommerce checkouts,
4678
+ * Wix Bookings automatically manages the bookings' statuses based on payment processing.
4679
+ *
4680
+ * ## Additional updates
4681
+ *
4682
+ * - __Payment status__: Updates if you specify a new `markAsPendingBookingsInfo.paymentStatus`.
4683
+ * - __Customer notifications__: Send messages using `participantNotification`.
4684
+ * - __Revision control__: Requires current revision numbers for all single-service bookings.
4685
+ *
4686
+ * See Mark Booking as Pending ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings-writer-v2/mark-booking-as-pending) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/mark-booking-as-pending)) for more details about marking single-service bookings as pending.
4624
4687
  * @param multiServiceBookingId - ID of the multi-service booking to mark as `PENDING`.
4625
4688
  * @public
4626
4689
  * @documentationMaturity preview
@@ -4637,38 +4700,52 @@ declare function markMultiServiceBookingAsPending(multiServiceBookingId: string,
4637
4700
  interface MarkMultiServiceBookingAsPendingOptions {
4638
4701
  /** Information about the single-service bookings to mark as `PENDING`. */
4639
4702
  markAsPendingBookingsInfo?: BookingInfo[];
4640
- /**
4641
- * Information about whether to notify the customer and
4642
- * the message to send.
4643
- */
4703
+ /** Information about whether to notify the customer and the message to send. */
4644
4704
  participantNotification?: ParticipantNotification;
4645
4705
  /**
4646
- * Whether to send an SMS reminder to the customer 24 hours before the
4647
- * session starts. The phone number is taken from `contactDetails.phone`.
4706
+ * Whether to send an SMS reminder to the customer 24 hours before the session starts.
4707
+ * Wix Bookings takes the phone number from `contactDetails.phone`.
4648
4708
  *
4649
4709
  * Default: `true`
4650
4710
  */
4651
4711
  sendSmsReminder?: boolean | null;
4652
4712
  /** Whether this booking has a conflict with at least 1 other confirmed booking. */
4653
4713
  doubleBooked?: boolean | null;
4654
- /** Whether to return the single-service bookings that were marked as `PENDING`. */
4714
+ /**
4715
+ * Whether to return the single-service bookings that were marked as `PENDING`.
4716
+ *
4717
+ * Default: `false`
4718
+ */
4655
4719
  returnFullEntity?: boolean;
4656
4720
  /**
4657
- * Information about whether specific procedures of the standard Wix Bookings
4658
- * creation flow are changed. For example, whether the availability is checked
4659
- * before updating the booking.
4721
+ * Information about whether specific procedures of the standard Wix Bookings creation flow are changed.
4722
+ * For example, whether Wix Bookings checks availability before updating the booking.
4660
4723
  */
4661
4724
  flowControlSettings?: MarkBookingAsPendingFlowControlSettings;
4662
4725
  }
4663
4726
  /**
4664
- * Updates the status of a multi-service booking to `CONFIRMED`.
4727
+ * Updates the status for all single-service bookings in a multi-service booking to `CONFIRMED`.
4665
4728
  *
4666
4729
  *
4667
- * Also updates the status of each of individual bookings within the multi-service booking to `CONFIRMED`.
4730
+ * Call this method for multi-service bookings requiring manual business approval.
4668
4731
  *
4669
- * The call fails if the status for at least a single individual booking can't be updated.
4732
+ * ## Status requirements
4670
4733
  *
4671
- * See Confirm Booking for more information.
4734
+ * - __Original status__: All single-service bookings must have `PENDING`, `CREATED`, or `WAITING_LIST` status.
4735
+ * - __Target status__: All bookings move to `CONFIRMED` together (all-or-nothing operation).
4736
+ *
4737
+ * ## Checkout restrictions
4738
+ *
4739
+ * Only call this method if the customer paid via a custom checkout. For Wix eCommerce checkouts,
4740
+ * Wix Bookings automatically manages the bookings' statuses based on payment processing.
4741
+ *
4742
+ * ## Additional updates
4743
+ *
4744
+ * - __Payment status__: Updates if you specify a new `confirmBookingsInfo.paymentStatus`.
4745
+ * - __Customer notifications__: Send messages using `participantNotification`.
4746
+ * - __Revision control__: Requires current revision numbers for all single-service bookings.
4747
+ *
4748
+ * See Confirm Booking ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings-writer-v2/confirm-booking) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/confirm-booking)) for more details about confirming single-service bookings.
4672
4749
  * @param multiServiceBookingId - ID of the multi-service booking to confirm its related bookings.
4673
4750
  * @public
4674
4751
  * @documentationMaturity preview
@@ -4685,14 +4762,11 @@ declare function confirmMultiServiceBooking(multiServiceBookingId: string, optio
4685
4762
  interface ConfirmMultiServiceBookingOptions {
4686
4763
  /** Information about the single-service bookings to confirm. */
4687
4764
  confirmBookingsInfo?: BookingInfo[];
4688
- /**
4689
- * Information about whether to notify the customer and
4690
- * the message to send.
4691
- */
4765
+ /** Information about whether to notify the customer and the message to send. */
4692
4766
  participantNotification?: ParticipantNotification;
4693
4767
  /**
4694
- * Whether to send an SMS reminder to the customer 24 hours before the
4695
- * session starts. The phone number is taken from `contactDetails.phone`.
4768
+ * Whether to send an SMS reminder to the customer 24 hours before the session starts.
4769
+ * Wix Bookings takes the phone number from `contactDetails.phone`.
4696
4770
  *
4697
4771
  * Default: `true`
4698
4772
  */
@@ -4702,22 +4776,35 @@ interface ConfirmMultiServiceBookingOptions {
4702
4776
  /** Whether to return the confirmed single-service bookings. */
4703
4777
  returnFullEntity?: boolean;
4704
4778
  /**
4705
- * Information about whether specific procedures of the standard Wix Bookings
4706
- * confirmation flow are changed. For example, whether the availability is
4707
- * checked before confirming the booking.
4779
+ * Information about whether specific procedures of the standard Wix Bookings confirmation flow are changed.
4780
+ * For example, whether Wix Bookings checks availability before confirming the booking.
4708
4781
  */
4709
4782
  flowControlSettings?: ConfirmBookingFlowControlSettings;
4710
4783
  }
4711
4784
  /**
4712
- * Updates the status of a multi-service booking to `DECLINED`.
4785
+ * Updates the status for all single-service bookings in a multi-service booking to `DECLINED`.
4786
+ *
4787
+ *
4788
+ * Call this method to reject multi-service bookings that can't be accommodated or don't meet business requirements.
4713
4789
  *
4790
+ * ## Status requirements
4714
4791
  *
4715
- * Also updates the status of each of individual bookings within the multi-service booking to `DECLINED`.
4792
+ * - __Original status__: All single-service bookings must have `PENDING`, `CREATED`, or `WAITING_LIST` status.
4793
+ * - __Target status__: All bookings move to `DECLINED` together (all-or-nothing operation).
4716
4794
  *
4717
- * The call fails if the status for at least a single individual booking can't be updated.
4795
+ * ## Checkout restrictions
4718
4796
  *
4719
- * See Decline Booking for more information.
4720
- * @param multiServiceBookingId - ID of the multi service booking to decline.
4797
+ * Only call this method if the customer paid via a custom checkout. For Wix eCommerce checkouts,
4798
+ * Wix Bookings automatically manages the bookings' statuses based on payment processing.
4799
+ *
4800
+ * ## Additional updates
4801
+ *
4802
+ * - __Payment status__: Updates if you specify a new `declineBookingsInfo.paymentStatus`.
4803
+ * - __Customer notifications__: Send messages using `participantNotification`.
4804
+ * - __Revision control__: Requires current revision numbers for all single-service bookings.
4805
+ *
4806
+ * Refer to Decline Booking ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings-writer-v2/decline-booking) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/decline-booking)) for more details about declining single-service bookings.
4807
+ * @param multiServiceBookingId - ID of the multi-service booking to decline.
4721
4808
  * @public
4722
4809
  * @documentationMaturity preview
4723
4810
  * @requiredField multiServiceBookingId
@@ -4733,23 +4820,34 @@ declare function declineMultiServiceBooking(multiServiceBookingId: string, optio
4733
4820
  interface DeclineMultiServiceBookingOptions {
4734
4821
  /** Information about the single-service bookings to decline. */
4735
4822
  declineBookingsInfo?: BookingInfo[];
4736
- /**
4737
- * Information about whether to notify the customer and
4738
- * the message to send.
4739
- */
4823
+ /** Information about whether to notify the customer and the message to send. */
4740
4824
  participantNotification?: ParticipantNotification;
4741
4825
  /** Whether this booking has a conflict with at least 1 other confirmed booking. */
4742
4826
  doubleBooked?: boolean | null;
4743
4827
  /** Whether to return the declined single-service bookings. */
4744
4828
  returnFullEntity?: boolean;
4745
4829
  /**
4746
- * Information about whether specific procedures of the standard Wix Bookings
4747
- * declining flow are changed. For example, whether to issue a refund.
4830
+ * Information about whether specific procedures of the standard Wix Bookings declining flow are changed.
4831
+ * For example, whether to issue a refund upon cancellation.
4748
4832
  */
4749
4833
  flowControlSettings?: DeclineBookingFlowControlSettings;
4750
4834
  }
4751
4835
  /**
4752
- * Retrieves the allowed actions for a list of multi-service bookings.
4836
+ * Retrieves information about which actions the customer can perform for up to 50 multi-service bookings.
4837
+ *
4838
+ *
4839
+ * For each multi-service booking, the response indicates which actions are currently allowed:
4840
+ * - `cancel`: Whether the customer can cancel the multi-service booking.
4841
+ * - `reschedule`: Whether the customer can adjust the multi-service booking's timing.
4842
+ *
4843
+ * Bear the following considerations in mind when calling this method:
4844
+ *
4845
+ * __Real-time validation__: Wix Bookings calculates allowed actions based on current multi-service booking status, booking policies ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/booking-policies/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/policies/booking-policies/introduction)), and available resources ([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)) at the time of the call.
4846
+ *
4847
+ * __Permission context__: Depending on the permissions of the calling [identity](https://dev.wix.com/build-apps/develop-your-app/about-identities), you may see different allowed actions for the same multi-service booking. For example, if the identity has permissions to read only part of the multi-service booking, the response indicates which single-service bookings the identity can read.
4848
+ *
4849
+ * __Status dependencies__: Allowed actions change as bookings progress through their lifecycle (`CREATED` → `PENDING` → `CONFIRMED`/`DECLINED` → `CANCELED`).
4850
+ * Bookings can skip `PENDING` and move directly from `CREATED` to `CONFIRMED`/`DECLINED` based on service configuration.
4753
4851
  * @param multiServiceBookingIds - IDs of the multi-service bookings to retrieve allowed actions for.
4754
4852
  * @public
4755
4853
  * @documentationMaturity preview
@@ -4761,13 +4859,15 @@ interface DeclineMultiServiceBookingOptions {
4761
4859
  */
4762
4860
  declare function bulkGetMultiServiceBookingAllowedActions(multiServiceBookingIds: string[]): Promise<NonNullablePaths<BulkGetMultiServiceBookingAllowedActionsResponse, `results` | `results.${number}.itemMetadata.originalIndex` | `results.${number}.itemMetadata.success` | `results.${number}.itemMetadata.error.code` | `results.${number}.itemMetadata.error.description` | `results.${number}.item.cancel` | `results.${number}.item.reschedule` | `bulkActionMetadata.totalSuccesses` | `bulkActionMetadata.totalFailures` | `bulkActionMetadata.undetailedFailures`>>;
4763
4861
  /**
4764
- * Retrieves all single-service bookings belonging to a multi-service booking.
4862
+ * Retrieves a multi-service booking and all its associated single-service bookings.
4765
4863
  *
4766
4864
  *
4767
- * If you call as an [identity](https://dev.wix.com/docs/build-apps/develop-your-app/access/about-identities)
4768
- * who has permissions to read only part of the bookings,
4769
- * only the permitted bookings are retrieved. The returned total number of
4770
- * bookings includes also the bookings for which you don't have permissions.
4865
+ * Returns the complete multi-service booking information including its ID, associated single-service bookings, and the total number of scheduled single-service bookings.
4866
+ *
4867
+ * If you call on behalf of an [identity](https://dev.wix.com/docs/build-apps/develop-your-app/access/about-identities) with permissions to read only part of the multi-service booking, only the permitted single-service bookings are retrieved.
4868
+ * The returned total number includes single-service bookings for which you don't have permissions.
4869
+ *
4870
+ * See Query Extended Bookings ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/extended-bookings/query-extended-bookings) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-reader-v2/query-extended-bookings)) for details about retrieving individual single-service bookings and additional metadata.
4771
4871
  * @param multiServiceBookingId - ID of the multi-service booking.
4772
4872
  * @public
4773
4873
  * @documentationMaturity preview
@@ -4781,11 +4881,24 @@ declare function getMultiServiceBooking(multiServiceBookingId: string): Promise<
4781
4881
  [P in BookingNonNullablePaths]: `bookings.${number}.booking.${P}`;
4782
4882
  }[BookingNonNullablePaths]>>;
4783
4883
  /**
4784
- * Adds a list of single-service bookings to a multi-service booking.
4884
+ * Expands an existing multi-service booking by adding existing single-service bookings to the package.
4885
+ *
4886
+ *
4887
+ * ## When to call this method
4888
+ *
4889
+ * Call this method to add 1 or more existing single-service bookings to an existing multi-service booking.
4890
+ * For creating a new multi-service booking with new single-service bookings, call Create Multi Service Booking ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings-writer-v2/create-multi-service-booking) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/create-multi-service-booking)) instead.
4891
+ *
4892
+ * ## Package integration
4893
+ *
4894
+ * The timing of the single-service bookings to add must be compatible with the multi-service booking's sequential schedule to ensure no gaps or overlaps between services in the updated package.
4785
4895
  *
4896
+ * ## Requirements and limitations
4786
4897
  *
4787
- * The call fails, if at least 1 of the specified booking is already part of a
4788
- * multi-service booking.
4898
+ * - __Maximum capacity__: The total number of single-service bookings can't exceed 8.
4899
+ * - __Booking eligibility__: You can add only independent single-service bookings that aren't part of another multi-service booking.
4900
+ * - __Status compatibility__: Added bookings must have compatible status with the target multi-service booking.
4901
+ * - __Revision control__: You must provide current revision numbers for all single-service bookings to add.
4789
4902
  * @param multiServiceBookingId - ID of the multi-service booking.
4790
4903
  * @public
4791
4904
  * @documentationMaturity preview
@@ -4807,20 +4920,34 @@ interface AddBookingsToMultiServiceBookingOptions {
4807
4920
  * @maxSize 8
4808
4921
  */
4809
4922
  bookings: BookingIdAndRevision[];
4810
- /** Whether to return the single-service bookings that were added to the multi-service booking. */
4923
+ /**
4924
+ * Whether to return the single-service bookings that were added to the multi-service booking.
4925
+ *
4926
+ * Default: `false`
4927
+ */
4811
4928
  returnFullEntity?: boolean;
4812
4929
  }
4813
4930
  /**
4814
- * Removes single-service bookings from a multi-service booking and returns the
4815
- * removed bookings.
4931
+ * Removes single-service bookings from a multi-service booking and converts them to independent single-service bookings.
4932
+ *
4933
+ *
4934
+ * ## Removal options
4935
+ *
4936
+ * __Remove all permitted bookings__: If you specify an empty `bookings` array, all single-service bookings for which the call's [identity](https://dev.wix.com/docs/build-apps/develop-your-app/access/about-identities) has read permissions are removed from the multi-service booking.
4816
4937
  *
4938
+ * __Selective removal__: Specify single-service booking IDs and revisions to remove only specific single-service bookings from the package.
4817
4939
  *
4818
- * If you specify an empty `bookings` array, all single-service bookings for which
4819
- * the call's [identity](https://dev.wix.com/docs/build-apps/develop-your-app/access/about-identities)
4820
- * has read permissions are removed from the multi-service booking.
4940
+ * __Sequential scheduling__: To maintain sequential scheduling, remove only first or last single-service bookings. For middle bookings, first reschedule all relevant single-service bookings to eliminate gaps. To do so, call Reschedule Multi Service Booking ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings-writer-v2/reschedule-multi-service-booking) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/multi-service-bookings/reschedule-multi-service-booking)) before removing the unwanted bookings.
4821
4941
  *
4822
- * If the call would create a multi-service booking including only 1 single-service
4823
- * booking, the multi-service booking is also deleted.
4942
+ * ## Removal behavior
4943
+ *
4944
+ * __Independent bookings__: Removed single-service bookings become independent bookings.
4945
+ * You can manage them using single-service booking methods.
4946
+ *
4947
+ * __Automatic cleanup__: Multi-service bookings must contain at least 2 services.
4948
+ * If removal results in only 1 remaining single-service booking for the multi-service booking, the entire multi-service booking is deleted and the remaining single-service booking becomes a standalone booking.
4949
+ *
4950
+ * __Revision control__: Specify current revision numbers to prevent conflicting modifications during the removal process.
4824
4951
  * @param multiServiceBookingId - ID of the multi-service booking.
4825
4952
  * @public
4826
4953
  * @documentationMaturity preview
@@ -4840,7 +4967,11 @@ interface RemoveBookingsFromMultiServiceBookingOptions {
4840
4967
  * @maxSize 8
4841
4968
  */
4842
4969
  bookings?: BookingIdAndRevision[];
4843
- /** Whether to return the single-service bookings. */
4970
+ /**
4971
+ * Whether to return the single-service bookings.
4972
+ *
4973
+ * Default: `false`
4974
+ */
4844
4975
  returnFullEntity?: boolean;
4845
4976
  }
4846
4977