@wix/auto_sdk_ecom_checkout 1.0.17 → 1.0.19

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/index.d.ts +1 -0
  2. package/build/cjs/index.js +18 -0
  3. package/build/cjs/index.js.map +1 -0
  4. package/build/cjs/index.typings.d.ts +1 -0
  5. package/build/cjs/index.typings.js +18 -0
  6. package/build/cjs/index.typings.js.map +1 -0
  7. package/build/cjs/meta.d.ts +1 -0
  8. package/build/cjs/meta.js +18 -0
  9. package/build/cjs/meta.js.map +1 -0
  10. package/build/cjs/src/ecom-v1-checkout-checkout.context.d.ts +34 -0
  11. package/build/cjs/src/ecom-v1-checkout-checkout.context.js +77 -0
  12. package/build/cjs/src/ecom-v1-checkout-checkout.context.js.map +1 -0
  13. package/build/cjs/src/ecom-v1-checkout-checkout.http.d.ts +122 -0
  14. package/build/cjs/src/ecom-v1-checkout-checkout.http.js +1338 -0
  15. package/build/cjs/src/ecom-v1-checkout-checkout.http.js.map +1 -0
  16. package/build/cjs/src/ecom-v1-checkout-checkout.meta.d.ts +59 -0
  17. package/build/cjs/src/ecom-v1-checkout-checkout.meta.js +351 -0
  18. package/build/cjs/src/ecom-v1-checkout-checkout.meta.js.map +1 -0
  19. package/build/cjs/src/ecom-v1-checkout-checkout.public.d.ts +186 -0
  20. package/build/cjs/src/ecom-v1-checkout-checkout.public.js +358 -0
  21. package/build/cjs/src/ecom-v1-checkout-checkout.public.js.map +1 -0
  22. package/build/{ecom-v1-checkout-checkout.universal-BV8QOlPP.d.mts → cjs/src/ecom-v1-checkout-checkout.types.d.ts} +390 -666
  23. package/build/cjs/src/ecom-v1-checkout-checkout.types.js +303 -0
  24. package/build/cjs/src/ecom-v1-checkout-checkout.types.js.map +1 -0
  25. package/build/{internal/ecom-v1-checkout-checkout.universal-DGEClxWR.d.mts → cjs/src/ecom-v1-checkout-checkout.universal.d.ts} +749 -455
  26. package/build/cjs/src/ecom-v1-checkout-checkout.universal.js +1561 -0
  27. package/build/cjs/src/ecom-v1-checkout-checkout.universal.js.map +1 -0
  28. package/build/es/index.d.ts +1 -0
  29. package/build/es/index.js +2 -0
  30. package/build/es/index.js.map +1 -0
  31. package/build/es/index.typings.d.ts +1 -0
  32. package/build/es/index.typings.js +2 -0
  33. package/build/es/index.typings.js.map +1 -0
  34. package/build/es/meta.d.ts +1 -0
  35. package/build/es/meta.js +2 -0
  36. package/build/es/meta.js.map +1 -0
  37. package/build/es/package.json +3 -0
  38. package/build/es/src/ecom-v1-checkout-checkout.context.d.ts +34 -0
  39. package/build/es/src/ecom-v1-checkout-checkout.context.js +42 -0
  40. package/build/es/src/ecom-v1-checkout-checkout.context.js.map +1 -0
  41. package/build/es/src/ecom-v1-checkout-checkout.http.d.ts +122 -0
  42. package/build/es/src/ecom-v1-checkout-checkout.http.js +1318 -0
  43. package/build/es/src/ecom-v1-checkout-checkout.http.js.map +1 -0
  44. package/build/es/src/ecom-v1-checkout-checkout.meta.d.ts +59 -0
  45. package/build/es/src/ecom-v1-checkout-checkout.meta.js +308 -0
  46. package/build/es/src/ecom-v1-checkout-checkout.meta.js.map +1 -0
  47. package/build/es/src/ecom-v1-checkout-checkout.public.d.ts +186 -0
  48. package/build/es/src/ecom-v1-checkout-checkout.public.js +306 -0
  49. package/build/es/src/ecom-v1-checkout-checkout.public.js.map +1 -0
  50. package/build/{ecom-v1-checkout-checkout.universal-BV8QOlPP.d.ts → es/src/ecom-v1-checkout-checkout.types.d.ts} +390 -666
  51. package/build/es/src/ecom-v1-checkout-checkout.types.js +300 -0
  52. package/build/es/src/ecom-v1-checkout-checkout.types.js.map +1 -0
  53. package/build/{internal/ecom-v1-checkout-checkout.universal-DGEClxWR.d.ts → es/src/ecom-v1-checkout-checkout.universal.d.ts} +749 -455
  54. package/build/es/src/ecom-v1-checkout-checkout.universal.js +1518 -0
  55. package/build/es/src/ecom-v1-checkout-checkout.universal.js.map +1 -0
  56. package/build/internal/cjs/index.d.ts +1 -0
  57. package/build/internal/cjs/index.js +18 -0
  58. package/build/internal/cjs/index.js.map +1 -0
  59. package/build/internal/cjs/index.typings.d.ts +1 -0
  60. package/build/internal/cjs/index.typings.js +18 -0
  61. package/build/internal/cjs/index.typings.js.map +1 -0
  62. package/build/internal/cjs/meta.d.ts +1 -0
  63. package/build/internal/cjs/meta.js +18 -0
  64. package/build/internal/cjs/meta.js.map +1 -0
  65. package/build/internal/cjs/src/ecom-v1-checkout-checkout.context.d.ts +42 -0
  66. package/build/internal/cjs/src/ecom-v1-checkout-checkout.context.js +77 -0
  67. package/build/internal/cjs/src/ecom-v1-checkout-checkout.context.js.map +1 -0
  68. package/build/internal/cjs/src/ecom-v1-checkout-checkout.http.d.ts +122 -0
  69. package/build/internal/cjs/src/ecom-v1-checkout-checkout.http.js +1338 -0
  70. package/build/internal/cjs/src/ecom-v1-checkout-checkout.http.js.map +1 -0
  71. package/build/internal/cjs/src/ecom-v1-checkout-checkout.meta.d.ts +59 -0
  72. package/build/internal/cjs/src/ecom-v1-checkout-checkout.meta.js +351 -0
  73. package/build/internal/cjs/src/ecom-v1-checkout-checkout.meta.js.map +1 -0
  74. package/build/internal/cjs/src/ecom-v1-checkout-checkout.public.d.ts +219 -0
  75. package/build/internal/cjs/src/ecom-v1-checkout-checkout.public.js +358 -0
  76. package/build/internal/cjs/src/ecom-v1-checkout-checkout.public.js.map +1 -0
  77. package/build/internal/cjs/src/ecom-v1-checkout-checkout.types.d.ts +3418 -0
  78. package/build/internal/cjs/src/ecom-v1-checkout-checkout.types.js +303 -0
  79. package/build/internal/cjs/src/ecom-v1-checkout-checkout.types.js.map +1 -0
  80. package/build/internal/cjs/src/ecom-v1-checkout-checkout.universal.d.ts +4480 -0
  81. package/build/internal/cjs/src/ecom-v1-checkout-checkout.universal.js +1561 -0
  82. package/build/internal/cjs/src/ecom-v1-checkout-checkout.universal.js.map +1 -0
  83. package/build/internal/es/index.d.ts +1 -0
  84. package/build/internal/es/index.js +2 -0
  85. package/build/internal/es/index.js.map +1 -0
  86. package/build/internal/es/index.typings.d.ts +1 -0
  87. package/build/internal/es/index.typings.js +2 -0
  88. package/build/internal/es/index.typings.js.map +1 -0
  89. package/build/internal/es/meta.d.ts +1 -0
  90. package/build/internal/es/meta.js +2 -0
  91. package/build/internal/es/meta.js.map +1 -0
  92. package/build/internal/es/src/ecom-v1-checkout-checkout.context.d.ts +42 -0
  93. package/build/internal/es/src/ecom-v1-checkout-checkout.context.js +42 -0
  94. package/build/internal/es/src/ecom-v1-checkout-checkout.context.js.map +1 -0
  95. package/build/internal/es/src/ecom-v1-checkout-checkout.http.d.ts +122 -0
  96. package/build/internal/es/src/ecom-v1-checkout-checkout.http.js +1318 -0
  97. package/build/internal/es/src/ecom-v1-checkout-checkout.http.js.map +1 -0
  98. package/build/internal/es/src/ecom-v1-checkout-checkout.meta.d.ts +59 -0
  99. package/build/internal/es/src/ecom-v1-checkout-checkout.meta.js +308 -0
  100. package/build/internal/es/src/ecom-v1-checkout-checkout.meta.js.map +1 -0
  101. package/build/internal/es/src/ecom-v1-checkout-checkout.public.d.ts +219 -0
  102. package/build/internal/es/src/ecom-v1-checkout-checkout.public.js +306 -0
  103. package/build/internal/es/src/ecom-v1-checkout-checkout.public.js.map +1 -0
  104. package/build/internal/es/src/ecom-v1-checkout-checkout.types.d.ts +3418 -0
  105. package/build/internal/es/src/ecom-v1-checkout-checkout.types.js +300 -0
  106. package/build/internal/es/src/ecom-v1-checkout-checkout.types.js.map +1 -0
  107. package/build/internal/es/src/ecom-v1-checkout-checkout.universal.d.ts +4480 -0
  108. package/build/internal/es/src/ecom-v1-checkout-checkout.universal.js +1518 -0
  109. package/build/internal/es/src/ecom-v1-checkout-checkout.universal.js.map +1 -0
  110. package/package.json +11 -12
  111. package/build/index.d.mts +0 -211
  112. package/build/index.d.ts +0 -211
  113. package/build/index.js +0 -2781
  114. package/build/index.js.map +0 -1
  115. package/build/index.mjs +0 -2707
  116. package/build/index.mjs.map +0 -1
  117. package/build/internal/index.d.mts +0 -252
  118. package/build/internal/index.d.ts +0 -252
  119. package/build/internal/index.js +0 -2781
  120. package/build/internal/index.js.map +0 -1
  121. package/build/internal/index.mjs +0 -2707
  122. package/build/internal/index.mjs.map +0 -1
  123. package/build/internal/meta.d.mts +0 -2345
  124. package/build/internal/meta.d.ts +0 -2345
  125. package/build/internal/meta.js +0 -1587
  126. package/build/internal/meta.js.map +0 -1
  127. package/build/internal/meta.mjs +0 -1544
  128. package/build/internal/meta.mjs.map +0 -1
  129. package/build/meta.d.mts +0 -2345
  130. package/build/meta.d.ts +0 -2345
  131. package/build/meta.js +0 -1587
  132. package/build/meta.js.map +0 -1
  133. package/build/meta.mjs +0 -1544
  134. package/build/meta.mjs.map +0 -1
