1use std::fmt;
2use std::fmt::{Formatter};
3use serde::{Deserialize, Serialize};
4
5#[non_exhaustive]
9#[derive(Serialize, Deserialize, Debug, Clone)]
10pub enum Currency {
11 GBP,
12 USD,
13 EUR,
14 JPY,
15 SGD
16}
17
18#[derive(Serialize, Deserialize, Debug, Clone, PartialEq)]
20#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
21pub enum CustomerCreationSource {
22 Other,
23 Appointments,
24 Coupon,
25 DeletionRecovery,
26 Directory,
27 Egifting,
28 EmailCollection,
29 Feedback,
30 Import,
31 Invoices,
32 Loyalty,
33 Marketing,
34 Merge,
35 OnlineStore,
36 InstantProfile,
37 Terminal,
38 ThirdParty,
39 ThirdPartyImport,
40 UnmergeRecovery
41}
42
43#[derive(Serialize, Deserialize, Debug, Clone, PartialEq)]
44#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
45pub enum CatalogObjectTypeEnum {
46 Item,
47 Image,
48 Category,
49 ItemVariation,
50 Tax,
51 Discount,
52 ModifierList,
53 Modifier,
54 PricingRule,
55 TimePeriod,
56 ProductSet,
57 MeasurementUnit,
58 SubscriptionPlan,
59 ItemOption,
60 ItemOptionVal,
61 CustomAttributeDefinition,
62 QuickAmountsSettings,
63}
64
65impl fmt::Display for CatalogObjectTypeEnum {
66 fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result {
67 match self {
68 CatalogObjectTypeEnum::Item => write!(f, "ITEM"),
69 CatalogObjectTypeEnum::Image => write!(f, "IMAGE =>"),
70 CatalogObjectTypeEnum::Category => write!(f, "CATEGORY"),
71 CatalogObjectTypeEnum::ItemVariation => write!(f, "ItemVariation"),
72 CatalogObjectTypeEnum::Tax => write!(f, "TAX"),
73 CatalogObjectTypeEnum::Discount => write!(f, "DISCOUNT"),
74 CatalogObjectTypeEnum::ModifierList => write!(f, "MODIFIER_LIST"),
75 CatalogObjectTypeEnum::Modifier => write!(f, "MODIFIER"),
76 CatalogObjectTypeEnum::PricingRule => write!(f, "PRICING_RULE"),
77 CatalogObjectTypeEnum::TimePeriod => write!(f, "TIME_PERIOD"),
78 CatalogObjectTypeEnum::ProductSet => write!(f, "PRODUCT_SET"),
79 CatalogObjectTypeEnum::MeasurementUnit => write!(f, "MeasurementUnit"),
80 CatalogObjectTypeEnum::SubscriptionPlan => write!(f, "SubscriptionPlan"),
81 CatalogObjectTypeEnum::ItemOption => write!(f, "ItemOption"),
82 CatalogObjectTypeEnum::ItemOptionVal => write!(f, "ItemOptionVal"),
83 CatalogObjectTypeEnum::CustomAttributeDefinition
84 => write!(f, "CustomAttributeDefinition"),
85 CatalogObjectTypeEnum::QuickAmountsSettings => write!(f, "QuickAmountsSettings"),
86 }
87 }
88}
89
90#[derive(Serialize, Deserialize, Debug, Clone)]
91#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
92pub enum BusinessAppointmentSettingsBookingLocationType {
93 BusinessLocation,
94 CustomerLocation,
95 Phone,
96}
97
98#[derive(Serialize, Deserialize, Debug, Clone)]
99#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
100pub enum BookingBookingSource {
101 FirstPartyMerchant,
102 FirstPartyBuyer,
103 ThirdPartyBuyer,
104 Api,
105}
106
107#[derive(Serialize, Deserialize, Debug, Clone)]
108#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
109pub enum BookingStatus {
110 Pending,
111 CancelledByCustomer,
112 CancelledBySeller,
113 Declined,
114 Accepted,
115 NoShow,
116}
117
118#[derive(Serialize, Deserialize, Debug, Clone)]
119pub enum LocationStatus {
120 ACTIVE,
121 INACTIVE,
122}
123
124#[derive(Serialize, Deserialize, Debug, Clone)]
125#[serde(rename_all = "snake_case")]
126pub enum TaxIds {
127 EsNif,
128 EuVat,
129 FrNaf,
130 FrSiret,
131}
132
133#[derive(Serialize, Deserialize, Debug, Clone)]
134#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
135pub enum LocationType {
136 Physical,
137 Mobile,
138}
139
140#[derive(Serialize, Deserialize, Debug, Clone)]
141#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
142pub enum SortOrder {
143 Desc,
144 Asc,
145}
146
147impl fmt::Display for SortOrder {
148 fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result {
149 match self {
150 SortOrder::Asc => write!(f, "ASC"),
151 SortOrder::Desc => write!(f, "DESC"),
152 }
153 }
154}
155
156#[derive(Serialize, Deserialize, Debug, Clone)]
157#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
158pub enum BusinessBookingProfileBookingPolicy {
159 AcceptAll,
160 RequiresAcceptance,
161}
162
163#[derive(Serialize, Deserialize, Debug, Clone)]
164#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
165pub enum BusinessAppointmentSettingsCancellationPolicy {
166 CancellationTreatedAsNoShow,
167 CustomPolicy,
168}
169
170#[derive(Serialize, Deserialize, Debug, Clone)]
171#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
172pub enum BusinessAppointmentSettingsMaxAppointmentsPerDayLimitType {
173 PerTeamMember,
174 PerLocation,
175}
176
177#[derive(Serialize, Deserialize, Debug, Clone)]
178#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
179pub enum BusinessBookingProfileCustomerTimezoneChoice {
180 BusinessLocationTimezone,
181 CustomerChoice,
182}
183
184#[derive(Serialize, Deserialize, Debug, Clone)]
185#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
186pub enum OrderLineItemDiscountScope {
187 OtherDiscountScope,
188 LineItem,
189 Order,
190}
191
192#[derive(Serialize, Deserialize, Debug, Clone)]
193#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
194pub enum OrderLineItemDiscountType {
195 UnknownDiscount,
196 FixedPercentage,
197 FixedAmount,
198 VariablePercentage,
199 VariableAmount,
200}
201
202#[derive(Serialize, Deserialize, Debug, Clone)]
203#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
204pub enum OrderFulfillmentFulfillmentLineItemApplication {
205 All,
206 EntryList
207}
208
209#[derive(Serialize, Deserialize, Debug, Clone)]
210#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
211pub enum OrderFulfillmentPickupDetailsScheduleType {
212 Scheduled,
213 Asap
214}
215
216#[derive(Serialize, Deserialize, Debug, Clone)]
217#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
218pub enum OrderLineItemItemType {
219 Item,
220 CustomAmount,
221 GiftCard,
222}
223
224#[derive(Serialize, Deserialize, Debug, Clone)]
225#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
226pub enum RefundStatus {
227 Pending,
228 Approved,
229 Rejected,
230 Failed,
231}
232
233#[derive(Serialize, Deserialize, Debug, Clone)]
234#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
235pub enum OrderLineItemTaxScope {
236 OtherTaxScope,
237 LineItem,
238 Order
239}
240
241#[derive(Serialize, Deserialize, Debug, Clone)]
242#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
243pub enum OrderLineItemTaxType {
244 UnknownTax,
245 Additive,
246 Inclusive,
247}
248
249#[derive(Serialize, Deserialize, Debug, Clone)]
250#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
251pub enum OrderState {
252 Open,
253 Completed,
254 Canceled,
255 Draft
256}
257
258#[derive(Serialize, Deserialize, Debug, Clone)]
259#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
260pub enum OrderServiceChargeCalculationPhase {
261 SubtotalPhase,
262 TotalPhase,
263}
264
265#[derive(Serialize, Deserialize, Debug, Clone)]
266#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
267pub enum OrderServiceChargeType {
268 AutoGratuity,
269 Custom,
270}
271
272#[derive(Serialize, Deserialize, Debug, Clone)]
273#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
274pub enum TenderType {
275 Card,
276 Cash,
277 ThirdPartyCard,
278 SquareGiftCard,
279 NoSale,
280 Wallet,
281 Other,
282}
283
284#[derive(Serialize, Deserialize, Debug, Clone)]
285#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
286pub enum TenderCardDetailsStatus {
287 Authorized,
288 Captured,
289 Voided,
290 Failed,
291}
292
293#[derive(Serialize, Deserialize, Debug, Clone)]
294#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
295pub enum TenderCardDetailsEntryMethod {
296 Swiped,
297 Keyed,
298 Emv,
299 OnFile,
300 Contactless
301}
302
303#[derive(Serialize, Deserialize, Debug, Clone)]
304#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
305pub enum CatalogObjectType {
306 Item,
307 Image,
308 Category,
309 ItemVariation,
310 Tax,
311 Discount,
312 ModifierList,
313 PricingRule,
314 ProductSet,
315 TimePeriod,
316 MeasurementUnit,
317 SubscriptionPlan,
318 ItemOption,
319 ItemOptionVal,
320 CustomAttributeDefinition,
321 QuickAmountSetting,
322}
323
324#[derive(Serialize, Deserialize, Debug, Clone)]
325#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
326pub enum CatalogCustomAttributeDefinitionType {
327 String,
328 Boolean,
329 Number,
330 Selection
331}
332
333#[derive(Serialize, Deserialize, Debug, Clone)]
334#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
335pub enum CatalogItemProductType {
336 Regular,
337 GiftCard, AppointmentsService,
339}
340
341#[derive(Serialize, Deserialize, Debug, Clone)]
342#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
343pub enum InventoryAlertType {
344 None,
345 LowQuantity,
346}
347
348#[derive(Serialize, Deserialize, Debug, Clone)]
349#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
350pub enum CatalogPricingType {
351 FixedPricing,
352 VariablePricing,
353}
354
355#[derive(Serialize, Deserialize, Debug, Clone)]
356#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
357pub enum SearchCatalogItemsRequestStockLevel {
358 Out,
359 Low,
360}
361
362#[derive(Serialize, Deserialize, Debug, Clone)]
363#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
364pub enum InventoryState {
365 Custom,
366 InStock,
367 Sold,
368 ReturnedByCustomer,
369 ReservedForSale,
370 SoldOnline,
371 OrderedFromVendor,
372 ReceivedFromVendor,
373 InTransitTo,
374 None,
375 Waste,
376 UnlinkedReturn,
377 Composed,
378 Decomposed,
379 SupportedByNewerVersion,
380}
381
382impl Default for InventoryState {
383 fn default() -> Self {
384 InventoryState::InStock
385 }
386}
387
388#[derive(Serialize, Deserialize, Debug, Clone)]
389#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
390pub enum InventoryChangeType {
391 PhysicalCount,
392 Adjustment,
393 Transfer,
394}
395
396impl Default for InventoryChangeType {
397 fn default() -> Self {
398 InventoryChangeType::PhysicalCount
399 }
400}
401
402#[derive(Serialize, Deserialize, Debug, Clone)]
403#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
404pub enum PaymentType {
405 Check,
406 BankTransfer,
407 OtherGiftCard,
408 Crypto,
409 SquareCash,
410 Social,
411 External,
412 Emoney,
413 Card,
414 StoredBalance,
415 FoodVoucher,
416 Other,
417}
418
419#[derive(Serialize, Deserialize, Debug, Clone)]
420#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
421pub enum ApplicationDetailsExternalSquareProduct {
422 Appointments,
423 EcommerceApi,
424 Invoices,
425 OnlineStore,
426 Other,
427 Restaurants,
428 Retail,
429 SquarePos,
430 TerminalApi,
431 VirtualTerminal,
432}
433
434#[derive(Serialize, Deserialize, Debug, Clone)]
435#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
436pub enum BankAccountOwnershipType {
437 Individual,
438 Company,
439 Unknown
440}
441
442#[derive(Serialize, Deserialize, Debug, Clone)]
443#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
444pub enum BankAccountType {
445 Checking,
446 Savings,
447 Unknown,
448}
449
450#[derive(Serialize, Deserialize, Debug, Clone)]
451#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
452pub enum BuyNowPayLaterBrand {
453 Afterpay,
454 Unknown
455}
456
457#[derive(Serialize, Deserialize, Debug, Clone)]
458#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
459pub enum CCVStatus {
460 CvvAccepted,
461 CvvRejected,
462 CvvNotChecked,
463}
464
465#[derive(Serialize, Deserialize, Debug, Clone)]
466#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
467pub enum PaymentStatus {
468 Authorized,
469 Captured,
470 Voided,
471 Failed
472}
473
474#[derive(Serialize, Deserialize, Debug, Clone)]
475#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
476pub enum PaymentVerificationResults {
477 Success,
478 Failure,
479 Unknown
480}
481
482#[derive(Serialize, Deserialize, Debug, Clone)]
483#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
484pub enum PaymentVerificationMethod {
485 Pin,
486 Signature,
487 PinAndSignature,
488 OnDevice,
489 None
490}
491
492#[derive(Serialize, Deserialize, Debug, Clone)]
493#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
494pub enum ProcessingFeeType {
495 Initial,
496 Adjustment,
497}
498
499#[derive(Serialize, Deserialize, Debug, Clone)]
500#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
501pub enum RiskEvaluationRiskLevel {
502 Pending,
503 Normal,
504 Moderate,
505 High,
506}
507
508#[derive(Serialize, Deserialize, Debug, Clone)]
509#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
510pub enum PaymentSourceType {
511 BankAccount,
512 Wallet,
513 BuyNowPayLater,
514 Cash,
515 Card,
516 External,
517}
518
519#[derive(Serialize, Deserialize, Debug, Clone)]
520#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
521pub enum DigitalWalletBrand {
522 CashApp,
523 Unknown
524}
525
526#[derive(Serialize, Deserialize, Debug, Clone)]
527#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
528pub enum DigitalWalletStatus {
529 Authorized,
530 Captured,
531 Voided,
532 Failed,
533}
534
535#[derive(Serialize, Deserialize, Debug, Clone)]
536#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
537pub enum ActionCancelReason {
538 BuyerCanceled,
539 SellerCanceled,
540 TimedOut,
541}
542
543#[derive(Serialize, Deserialize, Debug, Clone)]
544#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
545pub enum CheckoutOptionsPaymentType {
546 CardPresent,
547 ManualCardEntry,
548 FelicaId,
549 FelicaQuicpay,
550 FelicaTransportationGroup,
551 FelicaAll,
552}
553
554#[derive(Serialize, Deserialize, Debug, Clone)]
555#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
556pub enum TerminalCheckoutStatus {
557 Pending,
558 InProgress,
559 CancelRequested,
560 Canceled,
561 Completed,
562}
563
564#[derive(Serialize, Deserialize, Debug, Clone)]
565#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
566pub enum OrderFulfillmentState {
567 Proposed,
568 Preserved,
569 Prepared,
570 Completed,
571 Canceled,
572 Failed
573}
574
575#[derive(Serialize, Deserialize, Debug, Clone)]
576#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
577pub enum OrderFulfillmentType {
578 Pickup,
579 Shipment,
580}
581
582#[derive(Serialize, Deserialize, Debug, Clone)]
583#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
584pub enum SearchOrdersSortField {
585 CreatedAt,
586 UpdatedAt,
587 ClosedAt,
588}
589