@wix/auto_sdk_ecom_cart 1.0.13 → 1.0.14

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 (134) hide show
  1. package/build/{cjs/src/ecom-v1-cart-cart.types.d.ts → ecom-v1-cart-cart.universal-BIIZxJYL.d.mts} +504 -269
  2. package/build/{internal/cjs/src/ecom-v1-cart-cart.types.d.ts → ecom-v1-cart-cart.universal-BIIZxJYL.d.ts} +504 -269
  3. package/build/index.d.mts +149 -0
  4. package/build/index.d.ts +149 -0
  5. package/build/index.js +1938 -0
  6. package/build/index.js.map +1 -0
  7. package/build/index.mjs +1875 -0
  8. package/build/index.mjs.map +1 -0
  9. package/build/internal/{es/src/ecom-v1-cart-cart.types.d.ts → ecom-v1-cart-cart.universal-CJdmyIWv.d.mts} +668 -269
  10. package/build/{es/src/ecom-v1-cart-cart.types.d.ts → internal/ecom-v1-cart-cart.universal-CJdmyIWv.d.ts} +668 -269
  11. package/build/internal/index.d.mts +160 -0
  12. package/build/internal/index.d.ts +160 -0
  13. package/build/internal/index.js +1938 -0
  14. package/build/internal/index.js.map +1 -0
  15. package/build/internal/index.mjs +1875 -0
  16. package/build/internal/index.mjs.map +1 -0
  17. package/build/internal/meta.d.mts +2050 -0
  18. package/build/internal/meta.d.ts +2050 -0
  19. package/build/internal/meta.js +1027 -0
  20. package/build/internal/meta.js.map +1 -0
  21. package/build/internal/meta.mjs +989 -0
  22. package/build/internal/meta.mjs.map +1 -0
  23. package/build/meta.d.mts +2050 -0
  24. package/build/meta.d.ts +2050 -0
  25. package/build/meta.js +1027 -0
  26. package/build/meta.js.map +1 -0
  27. package/build/meta.mjs +989 -0
  28. package/build/meta.mjs.map +1 -0
  29. package/package.json +13 -12
  30. package/build/cjs/index.d.ts +0 -1
  31. package/build/cjs/index.js +0 -18
  32. package/build/cjs/index.js.map +0 -1
  33. package/build/cjs/index.typings.d.ts +0 -1
  34. package/build/cjs/index.typings.js +0 -18
  35. package/build/cjs/index.typings.js.map +0 -1
  36. package/build/cjs/meta.d.ts +0 -1
  37. package/build/cjs/meta.js +0 -18
  38. package/build/cjs/meta.js.map +0 -1
  39. package/build/cjs/src/ecom-v1-cart-cart.context.d.ts +0 -29
  40. package/build/cjs/src/ecom-v1-cart-cart.context.js +0 -59
  41. package/build/cjs/src/ecom-v1-cart-cart.context.js.map +0 -1
  42. package/build/cjs/src/ecom-v1-cart-cart.http.d.ts +0 -60
  43. package/build/cjs/src/ecom-v1-cart-cart.http.js +0 -818
  44. package/build/cjs/src/ecom-v1-cart-cart.http.js.map +0 -1
  45. package/build/cjs/src/ecom-v1-cart-cart.meta.d.ts +0 -46
  46. package/build/cjs/src/ecom-v1-cart-cart.meta.js +0 -256
  47. package/build/cjs/src/ecom-v1-cart-cart.meta.js.map +0 -1
  48. package/build/cjs/src/ecom-v1-cart-cart.public.d.ts +0 -129
  49. package/build/cjs/src/ecom-v1-cart-cart.public.js +0 -227
  50. package/build/cjs/src/ecom-v1-cart-cart.public.js.map +0 -1
  51. package/build/cjs/src/ecom-v1-cart-cart.types.js +0 -255
  52. package/build/cjs/src/ecom-v1-cart-cart.types.js.map +0 -1
  53. package/build/cjs/src/ecom-v1-cart-cart.universal.d.ts +0 -3263
  54. package/build/cjs/src/ecom-v1-cart-cart.universal.js +0 -1192
  55. package/build/cjs/src/ecom-v1-cart-cart.universal.js.map +0 -1
  56. package/build/es/index.d.ts +0 -1
  57. package/build/es/index.js +0 -2
  58. package/build/es/index.js.map +0 -1
  59. package/build/es/index.typings.d.ts +0 -1
  60. package/build/es/index.typings.js +0 -2
  61. package/build/es/index.typings.js.map +0 -1
  62. package/build/es/meta.d.ts +0 -1
  63. package/build/es/meta.js +0 -2
  64. package/build/es/meta.js.map +0 -1
  65. package/build/es/package.json +0 -3
  66. package/build/es/src/ecom-v1-cart-cart.context.d.ts +0 -29
  67. package/build/es/src/ecom-v1-cart-cart.context.js +0 -31
  68. package/build/es/src/ecom-v1-cart-cart.context.js.map +0 -1
  69. package/build/es/src/ecom-v1-cart-cart.http.d.ts +0 -60
  70. package/build/es/src/ecom-v1-cart-cart.http.js +0 -803
  71. package/build/es/src/ecom-v1-cart-cart.http.js.map +0 -1
  72. package/build/es/src/ecom-v1-cart-cart.meta.d.ts +0 -46
  73. package/build/es/src/ecom-v1-cart-cart.meta.js +0 -218
  74. package/build/es/src/ecom-v1-cart-cart.meta.js.map +0 -1
  75. package/build/es/src/ecom-v1-cart-cart.public.d.ts +0 -129
  76. package/build/es/src/ecom-v1-cart-cart.public.js +0 -187
  77. package/build/es/src/ecom-v1-cart-cart.public.js.map +0 -1
  78. package/build/es/src/ecom-v1-cart-cart.types.js +0 -252
  79. package/build/es/src/ecom-v1-cart-cart.types.js.map +0 -1
  80. package/build/es/src/ecom-v1-cart-cart.universal.d.ts +0 -3263
  81. package/build/es/src/ecom-v1-cart-cart.universal.js +0 -1154
  82. package/build/es/src/ecom-v1-cart-cart.universal.js.map +0 -1
  83. package/build/internal/cjs/index.d.ts +0 -1
  84. package/build/internal/cjs/index.js +0 -18
  85. package/build/internal/cjs/index.js.map +0 -1
  86. package/build/internal/cjs/index.typings.d.ts +0 -1
  87. package/build/internal/cjs/index.typings.js +0 -18
  88. package/build/internal/cjs/index.typings.js.map +0 -1
  89. package/build/internal/cjs/meta.d.ts +0 -1
  90. package/build/internal/cjs/meta.js +0 -18
  91. package/build/internal/cjs/meta.js.map +0 -1
  92. package/build/internal/cjs/src/ecom-v1-cart-cart.context.d.ts +0 -31
  93. package/build/internal/cjs/src/ecom-v1-cart-cart.context.js +0 -59
  94. package/build/internal/cjs/src/ecom-v1-cart-cart.context.js.map +0 -1
  95. package/build/internal/cjs/src/ecom-v1-cart-cart.http.d.ts +0 -60
  96. package/build/internal/cjs/src/ecom-v1-cart-cart.http.js +0 -818
  97. package/build/internal/cjs/src/ecom-v1-cart-cart.http.js.map +0 -1
  98. package/build/internal/cjs/src/ecom-v1-cart-cart.meta.d.ts +0 -46
  99. package/build/internal/cjs/src/ecom-v1-cart-cart.meta.js +0 -256
  100. package/build/internal/cjs/src/ecom-v1-cart-cart.meta.js.map +0 -1
  101. package/build/internal/cjs/src/ecom-v1-cart-cart.public.d.ts +0 -138
  102. package/build/internal/cjs/src/ecom-v1-cart-cart.public.js +0 -227
  103. package/build/internal/cjs/src/ecom-v1-cart-cart.public.js.map +0 -1
  104. package/build/internal/cjs/src/ecom-v1-cart-cart.types.js +0 -255
  105. package/build/internal/cjs/src/ecom-v1-cart-cart.types.js.map +0 -1
  106. package/build/internal/cjs/src/ecom-v1-cart-cart.universal.d.ts +0 -3457
  107. package/build/internal/cjs/src/ecom-v1-cart-cart.universal.js +0 -1192
  108. package/build/internal/cjs/src/ecom-v1-cart-cart.universal.js.map +0 -1
  109. package/build/internal/es/index.d.ts +0 -1
  110. package/build/internal/es/index.js +0 -2
  111. package/build/internal/es/index.js.map +0 -1
  112. package/build/internal/es/index.typings.d.ts +0 -1
  113. package/build/internal/es/index.typings.js +0 -2
  114. package/build/internal/es/index.typings.js.map +0 -1
  115. package/build/internal/es/meta.d.ts +0 -1
  116. package/build/internal/es/meta.js +0 -2
  117. package/build/internal/es/meta.js.map +0 -1
  118. package/build/internal/es/src/ecom-v1-cart-cart.context.d.ts +0 -31
  119. package/build/internal/es/src/ecom-v1-cart-cart.context.js +0 -31
  120. package/build/internal/es/src/ecom-v1-cart-cart.context.js.map +0 -1
  121. package/build/internal/es/src/ecom-v1-cart-cart.http.d.ts +0 -60
  122. package/build/internal/es/src/ecom-v1-cart-cart.http.js +0 -803
  123. package/build/internal/es/src/ecom-v1-cart-cart.http.js.map +0 -1
  124. package/build/internal/es/src/ecom-v1-cart-cart.meta.d.ts +0 -46
  125. package/build/internal/es/src/ecom-v1-cart-cart.meta.js +0 -218
  126. package/build/internal/es/src/ecom-v1-cart-cart.meta.js.map +0 -1
  127. package/build/internal/es/src/ecom-v1-cart-cart.public.d.ts +0 -138
  128. package/build/internal/es/src/ecom-v1-cart-cart.public.js +0 -187
  129. package/build/internal/es/src/ecom-v1-cart-cart.public.js.map +0 -1
  130. package/build/internal/es/src/ecom-v1-cart-cart.types.js +0 -252
  131. package/build/internal/es/src/ecom-v1-cart-cart.types.js.map +0 -1
  132. package/build/internal/es/src/ecom-v1-cart-cart.universal.d.ts +0 -3457
  133. package/build/internal/es/src/ecom-v1-cart-cart.universal.js +0 -1154
  134. package/build/internal/es/src/ecom-v1-cart-cart.universal.js.map +0 -1