@@ -0,0 +1,3418 @@
1
+ export interface Checkout {
2
+ /**
3
+ * Checkout ID.
4
+ * @format GUID
5
+ * @readonly
6
+ */
7
+ id?: string | null;
8
+ /**
9
+ * Line items.
10
+ *
11
+ * Max: 300 items
12
+ * @minSize 1
13
+ * @maxSize 300
14
+ * @readonly
15
+ */
16
+ lineItems?: LineItem[];
17
+ /** Billing information. */
18
+ billingInfo?: AddressWithContact;
19
+ /** Shipping information. */
20
+ shippingInfo?: ShippingInfo;
21
+ /**
22
+ * [Buyer note](https://support.wix.com/en/article/collecting-and-viewing-buyer-notes) left by the customer.
23
+ * @maxLength 1000
24
+ */
25
+ buyerNote?: string | null;
26
+ /** Buyer information. */
27
+ buyerInfo?: BuyerInfo;
28
+ /**
29
+ * All converted prices are displayed in this currency in three-letter [ISO-4217 alphabetic](https://en.wikipedia.org/wiki/ISO_4217#Active_codes) format.
30
+ * @readonly
31
+ * @format CURRENCY
32
+ */
33
+ conversionCurrency?: string;
34
+ /**
35
+ * Calculated price summary for the checkout.
36
+ * @readonly
37
+ */
38
+ priceSummary?: PriceSummary;
39
+ /**
40
+ * Errors when calculating totals.
41
+ * @readonly
42
+ */
43
+ calculationErrors?: CalculationErrors;
44
+ /**
45
+ * Applied gift card details.
46
+ *
47
+ * >**Note:** Gift cards are supported through the Wix UI, though the service plugin is not currently available. Learn more about [Wix Gift Cards](https://support.wix.com/en/article/setting-up-wix-gift-cards-9451439).
48
+ * @readonly
49
+ */
50
+ giftCard?: GiftCard;
51
+ /**
52
+ * Applied discounts.
53
+ * @readonly
54
+ */
55
+ appliedDiscounts?: AppliedDiscount[];
56
+ /** Custom fields. */
57
+ customFields?: CustomField[];
58
+ /**
59
+ * Weight measurement unit. Defaults to a site's weight unit.
60
+ * @readonly
61
+ */
62
+ weightUnit?: WeightUnit;
63
+ /**
64
+ * Tax summary.
65
+ * @readonly
66
+ */
67
+ taxSummary?: TaxSummary;
68
+ /**
69
+ * The currency used when submitting the order.
70
+ * @format CURRENCY
71
+ * @readonly
72
+ */
73
+ currency?: string;
74
+ /**
75
+ * Sales channel that submitted the order.
76
+ * @readonly
77
+ */
78
+ channelType?: ChannelType;
79
+ /**
80
+ * Site language in which original values are shown.
81
+ * @readonly
82
+ */
83
+ siteLanguage?: string;
84
+ /**
85
+ * Language for communication with the buyer. Defaults to the site language.
86
+ * For a site that supports multiple languages, this is the language the buyer selected.
87
+ * @readonly
88
+ */
89
+ buyerLanguage?: string;
90
+ /**
91
+ * Whether an order was successfully created from this checkout.
92
+ * For an order to be successful, it must be successfully paid for (unless the total is 0).
93
+ * @readonly
94
+ */
95
+ completed?: boolean;
96
+ /**
97
+ * Whether tax is included in line item prices.
98
+ * @readonly
99
+ */
100
+ taxIncludedInPrice?: boolean;
101
+ /**
102
+ * ID of the checkout's initiator.
103
+ * @readonly
104
+ */
105
+ createdBy?: CreatedBy;
106
+ /**
107
+ * Date and time the checkout was created.
108
+ * @readonly
109
+ */
110
+ createdDate?: Date | null;
111
+ /**
112
+ * Date and time the checkout was updated.
113
+ * @readonly
114
+ */
115
+ updatedDate?: Date | null;
116
+ /**
117
+ * Minimal amount to pay in order to place the order.
118
+ * @readonly
119
+ */
120
+ payNow?: PriceSummary;
121
+ /**
122
+ * Remaining amount for the order to be fully paid.
123
+ * @readonly
124
+ */
125
+ payLater?: PriceSummary;
126
+ /** Memberships to apply when creating the order. */
127
+ membershipOptions?: MembershipOptions;
128
+ /**
129
+ * Additional Fees.
130
+ * @maxSize 100
131
+ */
132
+ additionalFees?: AdditionalFee[];
133
+ /**
134
+ * Cart ID that this checkout was created from. Empty if this checkout wasn't created from a cart.
135
+ * @format GUID
136
+ */
137
+ cartId?: string | null;
138
+ /**
139
+ * 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)).
140
+ * @readonly
141
+ */
142
+ violations?: Violation[];
143
+ /**
144
+ * Custom field data for the checkout object.
145
+ *
146
+ * [Extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields) must be configured in the app dashboard before they can be accessed with API calls.
147
+ */
148
+ extendedFields?: ExtendedFields;
149
+ /**
150
+ * Persistent ID that correlates between the various eCommerce elements: cart, checkout, and order.
151
+ * @format GUID
152
+ * @readonly
153
+ */
154
+ purchaseFlowId?: string | null;
155
+ /**
156
+ * Additional settings for customization of the checkout process.
157
+ *
158
+ * > **Notes:**
159
+ * > * Custom settings can only be set when creating a checkout.
160
+ * > * To access and manage custom checkout page content, your app must have the permission scope named "Manage eCommerce - Admin Permissions". Learn more about [permission scopes](https://dev.wix.com/docs/build-apps/develop-your-app/access/authorization/about-permissions).
161
+ * @immutable
162
+ */
163
+ customSettings?: CustomSettings;
164
+ /**
165
+ * Reference IDs for the app and component providing custom checkout page content.
166
+ *
167
+ * To access and manage custom checkout page content, your app must have the permission scope named "Manage eCommerce - Admin Permissions".
168
+ * Learn more about [permission scopes](https://dev.wix.com/docs/build-apps/develop-your-app/access/authorization/about-permissions).
169
+ */
170
+ customContentReference?: CustomContentReference;
171
+ /**
172
+ * References to an external app and resource associated with this checkout.
173
+ * Used for integration and tracking across different platforms.
174
+ * @immutable
175
+ */
176
+ externalReference?: ExternalReference;
177
+ /**
178
+ * The business location ID associated with the checkout.
179
+ *
180
+ * To learn more, see the Locations API.
181
+ * @format GUID
182
+ */
183
+ businessLocationId?: string | null;
184
+ }
185
+ export interface LineItem {
186
+ /**
187
+ * Line item ID.
188
+ * @format GUID
189
+ * @readonly
190
+ */
191
+ id?: string | null;
192
+ /**
193
+ * Item quantity.
194
+ *
195
+ * Min: `"1"`
196
+ * Max: `"100000"`
197
+ * @min 1
198
+ * @max 100000
199
+ */
200
+ quantity?: number;
201
+ /** 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. */
202
+ catalogReference?: CatalogReference;
203
+ /**
204
+ * Item name.
205
+ * + Stores - `product.name`
206
+ * + Bookings - `service.info.name`
207
+ * + Events - `ticket.name`
208
+ * @readonly
209
+ */
210
+ productName?: ProductName;
211
+ /**
212
+ * URL to the item's page on the site.
213
+ * @readonly
214
+ */
215
+ url?: PageUrlV2;
216
+ /**
217
+ * Item price **after** catalog-defined discount and line item discounts.
218
+ * @readonly
219
+ */
220
+ price?: MultiCurrencyPrice;
221
+ /**
222
+ * Total line item price **after** catalog-defined discount and line item discounts.
223
+ * @readonly
224
+ */
225
+ lineItemPrice?: MultiCurrencyPrice;
226
+ /**
227
+ * Item price **before** catalog-defined discount. Defaults to `price` when not provided.
228
+ * @readonly
229
+ */
230
+ fullPrice?: MultiCurrencyPrice;
231
+ /**
232
+ * Item price **before** line item discounts and **after** catalog-defined discount. Defaults to `price` when not provided.
233
+ * @readonly
234
+ */
235
+ priceBeforeDiscounts?: MultiCurrencyPrice;
236
+ /**
237
+ * Total price after all discounts and tax.
238
+ * @readonly
239
+ */
240
+ totalPriceAfterTax?: MultiCurrencyPrice;
241
+ /**
242
+ * Total price after discounts, and before tax.
243
+ * @readonly
244
+ */
245
+ totalPriceBeforeTax?: MultiCurrencyPrice;
246
+ /**
247
+ * Tax details for this line item.
248
+ * @readonly
249
+ */
250
+ taxDetails?: ItemTaxFullDetails;
251
+ /**
252
+ * Discount for this line item's entire quantity.
253
+ * @readonly
254
+ */
255
+ discount?: MultiCurrencyPrice;
256
+ /**
257
+ * Line item description lines. Used for display purposes for the cart, checkout and order.
258
+ * @readonly
259
+ */
260
+ descriptionLines?: DescriptionLine[];
261
+ /**
262
+ * Line item image details.
263
+ * @readonly
264
+ */
265
+ media?: CommonImage;
266
+ /**
267
+ * Item availability details.
268
+ * @readonly
269
+ */
270
+ availability?: ItemAvailabilityInfo;
271
+ /**
272
+ * Physical properties of the item. When relevant, contains information such as SKU, item weight, and shippability.
273
+ * @readonly
274
+ */
275
+ physicalProperties?: PhysicalProperties;
276
+ /**
277
+ * Item type. Either a preset type or custom.
278
+ * @readonly
279
+ */
280
+ itemType?: ItemType;
281
+ /**
282
+ * Subscription option information.
283
+ * @readonly
284
+ */
285
+ subscriptionOptionInfo?: SubscriptionOptionInfo;
286
+ /**
287
+ * Type of selected payment option for current item.
288
+ *
289
+ * Default: `FULL_PAYMENT_ONLINE`
290
+ * @readonly
291
+ */
292
+ paymentOption?: PaymentOptionType;
293
+ /**
294
+ * Service properties. When relevant, this contains information such as date and number of participants.
295
+ * @readonly
296
+ */
297
+ serviceProperties?: ServiceProperties;
298
+ /**
299
+ * In cases where `catalogReference.catalogItemId` is NOT the actual catalog item ID, this field will return the true item's ID.
300
+ * + For example, for Wix Bookings, `catalogReference.catalogItemId` is the booking ID. Therefore this value is set to the service ID.
301
+ * + In most cases, this field has the same value as `catalogReference.catalogItemId`.
302
+ * + Used in membership validation.
303
+ * @minLength 1
304
+ * @maxLength 36
305
+ * @readonly
306
+ */
307
+ rootCatalogItemId?: string | null;
308
+ /**
309
+ * Additional description for the price. For example, when price is 0 but additional details about the actual price are needed - "Starts at $67".
310
+ * @readonly
311
+ */
312
+ priceDescription?: PriceDescription;
313
+ /**
314
+ * Partial payment to be paid upfront during the checkout. Eligible for catalog items with `lineItem.paymentOption` type `DEPOSIT_ONLINE` only.
315
+ * @readonly
316
+ */
317
+ depositAmount?: MultiCurrencyPrice;
318
+ /**
319
+ * Delivery profile ID.
320
+ * @format GUID
321
+ * @readonly
322
+ */
323
+ deliveryProfileId?: string | null;
324
+ /**
325
+ * Whether the line item is a custom line item. Custom line items don't trigger the Catalog service plugin.
326
+ * @readonly
327
+ */
328
+ customLineItem?: boolean;
329
+ /**
330
+ * Item payment policy that requires customer consent to complete purchase. The payment policy will be displayed on the checkout page.
331
+ * @minLength 1
332
+ * @maxLength 2500
333
+ * @readonly
334
+ */
335
+ consentRequiredPaymentPolicy?: string | null;
336
+ /**
337
+ * Overriding values for catalog item properties.
338
+ *
339
+ * To override catalog fields, your app must have the permission scope named "Manage eCommerce - Admin Permissions".
340
+ * Learn more about [permission scopes](https://dev.wix.com/docs/build-apps/develop-your-app/access/authorization/about-permissions).
341
+ */
342
+ catalogOverrideFields?: CatalogOverrideFields;
343
+ /**
344
+ * Whether to save the payment method on the order.
345
+ *
346
+ * Default: `false`
347
+ * @readonly
348
+ */
349
+ savePaymentMethod?: boolean;
350
+ }
351
+ /** Used for grouping line items. Sent when an item is added to a cart, checkout, or order. */
352
+ export interface CatalogReference {
353
+ /**
354
+ * ID of the item within the catalog it belongs to.
355
+ * @minLength 1
356
+ * @maxLength 36
357
+ */
358
+ catalogItemId?: string;
359
+ /**
360
+ * ID of the app providing the catalog.
361
+ *
362
+ * You can get your app's ID from its page in the [app dashboard](https://dev.wix.com/dc3/my-apps/).
363
+ *
364
+ * For items from Wix catalogs, the following values always apply:
365
+ * + Wix Stores: `"215238eb-22a5-4c36-9e7b-e7c08025e04e"`
366
+ * + Wix Bookings: `"13d21c63-b5ec-5912-8397-c3a5ddb27a97"`
367
+ * + Wix Restaurants: `"9a5d83fd-8570-482e-81ab-cfa88942ee60"`
368
+ * @minLength 1
369
+ */
370
+ appId?: string;
371
+ /**
372
+ * 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.
373
+ *
374
+ * 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)).
375
+ */
376
+ options?: Record<string, any> | null;
377
+ }
378
+ export interface ProductName {
379
+ /**
380
+ * __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).
381
+ *
382
+ * Min: 1 character.
383
+ * Max: 200 characters.
384
+ * @minLength 1
385
+ * @maxLength 200
386
+ */
387
+ original?: string;
388
+ /**
389
+ * Item name translated into the buyer's language.
390
+ *
391
+ * Min: 1 character.
392
+ * Max: 400 characters.
393
+ * Default: Same as `original`.
394
+ * @minLength 1
395
+ * @maxLength 400
396
+ */
397
+ translated?: string | null;
398
+ }
399
+ export interface PageUrlV2 {
400
+ /** The relative path for the page within the site. For example, `/product-page/a-product`. */
401
+ relativePath?: string;
402
+ /** The page's full URL. For example, `https://mysite.com/product-page/a-product`. */
403
+ url?: string | null;
404
+ }
405
+ export interface MultiCurrencyPrice {
406
+ /**
407
+ * Amount.
408
+ * @decimalValue options { gte:0, lte:1000000000000000 }
409
+ */
410
+ amount?: string;
411
+ /**
412
+ * Converted amount.
413
+ * @readonly
414
+ * @decimalValue options { gte:0, lte:1000000000000000 }
415
+ */
416
+ convertedAmount?: string;
417
+ /**
418
+ * Amount formatted with currency symbol.
419
+ * @readonly
420
+ */
421
+ formattedAmount?: string;
422
+ /**
423
+ * Converted amount formatted with currency symbol.
424
+ * @readonly
425
+ */
426
+ formattedConvertedAmount?: string;
427
+ }
428
+ export interface ItemTaxFullDetails {
429
+ /** Amount for which tax is calculated. */
430
+ taxableAmount?: MultiCurrencyPrice;
431
+ /**
432
+ * Tax rate %, as a decimal point between 0 and 1.
433
+ * @decimalValue options { gte:0, lte:1, maxScale:6 }
434
+ */
435
+ taxRate?: string;
436
+ /** Calculated tax, based on `taxable_amount` and `tax_rate`. */
437
+ totalTax?: MultiCurrencyPrice;
438
+ /**
439
+ * If breakdown exists, the sum of rates in the breakdown must equal `tax_rate`. Deprecated - use 'tax_breakdown' instead.
440
+ * @readonly
441
+ * @deprecated
442
+ */
443
+ rateBreakdown?: TaxRateBreakdown[];
444
+ }
445
+ export interface TaxRateBreakdown {
446
+ /**
447
+ * Name of tax against which the calculation was performed.
448
+ * @maxLength 100
449
+ */
450
+ name?: string;
451
+ /**
452
+ * Rate at which this tax detail was calculated.
453
+ * @decimalValue options { gte:0, lte:1, maxScale:6 }
454
+ */
455
+ rate?: string;
456
+ /** Amount of tax for this tax detail. */
457
+ tax?: MultiCurrencyPrice;
458
+ }
459
+ /**
460
+ * TaxBreakdown represents tax information for a line item.
461
+ * It holds the tax amount and the tax rate for each tax authority that apply on the line item.
462
+ */
463
+ export interface TaxBreakdown {
464
+ /**
465
+ * The name of the jurisdiction to which this tax detail applies. For example, "New York" or "Quebec".
466
+ * @maxLength 200
467
+ */
468
+ jurisdiction?: string | null;
469
+ /** The amount of this line item price that was considered nontaxable. (Decimal value) */
470
+ nonTaxableAmount?: MultiCurrencyPrice;
471
+ /**
472
+ * The rate at which this tax detail was calculated, e.g 0.1000 signifies 10% tax and 2.0000 signifies 200% tax. (Decimal value)
473
+ * @decimalValue options { gte:0, maxScale:6 }
474
+ */
475
+ rate?: string | null;
476
+ /** The amount of tax estimated for this line item. (Decimal value) */
477
+ taxAmount?: MultiCurrencyPrice;
478
+ /** The taxable amount of this line item. */
479
+ taxableAmount?: MultiCurrencyPrice;
480
+ /**
481
+ * The type of tax that was calculated. Depends on the jurisdiction's tax laws. For example, "Sales Tax", "Income Tax", "Value Added Tax", etc.
482
+ * @maxLength 200
483
+ */
484
+ taxType?: string | null;
485
+ /**
486
+ * The name of the tax against which this tax amount was calculated. For example, "NY State Sales Tax", "Quebec GST", etc.
487
+ * This name should be explicit enough to allow the merchant to understand what tax was calculated.
488
+ * @maxLength 200
489
+ */
490
+ taxName?: string | null;
491
+ /** The type of the jurisdiction in which this tax detail applies. */
492
+ jurisdictionType?: JurisdictionType;
493
+ }
494
+ /** JurisdictionType represents the type of the jurisdiction in which this tax detail applies (e.g. Country,State,County,City,Special). */
495
+ export declare enum JurisdictionType {
496
+ UNDEFINED = "UNDEFINED",
497
+ COUNTRY = "COUNTRY",
498
+ STATE = "STATE",
499
+ COUNTY = "COUNTY",
500
+ CITY = "CITY",
501
+ SPECIAL = "SPECIAL"
502
+ }
503
+ export interface DescriptionLine extends DescriptionLineValueOneOf, DescriptionLineDescriptionLineValueOneOf {
504
+ /** Description line plain text value. */
505
+ plainText?: PlainTextValue;
506
+ /** Description line color value. */
507
+ colorInfo?: Color;
508
+ /** Description line name. */
509
+ name?: DescriptionLineName;
510
+ }
511
+ /** @oneof */
512
+ export interface DescriptionLineValueOneOf {
513
+ /** Description line plain text value. */
514
+ plainText?: PlainTextValue;
515
+ /** Description line color value. */
516
+ colorInfo?: Color;
517
+ }
518
+ /** @oneof */
519
+ export interface DescriptionLineDescriptionLineValueOneOf {
520
+ }
521
+ export interface DescriptionLineName {
522
+ /**
523
+ * 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).
524
+ * @maxLength 100
525
+ */
526
+ original?: string;
527
+ /**
528
+ * Description line name translated into the buyer's language.
529
+ *
530
+ * Default: Same as `original`.
531
+ * @maxLength 200
532
+ */
533
+ translated?: string | null;
534
+ }
535
+ export interface PlainTextValue {
536
+ /**
537
+ * 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).
538
+ * @maxLength 600
539
+ */
540
+ original?: string;
541
+ /**
542
+ * Description line plain text value translated into the buyer's language.
543
+ *
544
+ * Default: Same as `original`.
545
+ * @maxLength 600
546
+ */
547
+ translated?: string | null;
548
+ }
549
+ export interface Color {
550
+ /**
551
+ * 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).
552
+ * @maxLength 500
553
+ */
554
+ original?: string;
555
+ /**
556
+ * Description line color name translated into the buyer's language.
557
+ *
558
+ * Default: Same as `original`.
559
+ * @maxLength 500
560
+ */
561
+ translated?: string | null;
562
+ /** HEX or RGB color code for display. */
563
+ code?: string | null;
564
+ }
565
+ export declare enum DescriptionLineType {
566
+ /** Unrecognized type. */
567
+ UNRECOGNISED = "UNRECOGNISED",
568
+ /** Plain text type. */
569
+ PLAIN_TEXT = "PLAIN_TEXT",
570
+ /** Color type. */
571
+ COLOR = "COLOR"
572
+ }
573
+ export interface CommonImage {
574
+ /** WixMedia image ID. */
575
+ id?: string;
576
+ /** Image URL. */
577
+ url?: string;
578
+ /**
579
+ * Original image height.
580
+ * @readonly
581
+ */
582
+ height?: number;
583
+ /**
584
+ * Original image width.
585
+ * @readonly
586
+ */
587
+ width?: number;
588
+ /** Image alt text. */
589
+ altText?: string | null;
590
+ /**
591
+ * Image filename.
592
+ * @readonly
593
+ */
594
+ filename?: string | null;
595
+ }
596
+ export interface FocalPoint {
597
+ /** X-coordinate of the focal point. */
598
+ x?: number;
599
+ /** Y-coordinate of the focal point. */
600
+ y?: number;
601
+ /** crop by height */
602
+ height?: number | null;
603
+ /** crop by width */
604
+ width?: number | null;
605
+ }
606
+ export interface ItemAvailabilityInfo {
607
+ /** Item availability status. */
608
+ status?: ItemAvailabilityStatus;
609
+ /** Quantity available. */
610
+ quantityAvailable?: number | null;
611
+ }
612
+ export declare enum ItemAvailabilityStatus {
613
+ AVAILABLE = "AVAILABLE",
614
+ /** Item does not exist. */
615
+ NOT_FOUND = "NOT_FOUND",
616
+ /** Item is not in stock. */
617
+ NOT_AVAILABLE = "NOT_AVAILABLE",
618
+ /** Available quantity is less than requested. */
619
+ PARTIALLY_AVAILABLE = "PARTIALLY_AVAILABLE"
620
+ }
621
+ export interface PhysicalProperties {
622
+ /** Line item weight. Measurement unit matches the weight unit specified in `weightUnit` in the request. */
623
+ weight?: number | null;
624
+ /**
625
+ * Stock-keeping unit. Learn more about [SKUs](https://www.wix.com/encyclopedia/definition/stock-keeping-unit-sku).
626
+ * @maxLength 40
627
+ */
628
+ sku?: string | null;
629
+ /** Whether this line item is shippable. */
630
+ shippable?: boolean;
631
+ }
632
+ export interface Scope {
633
+ /** Scope namespace (Wix Stores, Wix Bookings, Wix Events, Wix Pricing Plans) */
634
+ namespace?: string;
635
+ /** Coupon scope's applied group (e.g., event or ticket in Wix Events) */
636
+ group?: Group;
637
+ }
638
+ export interface Group {
639
+ /** Coupon scope's group (e.g., product or collection in Wix Stores). See [valid scope values](https://dev.wix.com/api/rest/coupons/coupons/valid-scope-values). */
640
+ name?: string;
641
+ /** Item ID (when the coupon scope is limited to just one item). */
642
+ entityId?: string | null;
643
+ }
644
+ export interface ItemType extends ItemTypeItemTypeDataOneOf {
645
+ /** Preset item type. */
646
+ preset?: ItemTypeItemType;
647
+ /** Custom item type. When none of the preset types are suitable, specifies the custom type. */
648
+ custom?: string;
649
+ }
650
+ /** @oneof */
651
+ export interface ItemTypeItemTypeDataOneOf {
652
+ /** Preset item type. */
653
+ preset?: ItemTypeItemType;
654
+ /** Custom item type. When none of the preset types are suitable, specifies the custom type. */
655
+ custom?: string;
656
+ }
657
+ export declare enum ItemTypeItemType {
658
+ UNRECOGNISED = "UNRECOGNISED",
659
+ PHYSICAL = "PHYSICAL",
660
+ DIGITAL = "DIGITAL",
661
+ GIFT_CARD = "GIFT_CARD",
662
+ SERVICE = "SERVICE"
663
+ }
664
+ export interface SubscriptionOptionInfo {
665
+ /** Subscription option settings. */
666
+ subscriptionSettings?: SubscriptionSettings;
667
+ /** Subscription option title. */
668
+ title?: Title;
669
+ /** Subscription option description. */
670
+ description?: Description;
671
+ }
672
+ export interface SubscriptionSettings {
673
+ /** Frequency of recurring payment. */
674
+ frequency?: SubscriptionFrequency;
675
+ /**
676
+ * Interval of recurring payment.
677
+ *
678
+ * Default: `1`.
679
+ * If SubscriptionFrequency is Day the minimum interval is 7
680
+ * @min 1
681
+ * @max 50
682
+ */
683
+ interval?: number | null;
684
+ /** Whether subscription is renewed automatically at the end of each period. */
685
+ autoRenewal?: boolean;
686
+ /**
687
+ * Number of billing cycles before subscription ends. Ignored if `autoRenewal` is `true`.
688
+ * @min 1
689
+ */
690
+ billingCycles?: number | null;
691
+ }
692
+ /** Frequency unit of recurring payment */
693
+ export declare enum SubscriptionFrequency {
694
+ UNDEFINED = "UNDEFINED",
695
+ DAY = "DAY",
696
+ WEEK = "WEEK",
697
+ MONTH = "MONTH",
698
+ YEAR = "YEAR"
699
+ }
700
+ export interface FreeTrialPeriod {
701
+ /** Frequency of period. Values: DAY, WEEK, MONTH, YEAR */
702
+ frequency?: SubscriptionFrequency;
703
+ /**
704
+ * interval of period
705
+ * @min 1
706
+ * @max 999
707
+ */
708
+ interval?: number;
709
+ }
710
+ export interface Title {
711
+ /**
712
+ * Subscription option 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).
713
+ * @minLength 1
714
+ * @maxLength 150
715
+ */
716
+ original?: string;
717
+ /**
718
+ * Subscription option name translated into the buyer's language.
719
+ *
720
+ * Default: Same as `original`.
721
+ * @minLength 1
722
+ * @maxLength 150
723
+ */
724
+ translated?: string | null;
725
+ }
726
+ export interface Description {
727
+ /**
728
+ * Subscription option description.
729
+ * @maxLength 500
730
+ */
731
+ original?: string;
732
+ /**
733
+ * Translated subscription option description.
734
+ * @maxLength 500
735
+ */
736
+ translated?: string | null;
737
+ }
738
+ export interface SecuredMedia {
739
+ /**
740
+ * Media ID in Wix Media Manager.
741
+ * @minLength 1
742
+ * @maxLength 100
743
+ */
744
+ id?: string;
745
+ /**
746
+ * Original filename.
747
+ * @minLength 1
748
+ * @maxLength 1000
749
+ */
750
+ fileName?: string;
751
+ /** File type. */
752
+ fileType?: FileType;
753
+ }
754
+ export declare enum FileType {
755
+ UNSPECIFIED = "UNSPECIFIED",
756
+ SECURE_PICTURE = "SECURE_PICTURE",
757
+ SECURE_VIDEO = "SECURE_VIDEO",
758
+ SECURE_DOCUMENT = "SECURE_DOCUMENT",
759
+ SECURE_MUSIC = "SECURE_MUSIC",
760
+ SECURE_ARCHIVE = "SECURE_ARCHIVE"
761
+ }
762
+ /** Type of selected payment option for catalog item */
763
+ export declare enum PaymentOptionType {
764
+ /** The entire payment for this item happens as part of the checkout. */
765
+ FULL_PAYMENT_ONLINE = "FULL_PAYMENT_ONLINE",
766
+ /** The entire payment for this item happens after checkout. For example, when using cash, check, or other offline payment methods. */
767
+ FULL_PAYMENT_OFFLINE = "FULL_PAYMENT_OFFLINE",
768
+ /** Payment for this item is done by charging a membership. When selected, `price` is `0`. */
769
+ MEMBERSHIP = "MEMBERSHIP",
770
+ /** Partial payment to be paid upfront during checkout. The initial amount to be paid for each line item is specified in `depositAmount`. */
771
+ DEPOSIT_ONLINE = "DEPOSIT_ONLINE",
772
+ /** 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`. */
773
+ MEMBERSHIP_OFFLINE = "MEMBERSHIP_OFFLINE"
774
+ }
775
+ export interface ServiceProperties {
776
+ /**
777
+ * 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.
778
+ * For example, the start time of a class.
779
+ */
780
+ scheduledDate?: Date | null;
781
+ /**
782
+ * 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.
783
+ * @min 1
784
+ * @max 10000
785
+ */
786
+ numberOfParticipants?: number | null;
787
+ }
788
+ export interface PriceDescription {
789
+ /**
790
+ * __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).
791
+ * @minLength 1
792
+ * @maxLength 100
793
+ */
794
+ original?: string;
795
+ /**
796
+ * Price description translated into the buyer's language.
797
+ *
798
+ * Default: Same as `original`.
799
+ * @minLength 1
800
+ * @maxLength 100
801
+ */
802
+ translated?: string | null;
803
+ }
804
+ export interface CatalogOverrideFields {
805
+ /** Item name. */
806
+ productName?: ProductName;
807
+ /**
808
+ * Item price **after** discounts.
809
+ * @decimalValue options { gte:0, lte:999999999, maxScale:3 }
810
+ */
811
+ price?: string | null;
812
+ /**
813
+ * Item price **before** discounts.
814
+ * @decimalValue options { gte:0, lte:999999999, maxScale:3 }
815
+ */
816
+ fullPrice?: string | null;
817
+ /**
818
+ * Item description lines. Used when displaying the line item to customers.
819
+ * @maxSize 20
820
+ */
821
+ descriptionLines?: DescriptionLine[];
822
+ /** Physical properties of the item. */
823
+ physicalProperties?: PhysicalProperties;
824
+ /** Item image. */
825
+ image?: Image;
826
+ /** Payment method selected for the item. */
827
+ paymentOption?: PaymentOption;
828
+ /**
829
+ * Only eligible for catalog items with `lineItem.paymentOption.value` type of `DEPOSIT_ONLINE`.
830
+ * @format DECIMAL_VALUE
831
+ * @decimalValue options { gt:0, lte:999999999, maxScale:3 }
832
+ */
833
+ depositAmount?: string | null;
834
+ /**
835
+ * Whether to save the payment method on the order.
836
+ *
837
+ * Default: `false`
838
+ */
839
+ savePaymentMethod?: boolean | null;
840
+ }
841
+ export interface Image {
842
+ /** WixMedia image ID. */
843
+ id?: string;
844
+ /** Original image height. */
845
+ height?: number;
846
+ /** Original image width. */
847
+ width?: number;
848
+ /** Image alt text. Optional. */
849
+ altText?: string | null;
850
+ /** Image filename. Optional. */
851
+ filename?: string | null;
852
+ }
853
+ export interface PaymentOption {
854
+ /**
855
+ * Type of selected payment option for current item.
856
+ *
857
+ * Default: `FULL_PAYMENT_ONLINE`
858
+ */
859
+ value?: PaymentOptionType;
860
+ }
861
+ export interface TaxableAddress extends TaxableAddressTaxableAddressDataOneOf {
862
+ /** taxable address type. if this field is selected, the address is automatically resolved, and the tax is calculated accordingly. */
863
+ addressType?: TaxableAddressType;
864
+ }
865
+ /** @oneof */
866
+ export interface TaxableAddressTaxableAddressDataOneOf {
867
+ /** taxable address type. if this field is selected, the address is automatically resolved, and the tax is calculated accordingly. */
868
+ addressType?: TaxableAddressType;
869
+ }
870
+ export declare enum TaxableAddressType {
871
+ UNKNOWN_TAXABLE_ADDRESS = "UNKNOWN_TAXABLE_ADDRESS",
872
+ BUSINESS = "BUSINESS",
873
+ BILLING = "BILLING",
874
+ SHIPPING = "SHIPPING"
875
+ }
876
+ export interface ExtendedFields {
877
+ /**
878
+ * Extended field data. Each key corresponds to the namespace of the app that created the extended fields.
879
+ * The value of each key is structured according to the schema defined when the extended fields were configured.
880
+ *
881
+ * You can only access fields for which you have the appropriate permissions.
882
+ *
883
+ * Learn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields).
884
+ */
885
+ namespaces?: Record<string, Record<string, any>>;
886
+ }
887
+ export interface Policy {
888
+ /**
889
+ * Policy title - should be translated
890
+ * @minLength 1
891
+ * @maxLength 29
892
+ */
893
+ title?: string | null;
894
+ /**
895
+ * Policy content - should be translated
896
+ * @minLength 1
897
+ * @maxLength 3000
898
+ */
899
+ content?: string;
900
+ }
901
+ export interface ModifierGroup {
902
+ /**
903
+ * Modifier group id.
904
+ * @minLength 1
905
+ * @maxLength 36
906
+ */
907
+ id?: string;
908
+ /** Modifier group name. */
909
+ name?: TranslatableString;
910
+ /**
911
+ * List of modifiers in this group.
912
+ * @minSize 1
913
+ * @maxSize 10
914
+ */
915
+ modifiers?: ItemModifier[];
916
+ }
917
+ export interface TranslatableString {
918
+ /**
919
+ * __Required.__ String 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).
920
+ *
921
+ * Min: 1 character.
922
+ * Max: 200 characters.
923
+ * @minLength 1
924
+ * @maxLength 200
925
+ */
926
+ original?: string;
927
+ /**
928
+ * String translated into the buyer's language.
929
+ *
930
+ * Min: 1 character.
931
+ * Max: 400 characters.
932
+ * Default: Same as `original`.
933
+ * @minLength 1
934
+ * @maxLength 400
935
+ */
936
+ translated?: string | null;
937
+ }
938
+ export interface ItemModifier {
939
+ /**
940
+ * Modifier ID.
941
+ * @minLength 1
942
+ * @maxLength 36
943
+ */
944
+ id?: string;
945
+ /**
946
+ * The quantity of this modifier.
947
+ * @min 1
948
+ * @max 100000
949
+ */
950
+ quantity?: number | null;
951
+ /** Primary display label for the modifier. */
952
+ label?: TranslatableString;
953
+ /** Optional additional details or clarification for the modifier. */
954
+ details?: TranslatableString;
955
+ /** The price of the modifier. */
956
+ price?: MultiCurrencyPrice;
957
+ }
958
+ /** Billing Info and shipping details */
959
+ export interface AddressWithContact {
960
+ /** Address. */
961
+ address?: ApiAddress;
962
+ /** Contact details. */
963
+ contactDetails?: FullAddressContactDetails;
964
+ }
965
+ /** Physical address */
966
+ export interface ApiAddress {
967
+ /**
968
+ * Two-letter country code in [ISO-3166 alpha-2](https://www.iso.org/obp/ui/#search/code/) format.
969
+ * @format COUNTRY
970
+ */
971
+ country?: string | null;
972
+ /**
973
+ * Code for a subdivision (such as state, prefecture, or province) in [ISO 3166-2](https://www.iso.org/standard/72483.html) format.
974
+ * @maxLength 50
975
+ */
976
+ subdivision?: string | null;
977
+ /**
978
+ * City name.
979
+ * @maxLength 50
980
+ */
981
+ city?: string | null;
982
+ /**
983
+ * Postal or zip code.
984
+ * @maxLength 50
985
+ */
986
+ postalCode?: string | null;
987
+ /** Street address. */
988
+ streetAddress?: StreetAddress;
989
+ /**
990
+ * Main address line (usually street name and number).
991
+ * @maxLength 150
992
+ */
993
+ addressLine?: string | null;
994
+ /**
995
+ * Free text providing more detailed address info. Usually contains apt, suite, floor.
996
+ * @maxLength 100
997
+ */
998
+ addressLine2?: string | null;
999
+ /**
1000
+ * Country's full name.
1001
+ * @readonly
1002
+ */
1003
+ countryFullname?: string | null;
1004
+ /**
1005
+ * Subdivision full-name.
1006
+ * @readonly
1007
+ */
1008
+ subdivisionFullname?: string | null;
1009
+ }
1010
+ export interface StreetAddress {
1011
+ /** Street number. */
1012
+ number?: string;
1013
+ /** Street name. */
1014
+ name?: string;
1015
+ }
1016
+ export interface AddressLocation {
1017
+ /** Address latitude. */
1018
+ latitude?: number | null;
1019
+ /** Address longitude. */
1020
+ longitude?: number | null;
1021
+ }
1022
+ /** Full contact details for an address */
1023
+ export interface FullAddressContactDetails {
1024
+ /**
1025
+ * First name.
1026
+ * @maxLength 100
1027
+ */
1028
+ firstName?: string | null;
1029
+ /**
1030
+ * Last name.
1031
+ * @maxLength 100
1032
+ */
1033
+ lastName?: string | null;
1034
+ /**
1035
+ * Phone number.
1036
+ * @format PHONE
1037
+ */
1038
+ phone?: string | null;
1039
+ /**
1040
+ * Company name.
1041
+ * @maxLength 1000
1042
+ */
1043
+ company?: string | null;
1044
+ /** Tax information (for Brazil only). If ID is provided, `vatId.type` must also be set, `UNSPECIFIED` is not allowed. */
1045
+ vatId?: CommonVatId;
1046
+ }
1047
+ export interface CommonVatId {
1048
+ /** Customer's tax ID. */
1049
+ id?: string;
1050
+ /**
1051
+ * Tax type.
1052
+ *
1053
+ * Supported values:
1054
+ * + `CPF`: for individual tax payers
1055
+ * + `CNPJ`: for corporations
1056
+ */
1057
+ type?: CommonVatType;
1058
+ }
1059
+ /** tax info types */
1060
+ export declare enum CommonVatType {
1061
+ UNSPECIFIED = "UNSPECIFIED",
1062
+ /** CPF - for individual tax payers. */
1063
+ CPF = "CPF",
1064
+ /** CNPJ - for corporations */
1065
+ CNPJ = "CNPJ"
1066
+ }
1067
+ export interface ShippingInfo {
1068
+ /** Shipping address and contact details. */
1069
+ shippingDestination?: AddressWithContact;
1070
+ /** Selected option out of the options allowed for the `region`. */
1071
+ selectedCarrierServiceOption?: SelectedCarrierServiceOption;
1072
+ /**
1073
+ * Shipping region. Based on the address provided.
1074
+ * @readonly
1075
+ */
1076
+ region?: ShippingRegion;
1077
+ /**
1078
+ * All carrier options for this shipping rule.
1079
+ * @readonly
1080
+ */
1081
+ carrierServiceOptions?: CarrierServiceOption[];
1082
+ }
1083
+ export interface SelectedCarrierServiceOption {
1084
+ /**
1085
+ * Unique identifier of selected option. For example, "usps_std_overnight".
1086
+ * @maxLength 100
1087
+ */
1088
+ code?: string;
1089
+ /**
1090
+ * Title of the option, such as USPS Standard Overnight Delivery (in the requested locale).
1091
+ * For example, "Standard" or "First-Class Package International".
1092
+ * @maxLength 250
1093
+ * @readonly
1094
+ */
1095
+ title?: string;
1096
+ /**
1097
+ * Delivery logistics.
1098
+ * @readonly
1099
+ */
1100
+ logistics?: DeliveryLogistics;
1101
+ /**
1102
+ * Shipping costs.
1103
+ * @readonly
1104
+ */
1105
+ cost?: SelectedCarrierServiceOptionPrices;
1106
+ /**
1107
+ * Were we able to find the requested shipping option, or otherwise we fallback to the default one (the first)
1108
+ * @readonly
1109
+ */
1110
+ requestedShippingOption?: boolean;
1111
+ /**
1112
+ * Other charges
1113
+ * @deprecated Other charges
1114
+ * @replacedBy additional_fees
1115
+ * @targetRemovalDate 2025-10-01
1116
+ */
1117
+ otherCharges?: SelectedCarrierServiceOptionOtherCharge[];
1118
+ /**
1119
+ * This carrier's unique ID
1120
+ * @format GUID
1121
+ */
1122
+ carrierId?: string | null;
1123
+ /**
1124
+ * Delivery solution allocations to different delivery carriers and delivery regions
1125
+ * @maxSize 300
1126
+ */
1127
+ deliveryAllocations?: DeliveryAllocation[];
1128
+ /** If the delivery solution is a partial and doesn't apply to all items. */
1129
+ partial?: boolean | null;
1130
+ }
1131
+ export interface DeliveryLogistics {
1132
+ /**
1133
+ * Expected delivery time, in free text. For example, "3-5 business days".
1134
+ * @maxLength 500
1135
+ */
1136
+ deliveryTime?: string | null;
1137
+ /**
1138
+ * Instructions for caller, e.g for pickup: "Please deliver during opening hours, and please don't park in disabled parking spot".
1139
+ * @maxLength 1000
1140
+ */
1141
+ instructions?: string | null;
1142
+ /** Pickup details. */
1143
+ pickupDetails?: PickupDetails;
1144
+ }
1145
+ export interface PickupDetails {
1146
+ /** Pickup address. */
1147
+ address?: ApiAddress;
1148
+ /**
1149
+ * Whether the pickup address is that of a business - this may effect tax calculation.
1150
+ * @deprecated
1151
+ */
1152
+ businessLocation?: boolean;
1153
+ /** Pickup method */
1154
+ pickupMethod?: PickupMethod;
1155
+ }
1156
+ export declare enum PickupMethod {
1157
+ UNKNOWN_METHOD = "UNKNOWN_METHOD",
1158
+ STORE_PICKUP = "STORE_PICKUP",
1159
+ PICKUP_POINT = "PICKUP_POINT"
1160
+ }
1161
+ export interface DeliveryTimeSlot {
1162
+ /** starting time of the delivery time slot */
1163
+ from?: Date | null;
1164
+ /** ending time of the delivery time slot */
1165
+ to?: Date | null;
1166
+ }
1167
+ export interface SelectedCarrierServiceOptionPrices {
1168
+ /** Total shipping price, after discount and after tax. */
1169
+ totalPriceAfterTax?: MultiCurrencyPrice;
1170
+ /** Total price of shipping after discounts (when relevant), and before tax. */
1171
+ totalPriceBeforeTax?: MultiCurrencyPrice;
1172
+ /** Tax details. */
1173
+ taxDetails?: ItemTaxFullDetails;
1174
+ /** Shipping discount before tax. */
1175
+ totalDiscount?: MultiCurrencyPrice;
1176
+ /** Shipping price before discount and before tax. */
1177
+ price?: MultiCurrencyPrice;
1178
+ }
1179
+ export interface SelectedCarrierServiceOptionOtherCharge {
1180
+ /** Type of additional cost. */
1181
+ type?: ChargeType;
1182
+ /**
1183
+ * Details of the charge, such as 'Full Coverage Insurance of up to 80% of value of shipment'.
1184
+ * @maxLength 200
1185
+ */
1186
+ details?: string | null;
1187
+ /** Price of added charge. */
1188
+ cost?: SelectedCarrierServiceOptionPrices;
1189
+ }
1190
+ export declare enum ChargeType {
1191
+ HANDLING_FEE = "HANDLING_FEE",
1192
+ INSURANCE = "INSURANCE"
1193
+ }
1194
+ export interface DeliveryAllocation {
1195
+ /** The delivery option's carrier details, could be multiple if the delivery option is a combination of multiple carriers */
1196
+ deliveryCarrier?: Carrier;
1197
+ /** The delivery region that are relevant for this delivery solution. */
1198
+ deliveryRegion?: Region;
1199
+ /** Populated if the delivery solution is a partially supplied by this carrier. */
1200
+ applicableLineItems?: ApplicableLineItems;
1201
+ }
1202
+ export interface Carrier {
1203
+ /**
1204
+ * The carrier app id
1205
+ * @format GUID
1206
+ */
1207
+ appId?: string | null;
1208
+ /**
1209
+ * Unique code that acts as an ID for a shipping rate. For example, `"usps_std_overnight"`.
1210
+ * @maxLength 250
1211
+ */
1212
+ code?: string;
1213
+ }
1214
+ export interface Region {
1215
+ /**
1216
+ * The delivery region id.
1217
+ * @format GUID
1218
+ */
1219
+ id?: string | null;
1220
+ /**
1221
+ * The delivery region name.
1222
+ * @maxLength 100
1223
+ */
1224
+ name?: string | null;
1225
+ }
1226
+ export interface ApplicableLineItems {
1227
+ /**
1228
+ * Line items that the delivery solution is for.
1229
+ * @maxSize 300
1230
+ * @minLength 1
1231
+ * @maxLength 100
1232
+ */
1233
+ lineItemIds?: string[];
1234
+ }
1235
+ export interface ShippingRegion {
1236
+ /**
1237
+ * Shipping region ID.
1238
+ * @format GUID
1239
+ * @readonly
1240
+ */
1241
+ id?: string;
1242
+ /**
1243
+ * Shipping region name.
1244
+ * @maxLength 100
1245
+ */
1246
+ name?: string;
1247
+ }
1248
+ export interface CarrierServiceOption {
1249
+ /**
1250
+ * Carrier ID.
1251
+ * @format GUID
1252
+ */
1253
+ carrierId?: string;
1254
+ /** Shipping options offered by this carrier for this request. */
1255
+ shippingOptions?: ShippingOption[];
1256
+ }
1257
+ export interface ShippingOption {
1258
+ /**
1259
+ * Unique code of provided shipping option like "usps_std_overnight".
1260
+ * For legacy calculators this would be the UUID of the option.
1261
+ * @maxLength 100
1262
+ */
1263
+ code?: string;
1264
+ /**
1265
+ * Title of the option, such as USPS Standard Overnight Delivery (in the requested locale).
1266
+ * For example, "Standard" or "First-Class Package International".
1267
+ * @maxLength 250
1268
+ */
1269
+ title?: string;
1270
+ /** Delivery logistics. */
1271
+ logistics?: DeliveryLogistics;
1272
+ /** Sipping price information. */
1273
+ cost?: ShippingPrice;
1274
+ /**
1275
+ * Delivery solution allocations to different delivery carriers and delivery regions
1276
+ * @maxSize 300
1277
+ */
1278
+ deliveryAllocations?: DeliveryAllocation[];
1279
+ /** If the delivery solution is a partial and doesn't apply to all items. */
1280
+ partial?: boolean | null;
1281
+ }
1282
+ export interface ShippingPrice {
1283
+ /** Shipping price. */
1284
+ price?: MultiCurrencyPrice;
1285
+ /** Other costs such as insurance, handling & packaging for fragile items, etc. */
1286
+ otherCharges?: OtherCharge[];
1287
+ }
1288
+ export interface OtherCharge {
1289
+ /** Type of additional cost. */
1290
+ type?: ChargeType;
1291
+ /** Price of added cost. */
1292
+ price?: MultiCurrencyPrice;
1293
+ /**
1294
+ * Description of the additional charge. For example, `"Handling fee of $5 applied for gift wrapping"`.
1295
+ * @maxLength 250
1296
+ */
1297
+ details?: string | null;
1298
+ }
1299
+ export interface BuyerInfo extends BuyerInfoIdOneOf {
1300
+ /**
1301
+ * Visitor ID (if site visitor is **not** a member).
1302
+ * @format GUID
1303
+ * @readonly
1304
+ */
1305
+ visitorId?: string;
1306
+ /**
1307
+ * Member ID (if site visitor is a site member).
1308
+ * @format GUID
1309
+ * @readonly
1310
+ */
1311
+ memberId?: string;
1312
+ /**
1313
+ * Contact ID. Auto-created if one does not yet exist. For more information, see the Contacts API.
1314
+ * @format GUID
1315
+ * @readonly
1316
+ */
1317
+ contactId?: string | null;
1318
+ /**
1319
+ * Buyer email address.
1320
+ * @format EMAIL
1321
+ */
1322
+ email?: string | null;
1323
+ }
1324
+ /** @oneof */
1325
+ export interface BuyerInfoIdOneOf {
1326
+ /**
1327
+ * Visitor ID (if site visitor is **not** a member).
1328
+ * @format GUID
1329
+ * @readonly
1330
+ */
1331
+ visitorId?: string;
1332
+ /**
1333
+ * Member ID (if site visitor is a site member).
1334
+ * @format GUID
1335
+ * @readonly
1336
+ */
1337
+ memberId?: string;
1338
+ }
1339
+ export interface PriceSummary {
1340
+ /** Subtotal of all line items, before discounts and before tax. */
1341
+ subtotal?: MultiCurrencyPrice;
1342
+ /** Total shipping price, before discounts and before tax. */
1343
+ shipping?: MultiCurrencyPrice;
1344
+ /** Total tax. */
1345
+ tax?: MultiCurrencyPrice;
1346
+ /** Total calculated discount value. */
1347
+ discount?: MultiCurrencyPrice;
1348
+ /** Total price after discounts, gift cards, and tax. */
1349
+ total?: MultiCurrencyPrice;
1350
+ /** Total additional fees price before tax. */
1351
+ additionalFees?: MultiCurrencyPrice;
1352
+ }
1353
+ export interface CalculationErrors extends CalculationErrorsShippingCalculationErrorOneOf {
1354
+ /** General shipping calculation error. */
1355
+ generalShippingCalculationError?: Details;
1356
+ /** Carrier errors. */
1357
+ carrierErrors?: CarrierErrors;
1358
+ /** Tax calculation error. */
1359
+ taxCalculationError?: Details;
1360
+ /** Coupon calculation error. */
1361
+ couponCalculationError?: Details;
1362
+ /** Gift card calculation error. */
1363
+ giftCardCalculationError?: Details;
1364
+ /** Order validation errors. */
1365
+ orderValidationErrors?: ApplicationError[];
1366
+ /**
1367
+ * Membership payment methods calculation errors
1368
+ * For example, will indicate that a line item that must be paid with membership payment doesn't have one or selected memberships are invalid
1369
+ */
1370
+ membershipError?: Details;
1371
+ /** Discount Rule calculation error. */
1372
+ discountsCalculationError?: Details;
1373
+ }
1374
+ /** @oneof */
1375
+ export interface CalculationErrorsShippingCalculationErrorOneOf {
1376
+ /** General shipping calculation error. */
1377
+ generalShippingCalculationError?: Details;
1378
+ /** Carrier errors. */
1379
+ carrierErrors?: CarrierErrors;
1380
+ }
1381
+ export interface Details extends DetailsKindOneOf {
1382
+ applicationError?: ApplicationError;
1383
+ validationError?: ValidationError;
1384
+ systemError?: SystemError;
1385
+ /**
1386
+ * deprecated in API's - to enable migration from rendering arbitrary tracing to rest response
1387
+ * @deprecated
1388
+ */
1389
+ tracing?: Record<string, string>;
1390
+ }
1391
+ /** @oneof */
1392
+ export interface DetailsKindOneOf {
1393
+ applicationError?: ApplicationError;
1394
+ validationError?: ValidationError;
1395
+ systemError?: SystemError;
1396
+ }
1397
+ export interface ApplicationError {
1398
+ /** Error code. */
1399
+ code?: string;
1400
+ /** Description of the error. */
1401
+ description?: string;
1402
+ /** Data related to the error. */
1403
+ data?: Record<string, any> | null;
1404
+ }
1405
+ /**
1406
+ * example result:
1407
+ * {
1408
+ * "fieldViolations": [
1409
+ * {
1410
+ * "field": "fieldA",
1411
+ * "description": "invalid music note. supported notes: [do,re,mi,fa,sol,la,ti]",
1412
+ * "violatedRule": "OTHER",
1413
+ * "ruleName": "INVALID_NOTE",
1414
+ * "data": {
1415
+ * "value": "FI"
1416
+ * }
1417
+ * },
1418
+ * {
1419
+ * "field": "fieldB",
1420
+ * "description": "field value out of range. supported range: [0-20]",
1421
+ * "violatedRule": "MAX",
1422
+ * "data": {
1423
+ * "threshold": 20
1424
+ * }
1425
+ * },
1426
+ * {
1427
+ * "field": "fieldC",
1428
+ * "description": "invalid phone number. provide a valid phone number of size: [7-12], supported characters: [0-9, +, -, (, )]",
1429
+ * "violatedRule": "FORMAT",
1430
+ * "data": {
1431
+ * "type": "PHONE"
1432
+ * }
1433
+ * }
1434
+ * ]
1435
+ * }
1436
+ */
1437
+ export interface ValidationError {
1438
+ fieldViolations?: FieldViolation[];
1439
+ }
1440
+ export declare enum RuleType {
1441
+ VALIDATION = "VALIDATION",
1442
+ OTHER = "OTHER",
1443
+ MAX = "MAX",
1444
+ MIN = "MIN",
1445
+ MAX_LENGTH = "MAX_LENGTH",
1446
+ MIN_LENGTH = "MIN_LENGTH",
1447
+ MAX_SIZE = "MAX_SIZE",
1448
+ MIN_SIZE = "MIN_SIZE",
1449
+ FORMAT = "FORMAT",
1450
+ DECIMAL_LTE = "DECIMAL_LTE",
1451
+ DECIMAL_GTE = "DECIMAL_GTE",
1452
+ DECIMAL_LT = "DECIMAL_LT",
1453
+ DECIMAL_GT = "DECIMAL_GT",
1454
+ DECIMAL_MAX_SCALE = "DECIMAL_MAX_SCALE",
1455
+ INVALID_ENUM_VALUE = "INVALID_ENUM_VALUE",
1456
+ REQUIRED_FIELD = "REQUIRED_FIELD",
1457
+ FIELD_NOT_ALLOWED = "FIELD_NOT_ALLOWED",
1458
+ ONE_OF_ALIGNMENT = "ONE_OF_ALIGNMENT",
1459
+ EXACT_LENGTH = "EXACT_LENGTH",
1460
+ EXACT_SIZE = "EXACT_SIZE",
1461
+ REQUIRED_ONE_OF_FIELD = "REQUIRED_ONE_OF_FIELD"
1462
+ }
1463
+ export interface FieldViolation {
1464
+ field?: string;
1465
+ description?: string;
1466
+ violatedRule?: RuleType;
1467
+ /** applicable when violated_rule=OTHER */
1468
+ ruleName?: string | null;
1469
+ data?: Record<string, any> | null;
1470
+ }
1471
+ export interface SystemError {
1472
+ /** Error code. */
1473
+ errorCode?: string | null;
1474
+ }
1475
+ export interface CarrierErrors {
1476
+ /** Carrier errors. */
1477
+ errors?: CarrierError[];
1478
+ }
1479
+ export interface CarrierError {
1480
+ /** Carrier ID. */
1481
+ carrierId?: string;
1482
+ /** Error details. */
1483
+ error?: Details;
1484
+ }
1485
+ export interface GiftCard {
1486
+ /**
1487
+ * Gift Card ID.
1488
+ * @deprecated
1489
+ */
1490
+ id?: string;
1491
+ /** Gift card obfuscated code. */
1492
+ obfuscatedCode?: string;
1493
+ /** Gift card value. */
1494
+ amount?: MultiCurrencyPrice;
1495
+ /**
1496
+ * App ID of the gift card provider.
1497
+ * @format GUID
1498
+ */
1499
+ appId?: string;
1500
+ /**
1501
+ * External ID in the gift card provider's system.
1502
+ * Used for integration and tracking across different platforms.
1503
+ * @minLength 1
1504
+ * @maxLength 50
1505
+ */
1506
+ externalId?: string | null;
1507
+ }
1508
+ export interface AppliedDiscount extends AppliedDiscountDiscountSourceOneOf {
1509
+ /** Coupon details. */
1510
+ coupon?: Coupon;
1511
+ /** Merchant discount. */
1512
+ merchantDiscount?: MerchantDiscount;
1513
+ /** Discount rule */
1514
+ discountRule?: DiscountRule;
1515
+ /** Discount type. */
1516
+ discountType?: DiscountType;
1517
+ /**
1518
+ * IDs of line items the discount applies to.
1519
+ * @format GUID
1520
+ * @deprecated IDs of line items the discount applies to.
1521
+ * @replacedBy line_items_discounts
1522
+ * @targetRemovalDate 2024-06-01
1523
+ */
1524
+ lineItemIds?: string[];
1525
+ }
1526
+ /** @oneof */
1527
+ export interface AppliedDiscountDiscountSourceOneOf {
1528
+ /** Coupon details. */
1529
+ coupon?: Coupon;
1530
+ /** Merchant discount. */
1531
+ merchantDiscount?: MerchantDiscount;
1532
+ /** Discount rule */
1533
+ discountRule?: DiscountRule;
1534
+ }
1535
+ export declare enum DiscountType {
1536
+ GLOBAL = "GLOBAL",
1537
+ SPECIFIC_ITEMS = "SPECIFIC_ITEMS",
1538
+ SHIPPING = "SHIPPING"
1539
+ }
1540
+ /** Coupon */
1541
+ export interface Coupon {
1542
+ /** Coupon ID. */
1543
+ id?: string;
1544
+ /** Coupon code. */
1545
+ code?: string;
1546
+ /** Coupon value. */
1547
+ amount?: MultiCurrencyPrice;
1548
+ /** Coupon name. */
1549
+ name?: string;
1550
+ }
1551
+ export interface MerchantDiscount {
1552
+ /** Discount value. */
1553
+ amount?: MultiCurrencyPrice;
1554
+ /**
1555
+ * Discount Percentage. Will be calculated from items price before other discounts.
1556
+ * @min 1
1557
+ * @max 100
1558
+ */
1559
+ percentage?: number | null;
1560
+ }
1561
+ export interface DiscountRule {
1562
+ /**
1563
+ * Discount rule ID
1564
+ * @format GUID
1565
+ */
1566
+ id?: string;
1567
+ /** Discount rule name */
1568
+ name?: DiscountRuleName;
1569
+ /** Discount value. */
1570
+ amount?: MultiCurrencyPrice;
1571
+ }
1572
+ export interface DiscountRuleName {
1573
+ /**
1574
+ * Original discount rule name (in site's default language).
1575
+ * @minLength 1
1576
+ * @maxLength 256
1577
+ */
1578
+ original?: string;
1579
+ /**
1580
+ * Translated discount rule name according to buyer language. Defaults to `original` when not provided.
1581
+ * @minLength 1
1582
+ * @maxLength 500
1583
+ */
1584
+ translated?: string | null;
1585
+ }
1586
+ export interface LineItemDiscount {
1587
+ /**
1588
+ * ID of line item the discount applies to.
1589
+ * @format GUID
1590
+ */
1591
+ id?: string;
1592
+ /** Discount value. */
1593
+ totalDiscountAmount?: MultiCurrencyPrice;
1594
+ }
1595
+ export interface CustomField {
1596
+ /** Custom field value. */
1597
+ value?: any;
1598
+ /**
1599
+ * Custom field title.
1600
+ * @minLength 1
1601
+ * @maxLength 500
1602
+ */
1603
+ title?: string;
1604
+ /**
1605
+ * Translated custom field title.
1606
+ * @minLength 1
1607
+ * @maxLength 500
1608
+ */
1609
+ translatedTitle?: string | null;
1610
+ }
1611
+ export declare enum WeightUnit {
1612
+ /** Weight unit can't be classified due to an error. */
1613
+ UNSPECIFIED_WEIGHT_UNIT = "UNSPECIFIED_WEIGHT_UNIT",
1614
+ /** Kilograms. */
1615
+ KG = "KG",
1616
+ /** Pounds. */
1617
+ LB = "LB"
1618
+ }
1619
+ export interface TaxSummary {
1620
+ /**
1621
+ * Amount for which tax is calculated, added from line items.
1622
+ * @readonly
1623
+ */
1624
+ taxableAmount?: MultiCurrencyPrice;
1625
+ /**
1626
+ * Calculated tax, added from line items.
1627
+ * @readonly
1628
+ */
1629
+ totalTax?: MultiCurrencyPrice;
1630
+ /**
1631
+ * Tax calculator that was active when the order was created.
1632
+ * @deprecated
1633
+ */
1634
+ calculationDetails?: TaxCalculationDetails;
1635
+ }
1636
+ export interface TaxCalculationDetails extends TaxCalculationDetailsCalculationDetailsOneOf {
1637
+ /** Reason the manual calculation was used. */
1638
+ manualRateReason?: ManualCalculationReason;
1639
+ /** Details of the fallback rate calculation. */
1640
+ autoTaxFallbackDetails?: AutoTaxFallbackCalculationDetails;
1641
+ /** Rate calculation type. */
1642
+ rateType?: RateType;
1643
+ }
1644
+ /** @oneof */
1645
+ export interface TaxCalculationDetailsCalculationDetailsOneOf {
1646
+ /** Reason the manual calculation was used. */
1647
+ manualRateReason?: ManualCalculationReason;
1648
+ /** Details of the fallback rate calculation. */
1649
+ autoTaxFallbackDetails?: AutoTaxFallbackCalculationDetails;
1650
+ }
1651
+ export declare enum RateType {
1652
+ /** no tax being collected for this request due to location of purchase */
1653
+ NO_TAX_COLLECTED = "NO_TAX_COLLECTED",
1654
+ /** manual rate used for calculation */
1655
+ MANUAL_RATE = "MANUAL_RATE",
1656
+ /** autotax rate used for calculation */
1657
+ AUTO_RATE = "AUTO_RATE",
1658
+ /** fallback rate used for calculation */
1659
+ FALLBACK_RATE = "FALLBACK_RATE"
1660
+ }
1661
+ export declare enum ManualCalculationReason {
1662
+ /** user set calculator in Business Manager to be Manual */
1663
+ GLOBAL_SETTING_TO_MANUAL = "GLOBAL_SETTING_TO_MANUAL",
1664
+ /** specific region is on manual even though Global setting is Auto-tax */
1665
+ REGION_SETTING_TO_MANUAL = "REGION_SETTING_TO_MANUAL"
1666
+ }
1667
+ export interface AutoTaxFallbackCalculationDetails {
1668
+ /** reason for fallback */
1669
+ fallbackReason?: FallbackReason;
1670
+ /** invalid request (i.e. address), timeout, internal error, license error, and others will be encoded here */
1671
+ error?: ApplicationError;
1672
+ }
1673
+ export declare enum FallbackReason {
1674
+ /** auto-tax failed to be calculated */
1675
+ AUTO_TAX_FAILED = "AUTO_TAX_FAILED",
1676
+ /** auto-tax was temporarily deactivated on a system-level */
1677
+ AUTO_TAX_DEACTIVATED = "AUTO_TAX_DEACTIVATED"
1678
+ }
1679
+ /**
1680
+ * The summary of the tax breakdown for all the line items. It will hold for each tax name, the aggregated tax amount paid for it and the tax rate.
1681
+ * Tax breakdown is the tax amount split to the tax authorities that applied on the line item.
1682
+ */
1683
+ export interface AggregatedTaxBreakdown {
1684
+ /**
1685
+ * The name of the tax against which this tax amount was calculated.
1686
+ * @maxLength 200
1687
+ */
1688
+ taxName?: string;
1689
+ /**
1690
+ * The type of tax that was calculated. Depends on the company's nexus settings as well as the jurisdiction's tax laws.
1691
+ * @maxLength 200
1692
+ */
1693
+ taxType?: string;
1694
+ /**
1695
+ * The name of the jurisdiction in which this tax detail applies.
1696
+ * @maxLength 200
1697
+ */
1698
+ jurisdiction?: string;
1699
+ /** The type of the jurisdiction in which this tax detail applies (e.g. Country,State,County,City,Special). */
1700
+ jurisdictionTypeEnum?: JurisdictionType;
1701
+ /**
1702
+ * The rate at which this tax detail was calculated, e.g 0.1000 signifies 10% tax and 2.000 signifies 200% tax. (Decimal value)
1703
+ * @decimalValue options { gte:0, maxScale:6 }
1704
+ */
1705
+ rate?: string;
1706
+ /** The sum of all the tax from line items that calculated by the tax identifiers. */
1707
+ aggregatedTaxAmount?: MultiCurrencyPrice;
1708
+ }
1709
+ export declare enum ChannelType {
1710
+ /** Unspecified sales channel. This value is not supported. */
1711
+ UNSPECIFIED = "UNSPECIFIED",
1712
+ /** A web client. */
1713
+ WEB = "WEB",
1714
+ /** [Point of sale solutions](https://support.wix.com/en/wix-mobile-pos-2196395). */
1715
+ POS = "POS",
1716
+ /** [eBay shop](https://support.wix.com/en/article/wix-stores-connecting-and-setting-up-an-ebay-shop). */
1717
+ EBAY = "EBAY",
1718
+ /** [Amazon shop](https://support.wix.com/en/article/wix-stores-connecting-and-setting-up-an-amazon-shop). */
1719
+ AMAZON = "AMAZON",
1720
+ /** Other sales platform. */
1721
+ OTHER_PLATFORM = "OTHER_PLATFORM",
1722
+ /** [Wix Owner app](https://support.wix.com/article/wix-owner-app-an-overview). */
1723
+ WIX_APP_STORE = "WIX_APP_STORE",
1724
+ /** 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) */
1725
+ WIX_INVOICES = "WIX_INVOICES",
1726
+ /** Wix merchant backoffice. */
1727
+ BACKOFFICE_MERCHANT = "BACKOFFICE_MERCHANT",
1728
+ /** Wish sales channel. */
1729
+ WISH = "WISH",
1730
+ /** [ClassPass sales channel](https://support.wix.com/en/article/wix-bookings-letting-clients-book-your-services-with-classpass). */
1731
+ CLASS_PASS = "CLASS_PASS",
1732
+ /** Global-E sales channel. */
1733
+ GLOBAL_E = "GLOBAL_E",
1734
+ /** [Facebook shop](https://support.wix.com/en/article/wix-stores-changes-to-facebook-shops). */
1735
+ FACEBOOK = "FACEBOOK",
1736
+ /** [Etsy sales channel](https://support.wix.com/en/article/wix-stores-request-adding-etsy-as-a-sales-channel). */
1737
+ ETSY = "ETSY",
1738
+ /** [TikTok sales channel](https://support.wix.com/en/article/wix-stores-request-adding-tiktok-as-a-sales-channel). */
1739
+ TIKTOK = "TIKTOK",
1740
+ /** [Faire marketplace integration](https://support.wix.com/en/article/wix-stores-creating-a-faire-store-using-the-faire-integration-app). */
1741
+ FAIRE_COM = "FAIRE_COM"
1742
+ }
1743
+ export interface CreatedBy extends CreatedByIdOneOf {
1744
+ /**
1745
+ * User ID. When the order was created by a Wix user on behalf of a buyer.
1746
+ * For example, via POS (point of service).
1747
+ * @format GUID
1748
+ */
1749
+ userId?: string;
1750
+ /**
1751
+ * Member ID. When the order was created by a **logged in** site visitor.
1752
+ * @format GUID
1753
+ */
1754
+ memberId?: string;
1755
+ /**
1756
+ * Visitor ID. When the order was created by a site visitor that was **not** logged in.
1757
+ * @format GUID
1758
+ */
1759
+ visitorId?: string;
1760
+ /**
1761
+ * App ID. When the order was created by an external application or Wix service.
1762
+ * @format GUID
1763
+ */
1764
+ appId?: string;
1765
+ }
1766
+ /** @oneof */
1767
+ export interface CreatedByIdOneOf {
1768
+ /**
1769
+ * User ID. When the order was created by a Wix user on behalf of a buyer.
1770
+ * For example, via POS (point of service).
1771
+ * @format GUID
1772
+ */
1773
+ userId?: string;
1774
+ /**
1775
+ * Member ID. When the order was created by a **logged in** site visitor.
1776
+ * @format GUID
1777
+ */
1778
+ memberId?: string;
1779
+ /**
1780
+ * Visitor ID. When the order was created by a site visitor that was **not** logged in.
1781
+ * @format GUID
1782
+ */
1783
+ visitorId?: string;
1784
+ /**
1785
+ * App ID. When the order was created by an external application or Wix service.
1786
+ * @format GUID
1787
+ */
1788
+ appId?: string;
1789
+ }
1790
+ /** Reserved for internal use. */
1791
+ export interface MembershipOptions {
1792
+ /**
1793
+ * Reserved for internal use.
1794
+ * @readonly
1795
+ * @maxSize 300
1796
+ */
1797
+ eligibleMemberships?: Membership[];
1798
+ /**
1799
+ * Reserved for internal use.
1800
+ * @readonly
1801
+ * @maxSize 300
1802
+ */
1803
+ invalidMemberships?: InvalidMembership[];
1804
+ /** Selected membership to apply to this checkout. */
1805
+ selectedMemberships?: SelectedMemberships;
1806
+ }
1807
+ export interface Membership {
1808
+ /**
1809
+ * Membership ID.
1810
+ * @minLength 1
1811
+ * @maxLength 100
1812
+ */
1813
+ id?: string;
1814
+ /**
1815
+ * ID of the application providing this payment option.
1816
+ * @format GUID
1817
+ */
1818
+ appId?: string;
1819
+ /** The name of this membership. */
1820
+ name?: MembershipName;
1821
+ /**
1822
+ * Line item IDs which are "paid" for by this membership.
1823
+ * @minSize 1
1824
+ * @maxSize 300
1825
+ * @minLength 1
1826
+ * @maxLength 100
1827
+ */
1828
+ lineItemIds?: string[];
1829
+ /** Optional - For a membership that has limited credits, information about credit usage. */
1830
+ credits?: MembershipPaymentCredits;
1831
+ /** Optional - TMembership expiry date. */
1832
+ expirationDate?: Date | null;
1833
+ /** Additional data about this membership. */
1834
+ additionalData?: Record<string, any> | null;
1835
+ }
1836
+ export interface MembershipName {
1837
+ /**
1838
+ * Membership name.
1839
+ * @maxLength 100
1840
+ */
1841
+ original?: string;
1842
+ /**
1843
+ * Translated membership name. Defaults to `original` when not provided.
1844
+ * @maxLength 100
1845
+ */
1846
+ translated?: string | null;
1847
+ }
1848
+ export interface MembershipPaymentCredits {
1849
+ /**
1850
+ * Membership's total amount of credits.
1851
+ * @min 1
1852
+ */
1853
+ total?: number;
1854
+ /** Membership's remaining amount of credits. */
1855
+ remaining?: number;
1856
+ }
1857
+ export interface InvalidMembership {
1858
+ /** Membership details. */
1859
+ membership?: Membership;
1860
+ /**
1861
+ * Reason why this membership is invalid and cannot be used.
1862
+ * @minLength 1
1863
+ * @maxLength 100
1864
+ */
1865
+ reason?: string;
1866
+ }
1867
+ export interface SelectedMemberships {
1868
+ /**
1869
+ * Selected memberships.
1870
+ * @maxSize 300
1871
+ */
1872
+ memberships?: SelectedMembership[];
1873
+ }
1874
+ export interface SelectedMembership {
1875
+ /**
1876
+ * Membership ID.
1877
+ * @minLength 1
1878
+ * @maxLength 100
1879
+ */
1880
+ id?: string;
1881
+ /**
1882
+ * ID of the app providing this payment option.
1883
+ * @format GUID
1884
+ */
1885
+ appId?: string;
1886
+ /**
1887
+ * IDs of the line items this membership applies to.
1888
+ * @minSize 1
1889
+ * @maxSize 300
1890
+ * @minLength 1
1891
+ * @maxLength 100
1892
+ */
1893
+ lineItemIds?: string[];
1894
+ }
1895
+ export interface AdditionalFee {
1896
+ /**
1897
+ * Additional fee's unique code (or ID) for future processing.
1898
+ * @minLength 1
1899
+ * @maxLength 100
1900
+ */
1901
+ code?: string | null;
1902
+ /**
1903
+ * Translated additional fee's name.
1904
+ * @minLength 1
1905
+ * @maxLength 50
1906
+ */
1907
+ name?: string;
1908
+ /** Additional fee's price. */
1909
+ price?: MultiCurrencyPrice;
1910
+ /** Tax details. */
1911
+ taxDetails?: ItemTaxFullDetails;
1912
+ /**
1913
+ * Provider's app id.
1914
+ * @minLength 1
1915
+ * @maxLength 100
1916
+ */
1917
+ providerAppId?: string | null;
1918
+ /** Additional fee's price before tax. */
1919
+ priceBeforeTax?: MultiCurrencyPrice;
1920
+ /** Additional fee's price after tax. */
1921
+ priceAfterTax?: MultiCurrencyPrice;
1922
+ /**
1923
+ * Optional - Line items associated with this additional fee.
1924
+ * If no `lineItemIds` are provided, the fee will be associated with the whole cart/checkout/order.
1925
+ * @format GUID
1926
+ */
1927
+ lineItemIds?: string[];
1928
+ /** the source the additional fee was added from */
1929
+ source?: AdditionalFeeSource;
1930
+ }
1931
+ export declare enum AdditionalFeeSource {
1932
+ UNKNOWN_ADDITIONAL_FEE_SOURCE = "UNKNOWN_ADDITIONAL_FEE_SOURCE",
1933
+ /** The additional fee was added by an additional fee service plugin */
1934
+ SERVICE_PLUGIN = "SERVICE_PLUGIN",
1935
+ /** The additional fee was added on the item either via the catalog or on custom line item */
1936
+ ITEM = "ITEM",
1937
+ /** The additional fee was added manually on the request */
1938
+ MANUAL = "MANUAL",
1939
+ /** The additional fee was added by the shipping provider */
1940
+ SHIPPING = "SHIPPING"
1941
+ }
1942
+ export interface ConversionInfo {
1943
+ /**
1944
+ * The site currency.
1945
+ * @readonly
1946
+ * @format CURRENCY
1947
+ */
1948
+ siteCurrency?: string;
1949
+ /**
1950
+ * The rate used when converting from the site currency to the checkout currency.
1951
+ * @readonly
1952
+ * @decimalValue options { gt:0, lte:1000000000000000 }
1953
+ */
1954
+ conversionRate?: string;
1955
+ }
1956
+ export interface Violation {
1957
+ /** 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. */
1958
+ severity?: Severity;
1959
+ /** Target location on a checkout or cart page where the violation will be displayed. */
1960
+ target?: Target;
1961
+ /**
1962
+ * 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>`.
1963
+ * @minLength 1
1964
+ * @maxLength 1000
1965
+ */
1966
+ description?: string | null;
1967
+ }
1968
+ export declare enum Severity {
1969
+ /** The user is allowed to move forward in the flow. */
1970
+ WARNING = "WARNING",
1971
+ /**
1972
+ * The user is blocked from moving forward in the flow.
1973
+ * For example, if callerContext is CART - moving to checkout is blocked. if callerContext is CHECKOUT, placing an order is blocked.
1974
+ */
1975
+ ERROR = "ERROR"
1976
+ }
1977
+ export interface Target extends TargetTargetTypeOneOf {
1978
+ /** General (other) violation. */
1979
+ other?: Other;
1980
+ /** Specific line item violation. */
1981
+ lineItem?: TargetLineItem;
1982
+ }
1983
+ /** @oneof */
1984
+ export interface TargetTargetTypeOneOf {
1985
+ /** General (other) violation. */
1986
+ other?: Other;
1987
+ /** Specific line item violation. */
1988
+ lineItem?: TargetLineItem;
1989
+ }
1990
+ /** Available locations on the webpage */
1991
+ export declare enum NameInOther {
1992
+ /** Default location, in case no specific location is specified. */
1993
+ OTHER_DEFAULT = "OTHER_DEFAULT"
1994
+ }
1995
+ /** Available locations on the line item */
1996
+ export declare enum NameInLineItem {
1997
+ /** Default location, in case no specific location is specified. */
1998
+ LINE_ITEM_DEFAULT = "LINE_ITEM_DEFAULT"
1999
+ }
2000
+ export declare enum SuggestedFix {
2001
+ /** No suggested fix is specified. The user should refer to the violation description to resolve the issue. */
2002
+ UNKNOWN_SUGGESTED_FIX = "UNKNOWN_SUGGESTED_FIX",
2003
+ /** The line item should be removed from the cart or checkout to resolve the violation. */
2004
+ REMOVE_LINE_ITEM = "REMOVE_LINE_ITEM"
2005
+ }
2006
+ /** General (other) violation. */
2007
+ export interface Other {
2008
+ /** Location on a checkout or a cart page where a general (other) violation will be displayed. */
2009
+ name?: NameInOther;
2010
+ }
2011
+ /** Specific line item violation. */
2012
+ export interface TargetLineItem {
2013
+ /** Location on a checkout or a cart page where the specific line item violation will be displayed. */
2014
+ name?: NameInLineItem;
2015
+ /** ID of the line item containing the violation. */
2016
+ id?: string | null;
2017
+ }
2018
+ export interface CustomSettings {
2019
+ /**
2020
+ * Whether to restrict the option to add or remove a gift card on the checkout page.
2021
+ *
2022
+ * Default: `false`
2023
+ */
2024
+ lockGiftCard?: boolean;
2025
+ /**
2026
+ * Whether to restrict the option to add or remove a coupon code on the checkout page.
2027
+ *
2028
+ * Default: `false`
2029
+ */
2030
+ lockCouponCode?: boolean;
2031
+ /**
2032
+ * Whether to disable policy agreement checkout in the checkout page
2033
+ *
2034
+ * Default: `false`
2035
+ */
2036
+ disabledPolicyAgreementCheckbox?: boolean;
2037
+ /**
2038
+ * Whether to disable manual payment option for this checkout.
2039
+ *
2040
+ * Default: `false`
2041
+ */
2042
+ disabledManualPayment?: boolean;
2043
+ }
2044
+ export interface CustomContentReference {
2045
+ /**
2046
+ * ID of the app providing the content.
2047
+ *
2048
+ * You can get your app's ID from its page in the [app dashboard](https://dev.wix.com/dc3/my-apps/).
2049
+ * @format GUID
2050
+ */
2051
+ appId?: string;
2052
+ /**
2053
+ * ID of the component within the app it belongs to.
2054
+ *
2055
+ * You can get your component's ID from its page in the [app dashboard](https://dev.wix.com/dc3/my-apps/).
2056
+ * @format GUID
2057
+ */
2058
+ componentId?: string;
2059
+ }
2060
+ export interface ExternalReference {
2061
+ /**
2062
+ * ID of the app associated with the purchase flow.
2063
+ * For example, the Wix Pay Links app ID.
2064
+ * @format GUID
2065
+ * @immutable
2066
+ */
2067
+ appId?: string;
2068
+ /**
2069
+ * Reference to an external resource ID. Used to link the purchase flow to a specific entity in an external system.
2070
+ * For example, a Wix Pay Link ID.
2071
+ * @minLength 1
2072
+ * @maxLength 100
2073
+ * @immutable
2074
+ */
2075
+ resourceId?: string | null;
2076
+ }
2077
+ export interface SubscriptionCharges {
2078
+ /**
2079
+ * ids of the items the subscription is defined on
2080
+ * @format GUID
2081
+ * @minSize 1
2082
+ * @maxSize 300
2083
+ */
2084
+ lineItemIds?: string[];
2085
+ /**
2086
+ * Generated description explaining future charges amount and schedule.
2087
+ * Translated to subscription order buyer language, or to site language if was not provided.
2088
+ * @maxLength 1000
2089
+ */
2090
+ description?: string | null;
2091
+ /**
2092
+ * Charges for subscription.
2093
+ * @maxSize 50
2094
+ */
2095
+ charges?: Charge[];
2096
+ }
2097
+ export interface Charge {
2098
+ /** The cycle number from which the charge starts. */
2099
+ cycleFrom?: number;
2100
+ /** The number of cycles for which the charge is applicable. */
2101
+ cycleCount?: number | null;
2102
+ /** Charge summary. */
2103
+ priceSummary?: PriceSummary;
2104
+ /** The billing date from which the charge starts. */
2105
+ cycleBillingDate?: Date | null;
2106
+ }
2107
+ export interface UpdatedCheckoutMessage {
2108
+ /** Previous checkout. */
2109
+ oldCheckout?: Checkout;
2110
+ /** Updated checkout. */
2111
+ updatedCheckout?: Checkout;
2112
+ }
2113
+ export interface CreateCheckoutRequest {
2114
+ /** Checkout information. */
2115
+ checkoutInfo?: Checkout;
2116
+ /** Coupon code. */
2117
+ couponCode?: string | null;
2118
+ /**
2119
+ * Catalog line items to add to the checkout.
2120
+ * @maxSize 300
2121
+ */
2122
+ lineItems?: LineItem[];
2123
+ /**
2124
+ * Custom line items to add to the checkout. Custom line items don't trigger the Catalog service plugin.
2125
+ *
2126
+ * To access and manage custom line items, your app must have the permission scope named "Manage eCommerce - Admin Permissions".
2127
+ * Learn more about [permission scopes](https://dev.wix.com/docs/build-apps/develop-your-app/access/authorization/about-permissions).
2128
+ * @maxSize 300
2129
+ */
2130
+ customLineItems?: CustomLineItem[];
2131
+ /** Sales channel that submitted the order. */
2132
+ channelType: ChannelType;
2133
+ /**
2134
+ * Gift card code.
2135
+ *
2136
+ * The checkout can only hold 1 `giftCardCode` at a time. If an additional `giftCardCode` is added, it will override the existing `giftCardCode`.
2137
+ *
2138
+ * >**Note:** Gift cards are supported through the Wix UI, though the service plugin is not currently available. Learn more about [Wix Gift Cards](https://support.wix.com/en/article/setting-up-wix-gift-cards-9451439).
2139
+ */
2140
+ giftCardCode?: string | null;
2141
+ /**
2142
+ * `overrideCheckoutUrl` allows the flexibility to redirect customers to a customized checkout page.
2143
+ *
2144
+ * This field overrides the `checkoutUrl` in a cart or checkout. `checkoutUrl` is used in the Abandoned Checkout API
2145
+ * to send customers back to their checkouts. By default, a `checkoutUrl` generates for a checkout and directs to a
2146
+ * standard Wix checkout page. When `overrideCheckoutUrl` has a value, it will replace and set the value of `checkoutUrl`.
2147
+ * @maxLength 1000
2148
+ */
2149
+ overrideCheckoutUrl?: string | null;
2150
+ }
2151
+ export interface CustomLineItem {
2152
+ /**
2153
+ * Custom line item quantity.
2154
+ *
2155
+ * Min: `1`
2156
+ * Max: `100000`
2157
+ * @min 1
2158
+ * @max 100000
2159
+ */
2160
+ quantity?: number;
2161
+ /**
2162
+ * Custom line item price.
2163
+ *
2164
+ * Must be a number or a decimal without symbols.
2165
+ * @format DECIMAL_VALUE
2166
+ * @decimalValue options { gte:0, lte:1000000000000000 }
2167
+ */
2168
+ price?: string;
2169
+ /** Additional description for the price. For example, when price is 0 but additional details about the actual price are needed - "Starts at $67". */
2170
+ priceDescription?: PriceDescription;
2171
+ /**
2172
+ * Custom line item description lines. Used for display purposes for the cart, checkout and order.
2173
+ * @maxSize 10
2174
+ */
2175
+ descriptionLines?: DescriptionLine[];
2176
+ /** Custom line item's media. */
2177
+ media?: Image;
2178
+ /**
2179
+ * Custom line item ID. If passed, `id` must be unique.
2180
+ *
2181
+ * Default: auto-generated ID
2182
+ * @format GUID
2183
+ */
2184
+ id?: string | null;
2185
+ /**
2186
+ * Tax group ID for this custom line item.
2187
+ * @format GUID
2188
+ */
2189
+ taxGroupId?: string | null;
2190
+ /** Name of the item or product. */
2191
+ productName?: ProductName;
2192
+ /** 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. */
2193
+ url?: PageUrlV2;
2194
+ /** Item type. Either a preset type or custom. */
2195
+ itemType?: ItemType;
2196
+ /**
2197
+ * Item price **before** catalog-defined discount. Defaults to `price` when not provided.
2198
+ * @format DECIMAL_VALUE
2199
+ */
2200
+ fullPrice?: string | null;
2201
+ /**
2202
+ * Item quantity available for purchase. Only return this if inventory is managed.
2203
+ * Not returning this field means that the buyer can "infinitely" tick up the number of items in the cart.
2204
+ * @max 100000
2205
+ */
2206
+ quantityAvailable?: number | null;
2207
+ /** Physical properties of the item. */
2208
+ physicalProperties?: PhysicalProperties;
2209
+ /**
2210
+ * Type of selected payment option for current item. Defaults to `FULL_PAYMENT_ONLINE`.
2211
+ *
2212
+ * + `FULL_PAYMENT_ONLINE` - Entire payment for this item happens as part of the checkout.
2213
+ * + `FULL_PAYMENT_OFFLINE` - Entire payment for this item happens after the checkout. For example, when using cash, check, or other offline payment methods.
2214
+ * + `MEMBERSHIP` - Payment for this item is done by charging a membership. When this option is used, `lineItem.price.amount` is 0.
2215
+ * + `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.
2216
+ */
2217
+ paymentOption?: PaymentOptionType;
2218
+ /**
2219
+ * Service properties. When relevant, this contains information such as date and number of participants.
2220
+ * Used, among other things, when checking for valid memberships.
2221
+ */
2222
+ serviceProperties?: ServiceProperties;
2223
+ /**
2224
+ * In cases where `catalogReference.catalogItemId` is NOT the actual catalog item ID, this field will return the true item's ID.
2225
+ *
2226
+ * + For example, for Wix Bookings, `catalogReference.catalogItemId` is the booking ID. Therefore this value is set to the service ID.
2227
+ * + In most cases, this field is the same as `catalogReference.catalogItemId`.
2228
+ * + Used in membership validation.
2229
+ * @minLength 1
2230
+ * @maxLength 36
2231
+ */
2232
+ rootCatalogItemId?: string | null;
2233
+ /**
2234
+ * Partial payment for the given item to be paid upfront during the checkout.
2235
+ *
2236
+ * Eligible for catalog items with type `DEPOSIT_ONLINE`.
2237
+ * When omitted, the item's price will not be split and is expected to be paid in a single installment.
2238
+ * @format DECIMAL_VALUE
2239
+ */
2240
+ depositAmount?: string | null;
2241
+ /**
2242
+ * Delivery profile ID.
2243
+ * @format GUID
2244
+ */
2245
+ deliveryProfileId?: string | null;
2246
+ /** 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. */
2247
+ catalogReference?: CatalogReference;
2248
+ /**
2249
+ * Item payment policy that requires customer consent to complete purchase. The payment policy will be displayed on the checkout page.
2250
+ * @minLength 1
2251
+ * @maxLength 1000
2252
+ * @readonly
2253
+ */
2254
+ consentRequiredPaymentPolicy?: string | null;
2255
+ /**
2256
+ * Whether to save the payment method on the order.
2257
+ *
2258
+ * Default: `false`
2259
+ * @readonly
2260
+ */
2261
+ savePaymentMethod?: boolean;
2262
+ }
2263
+ export interface MerchantDiscountInput {
2264
+ /**
2265
+ * Discount amount.
2266
+ * @decimalValue options { gte:0 }
2267
+ */
2268
+ amount?: string;
2269
+ /**
2270
+ * IDs of line items the discount applies to.
2271
+ * @format GUID
2272
+ * @maxSize 300
2273
+ */
2274
+ lineItemIds?: string[];
2275
+ }
2276
+ export interface CreateCheckoutResponse {
2277
+ /** Newly created checkout. */
2278
+ checkout?: Checkout;
2279
+ }
2280
+ export interface ShippingCalculationErrorData extends ShippingCalculationErrorDataShippingCalculationErrorOneOf {
2281
+ generalShippingCalculationError?: Details;
2282
+ carrierErrors?: CarrierErrors;
2283
+ }
2284
+ /** @oneof */
2285
+ export interface ShippingCalculationErrorDataShippingCalculationErrorOneOf {
2286
+ generalShippingCalculationError?: Details;
2287
+ carrierErrors?: CarrierErrors;
2288
+ }
2289
+ export interface GetCheckoutRequest {
2290
+ /**
2291
+ * Checkout ID.
2292
+ * @format GUID
2293
+ */
2294
+ id: string;
2295
+ }
2296
+ export interface GetCheckoutResponse {
2297
+ /** Retrieved checkout. */
2298
+ checkout?: Checkout;
2299
+ }
2300
+ export interface GetCheckoutWithAllExtendedFieldsRequest {
2301
+ /**
2302
+ * Checkout ID.
2303
+ * @format GUID
2304
+ */
2305
+ id?: string;
2306
+ }
2307
+ export interface GetCheckoutWithAllExtendedFieldsResponse {
2308
+ /** Retrieved checkout. */
2309
+ checkout?: Checkout;
2310
+ }
2311
+ export interface GetCheckoutByCartIdRequest {
2312
+ /**
2313
+ * Cart ID.
2314
+ * @format GUID
2315
+ */
2316
+ id: string;
2317
+ }
2318
+ export interface GetCheckoutByCartIdResponse {
2319
+ /** Retrieved checkout. */
2320
+ checkout?: Checkout;
2321
+ }
2322
+ export interface GetWixCheckoutURLRequest {
2323
+ /**
2324
+ * Checkout ID.
2325
+ * @format GUID
2326
+ */
2327
+ id: string;
2328
+ }
2329
+ export interface GetWixCheckoutURLResponse {
2330
+ /** Checkout URL. */
2331
+ checkoutUrl?: string;
2332
+ }
2333
+ export interface GetCheckoutURLRequest {
2334
+ /**
2335
+ * Checkout ID.
2336
+ * @format GUID
2337
+ */
2338
+ id: string;
2339
+ }
2340
+ export interface GetCheckoutURLResponse {
2341
+ /** Checkout URL. */
2342
+ checkoutUrl?: string;
2343
+ }
2344
+ export interface UpdateCheckoutRequest {
2345
+ /** Checkout information. */
2346
+ checkout: Checkout;
2347
+ /**
2348
+ * Coupon code.
2349
+ *
2350
+ * The checkout can only hold 1 `couponCode` at a time. If an additional `couponCode` is added, it will override the existing `couponCode`.
2351
+ */
2352
+ couponCode?: string | null;
2353
+ /** Gift card code. */
2354
+ giftCardCode?: string | null;
2355
+ /**
2356
+ * `overrideCheckoutUrl` allows the flexibility to redirect customers to a customized checkout page.
2357
+ *
2358
+ * This field overrides the `checkoutUrl` in a cart or checkout. `checkoutUrl` is used in the Abandoned Checkout API
2359
+ * to send customers back to their checkouts. By default, a `checkoutUrl` generates for a checkout and directs to a
2360
+ * standard Wix checkout page. When `overrideCheckoutUrl` has a value, it will replace and set the value of `checkoutUrl`.
2361
+ * @maxLength 1000
2362
+ */
2363
+ overrideCheckoutUrl?: string | null;
2364
+ /**
2365
+ * Catalog line items.
2366
+ * @maxSize 300
2367
+ */
2368
+ lineItems?: LineItem[];
2369
+ /**
2370
+ * Custom line items. Custom line items don't trigger the Catalog service plugin.
2371
+ *
2372
+ * To access and manage custom line items, your app must have the permission scope named "Manage eCommerce - Admin Permissions".
2373
+ * Learn more about [permission scopes](https://dev.wix.com/docs/build-apps/develop-your-app/access/authorization/about-permissions).
2374
+ * @maxSize 300
2375
+ */
2376
+ customLineItems?: CustomLineItem[];
2377
+ }
2378
+ export interface UpdateCheckoutResponse {
2379
+ /** Updated checkout. */
2380
+ checkout?: Checkout;
2381
+ }
2382
+ export interface RemoveCouponRequest {
2383
+ /**
2384
+ * ID of the checkout to remove the coupon from.
2385
+ * @format GUID
2386
+ */
2387
+ id: string;
2388
+ }
2389
+ export interface RemoveCouponResponse {
2390
+ /** Updated checkout after removal of coupon. */
2391
+ checkout?: Checkout;
2392
+ }
2393
+ export interface RemoveGiftCardRequest {
2394
+ /**
2395
+ * ID of the checkout to remove the gift card from.
2396
+ * @format GUID
2397
+ */
2398
+ id: string;
2399
+ }
2400
+ export interface RemoveGiftCardResponse {
2401
+ /** Updated checkout after removal of gift card. */
2402
+ checkout?: Checkout;
2403
+ }
2404
+ export interface RemoveOverrideCheckoutUrlRequest {
2405
+ /**
2406
+ * ID of the checkout to remove the override checkout url from.
2407
+ * @format GUID
2408
+ */
2409
+ id: string;
2410
+ }
2411
+ export interface RemoveOverrideCheckoutUrlResponse {
2412
+ /** Updated checkout after removal of override checkout url. */
2413
+ checkout?: Checkout;
2414
+ }
2415
+ export interface AddToCheckoutRequest {
2416
+ /**
2417
+ * Checkout ID.
2418
+ * @format GUID
2419
+ */
2420
+ id: string;
2421
+ /**
2422
+ * Catalog line items.
2423
+ * @maxSize 100
2424
+ */
2425
+ lineItems?: LineItem[];
2426
+ /**
2427
+ * Custom line items. Custom line items don't trigger the Catalog service plugin.
2428
+ *
2429
+ * To access and manage custom line items, your app must have the permission scope named "Manage eCommerce - Admin Permissions".
2430
+ * Learn more about [permission scopes](https://dev.wix.com/docs/build-apps/develop-your-app/access/authorization/about-permissions).
2431
+ * @maxSize 100
2432
+ */
2433
+ customLineItems?: CustomLineItem[];
2434
+ }
2435
+ export interface AddToCheckoutResponse {
2436
+ /** Updated checkout. */
2437
+ checkout?: Checkout;
2438
+ }
2439
+ export interface RemoveLineItemsRequest {
2440
+ /**
2441
+ * ID of the checkout to remove line items from.
2442
+ * @format GUID
2443
+ */
2444
+ id: string;
2445
+ /**
2446
+ * IDs of the line items to remove from the checkout.
2447
+ *
2448
+ * To find the IDs of the checkout line items you'd like to remove,
2449
+ * pass the checkout ID to Get Checkout and look for the IDs under
2450
+ * `lineItems`.
2451
+ * @format GUID
2452
+ * @minSize 1
2453
+ * @maxSize 300
2454
+ */
2455
+ lineItemIds: string[];
2456
+ }
2457
+ export interface RemoveLineItemsResponse {
2458
+ /** Updated checkout after removal of line items. */
2459
+ checkout?: Checkout;
2460
+ }
2461
+ export interface CreateOrderRequest {
2462
+ /**
2463
+ * Checkout ID.
2464
+ * @format GUID
2465
+ */
2466
+ id: string;
2467
+ /** Whether the payment method should be saved on the order. */
2468
+ savePaymentMethod?: boolean;
2469
+ /** Whether to authorize the payment and delay the capture. */
2470
+ delayCapture?: boolean;
2471
+ }
2472
+ export interface CreateOrderResponse extends CreateOrderResponseIdOneOf {
2473
+ /**
2474
+ * ID of newly created order.
2475
+ * @format GUID
2476
+ */
2477
+ orderId?: string;
2478
+ /**
2479
+ * ID of newly created subscription. Learn more about your site's [Subscriptions](https://support.wix.com/en/article/wix-stores-managing-product-subscriptions).
2480
+ * @format GUID
2481
+ */
2482
+ subscriptionId?: string;
2483
+ /**
2484
+ * Payment gateway order ID.
2485
+ *
2486
+ * For online orders, pass this value as the `paymentId` parameter to the Wix Pay [`startPayment()`](https://www.wix.com/velo/reference/wix-pay-frontend/startpayment) function so your customer can pay for the order.
2487
+ * `paymentGatewayOrderId` will be returned if money needs to be charged.
2488
+ *
2489
+ * In some cases, money cannot be charged:
2490
+ * + When the total price (the `priceSummary.total.amount` field in the checkout/order objects) is `0`. For example, in the case of a free item or an item with a 100% discount.
2491
+ * + If the total price is not `0`, but the payment is covered by alternative payment methods, such as a gift card.
2492
+ */
2493
+ paymentGatewayOrderId?: string | null;
2494
+ }
2495
+ /** @oneof */
2496
+ export interface CreateOrderResponseIdOneOf {
2497
+ /**
2498
+ * ID of newly created order.
2499
+ * @format GUID
2500
+ */
2501
+ orderId?: string;
2502
+ /**
2503
+ * ID of newly created subscription. Learn more about your site's [Subscriptions](https://support.wix.com/en/article/wix-stores-managing-product-subscriptions).
2504
+ * @format GUID
2505
+ */
2506
+ subscriptionId?: string;
2507
+ }
2508
+ export interface PaymentErrorResponseData {
2509
+ paymentResponseToken?: string | null;
2510
+ transactionStatus?: string;
2511
+ failureDetails?: string | null;
2512
+ }
2513
+ export interface DoublePaymentErrorData extends DoublePaymentErrorDataIdOneOf {
2514
+ /** @format GUID */
2515
+ orderId?: string;
2516
+ /** @format GUID */
2517
+ subscriptionId?: string;
2518
+ }
2519
+ /** @oneof */
2520
+ export interface DoublePaymentErrorDataIdOneOf {
2521
+ /** @format GUID */
2522
+ orderId?: string;
2523
+ /** @format GUID */
2524
+ subscriptionId?: string;
2525
+ }
2526
+ export interface RedeemErrorData {
2527
+ reason?: string;
2528
+ }
2529
+ export interface ViolationsList {
2530
+ /** Violations risen by ValidationsSPI implementers. */
2531
+ violations?: Violation[];
2532
+ }
2533
+ export interface CreateOrderAndChargeRequest {
2534
+ /**
2535
+ * Checkout ID.
2536
+ * @format GUID
2537
+ */
2538
+ id: string;
2539
+ /** Payment token. */
2540
+ paymentToken?: string | null;
2541
+ /** Whether the payment method should be saved on the order. */
2542
+ savePaymentMethod?: boolean;
2543
+ /** Whether to authorize the payment and delay the capture. */
2544
+ delayCapture?: boolean;
2545
+ }
2546
+ export interface CreateOrderAndChargeResponse extends CreateOrderAndChargeResponseIdOneOf {
2547
+ /**
2548
+ * ID of newly created order.
2549
+ * @format GUID
2550
+ */
2551
+ orderId?: string;
2552
+ /**
2553
+ * ID of newly created subscription.
2554
+ * @format GUID
2555
+ */
2556
+ subscriptionId?: string;
2557
+ /** Payment response token. */
2558
+ paymentResponseToken?: string | null;
2559
+ /**
2560
+ * The payment gateway is cashier.
2561
+ * payment_gateway_order_id will be returned given that money was charged.
2562
+ * In some cases, money will not be charged:
2563
+ * If the total price is 0 - For example, could be a free item or a an item with 100% discount
2564
+ * If the total price is not 0, but the payment is covered by alternative payment methods such as gift card
2565
+ */
2566
+ paymentGatewayOrderId?: string | null;
2567
+ }
2568
+ /** @oneof */
2569
+ export interface CreateOrderAndChargeResponseIdOneOf {
2570
+ /**
2571
+ * ID of newly created order.
2572
+ * @format GUID
2573
+ */
2574
+ orderId?: string;
2575
+ /**
2576
+ * ID of newly created subscription.
2577
+ * @format GUID
2578
+ */
2579
+ subscriptionId?: string;
2580
+ }
2581
+ export interface MarkCheckoutAsCompletedAndRedirectToUrlRequest {
2582
+ /**
2583
+ * Server-signed JWT token with required information to complete checkout
2584
+ * @maxLength 4096
2585
+ */
2586
+ token: string;
2587
+ }
2588
+ export interface RawHttpResponse {
2589
+ body?: Uint8Array;
2590
+ statusCode?: number | null;
2591
+ headers?: HeadersEntry[];
2592
+ }
2593
+ export interface HeadersEntry {
2594
+ key?: string;
2595
+ value?: string;
2596
+ }
2597
+ export interface MarkCheckoutAsCompletedRequest {
2598
+ /**
2599
+ * Checkout ID.
2600
+ * @format GUID
2601
+ */
2602
+ id: string;
2603
+ }
2604
+ export interface MarkCheckoutAsCompletedResponse {
2605
+ }
2606
+ /** Triggered when an order created from this checkout is successfully paid for or when a checkout is marked as completed. */
2607
+ export interface CheckoutMarkedAsCompleted {
2608
+ checkout?: Checkout;
2609
+ }
2610
+ export interface UpdateLineItemsQuantityRequest {
2611
+ /**
2612
+ * Checkout ID.
2613
+ * @format GUID
2614
+ */
2615
+ id: string;
2616
+ /**
2617
+ * Line item info to update.
2618
+ * @minSize 1
2619
+ * @maxSize 100
2620
+ */
2621
+ lineItems: LineItemQuantityUpdate[];
2622
+ }
2623
+ export interface LineItemQuantityUpdate {
2624
+ /**
2625
+ * ID of the line item to update.
2626
+ * @format GUID
2627
+ */
2628
+ id?: string;
2629
+ /**
2630
+ * New total amount of the line item,
2631
+ * not the amount to add to the current `quantity`.
2632
+ *
2633
+ * Min: `1`
2634
+ *
2635
+ * Max: `100000`
2636
+ * @min 1
2637
+ * @max 100000
2638
+ */
2639
+ quantity?: number;
2640
+ }
2641
+ export interface UpdateLineItemsQuantityResponse {
2642
+ /** Updated checkout. */
2643
+ checkout?: Checkout;
2644
+ }
2645
+ export interface GetCheckoutPaymentSettingsRequest {
2646
+ /**
2647
+ * Checkout ID.
2648
+ * @format GUID
2649
+ */
2650
+ id: string;
2651
+ }
2652
+ export interface GetCheckoutPaymentSettingsResponse {
2653
+ blockedPaymentOptions?: GetCheckoutPaymentSettingsResponsePaymentOption[];
2654
+ }
2655
+ export declare enum GetCheckoutPaymentSettingsResponsePaymentOption {
2656
+ UNKNOWN_PAYMENT_OPTION = "UNKNOWN_PAYMENT_OPTION",
2657
+ MANUAL = "MANUAL"
2658
+ }
2659
+ export interface DeleteCheckoutRequest {
2660
+ /**
2661
+ * ID of the checkout to delete.
2662
+ * @format GUID
2663
+ */
2664
+ id?: string;
2665
+ }
2666
+ export interface DeleteCheckoutResponse {
2667
+ }
2668
+ export interface SubscriptionCreated {
2669
+ subscription?: Subscription;
2670
+ }
2671
+ export interface Subscription {
2672
+ /**
2673
+ * Subscription id (auto-generated upon subscription creation)
2674
+ * @readonly
2675
+ */
2676
+ id?: string;
2677
+ /**
2678
+ * id of subscription in external system
2679
+ * @format GUID
2680
+ */
2681
+ externalId?: string | null;
2682
+ /**
2683
+ * Subscription creation date
2684
+ * @readonly
2685
+ */
2686
+ dateCreated?: Date | null;
2687
+ /**
2688
+ * The id of the cart this order was created from
2689
+ * @format GUID
2690
+ */
2691
+ cartId?: string | null;
2692
+ /**
2693
+ * The id of the checkout this subscriptions was created from
2694
+ * @format GUID
2695
+ */
2696
+ checkoutId?: string | null;
2697
+ /** member or contact */
2698
+ buyerInfo?: V1BuyerInfo;
2699
+ /**
2700
+ * Line items ordered
2701
+ * @minSize 1
2702
+ * @maxSize 1
2703
+ */
2704
+ lineItems?: V1LineItem[];
2705
+ /** Totals for subscription's line items */
2706
+ totals?: Totals;
2707
+ /** site settings at the moment when subscription created */
2708
+ storeSettings?: StoreSettings;
2709
+ /** Full billing address */
2710
+ billingAddress?: Address;
2711
+ /** Delivery information */
2712
+ shippingInfo?: V1ShippingInfo;
2713
+ /** Coupon that was applied to subscription */
2714
+ appliedCoupon?: AppliedCoupon;
2715
+ /**
2716
+ * Message from the customer (e.g., customization request)
2717
+ * @maxLength 1000
2718
+ */
2719
+ buyerNote?: string | null;
2720
+ /** Custom field */
2721
+ customField?: V1CustomField;
2722
+ /** Information about subscription option from which subscription was created */
2723
+ subscriptionOptionInfo?: V1SubscriptionOptionInfo;
2724
+ /** Sales channel that submitted this subscription */
2725
+ channelInfo?: ChannelInfo;
2726
+ /** defines when subscriber will be charged: for frequency=MONTH, billingCycles=6, interval=2 payment will be done every 2 month during one year */
2727
+ subscriptionSettings?: V1SubscriptionSettings;
2728
+ /**
2729
+ * information about first subscription payment
2730
+ * @readonly
2731
+ */
2732
+ billingInfo?: BillingInfo;
2733
+ }
2734
+ /** Buyer Info */
2735
+ export interface V1BuyerInfo {
2736
+ /**
2737
+ * Wix customer ID
2738
+ * @format GUID
2739
+ */
2740
+ id?: string;
2741
+ /** Customer type */
2742
+ identityType?: IdentityType;
2743
+ }
2744
+ export declare enum IdentityType {
2745
+ UNSPECIFIED_IDENTITY_TYPE = "UNSPECIFIED_IDENTITY_TYPE",
2746
+ /** Site member */
2747
+ MEMBER = "MEMBER",
2748
+ /** Contact */
2749
+ CONTACT = "CONTACT"
2750
+ }
2751
+ export interface V1LineItem {
2752
+ /** Line item ID (auto-generated) */
2753
+ index?: number;
2754
+ /**
2755
+ * Line item quantity
2756
+ * @min 1
2757
+ * @max 100000
2758
+ */
2759
+ quantity?: number;
2760
+ /**
2761
+ * Line item variantId (from Stores Catalog)
2762
+ * @format GUID
2763
+ */
2764
+ variantId?: string | null;
2765
+ /**
2766
+ * Line item options ordered
2767
+ * @maxSize 6
2768
+ */
2769
+ options?: OptionSelection[];
2770
+ /**
2771
+ * Line item custom text field selections
2772
+ * @maxSize 20
2773
+ */
2774
+ customTextFields?: CustomTextFieldSelection[];
2775
+ /** Charges details */
2776
+ chargeDetails?: ChargeDetails;
2777
+ /** Product details */
2778
+ productDetails?: ProductDetails;
2779
+ }
2780
+ export interface OptionSelection {
2781
+ /**
2782
+ * Option name
2783
+ * @maxLength 200
2784
+ */
2785
+ option?: string;
2786
+ /**
2787
+ * Selected choice for this option
2788
+ * @maxLength 500
2789
+ */
2790
+ selection?: string;
2791
+ }
2792
+ export interface CustomTextFieldSelection {
2793
+ /**
2794
+ * Custom text field name
2795
+ * @maxLength 100
2796
+ */
2797
+ title?: string;
2798
+ /**
2799
+ * Custom text field value
2800
+ * @maxLength 500
2801
+ */
2802
+ value?: string;
2803
+ }
2804
+ export interface ChargeDetails {
2805
+ /**
2806
+ * price of line item (depends on subscription option)
2807
+ * @max 999999999.99
2808
+ */
2809
+ price?: number;
2810
+ /**
2811
+ * Total price charged to the customer (for this line items) after computation of quantity and discount
2812
+ * @max 999999999.99
2813
+ */
2814
+ totalPrice?: number | null;
2815
+ /**
2816
+ * Discount applied for this line item
2817
+ * @max 999999999.99
2818
+ */
2819
+ discount?: number | null;
2820
+ /**
2821
+ * Tax applied for this line item
2822
+ * @max 999999999.99
2823
+ */
2824
+ tax?: number | null;
2825
+ /** Is tax applied for this line item */
2826
+ taxIncludedInPrice?: boolean;
2827
+ /**
2828
+ * Tax rate %, as a decimal point >= 0
2829
+ * @decimalValue options { maxScale:6, gte:0 }
2830
+ */
2831
+ taxRate?: string | null;
2832
+ }
2833
+ export interface ProductDetails {
2834
+ /**
2835
+ * Line item product ID (optional for POS orders)
2836
+ * @minLength 1
2837
+ */
2838
+ productId?: string | null;
2839
+ /**
2840
+ * Line item name
2841
+ * @minLength 1
2842
+ * @maxLength 100
2843
+ */
2844
+ name?: string;
2845
+ /**
2846
+ * Line item name translated to buyer's language
2847
+ * @minLength 1
2848
+ * @maxLength 100
2849
+ */
2850
+ translatedName?: string | null;
2851
+ /** Line item type (may be extended) */
2852
+ lineItemType?: LineItemType;
2853
+ /** Line item primary media for preview */
2854
+ mediaItem?: MediaItem;
2855
+ /**
2856
+ * Line item SKU
2857
+ * @maxLength 40
2858
+ */
2859
+ sku?: string | null;
2860
+ /**
2861
+ * Line item weight
2862
+ * @max 999999999.99
2863
+ */
2864
+ weight?: number | null;
2865
+ /**
2866
+ * Line item notes
2867
+ * @maxLength 1000
2868
+ */
2869
+ notes?: string | null;
2870
+ /**
2871
+ * Line item fulfillerId from stores fulfillers. No value means self fulfilled
2872
+ * @format GUID
2873
+ */
2874
+ fulfillerId?: string | null;
2875
+ /**
2876
+ * Tax group id
2877
+ * @format GUID
2878
+ */
2879
+ taxGroupId?: string | null;
2880
+ /**
2881
+ * App id from the catalog reference
2882
+ * @format GUID
2883
+ */
2884
+ appId?: string | null;
2885
+ }
2886
+ export declare enum LineItemType {
2887
+ /** Line item type can't be classified, due to an error */
2888
+ UNSPECIFIED_LINE_ITEM_TYPE = "UNSPECIFIED_LINE_ITEM_TYPE",
2889
+ /** Physical item type */
2890
+ PHYSICAL = "PHYSICAL",
2891
+ /** Digital item type */
2892
+ DIGITAL = "DIGITAL",
2893
+ /** Custom item price */
2894
+ CUSTOM_AMOUNT_ITEM = "CUSTOM_AMOUNT_ITEM"
2895
+ }
2896
+ export interface MediaItem {
2897
+ /**
2898
+ * Media type
2899
+ * @readonly
2900
+ */
2901
+ mediaType?: MediaItemType;
2902
+ /**
2903
+ * Media URL
2904
+ * @format WEB_URL
2905
+ * @readonly
2906
+ */
2907
+ url?: string;
2908
+ /**
2909
+ * Media item width
2910
+ * @max 5000
2911
+ * @readonly
2912
+ */
2913
+ width?: number;
2914
+ /**
2915
+ * Media item height
2916
+ * @max 5000
2917
+ * @readonly
2918
+ */
2919
+ height?: number;
2920
+ /** Media ID (for media items previously saved in Wix Media) */
2921
+ id?: string | null;
2922
+ /** Media external URL */
2923
+ externalImageUrl?: string | null;
2924
+ /**
2925
+ * Alternative text for presentation when media cannot be displayed
2926
+ * @maxLength 256
2927
+ */
2928
+ altText?: string | null;
2929
+ }
2930
+ export declare enum MediaItemType {
2931
+ /** Media item type can't be classified, due to an error */
2932
+ UNSPECIFIED_MEDIA_TYPE_ITEM = "UNSPECIFIED_MEDIA_TYPE_ITEM",
2933
+ /** Image item type */
2934
+ IMAGE = "IMAGE"
2935
+ }
2936
+ export interface Totals {
2937
+ /**
2938
+ * Subtotal of all line items, before tax
2939
+ * @max 999999999.99
2940
+ */
2941
+ subtotal?: number;
2942
+ /**
2943
+ * Total shipping price, including tax
2944
+ * @max 999999999.99
2945
+ */
2946
+ shipping?: number;
2947
+ /**
2948
+ * Total tax
2949
+ * @max 999999999.99
2950
+ */
2951
+ tax?: number;
2952
+ /**
2953
+ * Total calculated discount value
2954
+ * @max 999999999.99
2955
+ */
2956
+ discount?: number;
2957
+ /**
2958
+ * Total price
2959
+ * @max 999999999.99
2960
+ */
2961
+ total?: number;
2962
+ /**
2963
+ * Total weight
2964
+ * @max 999999999.99
2965
+ */
2966
+ weight?: number | null;
2967
+ /**
2968
+ * Total line items quantity
2969
+ * @readonly
2970
+ */
2971
+ quantity?: number;
2972
+ }
2973
+ export interface StoreSettings {
2974
+ /**
2975
+ * Currency used for pricing in this store
2976
+ * @maxLength 3
2977
+ * @format CURRENCY
2978
+ */
2979
+ currency?: string | null;
2980
+ /** Weight unit used in this store */
2981
+ weightUnit?: WeightUnit;
2982
+ /**
2983
+ * The language to be used when communicating with the buyer
2984
+ * For a site that support multiple languages, this would be the language the buyer selected
2985
+ * Otherwise this would be the site language
2986
+ * @minLength 2
2987
+ * @maxLength 2
2988
+ */
2989
+ buyerLanguage?: string | null;
2990
+ }
2991
+ export interface Address extends AddressAddressLine1OptionsOneOf {
2992
+ /**
2993
+ * Address line 1 (free text)
2994
+ * @maxLength 1000
2995
+ */
2996
+ addressLine1?: string;
2997
+ /** Address line 1 (street) */
2998
+ street?: Street;
2999
+ /** Addressee name */
3000
+ fullName?: FullName;
3001
+ /**
3002
+ * Country code (2 letters)
3003
+ * @format COUNTRY
3004
+ */
3005
+ country?: string | null;
3006
+ /**
3007
+ * State or district
3008
+ * @maxLength 50
3009
+ */
3010
+ subdivision?: string | null;
3011
+ /**
3012
+ * City name
3013
+ * @maxLength 150
3014
+ */
3015
+ city?: string | null;
3016
+ /**
3017
+ * ZIP/postal code
3018
+ * @maxLength 200
3019
+ */
3020
+ zipCode?: string | null;
3021
+ /**
3022
+ * Phone number
3023
+ * @maxLength 200
3024
+ */
3025
+ phone?: string | null;
3026
+ /**
3027
+ * Company name
3028
+ * @maxLength 500
3029
+ */
3030
+ company?: string | null;
3031
+ /**
3032
+ * Email address
3033
+ * @maxLength 500
3034
+ */
3035
+ email?: string | null;
3036
+ /**
3037
+ * address line
3038
+ * @maxLength 250
3039
+ */
3040
+ addressLine2?: string | null;
3041
+ /** Tax information (for Brazil only) */
3042
+ vatId?: VatId;
3043
+ }
3044
+ /** @oneof */
3045
+ export interface AddressAddressLine1OptionsOneOf {
3046
+ /**
3047
+ * Address line 1 (free text)
3048
+ * @maxLength 1000
3049
+ */
3050
+ addressLine1?: string;
3051
+ /** Address line 1 (street) */
3052
+ street?: Street;
3053
+ }
3054
+ export interface FullName {
3055
+ /**
3056
+ * Customer's first name
3057
+ * @maxLength 1000
3058
+ */
3059
+ firstName?: string;
3060
+ /**
3061
+ * Customer's last name
3062
+ * @maxLength 1000
3063
+ */
3064
+ lastName?: string;
3065
+ }
3066
+ export interface Street {
3067
+ /**
3068
+ * Street number
3069
+ * @maxLength 500
3070
+ */
3071
+ number?: string;
3072
+ /**
3073
+ * Street name
3074
+ * @maxLength 1000
3075
+ */
3076
+ name?: string;
3077
+ }
3078
+ export interface VatId {
3079
+ /**
3080
+ * Customer's tax ID.
3081
+ * @maxLength 50
3082
+ */
3083
+ number?: string;
3084
+ /**
3085
+ * Tax type.
3086
+ * + `CPF`: For individual tax payers.
3087
+ * + `CNPJ`: For corporations.
3088
+ */
3089
+ type?: VatType;
3090
+ }
3091
+ /** Brazilian tax info types */
3092
+ export declare enum VatType {
3093
+ /** When the tax info type can't be classified, due to an error */
3094
+ UNSPECIFIED_TAX_TYPE = "UNSPECIFIED_TAX_TYPE",
3095
+ /** CPF - for individual tax payers */
3096
+ CPF = "CPF",
3097
+ /** CNPJ - for corporations */
3098
+ CNPJ = "CNPJ"
3099
+ }
3100
+ export interface V1ShippingInfo extends V1ShippingInfoDetailsOneOf {
3101
+ /** Shipment details (when this object describes shipment) */
3102
+ shipmentDetails?: ShipmentDetails;
3103
+ /** Pickup details (when this object describes pickup) */
3104
+ pickupDetails?: V1PickupDetails;
3105
+ /**
3106
+ * Delivery option name
3107
+ * @maxLength 250
3108
+ */
3109
+ deliveryOption?: string;
3110
+ /**
3111
+ * Delivery option delivery time
3112
+ * @maxLength 500
3113
+ */
3114
+ estimatedDeliveryTime?: string | null;
3115
+ }
3116
+ /** @oneof */
3117
+ export interface V1ShippingInfoDetailsOneOf {
3118
+ /** Shipment details (when this object describes shipment) */
3119
+ shipmentDetails?: ShipmentDetails;
3120
+ /** Pickup details (when this object describes pickup) */
3121
+ pickupDetails?: V1PickupDetails;
3122
+ }
3123
+ export interface ShipmentDetails {
3124
+ /** Shipping destination address */
3125
+ address?: Address;
3126
+ /**
3127
+ * Discount applied for shipping
3128
+ * @max 999999999.99
3129
+ */
3130
+ discount?: number | null;
3131
+ /**
3132
+ * Tax applied for shipping
3133
+ * @max 999999999.99
3134
+ */
3135
+ tax?: number | null;
3136
+ /** Whether tax is included in the price */
3137
+ taxIncludedInPrice?: boolean;
3138
+ /**
3139
+ * Tax rate % for shipping, as a decimal point >= 0
3140
+ * @decimalValue options { maxScale:6, gte:0 }
3141
+ */
3142
+ taxRate?: string | null;
3143
+ }
3144
+ export interface V1PickupDetails {
3145
+ /** Pickup address */
3146
+ address?: PickupAddress;
3147
+ /**
3148
+ * Store owner's pickup instructions
3149
+ * @maxLength 1000
3150
+ */
3151
+ pickupInstructions?: string | null;
3152
+ }
3153
+ export interface PickupAddress {
3154
+ /**
3155
+ * Country code (2 letters)
3156
+ * @format COUNTRY
3157
+ */
3158
+ country?: string;
3159
+ /**
3160
+ * State/District
3161
+ * @maxLength 50
3162
+ */
3163
+ subdivision?: string | null;
3164
+ /**
3165
+ * Address
3166
+ * @maxLength 200
3167
+ */
3168
+ addressLine?: string;
3169
+ /**
3170
+ * City
3171
+ * @maxLength 85
3172
+ */
3173
+ city?: string;
3174
+ /**
3175
+ * ZIP/postal code
3176
+ * @maxLength 50
3177
+ */
3178
+ zipCode?: string;
3179
+ }
3180
+ export interface AppliedCoupon {
3181
+ /** Coupon ID */
3182
+ couponId?: string;
3183
+ /**
3184
+ * Coupon name
3185
+ * @maxLength 100
3186
+ */
3187
+ name?: string;
3188
+ /**
3189
+ * Coupon code
3190
+ * @maxLength 100
3191
+ */
3192
+ code?: string;
3193
+ }
3194
+ /** Custom field */
3195
+ export interface V1CustomField {
3196
+ /**
3197
+ * Free text that the customer entered in the custom field during the checkout process
3198
+ * @maxLength 250
3199
+ */
3200
+ value?: string;
3201
+ /**
3202
+ * Title for the custom field
3203
+ * @maxLength 200
3204
+ */
3205
+ title?: string;
3206
+ /**
3207
+ * The title translated according to the buyer language
3208
+ * @maxLength 200
3209
+ */
3210
+ translatedTitle?: string;
3211
+ }
3212
+ export interface V1SubscriptionOptionInfo {
3213
+ /** @format GUID */
3214
+ id?: string | null;
3215
+ /**
3216
+ * @minLength 1
3217
+ * @maxLength 20
3218
+ */
3219
+ title?: string;
3220
+ /** @maxLength 60 */
3221
+ description?: string | null;
3222
+ discount?: Discount;
3223
+ }
3224
+ export interface Discount {
3225
+ /** Discount type. */
3226
+ type?: DiscountDiscountType;
3227
+ /** Discount value. */
3228
+ value?: number;
3229
+ }
3230
+ export declare enum DiscountDiscountType {
3231
+ UNDEFINED = "UNDEFINED",
3232
+ /** No discount */
3233
+ AMOUNT = "AMOUNT",
3234
+ PERCENT = "PERCENT"
3235
+ }
3236
+ export interface ChannelInfo {
3237
+ /** Sales channel that submitted the subscription */
3238
+ type?: ChannelInfoChannelType;
3239
+ }
3240
+ export declare enum ChannelInfoChannelType {
3241
+ UNSPECIFIED = "UNSPECIFIED",
3242
+ WEB = "WEB",
3243
+ OTHER_PLATFORM = "OTHER_PLATFORM",
3244
+ WIX_APP_STORE = "WIX_APP_STORE"
3245
+ }
3246
+ export interface V1SubscriptionSettings {
3247
+ /** Frequency of recurring payment. */
3248
+ frequency?: SubscriptionFrequency;
3249
+ /** Whether subscription is renewed automatically at the end of each period. */
3250
+ autoRenewal?: boolean;
3251
+ /**
3252
+ * Number of billing cycles before subscription ends. Ignored if `autoRenewal: true`.
3253
+ * @min 2
3254
+ * @max 999
3255
+ */
3256
+ billingCycles?: number | null;
3257
+ }
3258
+ export interface BillingInfo {
3259
+ /**
3260
+ * Payment method used for this order
3261
+ * @maxLength 50
3262
+ */
3263
+ paymentMethod?: string | null;
3264
+ /**
3265
+ * Transaction ID from payment gateway (e.g., Wix Payments)
3266
+ * @maxLength 100
3267
+ */
3268
+ paymentGatewayTransactionId?: string | null;
3269
+ /**
3270
+ * Order ID from payment gateway (e.g., Wix Payments)
3271
+ * @maxLength 100
3272
+ */
3273
+ paymentGatewayOrderId?: string | null;
3274
+ }
3275
+ export interface Empty {
3276
+ }
3277
+ export interface DomainEvent extends DomainEventBodyOneOf {
3278
+ createdEvent?: EntityCreatedEvent;
3279
+ updatedEvent?: EntityUpdatedEvent;
3280
+ deletedEvent?: EntityDeletedEvent;
3281
+ actionEvent?: ActionEvent;
3282
+ /**
3283
+ * Unique event ID.
3284
+ * Allows clients to ignore duplicate webhooks.
3285
+ */
3286
+ id?: string;
3287
+ /**
3288
+ * Assumes actions are also always typed to an entity_type
3289
+ * Example: wix.stores.catalog.product, wix.bookings.session, wix.payments.transaction
3290
+ */
3291
+ entityFqdn?: string;
3292
+ /**
3293
+ * This is top level to ease client code dispatching of messages (switch on entity_fqdn+slug)
3294
+ * This is although the created/updated/deleted notion is duplication of the oneof types
3295
+ * Example: created/updated/deleted/started/completed/email_opened
3296
+ */
3297
+ slug?: string;
3298
+ /** ID of the entity associated with the event. */
3299
+ entityId?: string;
3300
+ /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example: 2020-04-26T13:57:50.699Z */
3301
+ eventTime?: Date | null;
3302
+ /**
3303
+ * Whether the event was triggered as a result of a privacy regulation application
3304
+ * (for example, GDPR).
3305
+ */
3306
+ triggeredByAnonymizeRequest?: boolean | null;
3307
+ /** If present, indicates the action that triggered the event. */
3308
+ originatedFrom?: string | null;
3309
+ /**
3310
+ * A sequence number defining the order of updates to the underlying entity.
3311
+ * For example, given that some entity was updated at 16:00 and than again at 16:01,
3312
+ * it is guaranteed that the sequence number of the second update is strictly higher than the first.
3313
+ * As the consumer, you can use this value to ensure that you handle messages in the correct order.
3314
+ * To do so, you will need to persist this number on your end, and compare the sequence number from the
3315
+ * message against the one you have stored. Given that the stored number is higher, you should ignore the message.
3316
+ */
3317
+ entityEventSequence?: string | null;
3318
+ }
3319
+ /** @oneof */
3320
+ export interface DomainEventBodyOneOf {
3321
+ createdEvent?: EntityCreatedEvent;
3322
+ updatedEvent?: EntityUpdatedEvent;
3323
+ deletedEvent?: EntityDeletedEvent;
3324
+ actionEvent?: ActionEvent;
3325
+ }
3326
+ export interface EntityCreatedEvent {
3327
+ entityAsJson?: string;
3328
+ /** Indicates the event was triggered by a restore-from-trashbin operation for a previously deleted entity */
3329
+ restoreInfo?: RestoreInfo;
3330
+ }
3331
+ export interface RestoreInfo {
3332
+ deletedDate?: Date | null;
3333
+ }
3334
+ export interface EntityUpdatedEvent {
3335
+ /**
3336
+ * Since platformized APIs only expose PATCH and not PUT we can't assume that the fields sent from the client are the actual diff.
3337
+ * This means that to generate a list of changed fields (as opposed to sent fields) one needs to traverse both objects.
3338
+ * We don't want to impose this on all developers and so we leave this traversal to the notification recipients which need it.
3339
+ */
3340
+ currentEntityAsJson?: string;
3341
+ }
3342
+ export interface EntityDeletedEvent {
3343
+ /** Entity that was deleted */
3344
+ deletedEntityAsJson?: string | null;
3345
+ }
3346
+ export interface ActionEvent {
3347
+ bodyAsJson?: string;
3348
+ }
3349
+ export interface MessageEnvelope {
3350
+ /**
3351
+ * App instance ID.
3352
+ * @format GUID
3353
+ */
3354
+ instanceId?: string | null;
3355
+ /**
3356
+ * Event type.
3357
+ * @maxLength 150
3358
+ */
3359
+ eventType?: string;
3360
+ /** The identification type and identity data. */
3361
+ identity?: IdentificationData;
3362
+ /** Stringify payload. */
3363
+ data?: string;
3364
+ }
3365
+ export interface IdentificationData extends IdentificationDataIdOneOf {
3366
+ /**
3367
+ * ID of a site visitor that has not logged in to the site.
3368
+ * @format GUID
3369
+ */
3370
+ anonymousVisitorId?: string;
3371
+ /**
3372
+ * ID of a site visitor that has logged in to the site.
3373
+ * @format GUID
3374
+ */
3375
+ memberId?: string;
3376
+ /**
3377
+ * ID of a Wix user (site owner, contributor, etc.).
3378
+ * @format GUID
3379
+ */
3380
+ wixUserId?: string;
3381
+ /**
3382
+ * ID of an app.
3383
+ * @format GUID
3384
+ */
3385
+ appId?: string;
3386
+ /** @readonly */
3387
+ identityType?: WebhookIdentityType;
3388
+ }
3389
+ /** @oneof */
3390
+ export interface IdentificationDataIdOneOf {
3391
+ /**
3392
+ * ID of a site visitor that has not logged in to the site.
3393
+ * @format GUID
3394
+ */
3395
+ anonymousVisitorId?: string;
3396
+ /**
3397
+ * ID of a site visitor that has logged in to the site.
3398
+ * @format GUID
3399
+ */
3400
+ memberId?: string;
3401
+ /**
3402
+ * ID of a Wix user (site owner, contributor, etc.).
3403
+ * @format GUID
3404
+ */
3405
+ wixUserId?: string;
3406
+ /**
3407
+ * ID of an app.
3408
+ * @format GUID
3409
+ */
3410
+ appId?: string;
3411
+ }
3412
+ export declare enum WebhookIdentityType {
3413
+ UNKNOWN = "UNKNOWN",
3414
+ ANONYMOUS_VISITOR = "ANONYMOUS_VISITOR",
3415
+ MEMBER = "MEMBER",
3416
+ WIX_USER = "WIX_USER",
3417
+ APP = "APP"
3418
+ }