@@ -0,0 +1,2050 @@
1
+ import { bS as CreateCartRequest$1, bT as CreateCartResponse$1, aB as UpdateCartRequest$1, aE as UpdateCartResponse$1, bU as GetCartRequest$1, bV as GetCartResponse$1, bW as GetCartByCheckoutIdRequest$1, bX as GetCartByCheckoutIdResponse$1, bY as AddToCartRequest$1, b as AddToCartResponse$1, bZ as RemoveLineItemsRequest$1, R as RemoveLineItemsResponse$1, b_ as CreateCheckoutRequest$1, d as CreateCheckoutResponse$1, b$ as RemoveCouponRequest$1, e as RemoveCouponResponse$1, c0 as UpdateLineItemsQuantityRequest$1, f as UpdateLineItemsQuantityResponse$1, c1 as EstimateTotalsRequest$1, g as EstimateTotalsResponse$1, c2 as DeleteCartRequest$1, bH as DeleteCartResponse$1, c4 as RemoveBusinessLocationRequest$1, h as RemoveBusinessLocationResponse$1 } from './ecom-v1-cart-cart.universal-BIIZxJYL.js';
2
+
3
+ interface Cart {
4
+ /**
5
+ * Cart ID.
6
+ * @format GUID
7
+ */
8
+ id?: string | null;
9
+ /**
10
+ * Line items.
11
+ * @minSize 1
12
+ * @maxSize 300
13
+ * @readonly
14
+ */
15
+ lineItems?: LineItem[];
16
+ /**
17
+ * [Buyer note](https://support.wix.com/en/article/collecting-and-viewing-buyer-notes) left by the customer.
18
+ * @maxLength 1000
19
+ */
20
+ buyerNote?: string | null;
21
+ /** Buyer information. */
22
+ buyerInfo?: BuyerInfo;
23
+ /**
24
+ * Currency used for pricing.
25
+ * @format CURRENCY
26
+ * @readonly
27
+ */
28
+ currency?: string;
29
+ /**
30
+ * Currency code used for all the converted prices that are returned.
31
+ * For a site that supports multiple currencies, this is the currency the buyer selected.
32
+ * @readonly
33
+ * @format CURRENCY
34
+ */
35
+ conversionCurrency?: string;
36
+ /**
37
+ * Language for communication with the buyer. Defaults to the site language.
38
+ * For a site that supports multiple languages, this is the language the buyer selected.
39
+ * @readonly
40
+ */
41
+ buyerLanguage?: string | null;
42
+ /**
43
+ * Site language in which original values are displayed.
44
+ * @readonly
45
+ */
46
+ siteLanguage?: string | null;
47
+ /**
48
+ * Whether tax is included in line item prices.
49
+ * @readonly
50
+ */
51
+ taxIncludedInPrices?: boolean | null;
52
+ /**
53
+ * Weight measurement unit - defaults to site's weight unit.
54
+ * @readonly
55
+ */
56
+ weightUnit?: WeightUnit;
57
+ /**
58
+ * ID of the checkout that originated from this cart.
59
+ * @readonly
60
+ * @format GUID
61
+ */
62
+ checkoutId?: string | null;
63
+ /**
64
+ * Cart discounts.
65
+ * @readonly
66
+ */
67
+ appliedDiscounts?: CartDiscount[];
68
+ /**
69
+ * Date and time the cart was created.
70
+ * @readonly
71
+ */
72
+ createdDate?: Date | null;
73
+ /**
74
+ * Date and time the cart was updated.
75
+ * @readonly
76
+ */
77
+ updatedDate?: Date | null;
78
+ /** Contact info. */
79
+ contactInfo?: AddressWithContact;
80
+ /**
81
+ * `overrideCheckoutUrl` allows the flexibility to redirect customers to a customized checkout page.
82
+ *
83
+ * This field overrides the `checkoutUrl` in a cart or checkout. `checkoutUrl` is used in the Abandoned Checkout API
84
+ * to send customers back to their checkouts. By default, a `checkoutUrl` generates for a checkout and directs to a
85
+ * standard Wix checkout page. When `overrideCheckoutUrl` has a value, it will replace and set the value of `checkoutUrl`.
86
+ * @maxLength 1000
87
+ */
88
+ overrideCheckoutUrl?: string | null;
89
+ /**
90
+ * Persistent ID that correlates between the various eCommerce elements: cart, checkout, and order.
91
+ * @format GUID
92
+ * @readonly
93
+ */
94
+ purchaseFlowId?: string | null;
95
+ /** Selected shipping option. */
96
+ selectedShippingOption?: SelectedShippingOption;
97
+ /**
98
+ * The business location ID associated with the cart.
99
+ *
100
+ * To learn more, see the Locations API.
101
+ * @format GUID
102
+ */
103
+ businessLocationId?: string | null;
104
+ }
105
+ interface LineItem {
106
+ /**
107
+ * Line item ID.
108
+ * @format GUID
109
+ * @readonly
110
+ */
111
+ id?: string | null;
112
+ /**
113
+ * Item quantity.
114
+ * @min 1
115
+ * @max 100000
116
+ */
117
+ quantity?: number;
118
+ /** Catalog and item reference. Holds IDs for the item and the catalog it came from, as well as further optional info. Optional for custom line items, which don't trigger the Catalog service plugin. */
119
+ catalogReference?: CatalogReference;
120
+ /**
121
+ * Item name.
122
+ * + Stores - `product.name`
123
+ * + Bookings - `service.info.name`
124
+ * + Events - `ticket.name`
125
+ * @readonly
126
+ */
127
+ productName?: ProductName;
128
+ /**
129
+ * URL to the item's page on the site.
130
+ * @readonly
131
+ */
132
+ url?: PageUrlV2;
133
+ /**
134
+ * Item price **after** catalog-defined discount and line item discounts.
135
+ * @readonly
136
+ */
137
+ price?: MultiCurrencyPrice;
138
+ /**
139
+ * Item price **before** catalog-defined discount. Defaults to `price` when not provided.
140
+ * @readonly
141
+ */
142
+ fullPrice?: MultiCurrencyPrice;
143
+ /**
144
+ * Item price **before** line item discounts and **after** catalog-defined discount. Defaults to `price` when not provided.
145
+ * @readonly
146
+ */
147
+ priceBeforeDiscounts?: MultiCurrencyPrice;
148
+ /**
149
+ * Line item description lines. Used for displaying the cart, checkout and order.
150
+ * @readonly
151
+ */
152
+ descriptionLines?: DescriptionLine[];
153
+ /**
154
+ * Line item image details.
155
+ * @readonly
156
+ */
157
+ image?: CommonImage;
158
+ /**
159
+ * Item availability details.
160
+ * @readonly
161
+ */
162
+ availability?: ItemAvailabilityInfo;
163
+ /**
164
+ * Physical properties of the item. When relevant, contains information such as SKU, item weight, and shippability.
165
+ * @readonly
166
+ */
167
+ physicalProperties?: PhysicalProperties;
168
+ /**
169
+ * Item type. Either a preset type or custom.
170
+ * @readonly
171
+ */
172
+ itemType?: ItemType;
173
+ /**
174
+ * Type of selected payment option for current item.
175
+ *
176
+ * Default: `FULL_PAYMENT_ONLINE`
177
+ * @readonly
178
+ */
179
+ paymentOption?: PaymentOptionType;
180
+ /**
181
+ * Service properties. When relevant, this contains information such as date and number of participants.
182
+ * @readonly
183
+ */
184
+ serviceProperties?: ServiceProperties;
185
+ /**
186
+ * In cases where `catalogReference.catalogItemId` is NOT the actual catalog item ID, this field will return the true item's ID.
187
+ * + For example, for Wix Bookings, `catalogReference.catalogItemId` is the booking ID. Therefore this value is set to the service ID.
188
+ * + in most cases, this field is the same as `catalogReference.catalogItemId`.
189
+ * + Used in membership validation.
190
+ * @minLength 1
191
+ * @maxLength 36
192
+ * @readonly
193
+ */
194
+ rootCatalogItemId?: string | null;
195
+ /**
196
+ * Additional description for the price. For example, when price is 0 but additional details about the actual price are needed - "Starts at $67".
197
+ * @readonly
198
+ */
199
+ priceDescription?: PriceDescription;
200
+ /**
201
+ * Partial payment to be paid upfront during the checkout. Eligible for catalog items with `lineItem.paymentOption` type `DEPOSIT_ONLINE` only.
202
+ * @readonly
203
+ */
204
+ depositAmount?: MultiCurrencyPrice;
205
+ /** Selected membership to be used as payment for this item. Must be used with `lineItem.paymentOption` set to `MEMBERSHIP` or `MEMBERSHIP_OFFLINE`. This field can be empty when `lineItem.paymentOption` is set to `MEMBERSHIP_OFFLINE`. */
206
+ selectedMembership?: SelectedMembership;
207
+ /**
208
+ * Delivery profile ID.
209
+ * @format GUID
210
+ * @readonly
211
+ */
212
+ deliveryProfileId?: string | null;
213
+ /**
214
+ * Tax group ID for this line item.
215
+ * @format GUID
216
+ * @readonly
217
+ */
218
+ taxGroupId?: string | null;
219
+ /**
220
+ * Whether the line item is a custom line item. Custom line items don't trigger the Catalog service plugin.
221
+ * @readonly
222
+ */
223
+ customLineItem?: boolean;
224
+ /**
225
+ * Item payment policy that requires customer consent to complete purchase. The payment policy will be displayed on the checkout page.
226
+ * @minLength 1
227
+ * @maxLength 2500
228
+ * @readonly
229
+ */
230
+ consentRequiredPaymentPolicy?: string | null;
231
+ /**
232
+ * Overriding values for catalog item properties.
233
+ *
234
+ * To override catalog fields, your app must have the permission scope named "Manage eCommerce - Admin Permissions".
235
+ * Learn more about [permission scopes](https://dev.wix.com/docs/build-apps/develop-your-app/access/authorization/about-permissions).
236
+ */
237
+ catalogOverrideFields?: CatalogOverrideFields;
238
+ /**
239
+ * Whether to save the payment method on the order.
240
+ *
241
+ * Default: `false`
242
+ * @readonly
243
+ */
244
+ savePaymentMethod?: boolean;
245
+ }
246
+ /** Used for grouping line items. Sent when an item is added to a cart, checkout, or order. */
247
+ interface CatalogReference {
248
+ /**
249
+ * ID of the item within the catalog it belongs to.
250
+ * @minLength 1
251
+ * @maxLength 36
252
+ */
253
+ catalogItemId?: string;
254
+ /**
255
+ * ID of the app providing the catalog.
256
+ *
257
+ * You can get your app's ID from its page in the [app dashboard](https://dev.wix.com/dc3/my-apps/).
258
+ *
259
+ * For items from Wix catalogs, the following values always apply:
260
+ * + Wix Stores: `"215238eb-22a5-4c36-9e7b-e7c08025e04e"`
261
+ * + Wix Bookings: `"13d21c63-b5ec-5912-8397-c3a5ddb27a97"`
262
+ * + Wix Restaurants: `"9a5d83fd-8570-482e-81ab-cfa88942ee60"`
263
+ * @minLength 1
264
+ */
265
+ appId?: string;
266
+ /**
267
+ * Additional item details in key:value pairs. Use this optional field to provide more specificity with item selection. The `options` field values differ depending on which catalog is providing the items.
268
+ *
269
+ * For products and variants from a Wix Stores catalog, learn more about eCommerce integration ([SDK](https://dev.wix.com/docs/sdk/backend-modules/stores/catalog-v3/e-commerce-integration) | [REST](https://dev.wix.com/docs/rest/business-solutions/stores/catalog/e-commerce-integration)).
270
+ */
271
+ options?: Record<string, any> | null;
272
+ }
273
+ interface ProductName {
274
+ /**
275
+ * __Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).
276
+ *
277
+ * Min: 1 character.
278
+ * Max: 200 characters.
279
+ * @minLength 1
280
+ * @maxLength 200
281
+ */
282
+ original?: string;
283
+ /**
284
+ * Item name translated into the buyer's language.
285
+ *
286
+ * Min: 1 character.
287
+ * Max: 400 characters.
288
+ * Default: Same as `original`.
289
+ * @minLength 1
290
+ * @maxLength 400
291
+ */
292
+ translated?: string | null;
293
+ }
294
+ interface PageUrlV2 {
295
+ /** The relative path for the page within the site. For example, `/product-page/a-product`. */
296
+ relativePath?: string;
297
+ /** The page's full URL. For example, `https://mysite.com/product-page/a-product`. */
298
+ url?: string | null;
299
+ }
300
+ interface MultiCurrencyPrice {
301
+ /**
302
+ * Amount.
303
+ * @decimalValue options { gte:0, lte:1000000000000000 }
304
+ */
305
+ amount?: string;
306
+ /**
307
+ * Converted amount.
308
+ * @readonly
309
+ * @decimalValue options { gte:0, lte:1000000000000000 }
310
+ */
311
+ convertedAmount?: string;
312
+ /**
313
+ * Amount formatted with currency symbol.
314
+ * @readonly
315
+ */
316
+ formattedAmount?: string;
317
+ /**
318
+ * Converted amount formatted with currency symbol.
319
+ * @readonly
320
+ */
321
+ formattedConvertedAmount?: string;
322
+ }
323
+ interface DescriptionLine extends DescriptionLineValueOneOf, DescriptionLineDescriptionLineValueOneOf {
324
+ /** Description line plain text value. */
325
+ plainText?: PlainTextValue;
326
+ /** Description line color value. */
327
+ colorInfo?: Color;
328
+ /** Description line name. */
329
+ name?: DescriptionLineName;
330
+ }
331
+ /** @oneof */
332
+ interface DescriptionLineValueOneOf {
333
+ /** Description line plain text value. */
334
+ plainText?: PlainTextValue;
335
+ /** Description line color value. */
336
+ colorInfo?: Color;
337
+ }
338
+ /** @oneof */
339
+ interface DescriptionLineDescriptionLineValueOneOf {
340
+ }
341
+ interface DescriptionLineName {
342
+ /**
343
+ * Description line name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).
344
+ * @maxLength 100
345
+ */
346
+ original?: string;
347
+ /**
348
+ * Description line name translated into the buyer's language.
349
+ *
350
+ * Default: Same as `original`.
351
+ * @maxLength 200
352
+ */
353
+ translated?: string | null;
354
+ }
355
+ interface PlainTextValue {
356
+ /**
357
+ * Description line plain text value in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).
358
+ * @maxLength 600
359
+ */
360
+ original?: string;
361
+ /**
362
+ * Description line plain text value translated into the buyer's language.
363
+ *
364
+ * Default: Same as `original`.
365
+ * @maxLength 600
366
+ */
367
+ translated?: string | null;
368
+ }
369
+ interface Color {
370
+ /**
371
+ * Description line color name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).
372
+ * @maxLength 500
373
+ */
374
+ original?: string;
375
+ /**
376
+ * Description line color name translated into the buyer's language.
377
+ *
378
+ * Default: Same as `original`.
379
+ * @maxLength 500
380
+ */
381
+ translated?: string | null;
382
+ /** HEX or RGB color code for display. */
383
+ code?: string | null;
384
+ }
385
+ interface CommonImage {
386
+ /** WixMedia image ID. */
387
+ id?: string;
388
+ /** Image URL. */
389
+ url?: string;
390
+ /**
391
+ * Original image height.
392
+ * @readonly
393
+ */
394
+ height?: number;
395
+ /**
396
+ * Original image width.
397
+ * @readonly
398
+ */
399
+ width?: number;
400
+ /** Image alt text. */
401
+ altText?: string | null;
402
+ /**
403
+ * Image filename.
404
+ * @readonly
405
+ */
406
+ filename?: string | null;
407
+ }
408
+ interface ItemAvailabilityInfo {
409
+ /** Item availability status. */
410
+ status?: ItemAvailabilityStatus;
411
+ /** Quantity available. */
412
+ quantityAvailable?: number | null;
413
+ }
414
+ declare enum ItemAvailabilityStatus {
415
+ AVAILABLE = "AVAILABLE",
416
+ /** Item does not exist. */
417
+ NOT_FOUND = "NOT_FOUND",
418
+ /** Item is not in stock. */
419
+ NOT_AVAILABLE = "NOT_AVAILABLE",
420
+ /** Available quantity is less than requested. */
421
+ PARTIALLY_AVAILABLE = "PARTIALLY_AVAILABLE"
422
+ }
423
+ interface PhysicalProperties {
424
+ /** Line item weight. Measurement unit matches the weight unit specified in `weightUnit` in the request. */
425
+ weight?: number | null;
426
+ /**
427
+ * Stock-keeping unit. Learn more about [SKUs](https://www.wix.com/encyclopedia/definition/stock-keeping-unit-sku).
428
+ * @maxLength 40
429
+ */
430
+ sku?: string | null;
431
+ /** Whether this line item is shippable. */
432
+ shippable?: boolean;
433
+ }
434
+ interface ItemType extends ItemTypeItemTypeDataOneOf {
435
+ /** Preset item type. */
436
+ preset?: ItemTypeItemType;
437
+ /** Custom item type. When none of the preset types are suitable, specifies the custom type. */
438
+ custom?: string;
439
+ }
440
+ /** @oneof */
441
+ interface ItemTypeItemTypeDataOneOf {
442
+ /** Preset item type. */
443
+ preset?: ItemTypeItemType;
444
+ /** Custom item type. When none of the preset types are suitable, specifies the custom type. */
445
+ custom?: string;
446
+ }
447
+ declare enum ItemTypeItemType {
448
+ UNRECOGNISED = "UNRECOGNISED",
449
+ PHYSICAL = "PHYSICAL",
450
+ DIGITAL = "DIGITAL",
451
+ GIFT_CARD = "GIFT_CARD",
452
+ SERVICE = "SERVICE"
453
+ }
454
+ /** Type of selected payment option for catalog item */
455
+ declare enum PaymentOptionType {
456
+ /** The entire payment for this item happens as part of the checkout. */
457
+ FULL_PAYMENT_ONLINE = "FULL_PAYMENT_ONLINE",
458
+ /** The entire payment for this item happens after checkout. For example, when using cash, check, or other offline payment methods. */
459
+ FULL_PAYMENT_OFFLINE = "FULL_PAYMENT_OFFLINE",
460
+ /** Payment for this item is done by charging a membership. When selected, `price` is `0`. */
461
+ MEMBERSHIP = "MEMBERSHIP",
462
+ /** Partial payment to be paid upfront during checkout. The initial amount to be paid for each line item is specified in `depositAmount`. */
463
+ DEPOSIT_ONLINE = "DEPOSIT_ONLINE",
464
+ /** Payment for this item can only be done by charging a membership and must be manually redeemed in the dashboard by the site admin. When selected, `price` is `0`. */
465
+ MEMBERSHIP_OFFLINE = "MEMBERSHIP_OFFLINE"
466
+ }
467
+ interface ServiceProperties {
468
+ /**
469
+ * Date and time the service is to be provided, in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.
470
+ * For example, the start time of a class.
471
+ */
472
+ scheduledDate?: Date | null;
473
+ /**
474
+ * The number of people participating in the service. For example, the number of people attending a class or the number of people per hotel room.
475
+ * @min 1
476
+ * @max 10000
477
+ */
478
+ numberOfParticipants?: number | null;
479
+ }
480
+ interface PriceDescription {
481
+ /**
482
+ * __Required.__ Price description in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).
483
+ * @minLength 1
484
+ * @maxLength 100
485
+ */
486
+ original?: string;
487
+ /**
488
+ * Price description translated into the buyer's language.
489
+ *
490
+ * Default: Same as `original`.
491
+ * @minLength 1
492
+ * @maxLength 100
493
+ */
494
+ translated?: string | null;
495
+ }
496
+ /** Selected Membership */
497
+ interface SelectedMembership {
498
+ /**
499
+ * Membership ID.
500
+ * @minLength 1
501
+ * @maxLength 100
502
+ */
503
+ id?: string;
504
+ /**
505
+ * ID of the app providing this payment option.
506
+ * @format GUID
507
+ */
508
+ appId?: string;
509
+ }
510
+ interface CatalogOverrideFields {
511
+ /** Item name. */
512
+ productName?: ProductName;
513
+ /**
514
+ * Item price **after** discounts.
515
+ * @decimalValue options { gte:0, lte:999999999, maxScale:3 }
516
+ */
517
+ price?: string | null;
518
+ /**
519
+ * Item price **before** discounts.
520
+ * @decimalValue options { gte:0, lte:999999999, maxScale:3 }
521
+ */
522
+ fullPrice?: string | null;
523
+ /**
524
+ * Item description lines. Used when displaying the line item to customers.
525
+ * @maxSize 20
526
+ */
527
+ descriptionLines?: DescriptionLine[];
528
+ /** Physical properties of the item. */
529
+ physicalProperties?: PhysicalProperties;
530
+ /** Item image. */
531
+ image?: Image;
532
+ /** Payment method selected for the item. */
533
+ paymentOption?: PaymentOption;
534
+ /**
535
+ * Only eligible for catalog items with `lineItem.paymentOption.value` type of `DEPOSIT_ONLINE`.
536
+ * @format DECIMAL_VALUE
537
+ * @decimalValue options { gt:0, lte:999999999, maxScale:3 }
538
+ */
539
+ depositAmount?: string | null;
540
+ /**
541
+ * Whether to save the payment method on the order.
542
+ *
543
+ * Default: `false`
544
+ */
545
+ savePaymentMethod?: boolean | null;
546
+ }
547
+ interface Image {
548
+ /** WixMedia image ID. */
549
+ id?: string;
550
+ /** Original image height. */
551
+ height?: number;
552
+ /** Original image width. */
553
+ width?: number;
554
+ /** Image alt text. Optional. */
555
+ altText?: string | null;
556
+ /** Image filename. Optional. */
557
+ filename?: string | null;
558
+ }
559
+ interface PaymentOption {
560
+ /**
561
+ * Type of selected payment option for current item.
562
+ *
563
+ * Default: `FULL_PAYMENT_ONLINE`
564
+ */
565
+ value?: PaymentOptionType;
566
+ }
567
+ /** Buyer Info */
568
+ interface BuyerInfo extends BuyerInfoIdOneOf {
569
+ /**
570
+ * Visitor ID. If the buyer is **not** a site member.
571
+ * @format GUID
572
+ * @readonly
573
+ */
574
+ visitorId?: string;
575
+ /**
576
+ * Member ID. If the buyer is a site member.
577
+ * @format GUID
578
+ * @readonly
579
+ */
580
+ memberId?: string;
581
+ /**
582
+ * User ID. If the buyer, or cart owner, is a Wix user.
583
+ * @format GUID
584
+ * @readonly
585
+ */
586
+ userId?: string;
587
+ /**
588
+ * Contact ID. For more information, see the Contacts API.
589
+ * @format GUID
590
+ */
591
+ contactId?: string | null;
592
+ /**
593
+ * Buyer email address.
594
+ * @format EMAIL
595
+ */
596
+ email?: string | null;
597
+ }
598
+ /** @oneof */
599
+ interface BuyerInfoIdOneOf {
600
+ /**
601
+ * Visitor ID. If the buyer is **not** a site member.
602
+ * @format GUID
603
+ * @readonly
604
+ */
605
+ visitorId?: string;
606
+ /**
607
+ * Member ID. If the buyer is a site member.
608
+ * @format GUID
609
+ * @readonly
610
+ */
611
+ memberId?: string;
612
+ /**
613
+ * User ID. If the buyer, or cart owner, is a Wix user.
614
+ * @format GUID
615
+ * @readonly
616
+ */
617
+ userId?: string;
618
+ }
619
+ declare enum WeightUnit {
620
+ /** Weight unit can't be classified due to an error. */
621
+ UNSPECIFIED_WEIGHT_UNIT = "UNSPECIFIED_WEIGHT_UNIT",
622
+ /** Kilograms. */
623
+ KG = "KG",
624
+ /** Pounds. */
625
+ LB = "LB"
626
+ }
627
+ interface CartDiscount extends CartDiscountDiscountSourceOneOf {
628
+ /** Coupon details. */
629
+ coupon?: Coupon;
630
+ /** Merchant discount. */
631
+ merchantDiscount?: MerchantDiscount;
632
+ }
633
+ /** @oneof */
634
+ interface CartDiscountDiscountSourceOneOf {
635
+ /** Coupon details. */
636
+ coupon?: Coupon;
637
+ /** Merchant discount. */
638
+ merchantDiscount?: MerchantDiscount;
639
+ }
640
+ interface Coupon {
641
+ /** Coupon ID. */
642
+ id?: string;
643
+ /** Coupon code. */
644
+ code?: string;
645
+ }
646
+ interface MerchantDiscount {
647
+ /** Discount value. */
648
+ amount?: MultiCurrencyPrice;
649
+ }
650
+ /** Billing Info and shipping details */
651
+ interface AddressWithContact {
652
+ /** Address. */
653
+ address?: Address;
654
+ /** Contact details. */
655
+ contactDetails?: FullAddressContactDetails;
656
+ }
657
+ /** Physical address */
658
+ interface Address {
659
+ /**
660
+ * Two-letter country code in [ISO-3166 alpha-2](https://www.iso.org/obp/ui/#search/code/) format.
661
+ * @format COUNTRY
662
+ */
663
+ country?: string | null;
664
+ /**
665
+ * Code for a subdivision (such as state, prefecture, or province) in [ISO 3166-2](https://www.iso.org/standard/72483.html) format.
666
+ * @maxLength 50
667
+ */
668
+ subdivision?: string | null;
669
+ /**
670
+ * City name.
671
+ * @maxLength 50
672
+ */
673
+ city?: string | null;
674
+ /**
675
+ * Postal or zip code.
676
+ * @maxLength 50
677
+ */
678
+ postalCode?: string | null;
679
+ /** Street address. */
680
+ streetAddress?: StreetAddress;
681
+ /**
682
+ * Main address line (usually street name and number).
683
+ * @maxLength 150
684
+ */
685
+ addressLine?: string | null;
686
+ /**
687
+ * Free text providing more detailed address info. Usually contains apt, suite, floor.
688
+ * @maxLength 100
689
+ */
690
+ addressLine2?: string | null;
691
+ /**
692
+ * Country's full name.
693
+ * @readonly
694
+ */
695
+ countryFullname?: string | null;
696
+ /**
697
+ * Subdivision full-name.
698
+ * @readonly
699
+ */
700
+ subdivisionFullname?: string | null;
701
+ }
702
+ interface StreetAddress {
703
+ /** Street number. */
704
+ number?: string;
705
+ /** Street name. */
706
+ name?: string;
707
+ }
708
+ /** Full contact details for an address */
709
+ interface FullAddressContactDetails {
710
+ /**
711
+ * First name.
712
+ * @maxLength 100
713
+ */
714
+ firstName?: string | null;
715
+ /**
716
+ * Last name.
717
+ * @maxLength 100
718
+ */
719
+ lastName?: string | null;
720
+ /**
721
+ * Phone number.
722
+ * @format PHONE
723
+ */
724
+ phone?: string | null;
725
+ /**
726
+ * Company name.
727
+ * @maxLength 1000
728
+ */
729
+ company?: string | null;
730
+ /** Tax information (for Brazil only). If ID is provided, `vatId.type` must also be set, `UNSPECIFIED` is not allowed. */
731
+ vatId?: VatId;
732
+ }
733
+ interface VatId {
734
+ /** Customer's tax ID. */
735
+ id?: string;
736
+ /**
737
+ * Tax type.
738
+ *
739
+ * Supported values:
740
+ * + `CPF`: for individual tax payers
741
+ * + `CNPJ`: for corporations
742
+ */
743
+ type?: VatType;
744
+ }
745
+ /** tax info types */
746
+ declare enum VatType {
747
+ UNSPECIFIED = "UNSPECIFIED",
748
+ /** CPF - for individual tax payers. */
749
+ CPF = "CPF",
750
+ /** CNPJ - for corporations */
751
+ CNPJ = "CNPJ"
752
+ }
753
+ interface SelectedShippingOption {
754
+ /**
755
+ * Carrier ID.
756
+ * @format GUID
757
+ */
758
+ carrierId?: string | null;
759
+ /**
760
+ * Selected shipping option code. For example, "usps_std_overnight".
761
+ * @minLength 1
762
+ * @maxLength 100
763
+ */
764
+ code?: string;
765
+ }
766
+ interface UpdateCartRequest {
767
+ /** Cart info. */
768
+ cartInfo?: Cart;
769
+ /** Coupon code. For more information, see the Coupons API. */
770
+ couponCode?: string | null;
771
+ /**
772
+ * Merchant discounts to apply to specific line items. If no `lineItemIds` are passed, the discount will be applied to the whole cart.
773
+ * @maxSize 100
774
+ */
775
+ merchantDiscounts?: MerchantDiscountInput[];
776
+ /**
777
+ * Catalog line items.
778
+ * @maxSize 300
779
+ */
780
+ lineItems?: LineItem[];
781
+ /**
782
+ * Custom line items. Custom line items don't trigger the Catalog service plugin.
783
+ *
784
+ * To access and manage custom line items, your app must have the permission scope named "Manage eCommerce - Admin Permissions".
785
+ * Learn more about [permission scopes](https://dev.wix.com/docs/build-apps/develop-your-app/access/authorization/about-permissions).
786
+ * @maxSize 300
787
+ */
788
+ customLineItems?: CustomLineItem[];
789
+ }
790
+ interface MerchantDiscountInput {
791
+ /**
792
+ * Discount amount.
793
+ * @decimalValue options { gte:0 }
794
+ */
795
+ amount?: string;
796
+ /**
797
+ * IDs of line items the discount applies to.
798
+ * @format GUID
799
+ * @maxSize 300
800
+ */
801
+ lineItemIds?: string[];
802
+ }
803
+ interface CustomLineItem {
804
+ /**
805
+ * Custom line item quantity.
806
+ *
807
+ * Min: `1`
808
+ * Max: `100000`
809
+ * @min 1
810
+ * @max 100000
811
+ */
812
+ quantity?: number;
813
+ /**
814
+ * Custom line item price.
815
+ *
816
+ * Must be a number or a decimal without symbols.
817
+ * @format DECIMAL_VALUE
818
+ * @decimalValue options { gte:0, lte:1000000000000000 }
819
+ */
820
+ price?: string;
821
+ /** Additional description for the price. For example, when price is 0 but additional details about the actual price are needed - "Starts at $67". */
822
+ priceDescription?: PriceDescription;
823
+ /**
824
+ * Custom line item description lines. Used for display purposes for the cart, checkout and order.
825
+ * @maxSize 10
826
+ */
827
+ descriptionLines?: DescriptionLine[];
828
+ /** Custom line item's media. */
829
+ media?: Image;
830
+ /**
831
+ * Custom line item ID. If passed, `id` must be unique.
832
+ *
833
+ * Default: auto-generated ID
834
+ * @format GUID
835
+ */
836
+ id?: string | null;
837
+ /**
838
+ * Tax group ID for this custom line item.
839
+ * @format GUID
840
+ */
841
+ taxGroupId?: string | null;
842
+ /** Name of the item or product. */
843
+ productName?: ProductName;
844
+ /** URL to the item's page on the site. When not provided, the link back from the cart page to the relevant product page will not work. */
845
+ url?: PageUrlV2;
846
+ /** Item type. Either a preset type or custom. */
847
+ itemType?: ItemType;
848
+ /**
849
+ * Item price **before** catalog-defined discount. Defaults to `price` when not provided.
850
+ * @format DECIMAL_VALUE
851
+ */
852
+ fullPrice?: string | null;
853
+ /**
854
+ * Item quantity available for purchase. Only return this if inventory is managed.
855
+ * Not returning this field means that the buyer can "infinitely" tick up the number of items in the cart.
856
+ * @max 100000
857
+ */
858
+ quantityAvailable?: number | null;
859
+ /** Physical properties of the item. */
860
+ physicalProperties?: PhysicalProperties;
861
+ /**
862
+ * Type of selected payment option for current item. Defaults to `FULL_PAYMENT_ONLINE`.
863
+ *
864
+ * + `FULL_PAYMENT_ONLINE` - Entire payment for this item happens as part of the checkout.
865
+ * + `FULL_PAYMENT_OFFLINE` - Entire payment for this item happens after the checkout. For example, when using cash, check, or other offline payment methods.
866
+ * + `MEMBERSHIP` - Payment for this item is done by charging a membership. When this option is used, `lineItem.price.amount` is 0.
867
+ * + `DEPOSIT_ONLINE` - Partial payment for the given item to be paid upfront during the checkout. Amount to be paid is defined by deposit_amount field.
868
+ */
869
+ paymentOption?: PaymentOptionType;
870
+ /**
871
+ * Service properties. When relevant, this contains information such as date and number of participants.
872
+ * Used, among other things, when checking for valid memberships.
873
+ */
874
+ serviceProperties?: ServiceProperties;
875
+ /**
876
+ * In cases where `catalogReference.catalogItemId` is NOT the actual catalog item ID, this field will return the true item's ID.
877
+ *
878
+ * + For example, for Wix Bookings, `catalogReference.catalogItemId` is the booking ID. Therefore this value is set to the service ID.
879
+ * + In most cases, this field is the same as `catalogReference.catalogItemId`.
880
+ * + Used in membership validation.
881
+ * @minLength 1
882
+ * @maxLength 36
883
+ */
884
+ rootCatalogItemId?: string | null;
885
+ /**
886
+ * Partial payment for the given item to be paid upfront during the checkout.
887
+ *
888
+ * Eligible for catalog items with type `DEPOSIT_ONLINE`.
889
+ * When omitted, the item's price will not be split and is expected to be paid in a single installment.
890
+ * @format DECIMAL_VALUE
891
+ */
892
+ depositAmount?: string | null;
893
+ /**
894
+ * Delivery profile ID.
895
+ * @format GUID
896
+ */
897
+ deliveryProfileId?: string | null;
898
+ /** Catalog and item reference. Includes IDs for the item and the catalog it came from, as well as further optional info. Optional for custom line items, which don't trigger the Catalog service plugin. */
899
+ catalogReference?: CatalogReference;
900
+ /**
901
+ * Item payment policy that requires customer consent to complete purchase. The payment policy will be displayed on the checkout page.
902
+ * @minLength 1
903
+ * @maxLength 1000
904
+ * @readonly
905
+ */
906
+ consentRequiredPaymentPolicy?: string | null;
907
+ /**
908
+ * Whether to save the payment method on the order.
909
+ *
910
+ * Default: `false`
911
+ * @readonly
912
+ */
913
+ savePaymentMethod?: boolean;
914
+ }
915
+ interface UpdateCartResponse {
916
+ /** Updated Cart. */
917
+ cart?: Cart;
918
+ }
919
+ interface AddToCartResponse {
920
+ /** Updated cart. */
921
+ cart?: Cart;
922
+ }
923
+ interface SelectedMemberships {
924
+ /**
925
+ * Selected memberships.
926
+ * @maxSize 300
927
+ */
928
+ memberships?: HostSelectedMembership[];
929
+ }
930
+ interface HostSelectedMembership {
931
+ /**
932
+ * Membership ID.
933
+ * @minLength 1
934
+ * @maxLength 100
935
+ */
936
+ id?: string;
937
+ /**
938
+ * ID of the app providing this payment option.
939
+ * @format GUID
940
+ */
941
+ appId?: string;
942
+ /**
943
+ * IDs of the line items this membership applies to.
944
+ * @minSize 1
945
+ * @maxSize 300
946
+ * @minLength 1
947
+ * @maxLength 100
948
+ */
949
+ lineItemIds?: string[];
950
+ }
951
+ interface EstimateTotalsResponse {
952
+ /** Cart. */
953
+ cart?: Cart;
954
+ /** Calculated line items. */
955
+ calculatedLineItems?: CalculatedLineItem[];
956
+ /** Price summary. */
957
+ priceSummary?: PriceSummary;
958
+ /** Applied gift card. */
959
+ giftCard?: GiftCard;
960
+ /** Tax summary. */
961
+ taxSummary?: TaxSummary;
962
+ /** Shipping information. */
963
+ shippingInfo?: ShippingInformation;
964
+ /** Applied discounts. */
965
+ appliedDiscounts?: AppliedDiscount[];
966
+ /** Calculation errors. */
967
+ calculationErrors?: CalculationErrors;
968
+ /** Weight measurement unit. Defaults to site's weight unit. */
969
+ weightUnit?: WeightUnit;
970
+ /**
971
+ * Currency used for pricing in this store.
972
+ * @format CURRENCY
973
+ */
974
+ currency?: string;
975
+ /**
976
+ * Minimal amount to pay in order to place the order.
977
+ * @readonly
978
+ */
979
+ payNow?: PriceSummary;
980
+ /**
981
+ * Remaining amount for the order to be fully paid.
982
+ * @readonly
983
+ */
984
+ payLater?: PriceSummary;
985
+ /** Information about valid and invalid memberships, and which ones are selected for usage. */
986
+ membershipOptions?: MembershipOptions;
987
+ /**
988
+ * Additional fees.
989
+ * @maxSize 100
990
+ */
991
+ additionalFees?: AdditionalFee[];
992
+ /**
993
+ * List of validation violations raised by the Validations service plugin ([SDK](https://dev.wix.com/docs/sdk/backend-modules/ecom/service-plugins/validations/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/e-commerce/service-plugins/validations-integration-service-plugin/introduction)).
994
+ * @readonly
995
+ */
996
+ violations?: Violation[];
997
+ }
998
+ interface CalculatedLineItem {
999
+ /** Line item ID. */
1000
+ lineItemId?: string;
1001
+ /** Price breakdown for this line item. */
1002
+ pricesBreakdown?: LineItemPricesData;
1003
+ /**
1004
+ * Type of selected payment option for current item. Supported values:
1005
+ * + `"FULL_PAYMENT_ONLINE"` - The entire payment for this item will happen as part of the checkout
1006
+ * + `"FULL_PAYMENT_OFFLINE"` - The entire payment for this item will happen after the checkout
1007
+ * + `"MEMBERSHIP"` - This item cannot be paid via monetary payment options, only via non monetary option such membership. When this option is used, price must be set to 0
1008
+ * + `"DEPOSIT_ONLINE"` - Partial payment of the given item will happen as part of the checkout. Amount to be paid is defined by deposit_amount field.
1009
+ */
1010
+ paymentOption?: PaymentOptionType;
1011
+ }
1012
+ interface LineItemPricesData {
1013
+ /** Total price after discounts, tax, and modifiers. */
1014
+ totalPriceAfterTax?: MultiCurrencyPrice;
1015
+ /** Total price after discounts and modifiers, and before tax. */
1016
+ totalPriceBeforeTax?: MultiCurrencyPrice;
1017
+ /** Tax details. */
1018
+ taxDetails?: ItemTaxFullDetails;
1019
+ /** Total discount applied for the line item. */
1020
+ totalDiscount?: MultiCurrencyPrice;
1021
+ /** Catalog price after catalog-defined discount, automatic discounts, and modifiers. */
1022
+ price?: MultiCurrencyPrice;
1023
+ /**
1024
+ * Item price before automatic discounts, coupons, and global discounts; after catalog-defined discounts and modifiers.
1025
+ * Defaults to `price` when not provided.
1026
+ */
1027
+ priceBeforeDiscounts?: MultiCurrencyPrice;
1028
+ /** Total line item price after catalog-defined discounts, automatic discounts, and modifiers. */
1029
+ lineItemPrice?: MultiCurrencyPrice;
1030
+ /**
1031
+ * Item price before all discounts and modifiers.
1032
+ * Defaults to `price` when not provided.
1033
+ */
1034
+ fullPrice?: MultiCurrencyPrice;
1035
+ /** Total price of all item modifiers. */
1036
+ modifiers?: MultiCurrencyPrice;
1037
+ }
1038
+ interface ItemTaxFullDetails {
1039
+ /** Amount for which tax is calculated. */
1040
+ taxableAmount?: MultiCurrencyPrice;
1041
+ /**
1042
+ * Tax rate %, as a decimal point between 0 and 1.
1043
+ * @decimalValue options { gte:0, lte:1, maxScale:6 }
1044
+ */
1045
+ taxRate?: string;
1046
+ /** Calculated tax, based on `taxable_amount` and `tax_rate`. */
1047
+ totalTax?: MultiCurrencyPrice;
1048
+ /**
1049
+ * If breakdown exists, the sum of rates in the breakdown must equal `tax_rate`. Deprecated - use 'tax_breakdown' instead.
1050
+ * @readonly
1051
+ * @deprecated
1052
+ */
1053
+ rateBreakdown?: TaxRateBreakdown[];
1054
+ }
1055
+ interface TaxRateBreakdown {
1056
+ /**
1057
+ * Name of tax against which the calculation was performed.
1058
+ * @maxLength 100
1059
+ */
1060
+ name?: string;
1061
+ /**
1062
+ * Rate at which this tax detail was calculated.
1063
+ * @decimalValue options { gte:0, lte:1, maxScale:6 }
1064
+ */
1065
+ rate?: string;
1066
+ /** Amount of tax for this tax detail. */
1067
+ tax?: MultiCurrencyPrice;
1068
+ }
1069
+ interface PriceSummary {
1070
+ /** Subtotal of all line items, before discounts and before tax. */
1071
+ subtotal?: MultiCurrencyPrice;
1072
+ /** Total shipping price, before discounts and before tax. */
1073
+ shipping?: MultiCurrencyPrice;
1074
+ /** Total tax. */
1075
+ tax?: MultiCurrencyPrice;
1076
+ /** Total calculated discount value. */
1077
+ discount?: MultiCurrencyPrice;
1078
+ /** Total price after discounts, gift cards, and tax. */
1079
+ total?: MultiCurrencyPrice;
1080
+ /** Total additional fees price before tax. */
1081
+ additionalFees?: MultiCurrencyPrice;
1082
+ }
1083
+ interface GiftCard {
1084
+ /**
1085
+ * Gift Card ID.
1086
+ * @deprecated
1087
+ */
1088
+ id?: string;
1089
+ /** Gift card obfuscated code. */
1090
+ obfuscatedCode?: string;
1091
+ /** Gift card value. */
1092
+ amount?: MultiCurrencyPrice;
1093
+ /**
1094
+ * App ID of the gift card provider.
1095
+ * @format GUID
1096
+ */
1097
+ appId?: string;
1098
+ /**
1099
+ * External ID in the gift card provider's system.
1100
+ * Used for integration and tracking across different platforms.
1101
+ * @minLength 1
1102
+ * @maxLength 50
1103
+ */
1104
+ externalId?: string | null;
1105
+ }
1106
+ interface TaxSummary {
1107
+ /**
1108
+ * Amount for which tax is calculated, added from line items.
1109
+ * @readonly
1110
+ */
1111
+ taxableAmount?: MultiCurrencyPrice;
1112
+ /**
1113
+ * Calculated tax, added from line items.
1114
+ * @readonly
1115
+ */
1116
+ totalTax?: MultiCurrencyPrice;
1117
+ /**
1118
+ * Tax calculator that was active when the order was created.
1119
+ * @deprecated
1120
+ */
1121
+ calculationDetails?: TaxCalculationDetails;
1122
+ }
1123
+ interface TaxCalculationDetails extends TaxCalculationDetailsCalculationDetailsOneOf {
1124
+ /** Reason the manual calculation was used. */
1125
+ manualRateReason?: ManualCalculationReason;
1126
+ /** Details of the fallback rate calculation. */
1127
+ autoTaxFallbackDetails?: AutoTaxFallbackCalculationDetails;
1128
+ /** Rate calculation type. */
1129
+ rateType?: RateType;
1130
+ }
1131
+ /** @oneof */
1132
+ interface TaxCalculationDetailsCalculationDetailsOneOf {
1133
+ /** Reason the manual calculation was used. */
1134
+ manualRateReason?: ManualCalculationReason;
1135
+ /** Details of the fallback rate calculation. */
1136
+ autoTaxFallbackDetails?: AutoTaxFallbackCalculationDetails;
1137
+ }
1138
+ declare enum RateType {
1139
+ /** no tax being collected for this request due to location of purchase */
1140
+ NO_TAX_COLLECTED = "NO_TAX_COLLECTED",
1141
+ /** manual rate used for calculation */
1142
+ MANUAL_RATE = "MANUAL_RATE",
1143
+ /** autotax rate used for calculation */
1144
+ AUTO_RATE = "AUTO_RATE",
1145
+ /** fallback rate used for calculation */
1146
+ FALLBACK_RATE = "FALLBACK_RATE"
1147
+ }
1148
+ declare enum ManualCalculationReason {
1149
+ /** user set calculator in Business Manager to be Manual */
1150
+ GLOBAL_SETTING_TO_MANUAL = "GLOBAL_SETTING_TO_MANUAL",
1151
+ /** specific region is on manual even though Global setting is Auto-tax */
1152
+ REGION_SETTING_TO_MANUAL = "REGION_SETTING_TO_MANUAL"
1153
+ }
1154
+ interface AutoTaxFallbackCalculationDetails {
1155
+ /** reason for fallback */
1156
+ fallbackReason?: FallbackReason;
1157
+ /** invalid request (i.e. address), timeout, internal error, license error, and others will be encoded here */
1158
+ error?: ApplicationError;
1159
+ }
1160
+ declare enum FallbackReason {
1161
+ /** auto-tax failed to be calculated */
1162
+ AUTO_TAX_FAILED = "AUTO_TAX_FAILED",
1163
+ /** auto-tax was temporarily deactivated on a system-level */
1164
+ AUTO_TAX_DEACTIVATED = "AUTO_TAX_DEACTIVATED"
1165
+ }
1166
+ interface ApplicationError {
1167
+ /** Error code. */
1168
+ code?: string;
1169
+ /** Description of the error. */
1170
+ description?: string;
1171
+ /** Data related to the error. */
1172
+ data?: Record<string, any> | null;
1173
+ }
1174
+ interface ShippingInformation {
1175
+ /** Shipping region. */
1176
+ region?: ShippingRegion;
1177
+ /** Selected shipping option. */
1178
+ selectedCarrierServiceOption?: SelectedCarrierServiceOption;
1179
+ /** All shipping options. */
1180
+ carrierServiceOptions?: CarrierServiceOption[];
1181
+ }
1182
+ interface ShippingRegion {
1183
+ /**
1184
+ * Shipping region ID.
1185
+ * @format GUID
1186
+ * @readonly
1187
+ */
1188
+ id?: string;
1189
+ /**
1190
+ * Shipping region name.
1191
+ * @maxLength 100
1192
+ */
1193
+ name?: string;
1194
+ }
1195
+ interface SelectedCarrierServiceOption {
1196
+ /**
1197
+ * Unique identifier of selected option. For example, "usps_std_overnight".
1198
+ * @maxLength 100
1199
+ */
1200
+ code?: string;
1201
+ /**
1202
+ * Title of the option, such as USPS Standard Overnight Delivery (in the requested locale).
1203
+ * For example, "Standard" or "First-Class Package International".
1204
+ * @maxLength 250
1205
+ * @readonly
1206
+ */
1207
+ title?: string;
1208
+ /**
1209
+ * Delivery logistics.
1210
+ * @readonly
1211
+ */
1212
+ logistics?: DeliveryLogistics;
1213
+ /**
1214
+ * Shipping costs.
1215
+ * @readonly
1216
+ */
1217
+ cost?: SelectedCarrierServiceOptionPrices;
1218
+ /**
1219
+ * Were we able to find the requested shipping option, or otherwise we fallback to the default one (the first)
1220
+ * @readonly
1221
+ */
1222
+ requestedShippingOption?: boolean;
1223
+ /** Other charges */
1224
+ otherCharges?: SelectedCarrierServiceOptionOtherCharge[];
1225
+ /**
1226
+ * This carrier's unique ID
1227
+ * @format GUID
1228
+ */
1229
+ carrierId?: string | null;
1230
+ /**
1231
+ * Delivery solution allocations to different delivery carriers and delivery regions
1232
+ * @maxSize 300
1233
+ */
1234
+ deliveryAllocations?: DeliveryAllocation[];
1235
+ /** If the delivery solution is a partial and doesn't apply to all items. */
1236
+ partial?: boolean | null;
1237
+ }
1238
+ interface DeliveryLogistics {
1239
+ /**
1240
+ * Expected delivery time, in free text. For example, "3-5 business days".
1241
+ * @maxLength 500
1242
+ */
1243
+ deliveryTime?: string | null;
1244
+ /**
1245
+ * Instructions for caller, e.g for pickup: "Please deliver during opening hours, and please don't park in disabled parking spot".
1246
+ * @maxLength 1000
1247
+ */
1248
+ instructions?: string | null;
1249
+ /** Pickup details. */
1250
+ pickupDetails?: PickupDetails;
1251
+ }
1252
+ interface PickupDetails {
1253
+ /** Pickup address. */
1254
+ address?: Address;
1255
+ /**
1256
+ * Whether the pickup address is that of a business - this may effect tax calculation.
1257
+ * @deprecated
1258
+ */
1259
+ businessLocation?: boolean;
1260
+ /** Pickup method */
1261
+ pickupMethod?: PickupMethod;
1262
+ }
1263
+ declare enum PickupMethod {
1264
+ UNKNOWN_METHOD = "UNKNOWN_METHOD",
1265
+ STORE_PICKUP = "STORE_PICKUP",
1266
+ PICKUP_POINT = "PICKUP_POINT"
1267
+ }
1268
+ interface SelectedCarrierServiceOptionPrices {
1269
+ /** Total shipping price, after discount and after tax. */
1270
+ totalPriceAfterTax?: MultiCurrencyPrice;
1271
+ /** Total price of shipping after discounts (when relevant), and before tax. */
1272
+ totalPriceBeforeTax?: MultiCurrencyPrice;
1273
+ /** Tax details. */
1274
+ taxDetails?: ItemTaxFullDetails;
1275
+ /** Shipping discount before tax. */
1276
+ totalDiscount?: MultiCurrencyPrice;
1277
+ /** Shipping price before discount and before tax. */
1278
+ price?: MultiCurrencyPrice;
1279
+ }
1280
+ interface SelectedCarrierServiceOptionOtherCharge {
1281
+ /** Type of additional cost. */
1282
+ type?: ChargeType;
1283
+ /**
1284
+ * Details of the charge, such as 'Full Coverage Insurance of up to 80% of value of shipment'.
1285
+ * @maxLength 200
1286
+ */
1287
+ details?: string | null;
1288
+ /** Price of added charge. */
1289
+ cost?: SelectedCarrierServiceOptionPrices;
1290
+ }
1291
+ declare enum ChargeType {
1292
+ HANDLING_FEE = "HANDLING_FEE",
1293
+ INSURANCE = "INSURANCE"
1294
+ }
1295
+ interface DeliveryAllocation {
1296
+ /** The delivery option's carrier details, could be multiple if the delivery option is a combination of multiple carriers */
1297
+ deliveryCarrier?: Carrier;
1298
+ /** The delivery region that are relevant for this delivery solution. */
1299
+ deliveryRegion?: Region;
1300
+ /** Populated if the delivery solution is a partially supplied by this carrier. */
1301
+ applicableLineItems?: ApplicableLineItems;
1302
+ }
1303
+ interface Carrier {
1304
+ /**
1305
+ * The carrier app id
1306
+ * @format GUID
1307
+ */
1308
+ appId?: string | null;
1309
+ /**
1310
+ * Unique code that acts as an ID for a shipping rate. For example, `"usps_std_overnight"`.
1311
+ * @maxLength 250
1312
+ */
1313
+ code?: string;
1314
+ }
1315
+ interface Region {
1316
+ /**
1317
+ * The delivery region id.
1318
+ * @format GUID
1319
+ */
1320
+ id?: string | null;
1321
+ /**
1322
+ * The delivery region name.
1323
+ * @maxLength 100
1324
+ */
1325
+ name?: string | null;
1326
+ }
1327
+ interface ApplicableLineItems {
1328
+ /**
1329
+ * Line items that the delivery solution is for.
1330
+ * @maxSize 300
1331
+ * @minLength 1
1332
+ * @maxLength 100
1333
+ */
1334
+ lineItemIds?: string[];
1335
+ }
1336
+ interface CarrierServiceOption {
1337
+ /**
1338
+ * Carrier ID.
1339
+ * @format GUID
1340
+ */
1341
+ carrierId?: string;
1342
+ /** Shipping options offered by this carrier for this request. */
1343
+ shippingOptions?: ShippingOption[];
1344
+ }
1345
+ interface ShippingOption {
1346
+ /**
1347
+ * Unique code of provided shipping option like "usps_std_overnight".
1348
+ * For legacy calculators this would be the UUID of the option.
1349
+ * @maxLength 100
1350
+ */
1351
+ code?: string;
1352
+ /**
1353
+ * Title of the option, such as USPS Standard Overnight Delivery (in the requested locale).
1354
+ * For example, "Standard" or "First-Class Package International".
1355
+ * @maxLength 250
1356
+ */
1357
+ title?: string;
1358
+ /** Delivery logistics. */
1359
+ logistics?: DeliveryLogistics;
1360
+ /** Sipping price information. */
1361
+ cost?: ShippingPrice;
1362
+ /**
1363
+ * Delivery solution allocations to different delivery carriers and delivery regions
1364
+ * @maxSize 300
1365
+ */
1366
+ deliveryAllocations?: DeliveryAllocation[];
1367
+ /** If the delivery solution is a partial and doesn't apply to all items. */
1368
+ partial?: boolean | null;
1369
+ }
1370
+ interface ShippingPrice {
1371
+ /** Shipping price. */
1372
+ price?: MultiCurrencyPrice;
1373
+ /** Other costs such as insurance, handling & packaging for fragile items, etc. */
1374
+ otherCharges?: OtherCharge[];
1375
+ }
1376
+ interface OtherCharge {
1377
+ /** Type of additional cost. */
1378
+ type?: ChargeType;
1379
+ /** Price of added cost. */
1380
+ price?: MultiCurrencyPrice;
1381
+ }
1382
+ interface AppliedDiscount extends AppliedDiscountDiscountSourceOneOf {
1383
+ /** Coupon details. */
1384
+ coupon?: V1Coupon;
1385
+ /** Merchant discount. */
1386
+ merchantDiscount?: V1MerchantDiscount;
1387
+ /** Discount rule */
1388
+ discountRule?: V1DiscountRule;
1389
+ /** Discount type. */
1390
+ discountType?: AppliedDiscountDiscountType;
1391
+ /**
1392
+ * IDs of line items the discount applies to.
1393
+ * @format GUID
1394
+ * @deprecated IDs of line items the discount applies to.
1395
+ * @replacedBy line_items_discounts
1396
+ * @targetRemovalDate 2024-06-01
1397
+ */
1398
+ lineItemIds?: string[];
1399
+ }
1400
+ /** @oneof */
1401
+ interface AppliedDiscountDiscountSourceOneOf {
1402
+ /** Coupon details. */
1403
+ coupon?: V1Coupon;
1404
+ /** Merchant discount. */
1405
+ merchantDiscount?: V1MerchantDiscount;
1406
+ /** Discount rule */
1407
+ discountRule?: V1DiscountRule;
1408
+ }
1409
+ declare enum AppliedDiscountDiscountType {
1410
+ GLOBAL = "GLOBAL",
1411
+ SPECIFIC_ITEMS = "SPECIFIC_ITEMS",
1412
+ SHIPPING = "SHIPPING"
1413
+ }
1414
+ /** Coupon */
1415
+ interface V1Coupon {
1416
+ /** Coupon ID. */
1417
+ id?: string;
1418
+ /** Coupon code. */
1419
+ code?: string;
1420
+ /** Coupon value. */
1421
+ amount?: MultiCurrencyPrice;
1422
+ /** Coupon name. */
1423
+ name?: string;
1424
+ }
1425
+ interface V1MerchantDiscount {
1426
+ /** Discount value. */
1427
+ amount?: MultiCurrencyPrice;
1428
+ /**
1429
+ * Discount Percentage. Will be calculated from items price before other discounts.
1430
+ * @min 1
1431
+ * @max 100
1432
+ */
1433
+ percentage?: number | null;
1434
+ }
1435
+ interface V1DiscountRule {
1436
+ /**
1437
+ * Discount rule ID
1438
+ * @format GUID
1439
+ */
1440
+ id?: string;
1441
+ /** Discount rule name */
1442
+ name?: V1DiscountRuleName;
1443
+ /** Discount value. */
1444
+ amount?: MultiCurrencyPrice;
1445
+ }
1446
+ interface V1DiscountRuleName {
1447
+ /**
1448
+ * Original discount rule name (in site's default language).
1449
+ * @minLength 1
1450
+ * @maxLength 256
1451
+ */
1452
+ original?: string;
1453
+ /**
1454
+ * Translated discount rule name according to buyer language. Defaults to `original` when not provided.
1455
+ * @minLength 1
1456
+ * @maxLength 500
1457
+ */
1458
+ translated?: string | null;
1459
+ }
1460
+ interface CalculationErrors extends CalculationErrorsShippingCalculationErrorOneOf {
1461
+ /** General shipping calculation error. */
1462
+ generalShippingCalculationError?: Details;
1463
+ /** Carrier errors. */
1464
+ carrierErrors?: CarrierErrors;
1465
+ /** Tax calculation error. */
1466
+ taxCalculationError?: Details;
1467
+ /** Coupon calculation error. */
1468
+ couponCalculationError?: Details;
1469
+ /** Gift card calculation error. */
1470
+ giftCardCalculationError?: Details;
1471
+ /** Order validation errors. */
1472
+ orderValidationErrors?: ApplicationError[];
1473
+ /**
1474
+ * Membership payment methods calculation errors
1475
+ * For example, will indicate that a line item that must be paid with membership payment doesn't have one or selected memberships are invalid
1476
+ */
1477
+ membershipError?: Details;
1478
+ /** Discount Rule calculation error. */
1479
+ discountsCalculationError?: Details;
1480
+ }
1481
+ /** @oneof */
1482
+ interface CalculationErrorsShippingCalculationErrorOneOf {
1483
+ /** General shipping calculation error. */
1484
+ generalShippingCalculationError?: Details;
1485
+ /** Carrier errors. */
1486
+ carrierErrors?: CarrierErrors;
1487
+ }
1488
+ interface Details extends DetailsKindOneOf {
1489
+ applicationError?: ApplicationError;
1490
+ validationError?: ValidationError;
1491
+ systemError?: SystemError;
1492
+ /**
1493
+ * deprecated in API's - to enable migration from rendering arbitrary tracing to rest response
1494
+ * @deprecated
1495
+ */
1496
+ tracing?: Record<string, string>;
1497
+ }
1498
+ /** @oneof */
1499
+ interface DetailsKindOneOf {
1500
+ applicationError?: ApplicationError;
1501
+ validationError?: ValidationError;
1502
+ systemError?: SystemError;
1503
+ }
1504
+ /**
1505
+ * example result:
1506
+ * {
1507
+ * "fieldViolations": [
1508
+ * {
1509
+ * "field": "fieldA",
1510
+ * "description": "invalid music note. supported notes: [do,re,mi,fa,sol,la,ti]",
1511
+ * "violatedRule": "OTHER",
1512
+ * "ruleName": "INVALID_NOTE",
1513
+ * "data": {
1514
+ * "value": "FI"
1515
+ * }
1516
+ * },
1517
+ * {
1518
+ * "field": "fieldB",
1519
+ * "description": "field value out of range. supported range: [0-20]",
1520
+ * "violatedRule": "MAX",
1521
+ * "data": {
1522
+ * "threshold": 20
1523
+ * }
1524
+ * },
1525
+ * {
1526
+ * "field": "fieldC",
1527
+ * "description": "invalid phone number. provide a valid phone number of size: [7-12], supported characters: [0-9, +, -, (, )]",
1528
+ * "violatedRule": "FORMAT",
1529
+ * "data": {
1530
+ * "type": "PHONE"
1531
+ * }
1532
+ * }
1533
+ * ]
1534
+ * }
1535
+ */
1536
+ interface ValidationError {
1537
+ fieldViolations?: FieldViolation[];
1538
+ }
1539
+ declare enum RuleType {
1540
+ VALIDATION = "VALIDATION",
1541
+ OTHER = "OTHER",
1542
+ MAX = "MAX",
1543
+ MIN = "MIN",
1544
+ MAX_LENGTH = "MAX_LENGTH",
1545
+ MIN_LENGTH = "MIN_LENGTH",
1546
+ MAX_SIZE = "MAX_SIZE",
1547
+ MIN_SIZE = "MIN_SIZE",
1548
+ FORMAT = "FORMAT",
1549
+ DECIMAL_LTE = "DECIMAL_LTE",
1550
+ DECIMAL_GTE = "DECIMAL_GTE",
1551
+ DECIMAL_LT = "DECIMAL_LT",
1552
+ DECIMAL_GT = "DECIMAL_GT",
1553
+ DECIMAL_MAX_SCALE = "DECIMAL_MAX_SCALE",
1554
+ INVALID_ENUM_VALUE = "INVALID_ENUM_VALUE",
1555
+ REQUIRED_FIELD = "REQUIRED_FIELD",
1556
+ FIELD_NOT_ALLOWED = "FIELD_NOT_ALLOWED",
1557
+ ONE_OF_ALIGNMENT = "ONE_OF_ALIGNMENT",
1558
+ EXACT_LENGTH = "EXACT_LENGTH",
1559
+ EXACT_SIZE = "EXACT_SIZE",
1560
+ REQUIRED_ONE_OF_FIELD = "REQUIRED_ONE_OF_FIELD"
1561
+ }
1562
+ interface FieldViolation {
1563
+ field?: string;
1564
+ description?: string;
1565
+ violatedRule?: RuleType;
1566
+ /** applicable when violated_rule=OTHER */
1567
+ ruleName?: string | null;
1568
+ data?: Record<string, any> | null;
1569
+ }
1570
+ interface SystemError {
1571
+ /** Error code. */
1572
+ errorCode?: string | null;
1573
+ }
1574
+ interface CarrierErrors {
1575
+ /** Carrier errors. */
1576
+ errors?: CarrierError[];
1577
+ }
1578
+ interface CarrierError {
1579
+ /** Carrier ID. */
1580
+ carrierId?: string;
1581
+ /** Error details. */
1582
+ error?: Details;
1583
+ }
1584
+ interface MembershipOptions {
1585
+ /**
1586
+ * List of payment options that can be used.
1587
+ * @maxSize 300
1588
+ */
1589
+ eligibleMemberships?: Membership[];
1590
+ /**
1591
+ * List of payment options that are owned by the member, but cannot be used due to reason provided.
1592
+ * @maxSize 300
1593
+ */
1594
+ invalidMemberships?: InvalidMembership[];
1595
+ /**
1596
+ * The selected membership payment options and which line items they apply to.
1597
+ * @maxSize 300
1598
+ */
1599
+ selectedMemberships?: HostSelectedMembership[];
1600
+ }
1601
+ interface Membership {
1602
+ /**
1603
+ * Membership ID.
1604
+ * @minLength 1
1605
+ * @maxLength 100
1606
+ */
1607
+ id?: string;
1608
+ /**
1609
+ * ID of the application providing this payment option.
1610
+ * @format GUID
1611
+ */
1612
+ appId?: string;
1613
+ /** The name of this membership. */
1614
+ name?: MembershipName;
1615
+ /**
1616
+ * Line item IDs which are "paid" for by this membership.
1617
+ * @minSize 1
1618
+ * @maxSize 300
1619
+ * @minLength 1
1620
+ * @maxLength 100
1621
+ */
1622
+ lineItemIds?: string[];
1623
+ /** Optional - For a membership that has limited credits, information about credit usage. */
1624
+ credits?: MembershipPaymentCredits;
1625
+ /** Optional - TMembership expiry date. */
1626
+ expirationDate?: Date | null;
1627
+ /** Additional data about this membership. */
1628
+ additionalData?: Record<string, any> | null;
1629
+ }
1630
+ interface MembershipName {
1631
+ /**
1632
+ * Membership name.
1633
+ * @maxLength 100
1634
+ */
1635
+ original?: string;
1636
+ /**
1637
+ * Translated membership name. Defaults to `original` when not provided.
1638
+ * @maxLength 100
1639
+ */
1640
+ translated?: string | null;
1641
+ }
1642
+ interface MembershipPaymentCredits {
1643
+ /**
1644
+ * Membership's total amount of credits.
1645
+ * @min 1
1646
+ */
1647
+ total?: number;
1648
+ /** Membership's remaining amount of credits. */
1649
+ remaining?: number;
1650
+ }
1651
+ interface InvalidMembership {
1652
+ /** Membership details. */
1653
+ membership?: Membership;
1654
+ /**
1655
+ * Reason why this membership is invalid and cannot be used.
1656
+ * @minLength 1
1657
+ * @maxLength 100
1658
+ */
1659
+ reason?: string;
1660
+ }
1661
+ interface AdditionalFee {
1662
+ /**
1663
+ * Additional fee's unique code (or ID) for future processing.
1664
+ * @minLength 1
1665
+ * @maxLength 100
1666
+ */
1667
+ code?: string | null;
1668
+ /**
1669
+ * Translated additional fee's name.
1670
+ * @minLength 1
1671
+ * @maxLength 50
1672
+ */
1673
+ name?: string;
1674
+ /** Additional fee's price. */
1675
+ price?: MultiCurrencyPrice;
1676
+ /** Tax details. */
1677
+ taxDetails?: ItemTaxFullDetails;
1678
+ /**
1679
+ * Provider's app id.
1680
+ * @minLength 1
1681
+ * @maxLength 100
1682
+ */
1683
+ providerAppId?: string | null;
1684
+ /** Additional fee's price before tax. */
1685
+ priceBeforeTax?: MultiCurrencyPrice;
1686
+ /** Additional fee's price after tax. */
1687
+ priceAfterTax?: MultiCurrencyPrice;
1688
+ /**
1689
+ * Optional - Line items associated with this additional fee.
1690
+ * If no `lineItemIds` are provided, the fee will be associated with the whole cart/checkout/order.
1691
+ * @format GUID
1692
+ */
1693
+ lineItemIds?: string[];
1694
+ /** the source the additional fee was added from */
1695
+ source?: AdditionalFeeSource;
1696
+ }
1697
+ declare enum AdditionalFeeSource {
1698
+ UNKNOWN_ADDITIONAL_FEE_SOURCE = "UNKNOWN_ADDITIONAL_FEE_SOURCE",
1699
+ /** The additional fee was added by an additional fee service plugin */
1700
+ SERVICE_PLUGIN = "SERVICE_PLUGIN",
1701
+ /** The additional fee was added on the item either via the catalog or on custom line item */
1702
+ ITEM = "ITEM",
1703
+ /** The additional fee was added manually on the request */
1704
+ MANUAL = "MANUAL"
1705
+ }
1706
+ interface Violation {
1707
+ /** Severity of the violation. The violations are shown on the cart and checkout pages. A warning is displayed as yellow, and allows a site visitor to proceed with caution. An error is displayed as red, and doesn't allow a site visitor to proceed with the eCommerce flow. */
1708
+ severity?: Severity;
1709
+ /** Target location on a checkout or cart page where the violation will be displayed. */
1710
+ target?: Target;
1711
+ /**
1712
+ * Violation description. Can include rich text. Only HTTP or HTTPS links in the following format are allowed: `<a href="https://www.wix.com">Click me</a>`.
1713
+ * @minLength 1
1714
+ * @maxLength 1000
1715
+ */
1716
+ description?: string | null;
1717
+ }
1718
+ declare enum Severity {
1719
+ /** The user is allowed to move forward in the flow. */
1720
+ WARNING = "WARNING",
1721
+ /**
1722
+ * The user is blocked from moving forward in the flow.
1723
+ * For example, if callerContext is CART - moving to checkout is blocked. if callerContext is CHECKOUT, placing an order is blocked.
1724
+ */
1725
+ ERROR = "ERROR"
1726
+ }
1727
+ interface Target extends TargetTargetTypeOneOf {
1728
+ /** General (other) violation. */
1729
+ other?: Other;
1730
+ /** Specific line item violation. */
1731
+ lineItem?: TargetLineItem;
1732
+ }
1733
+ /** @oneof */
1734
+ interface TargetTargetTypeOneOf {
1735
+ /** General (other) violation. */
1736
+ other?: Other;
1737
+ /** Specific line item violation. */
1738
+ lineItem?: TargetLineItem;
1739
+ }
1740
+ /** Available locations on the webpage */
1741
+ declare enum NameInOther {
1742
+ /** Default location, in case no specific location is specified. */
1743
+ OTHER_DEFAULT = "OTHER_DEFAULT"
1744
+ }
1745
+ /** Available locations on the line item */
1746
+ declare enum NameInLineItem {
1747
+ /** Default location, in case no specific location is specified. */
1748
+ LINE_ITEM_DEFAULT = "LINE_ITEM_DEFAULT"
1749
+ }
1750
+ /** General (other) violation. */
1751
+ interface Other {
1752
+ /** Location on a checkout or a cart page where a general (other) violation will be displayed. */
1753
+ name?: NameInOther;
1754
+ }
1755
+ /** Specific line item violation. */
1756
+ interface TargetLineItem {
1757
+ /** Location on a checkout or a cart page where the specific line item violation will be displayed. */
1758
+ name?: NameInLineItem;
1759
+ /** ID of the line item containing the violation. */
1760
+ id?: string | null;
1761
+ }
1762
+ interface RemoveLineItemsResponse {
1763
+ /** Updated cart. */
1764
+ cart?: Cart;
1765
+ }
1766
+ declare enum ChannelType {
1767
+ /** Unspecified sales channel. This value is not supported. */
1768
+ UNSPECIFIED = "UNSPECIFIED",
1769
+ /** A web client. */
1770
+ WEB = "WEB",
1771
+ /** [Point of sale solutions](https://support.wix.com/en/wix-mobile-pos-2196395). */
1772
+ POS = "POS",
1773
+ /** [eBay shop](https://support.wix.com/en/article/wix-stores-connecting-and-setting-up-an-ebay-shop). */
1774
+ EBAY = "EBAY",
1775
+ /** [Amazon shop](https://support.wix.com/en/article/wix-stores-connecting-and-setting-up-an-amazon-shop). */
1776
+ AMAZON = "AMAZON",
1777
+ /** Other sales platform. */
1778
+ OTHER_PLATFORM = "OTHER_PLATFORM",
1779
+ /** [Wix Owner app](https://support.wix.com/article/wix-owner-app-an-overview). */
1780
+ WIX_APP_STORE = "WIX_APP_STORE",
1781
+ /** Wix Invoices app in [your dashboard](https://www.wix.com/my-account/site-selector/?buttonText=Select%20Site&title=Select%20a%20Site&autoSelectOnSingleSite=true&actionUrl=https:%2F%2Fwww.wix.com%2Fdashboard%2F%7B%7BmetaSiteId%7D%7D%2Finvoices/settings/general-settings) */
1782
+ WIX_INVOICES = "WIX_INVOICES",
1783
+ /** Wix merchant backoffice. */
1784
+ BACKOFFICE_MERCHANT = "BACKOFFICE_MERCHANT",
1785
+ /** Wish sales channel. */
1786
+ WISH = "WISH",
1787
+ /** [ClassPass sales channel](https://support.wix.com/en/article/wix-bookings-letting-clients-book-your-services-with-classpass). */
1788
+ CLASS_PASS = "CLASS_PASS",
1789
+ /** Global-E sales channel. */
1790
+ GLOBAL_E = "GLOBAL_E",
1791
+ /** [Facebook shop](https://support.wix.com/en/article/wix-stores-changes-to-facebook-shops). */
1792
+ FACEBOOK = "FACEBOOK",
1793
+ /** [Etsy sales channel](https://support.wix.com/en/article/wix-stores-request-adding-etsy-as-a-sales-channel). */
1794
+ ETSY = "ETSY",
1795
+ /** [TikTok sales channel](https://support.wix.com/en/article/wix-stores-request-adding-tiktok-as-a-sales-channel). */
1796
+ TIKTOK = "TIKTOK",
1797
+ /** [Faire marketplace integration](https://support.wix.com/en/article/wix-stores-creating-a-faire-store-using-the-faire-integration-app). */
1798
+ FAIRE_COM = "FAIRE_COM"
1799
+ }
1800
+ interface CreateCheckoutResponse {
1801
+ /** The newly created checkout's ID. */
1802
+ checkoutId?: string;
1803
+ }
1804
+ interface RemoveCouponResponse {
1805
+ /** Updated cart. */
1806
+ cart?: Cart;
1807
+ }
1808
+ interface LineItemQuantityUpdate {
1809
+ /**
1810
+ * *Required.** Line item ID.
1811
+ * @format GUID
1812
+ */
1813
+ id?: string;
1814
+ /**
1815
+ * *Required.** New quantity. Number must be 1 or higher.
1816
+ * @min 1
1817
+ * @max 100000
1818
+ */
1819
+ quantity?: number;
1820
+ }
1821
+ interface UpdateLineItemsQuantityResponse {
1822
+ /** Updated cart. */
1823
+ cart?: Cart;
1824
+ }
1825
+ interface DeleteCartResponse {
1826
+ }
1827
+ interface CreateCartRequest {
1828
+ /** Cart info. */
1829
+ cartInfo?: Cart;
1830
+ /** Code of an existing coupon to apply to cart. For more information, see the Coupons API. */
1831
+ couponCode?: string | null;
1832
+ /**
1833
+ * Merchant discounts to apply to specific line items. If no `lineItemIds` are passed, the discount will be applied to the whole cart.
1834
+ * @maxSize 100
1835
+ */
1836
+ merchantDiscounts?: MerchantDiscountInput[];
1837
+ /**
1838
+ * Catalog line items.
1839
+ * @maxSize 300
1840
+ */
1841
+ lineItems?: LineItem[];
1842
+ /**
1843
+ * Custom line items. Custom line items don't trigger the Catalog service plugin.
1844
+ *
1845
+ * To access and manage custom line items, your app must have the permission scope named "Manage eCommerce - Admin Permissions".
1846
+ * Learn more about [permission scopes](https://dev.wix.com/docs/build-apps/develop-your-app/access/authorization/about-permissions).
1847
+ * @maxSize 300
1848
+ */
1849
+ customLineItems?: CustomLineItem[];
1850
+ }
1851
+ interface CreateCartResponse {
1852
+ /** Cart. */
1853
+ cart?: Cart;
1854
+ }
1855
+ interface GetCartRequest {
1856
+ /**
1857
+ * Cart ID.
1858
+ * @format GUID
1859
+ */
1860
+ id: string;
1861
+ }
1862
+ interface GetCartResponse {
1863
+ /** Retrieved cart. */
1864
+ cart?: Cart;
1865
+ }
1866
+ interface GetCartByCheckoutIdRequest {
1867
+ /**
1868
+ * Checkout ID.
1869
+ * @format GUID
1870
+ */
1871
+ id: string;
1872
+ }
1873
+ interface GetCartByCheckoutIdResponse {
1874
+ /** Retrieved cart. */
1875
+ cart?: Cart;
1876
+ }
1877
+ interface AddToCartRequest {
1878
+ /**
1879
+ * Cart ID.
1880
+ * @format GUID
1881
+ */
1882
+ id: string;
1883
+ /**
1884
+ * Catalog line items.
1885
+ * @maxSize 100
1886
+ */
1887
+ lineItems?: LineItem[];
1888
+ /**
1889
+ * Custom line items. Custom line items don't trigger the Catalog service plugin.
1890
+ *
1891
+ * To access and manage custom line items, your app must have the permission scope named "Manage eCommerce - Admin Permissions".
1892
+ * Learn more about [permission scopes](https://dev.wix.com/docs/build-apps/develop-your-app/access/authorization/about-permissions).
1893
+ * @maxSize 100
1894
+ */
1895
+ customLineItems?: CustomLineItem[];
1896
+ /**
1897
+ * The business location ID associated with the cart.
1898
+ *
1899
+ * The `businessLocationId` field cannot be passed if one already exists on the cart. To update a cart's business location ID, use the Update Cart method.
1900
+ * To learn more, see the Locations API.
1901
+ * @format GUID
1902
+ */
1903
+ businessLocationId?: string | null;
1904
+ }
1905
+ interface RemoveLineItemsRequest {
1906
+ /**
1907
+ * Cart ID.
1908
+ * @format GUID
1909
+ */
1910
+ id: string;
1911
+ /**
1912
+ * Line item IDs to remove from cart.
1913
+ * @format GUID
1914
+ * @minSize 1
1915
+ * @maxSize 100
1916
+ */
1917
+ lineItemIds: string[];
1918
+ }
1919
+ interface CreateCheckoutRequest {
1920
+ /**
1921
+ * Cart ID.
1922
+ * @format GUID
1923
+ */
1924
+ id: string;
1925
+ /** __Required.__ Sales channel type. */
1926
+ channelType?: ChannelType;
1927
+ /** Shipping address. Used for calculating tax and shipping (when applicable). */
1928
+ shippingAddress?: Address;
1929
+ /** Billing address. Used for calculating tax if all the items in the cart are not shippable. */
1930
+ billingAddress?: Address;
1931
+ /** Selected shipping option. */
1932
+ selectedShippingOption?: SelectedShippingOption;
1933
+ /**
1934
+ * Required when setting a billing or shipping address if the site visitor isn't logged in.
1935
+ * @format EMAIL
1936
+ */
1937
+ email?: string | null;
1938
+ }
1939
+ interface RemoveCouponRequest {
1940
+ /**
1941
+ * Cart ID.
1942
+ * @format GUID
1943
+ */
1944
+ id: string;
1945
+ }
1946
+ interface UpdateLineItemsQuantityRequest {
1947
+ /**
1948
+ * Cart ID.
1949
+ * @format GUID
1950
+ */
1951
+ id: string;
1952
+ /**
1953
+ * Line item IDs and their new quantity.
1954
+ * @minSize 1
1955
+ * @maxSize 100
1956
+ */
1957
+ lineItems: LineItemQuantityUpdate[];
1958
+ }
1959
+ interface EstimateTotalsRequest {
1960
+ /**
1961
+ * Cart ID.
1962
+ * @format GUID
1963
+ */
1964
+ id: string;
1965
+ /** Selected shipping option. */
1966
+ selectedShippingOption?: SelectedShippingOption;
1967
+ /** Shipping address. Used for calculating tax and shipping (when applicable). */
1968
+ shippingAddress?: Address;
1969
+ /** Billing address. Used for calculating tax if all the items in the cart are not shippable. */
1970
+ billingAddress?: Address;
1971
+ /** The selected membership payment options and which line items they apply to. */
1972
+ selectedMemberships?: SelectedMemberships;
1973
+ /**
1974
+ * Whether to calculate tax in the calculation request.
1975
+ *
1976
+ * Default: `true`
1977
+ */
1978
+ calculateTax?: boolean | null;
1979
+ /**
1980
+ * Whether to calculate shipping in the calculation request.
1981
+ *
1982
+ * Default: `true`
1983
+ */
1984
+ calculateShipping?: boolean | null;
1985
+ }
1986
+ interface DeleteCartRequest {
1987
+ /**
1988
+ * ID of the cart to delete.
1989
+ * @format GUID
1990
+ */
1991
+ id: string;
1992
+ }
1993
+ interface RemoveBusinessLocationRequest {
1994
+ /**
1995
+ * Cart ID.
1996
+ * @format GUID
1997
+ */
1998
+ id: string;
1999
+ }
2000
+ interface RemoveBusinessLocationResponse {
2001
+ /** Updated cart. */
2002
+ cart?: Cart;
2003
+ }
2004
+
2005
+ type __PublicMethodMetaInfo<K = string, M = unknown, T = unknown, S = unknown, Q = unknown, R = unknown> = {
2006
+ getUrl: (context: any) => string;
2007
+ httpMethod: K;
2008
+ path: string;
2009
+ pathParams: M;
2010
+ __requestType: T;
2011
+ __originalRequestType: S;
2012
+ __responseType: Q;
2013
+ __originalResponseType: R;
2014
+ };
2015
+ declare function createCart(): __PublicMethodMetaInfo<'POST', {}, CreateCartRequest$1, CreateCartRequest, CreateCartResponse$1, CreateCartResponse>;
2016
+ declare function updateCart(): __PublicMethodMetaInfo<'PATCH', {
2017
+ cartInfoId: string;
2018
+ }, UpdateCartRequest$1, UpdateCartRequest, UpdateCartResponse$1, UpdateCartResponse>;
2019
+ declare function getCart(): __PublicMethodMetaInfo<'GET', {
2020
+ id: string;
2021
+ }, GetCartRequest$1, GetCartRequest, GetCartResponse$1, GetCartResponse>;
2022
+ declare function getCartByCheckoutId(): __PublicMethodMetaInfo<'GET', {
2023
+ id: string;
2024
+ }, GetCartByCheckoutIdRequest$1, GetCartByCheckoutIdRequest, GetCartByCheckoutIdResponse$1, GetCartByCheckoutIdResponse>;
2025
+ declare function addToCart(): __PublicMethodMetaInfo<'POST', {
2026
+ id: string;
2027
+ }, AddToCartRequest$1, AddToCartRequest, AddToCartResponse$1, AddToCartResponse>;
2028
+ declare function removeLineItems(): __PublicMethodMetaInfo<'POST', {
2029
+ id: string;
2030
+ }, RemoveLineItemsRequest$1, RemoveLineItemsRequest, RemoveLineItemsResponse$1, RemoveLineItemsResponse>;
2031
+ declare function createCheckout(): __PublicMethodMetaInfo<'POST', {
2032
+ id: string;
2033
+ }, CreateCheckoutRequest$1, CreateCheckoutRequest, CreateCheckoutResponse$1, CreateCheckoutResponse>;
2034
+ declare function removeCoupon(): __PublicMethodMetaInfo<'POST', {
2035
+ id: string;
2036
+ }, RemoveCouponRequest$1, RemoveCouponRequest, RemoveCouponResponse$1, RemoveCouponResponse>;
2037
+ declare function updateLineItemsQuantity(): __PublicMethodMetaInfo<'POST', {
2038
+ id: string;
2039
+ }, UpdateLineItemsQuantityRequest$1, UpdateLineItemsQuantityRequest, UpdateLineItemsQuantityResponse$1, UpdateLineItemsQuantityResponse>;
2040
+ declare function estimateTotals(): __PublicMethodMetaInfo<'POST', {
2041
+ id: string;
2042
+ }, EstimateTotalsRequest$1, EstimateTotalsRequest, EstimateTotalsResponse$1, EstimateTotalsResponse>;
2043
+ declare function deleteCart(): __PublicMethodMetaInfo<'DELETE', {
2044
+ id: string;
2045
+ }, DeleteCartRequest$1, DeleteCartRequest, DeleteCartResponse$1, DeleteCartResponse>;
2046
+ declare function removeBusinessLocation(): __PublicMethodMetaInfo<'POST', {
2047
+ id: string;
2048
+ }, RemoveBusinessLocationRequest$1, RemoveBusinessLocationRequest, RemoveBusinessLocationResponse$1, RemoveBusinessLocationResponse>;
2049
+
2050
+ export { type __PublicMethodMetaInfo, addToCart, createCart, createCheckout, deleteCart, estimateTotals, getCart, getCartByCheckoutId, removeBusinessLocation, removeCoupon, removeLineItems, updateCart, updateLineItemsQuantity };