@munchi_oy/core 2.0.2 → 2.0.3

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.
package/generated/api.ts CHANGED
@@ -2364,6 +2364,52 @@ export interface ChangePaymentMethodOptionDto {
2364
2364
  */
2365
2365
  'enable'?: boolean;
2366
2366
  }
2367
+ /**
2368
+ *
2369
+ * @export
2370
+ * @interface ChangePosOrdersStatusInBulkDto
2371
+ */
2372
+ export interface ChangePosOrdersStatusInBulkDto {
2373
+ /**
2374
+ * The venue whose tickets and orders the till moves, by its venue id
2375
+ * @type {number}
2376
+ * @memberof ChangePosOrdersStatusInBulkDto
2377
+ */
2378
+ 'orderingBusinessId': number;
2379
+ /**
2380
+ * The ids in Firestore of the till\'s tickets and orders to move, each once, 1 to 100 of them
2381
+ * @type {Array<string>}
2382
+ * @memberof ChangePosOrdersStatusInBulkDto
2383
+ */
2384
+ 'orderIds': Array<string>;
2385
+ /**
2386
+ *
2387
+ * @type {PosBulkOrderStatus}
2388
+ * @memberof ChangePosOrdersStatusInBulkDto
2389
+ */
2390
+ 'status': PosBulkOrderStatus;
2391
+ }
2392
+
2393
+
2394
+ /**
2395
+ *
2396
+ * @export
2397
+ * @interface ChangePosOrdersStatusInBulkResponseDto
2398
+ */
2399
+ export interface ChangePosOrdersStatusInBulkResponseDto {
2400
+ /**
2401
+ * The ids of the tickets and orders moved to the status, in the order the till sent them; empty when none could be
2402
+ * @type {Array<string>}
2403
+ * @memberof ChangePosOrdersStatusInBulkResponseDto
2404
+ */
2405
+ 'moved': Array<string>;
2406
+ /**
2407
+ * The ids left as they are, each with the reason, in the order the till sent them; empty when every one moved
2408
+ * @type {Array<PosOrderLeftAsItIsDto>}
2409
+ * @memberof ChangePosOrdersStatusInBulkResponseDto
2410
+ */
2411
+ 'skipped': Array<PosOrderLeftAsItIsDto>;
2412
+ }
2367
2413
  /**
2368
2414
  *
2369
2415
  * @export
@@ -8558,6 +8604,21 @@ export const KDSEVENTNAME = {
8558
8604
  export type KDSEVENTNAME = typeof KDSEVENTNAME[keyof typeof KDSEVENTNAME];
8559
8605
 
8560
8606
 
8607
+ /**
8608
+ *
8609
+ * @export
8610
+ * @enum {string}
8611
+ */
8612
+
8613
+ export const KdsBulkReadySkipReason = {
8614
+ Found: 'NOT_FOUND',
8615
+ Pos: 'NOT_POS',
8616
+ InProgress: 'NOT_IN_PROGRESS'
8617
+ } as const;
8618
+
8619
+ export type KdsBulkReadySkipReason = typeof KdsBulkReadySkipReason[keyof typeof KdsBulkReadySkipReason];
8620
+
8621
+
8561
8622
  /**
8562
8623
  *
8563
8624
  * @export
@@ -8764,6 +8825,31 @@ export interface KdsLocationDtoCoordinates {
8764
8825
  */
8765
8826
  'lon': number | null;
8766
8827
  }
8828
+ /**
8829
+ *
8830
+ * @export
8831
+ * @interface KdsMarkOrdersReadyDto
8832
+ */
8833
+ export interface KdsMarkOrdersReadyDto {
8834
+ /**
8835
+ * The venue\'s orderingBusinessId
8836
+ * @type {number}
8837
+ * @memberof KdsMarkOrdersReadyDto
8838
+ */
8839
+ 'businessId': number;
8840
+ /**
8841
+ * The id of the station (KDS profile) whose orders are marked ready
8842
+ * @type {string}
8843
+ * @memberof KdsMarkOrdersReadyDto
8844
+ */
8845
+ 'profileId': string;
8846
+ /**
8847
+ * The KDS orders\' ids in kds-service, each once, 1 to 100 of them
8848
+ * @type {Array<string>}
8849
+ * @memberof KdsMarkOrdersReadyDto
8850
+ */
8851
+ 'orderIds': Array<string>;
8852
+ }
8767
8853
  /**
8768
8854
  *
8769
8855
  * @export
@@ -9144,6 +9230,27 @@ export interface KdsOrderItemDto {
9144
9230
  }
9145
9231
 
9146
9232
 
9233
+ /**
9234
+ *
9235
+ * @export
9236
+ * @interface KdsOrderLeftAsItIsDto
9237
+ */
9238
+ export interface KdsOrderLeftAsItIsDto {
9239
+ /**
9240
+ * The id of a KDS order kds-service did not mark ready
9241
+ * @type {string}
9242
+ * @memberof KdsOrderLeftAsItIsDto
9243
+ */
9244
+ 'orderId': string;
9245
+ /**
9246
+ *
9247
+ * @type {KdsBulkReadySkipReason}
9248
+ * @memberof KdsOrderLeftAsItIsDto
9249
+ */
9250
+ 'reason': KdsBulkReadySkipReason;
9251
+ }
9252
+
9253
+
9147
9254
  /**
9148
9255
  *
9149
9256
  * @export
@@ -9912,6 +10019,43 @@ export interface KdsReadyOrderResponseDtoOrder {
9912
10019
  }
9913
10020
 
9914
10021
 
10022
+ /**
10023
+ *
10024
+ * @export
10025
+ * @interface KdsReadyOrdersResponseDto
10026
+ */
10027
+ export interface KdsReadyOrdersResponseDto {
10028
+ /**
10029
+ * The ids of the KDS orders marked ready; empty when none were
10030
+ * @type {Array<string>}
10031
+ * @memberof KdsReadyOrdersResponseDto
10032
+ */
10033
+ 'ready': Array<string>;
10034
+ /**
10035
+ * The ids kds-service left as they are, each with its reason; empty when none were
10036
+ * @type {Array<KdsOrderLeftAsItIsDto>}
10037
+ * @memberof KdsReadyOrdersResponseDto
10038
+ */
10039
+ 'skipped': Array<KdsOrderLeftAsItIsDto>;
10040
+ /**
10041
+ * The ids of tickets kds-service marked ready whose status it could not pass on to this server, so the till may not show them ready yet; absent when every one was passed on
10042
+ * @type {Array<string>}
10043
+ * @memberof KdsReadyOrdersResponseDto
10044
+ */
10045
+ 'notAnnounced'?: Array<string>;
10046
+ /**
10047
+ * true when kds-service answered; false when it refused or could not be reached, and then nothing is listed
10048
+ * @type {boolean}
10049
+ * @memberof KdsReadyOrdersResponseDto
10050
+ */
10051
+ 'status': boolean;
10052
+ /**
10053
+ * Human-readable status message
10054
+ * @type {string}
10055
+ * @memberof KdsReadyOrdersResponseDto
10056
+ */
10057
+ 'message': string;
10058
+ }
9915
10059
  /**
9916
10060
  *
9917
10061
  * @export
@@ -17952,6 +18096,36 @@ export interface PosActionPasscodeDto {
17952
18096
  */
17953
18097
  'pinHash': string;
17954
18098
  }
18099
+ /**
18100
+ *
18101
+ * @export
18102
+ * @enum {string}
18103
+ */
18104
+
18105
+ export const PosBulkOrderStatus = {
18106
+ Ready: 'ready',
18107
+ Delivered: 'delivered'
18108
+ } as const;
18109
+
18110
+ export type PosBulkOrderStatus = typeof PosBulkOrderStatus[keyof typeof PosBulkOrderStatus];
18111
+
18112
+
18113
+ /**
18114
+ *
18115
+ * @export
18116
+ * @enum {string}
18117
+ */
18118
+
18119
+ export const PosBulkStatusSkipReason = {
18120
+ NotFound: 'NOT_FOUND',
18121
+ NotInProgress: 'NOT_IN_PROGRESS',
18122
+ KitchenControlled: 'KITCHEN_CONTROLLED',
18123
+ NotReady: 'NOT_READY'
18124
+ } as const;
18125
+
18126
+ export type PosBulkStatusSkipReason = typeof PosBulkStatusSkipReason[keyof typeof PosBulkStatusSkipReason];
18127
+
18128
+
17955
18129
  /**
17956
18130
  *
17957
18131
  * @export
@@ -20174,6 +20348,27 @@ export interface PosOrderItemSplitSeatDto {
20174
20348
  */
20175
20349
  'assignments': Array<PosOrderItemSplitSeatAssignmentDto>;
20176
20350
  }
20351
+ /**
20352
+ *
20353
+ * @export
20354
+ * @interface PosOrderLeftAsItIsDto
20355
+ */
20356
+ export interface PosOrderLeftAsItIsDto {
20357
+ /**
20358
+ * The id the till sent of a ticket or an order that was not moved
20359
+ * @type {string}
20360
+ * @memberof PosOrderLeftAsItIsDto
20361
+ */
20362
+ 'orderId': string;
20363
+ /**
20364
+ *
20365
+ * @type {PosBulkStatusSkipReason}
20366
+ * @memberof PosOrderLeftAsItIsDto
20367
+ */
20368
+ 'reason': PosBulkStatusSkipReason;
20369
+ }
20370
+
20371
+
20177
20372
  /**
20178
20373
  *
20179
20374
  * @export
@@ -23490,6 +23685,87 @@ export interface RejectOrderDto {
23490
23685
  }
23491
23686
 
23492
23687
 
23688
+ /**
23689
+ *
23690
+ * @export
23691
+ * @enum {string}
23692
+ */
23693
+
23694
+ export const ReportApp = {
23695
+ Pos: 'pos',
23696
+ Kiosk: 'kiosk',
23697
+ Storefront: 'storefront',
23698
+ Mobile: 'mobile'
23699
+ } as const;
23700
+
23701
+ export type ReportApp = typeof ReportApp[keyof typeof ReportApp];
23702
+
23703
+
23704
+ /**
23705
+ *
23706
+ * @export
23707
+ * @enum {string}
23708
+ */
23709
+
23710
+ export const ReportBaselineLeftOut = {
23711
+ IsTheBaseline: 'is_the_baseline',
23712
+ OtherCurrency: 'other_currency'
23713
+ } as const;
23714
+
23715
+ export type ReportBaselineLeftOut = typeof ReportBaselineLeftOut[keyof typeof ReportBaselineLeftOut];
23716
+
23717
+
23718
+ /**
23719
+ *
23720
+ * @export
23721
+ * @enum {string}
23722
+ */
23723
+
23724
+ export const ReportBreakdown = {
23725
+ None: 'none',
23726
+ Venue: 'venue',
23727
+ App: 'app',
23728
+ VenueApp: 'venue_app'
23729
+ } as const;
23730
+
23731
+ export type ReportBreakdown = typeof ReportBreakdown[keyof typeof ReportBreakdown];
23732
+
23733
+
23734
+ /**
23735
+ *
23736
+ * @export
23737
+ * @enum {string}
23738
+ */
23739
+
23740
+ export const ReportChangeField = {
23741
+ SalesReportTotalQuantity: 'salesReport.totalQuantity',
23742
+ SalesReportTotalWithTax: 'salesReport.totalWithTax',
23743
+ SalesReportTotalTaxAmount: 'salesReport.totalTaxAmount',
23744
+ SalesReportTotalWithoutTax: 'salesReport.totalWithoutTax',
23745
+ SalesReportDeliveryFee: 'salesReport.deliveryFee',
23746
+ SalesReportDeliveryTax: 'salesReport.deliveryTax',
23747
+ PaymentReportSummarySalesAndRevenue: 'paymentReport.summary.salesAndRevenue',
23748
+ PaymentReportSummaryGrossAmount: 'paymentReport.summary.grossAmount',
23749
+ PaymentReportSummaryTotalCount: 'paymentReport.summary.totalCount',
23750
+ PaymentReportSummaryTotalAmount: 'paymentReport.summary.totalAmount',
23751
+ PaymentReportSummaryCardsCount: 'paymentReport.summary.cardsCount',
23752
+ PaymentReportSummaryCardsAmount: 'paymentReport.summary.cardsAmount',
23753
+ PaymentReportSummaryEdenredVoucherCount: 'paymentReport.summary.edenredVoucherCount',
23754
+ PaymentReportSummaryEdenredVoucherAmount: 'paymentReport.summary.edenredVoucherAmount',
23755
+ PaymentReportSummarySmartumVoucherCount: 'paymentReport.summary.smartumVoucherCount',
23756
+ PaymentReportSummarySmartumVoucherAmount: 'paymentReport.summary.smartumVoucherAmount',
23757
+ PaymentReportSummaryTotalCoupons: 'paymentReport.summary.totalCoupons',
23758
+ PaymentReportSummaryTotalVoucherForfeited: 'paymentReport.summary.totalVoucherForfeited',
23759
+ PaymentReportSummaryTotalTipAmount: 'paymentReport.summary.totalTipAmount',
23760
+ PaymentReportSummaryTotalSurchargeAmount: 'paymentReport.summary.totalSurchargeAmount',
23761
+ PaymentReportSummaryTotalRefunds: 'paymentReport.summary.totalRefunds',
23762
+ PaymentReportSummaryRefundCount: 'paymentReport.summary.refundCount',
23763
+ PaymentReportTotalDiscounts: 'paymentReport.totalDiscounts'
23764
+ } as const;
23765
+
23766
+ export type ReportChangeField = typeof ReportChangeField[keyof typeof ReportChangeField];
23767
+
23768
+
23493
23769
  /**
23494
23770
  *
23495
23771
  * @export
@@ -23504,6 +23780,23 @@ export const ReportLanguage = {
23504
23780
  export type ReportLanguage = typeof ReportLanguage[keyof typeof ReportLanguage];
23505
23781
 
23506
23782
 
23783
+ /**
23784
+ *
23785
+ * @export
23786
+ * @enum {string}
23787
+ */
23788
+
23789
+ export const ReportPart = {
23790
+ Summary: 'summary',
23791
+ Items: 'items',
23792
+ Vat: 'vat',
23793
+ Payments: 'payments',
23794
+ Discounts: 'discounts'
23795
+ } as const;
23796
+
23797
+ export type ReportPart = typeof ReportPart[keyof typeof ReportPart];
23798
+
23799
+
23507
23800
  /**
23508
23801
  *
23509
23802
  * @export
@@ -24029,6 +24322,1020 @@ export const SYNCKEY = {
24029
24322
  export type SYNCKEY = typeof SYNCKEY[keyof typeof SYNCKEY];
24030
24323
 
24031
24324
 
24325
+ /**
24326
+ *
24327
+ * @export
24328
+ * @interface SalesReportCategoryDto
24329
+ */
24330
+ export interface SalesReportCategoryDto {
24331
+ /**
24332
+ * The category\'s name
24333
+ * @type {string}
24334
+ * @memberof SalesReportCategoryDto
24335
+ */
24336
+ 'categoryName': string;
24337
+ /**
24338
+ * How many of its items were sold
24339
+ * @type {number}
24340
+ * @memberof SalesReportCategoryDto
24341
+ */
24342
+ 'totalQuantity': number;
24343
+ /**
24344
+ * Sales with VAT, in the major unit of the group\'s currency (euros for EUR)
24345
+ * @type {number}
24346
+ * @memberof SalesReportCategoryDto
24347
+ */
24348
+ 'totalWithTax': number;
24349
+ /**
24350
+ * The VAT, in the major unit of the group\'s currency (euros for EUR)
24351
+ * @type {number}
24352
+ * @memberof SalesReportCategoryDto
24353
+ */
24354
+ 'taxAmount': number;
24355
+ /**
24356
+ * Sales without VAT, in the major unit of the group\'s currency (euros for EUR)
24357
+ * @type {number}
24358
+ * @memberof SalesReportCategoryDto
24359
+ */
24360
+ 'totalWithoutTax': number;
24361
+ /**
24362
+ * Its items
24363
+ * @type {Array<SalesReportItemDto>}
24364
+ * @memberof SalesReportCategoryDto
24365
+ */
24366
+ 'items': Array<SalesReportItemDto>;
24367
+ }
24368
+ /**
24369
+ *
24370
+ * @export
24371
+ * @interface SalesReportChangeDto
24372
+ */
24373
+ export interface SalesReportChangeDto {
24374
+ /**
24375
+ *
24376
+ * @type {ReportChangeField}
24377
+ * @memberof SalesReportChangeDto
24378
+ */
24379
+ 'field': ReportChangeField;
24380
+ /**
24381
+ * The total of the asked period, as the group answers it; 0 when only the compared period has it. Money in the major unit of the group\'s currency (euros for EUR)
24382
+ * @type {number}
24383
+ * @memberof SalesReportChangeDto
24384
+ */
24385
+ 'current': number;
24386
+ /**
24387
+ * The total of the compared period, as comparison answers it; 0 when only the asked period has it. Money in the major unit of the group\'s currency (euros for EUR)
24388
+ * @type {number}
24389
+ * @memberof SalesReportChangeDto
24390
+ */
24391
+ 'previous': number;
24392
+ /**
24393
+ * current less previous, worked out in exact decimals, so it carries the digits both totals carry and no float error: to the minor unit for POS, every digit of v2\'s exact sums
24394
+ * @type {number}
24395
+ * @memberof SalesReportChangeDto
24396
+ */
24397
+ 'difference': number;
24398
+ /**
24399
+ * difference as a percent of previous, rounded half away from zero to 2 decimals; negative when the total fell. Null when previous is 0
24400
+ * @type {object}
24401
+ * @memberof SalesReportChangeDto
24402
+ */
24403
+ 'percent': object | null;
24404
+ }
24405
+
24406
+
24407
+ /**
24408
+ *
24409
+ * @export
24410
+ * @interface SalesReportComparisonDto
24411
+ */
24412
+ export interface SalesReportComparisonDto {
24413
+ /**
24414
+ * The first instant of the compared period, ISO 8601 in UTC
24415
+ * @type {string}
24416
+ * @memberof SalesReportComparisonDto
24417
+ */
24418
+ 'reportDateStart': string;
24419
+ /**
24420
+ * The last instant of the compared period, ISO 8601 in UTC; now, when the period ends later
24421
+ * @type {string}
24422
+ * @memberof SalesReportComparisonDto
24423
+ */
24424
+ 'reportDateEnd': string;
24425
+ /**
24426
+ * The first business day compared, YYYY-MM-DD, in the report\'s time zone
24427
+ * @type {string}
24428
+ * @memberof SalesReportComparisonDto
24429
+ */
24430
+ 'firstBusinessDay': string;
24431
+ /**
24432
+ * The last business day compared, YYYY-MM-DD, inclusive
24433
+ * @type {string}
24434
+ * @memberof SalesReportComparisonDto
24435
+ */
24436
+ 'lastBusinessDay': string;
24437
+ /**
24438
+ *
24439
+ * @type {SalesReportComparisonDtoSalesReport}
24440
+ * @memberof SalesReportComparisonDto
24441
+ */
24442
+ 'salesReport'?: SalesReportComparisonDtoSalesReport;
24443
+ /**
24444
+ *
24445
+ * @type {SalesReportComparisonDtoPaymentReport}
24446
+ * @memberof SalesReportComparisonDto
24447
+ */
24448
+ 'paymentReport'?: SalesReportComparisonDtoPaymentReport;
24449
+ /**
24450
+ * The compared period\'s days that sold, oldest first, as the group\'s own dailyBreakdown: present when it is
24451
+ * @type {Array<SalesReportDayDto>}
24452
+ * @memberof SalesReportComparisonDto
24453
+ */
24454
+ 'dailyBreakdown'?: Array<SalesReportDayDto>;
24455
+ /**
24456
+ * The change of each total either period answers, in ReportChangeField\'s order; empty when part summary was not asked
24457
+ * @type {Array<SalesReportChangeDto>}
24458
+ * @memberof SalesReportComparisonDto
24459
+ */
24460
+ 'changes': Array<SalesReportChangeDto>;
24461
+ }
24462
+ /**
24463
+ * The compared period\'s paymentReport, as the group\'s own: present when it is
24464
+ * @export
24465
+ * @interface SalesReportComparisonDtoPaymentReport
24466
+ */
24467
+ export interface SalesReportComparisonDtoPaymentReport {
24468
+ /**
24469
+ * Part payments: one row per payment method
24470
+ * @type {Array<SalesReportPaymentMethodDto>}
24471
+ * @memberof SalesReportComparisonDtoPaymentReport
24472
+ */
24473
+ 'paymentMethods'?: Array<SalesReportPaymentMethodDto>;
24474
+ /**
24475
+ *
24476
+ * @type {SalesReportPaymentsDtoSummary}
24477
+ * @memberof SalesReportComparisonDtoPaymentReport
24478
+ */
24479
+ 'summary'?: SalesReportPaymentsDtoSummary;
24480
+ /**
24481
+ * Part discounts: one row per discount
24482
+ * @type {Array<SalesReportDiscountDto>}
24483
+ * @memberof SalesReportComparisonDtoPaymentReport
24484
+ */
24485
+ 'discounts'?: Array<SalesReportDiscountDto>;
24486
+ /**
24487
+ * Part summary: every discount given, in the major unit of the group\'s currency (euros for EUR)
24488
+ * @type {number}
24489
+ * @memberof SalesReportComparisonDtoPaymentReport
24490
+ */
24491
+ 'totalDiscounts'?: number;
24492
+ }
24493
+ /**
24494
+ * The compared period\'s salesReport, as the group\'s own: present when it is
24495
+ * @export
24496
+ * @interface SalesReportComparisonDtoSalesReport
24497
+ */
24498
+ export interface SalesReportComparisonDtoSalesReport {
24499
+ /**
24500
+ * Part items: the categories with their items
24501
+ * @type {Array<SalesReportCategoryDto>}
24502
+ * @memberof SalesReportComparisonDtoSalesReport
24503
+ */
24504
+ 'categories'?: Array<SalesReportCategoryDto>;
24505
+ /**
24506
+ * Part vat: one row per VAT rate, lowest first
24507
+ * @type {Array<SalesReportVatRateDto>}
24508
+ * @memberof SalesReportComparisonDtoSalesReport
24509
+ */
24510
+ 'taxSummary'?: Array<SalesReportVatRateDto>;
24511
+ /**
24512
+ * Part summary: how many items were sold
24513
+ * @type {number}
24514
+ * @memberof SalesReportComparisonDtoSalesReport
24515
+ */
24516
+ 'totalQuantity'?: number;
24517
+ /**
24518
+ * Part summary: sales with VAT, in the major unit of the group\'s currency (euros for EUR)
24519
+ * @type {number}
24520
+ * @memberof SalesReportComparisonDtoSalesReport
24521
+ */
24522
+ 'totalWithTax'?: number;
24523
+ /**
24524
+ * Part summary: the VAT, in the major unit of the group\'s currency (euros for EUR)
24525
+ * @type {number}
24526
+ * @memberof SalesReportComparisonDtoSalesReport
24527
+ */
24528
+ 'totalTaxAmount'?: number;
24529
+ /**
24530
+ * Part summary: sales without VAT, in the major unit of the group\'s currency (euros for EUR)
24531
+ * @type {number}
24532
+ * @memberof SalesReportComparisonDtoSalesReport
24533
+ */
24534
+ 'totalWithoutTax'?: number;
24535
+ /**
24536
+ * Part summary, storefront and mobile: the delivery fees charged, in the major unit of the group\'s currency (euros for EUR); left out when none was
24537
+ * @type {number}
24538
+ * @memberof SalesReportComparisonDtoSalesReport
24539
+ */
24540
+ 'deliveryFee'?: number;
24541
+ /**
24542
+ * Part summary, with deliveryFee: the VAT of the delivery fees, in the major unit of the group\'s currency (euros for EUR)
24543
+ * @type {number}
24544
+ * @memberof SalesReportComparisonDtoSalesReport
24545
+ */
24546
+ 'deliveryTax'?: number;
24547
+ }
24548
+ /**
24549
+ *
24550
+ * @export
24551
+ * @interface SalesReportDayDto
24552
+ */
24553
+ export interface SalesReportDayDto {
24554
+ /**
24555
+ * The business day, YYYY-MM-DD, in the venue\'s own time zone
24556
+ * @type {string}
24557
+ * @memberof SalesReportDayDto
24558
+ */
24559
+ 'date': string;
24560
+ /**
24561
+ * How many orders were sold that day
24562
+ * @type {number}
24563
+ * @memberof SalesReportDayDto
24564
+ */
24565
+ 'orders': number;
24566
+ /**
24567
+ * How many items were sold that day
24568
+ * @type {number}
24569
+ * @memberof SalesReportDayDto
24570
+ */
24571
+ 'quantity': number;
24572
+ /**
24573
+ * What was paid, before refunds, in the major unit of the group\'s currency (euros for EUR)
24574
+ * @type {number}
24575
+ * @memberof SalesReportDayDto
24576
+ */
24577
+ 'sales': number;
24578
+ /**
24579
+ * Refunds of that day\'s orders, in the major unit of the group\'s currency (euros for EUR)
24580
+ * @type {number}
24581
+ * @memberof SalesReportDayDto
24582
+ */
24583
+ 'refunds': number;
24584
+ /**
24585
+ * What was paid, refunds taken off, in the major unit of the group\'s currency (euros for EUR)
24586
+ * @type {number}
24587
+ * @memberof SalesReportDayDto
24588
+ */
24589
+ 'net': number;
24590
+ /**
24591
+ * Discounts given that day, in the major unit of the group\'s currency (euros for EUR)
24592
+ * @type {number}
24593
+ * @memberof SalesReportDayDto
24594
+ */
24595
+ 'discounts': number;
24596
+ /**
24597
+ * The VAT of the items sold that day, in the major unit of the group\'s currency (euros for EUR)
24598
+ * @type {number}
24599
+ * @memberof SalesReportDayDto
24600
+ */
24601
+ 'taxAmount': number;
24602
+ }
24603
+ /**
24604
+ *
24605
+ * @export
24606
+ * @interface SalesReportDiscountDto
24607
+ */
24608
+ export interface SalesReportDiscountDto {
24609
+ /**
24610
+ * The discount\'s name
24611
+ * @type {string}
24612
+ * @memberof SalesReportDiscountDto
24613
+ */
24614
+ 'discountName': string;
24615
+ /**
24616
+ * How many times it was given
24617
+ * @type {number}
24618
+ * @memberof SalesReportDiscountDto
24619
+ */
24620
+ 'count': number;
24621
+ /**
24622
+ * What it took off, in the major unit of the group\'s currency (euros for EUR)
24623
+ * @type {number}
24624
+ * @memberof SalesReportDiscountDto
24625
+ */
24626
+ 'amount': number;
24627
+ }
24628
+ /**
24629
+ *
24630
+ * @export
24631
+ * @interface SalesReportGroupDto
24632
+ */
24633
+ export interface SalesReportGroupDto {
24634
+ /**
24635
+ * The venue\'s business id; null when the breakdown adds venues together (none, app)
24636
+ * @type {object}
24637
+ * @memberof SalesReportGroupDto
24638
+ */
24639
+ 'businessId': object | null;
24640
+ /**
24641
+ *
24642
+ * @type {ReportApp}
24643
+ * @memberof SalesReportGroupDto
24644
+ */
24645
+ 'app': ReportApp | null;
24646
+ /**
24647
+ *
24648
+ * @type {CurrencyCode}
24649
+ * @memberof SalesReportGroupDto
24650
+ */
24651
+ 'currency': CurrencyCode;
24652
+ /**
24653
+ * The currency\'s ISO 4217 minor digits: EUR 2, ISK 0, BHD 3
24654
+ * @type {number}
24655
+ * @memberof SalesReportGroupDto
24656
+ */
24657
+ 'minorDigits': number;
24658
+ /**
24659
+ *
24660
+ * @type {SalesReportGroupDtoSalesReport}
24661
+ * @memberof SalesReportGroupDto
24662
+ */
24663
+ 'salesReport'?: SalesReportGroupDtoSalesReport;
24664
+ /**
24665
+ *
24666
+ * @type {SalesReportGroupDtoPaymentReport}
24667
+ * @memberof SalesReportGroupDto
24668
+ */
24669
+ 'paymentReport'?: SalesReportGroupDtoPaymentReport;
24670
+ /**
24671
+ * Part summary: one row per business day that sold, oldest first. POS leaves it out when no day sold
24672
+ * @type {Array<SalesReportDayDto>}
24673
+ * @memberof SalesReportGroupDto
24674
+ */
24675
+ 'dailyBreakdown'?: Array<SalesReportDayDto>;
24676
+ /**
24677
+ *
24678
+ * @type {SalesReportGroupDtoComparison}
24679
+ * @memberof SalesReportGroupDto
24680
+ */
24681
+ 'comparison'?: SalesReportGroupDtoComparison;
24682
+ /**
24683
+ * With baseline, every group but the baseline: the change of each total from the baseline group of the same currency (current: this group; previous: the baseline), of the main period only, worked out exactly
24684
+ * @type {Array<SalesReportChangeDto>}
24685
+ * @memberof SalesReportGroupDto
24686
+ */
24687
+ 'changesFromBaseline'?: Array<SalesReportChangeDto>;
24688
+ /**
24689
+ *
24690
+ * @type {ReportBaselineLeftOut}
24691
+ * @memberof SalesReportGroupDto
24692
+ */
24693
+ 'changesFromBaselineLeftOut'?: ReportBaselineLeftOut;
24694
+ }
24695
+
24696
+
24697
+ /**
24698
+ * With compareStart and compareEnd: the same group\'s report of those days and the change of each total. Left out without them
24699
+ * @export
24700
+ * @interface SalesReportGroupDtoComparison
24701
+ */
24702
+ export interface SalesReportGroupDtoComparison {
24703
+ /**
24704
+ * The first instant of the compared period, ISO 8601 in UTC
24705
+ * @type {string}
24706
+ * @memberof SalesReportGroupDtoComparison
24707
+ */
24708
+ 'reportDateStart': string;
24709
+ /**
24710
+ * The last instant of the compared period, ISO 8601 in UTC; now, when the period ends later
24711
+ * @type {string}
24712
+ * @memberof SalesReportGroupDtoComparison
24713
+ */
24714
+ 'reportDateEnd': string;
24715
+ /**
24716
+ * The first business day compared, YYYY-MM-DD, in the report\'s time zone
24717
+ * @type {string}
24718
+ * @memberof SalesReportGroupDtoComparison
24719
+ */
24720
+ 'firstBusinessDay': string;
24721
+ /**
24722
+ * The last business day compared, YYYY-MM-DD, inclusive
24723
+ * @type {string}
24724
+ * @memberof SalesReportGroupDtoComparison
24725
+ */
24726
+ 'lastBusinessDay': string;
24727
+ /**
24728
+ *
24729
+ * @type {SalesReportComparisonDtoSalesReport}
24730
+ * @memberof SalesReportGroupDtoComparison
24731
+ */
24732
+ 'salesReport'?: SalesReportComparisonDtoSalesReport;
24733
+ /**
24734
+ *
24735
+ * @type {SalesReportComparisonDtoPaymentReport}
24736
+ * @memberof SalesReportGroupDtoComparison
24737
+ */
24738
+ 'paymentReport'?: SalesReportComparisonDtoPaymentReport;
24739
+ /**
24740
+ * The compared period\'s days that sold, oldest first, as the group\'s own dailyBreakdown: present when it is
24741
+ * @type {Array<SalesReportDayDto>}
24742
+ * @memberof SalesReportGroupDtoComparison
24743
+ */
24744
+ 'dailyBreakdown'?: Array<SalesReportDayDto>;
24745
+ /**
24746
+ * The change of each total either period answers, in ReportChangeField\'s order; empty when part summary was not asked
24747
+ * @type {Array<SalesReportChangeDto>}
24748
+ * @memberof SalesReportGroupDtoComparison
24749
+ */
24750
+ 'changes': Array<SalesReportChangeDto>;
24751
+ }
24752
+ /**
24753
+ * The portal\'s paymentReport for the group: present when part summary, payments or discounts was asked
24754
+ * @export
24755
+ * @interface SalesReportGroupDtoPaymentReport
24756
+ */
24757
+ export interface SalesReportGroupDtoPaymentReport {
24758
+ /**
24759
+ * Part payments: one row per payment method
24760
+ * @type {Array<SalesReportPaymentMethodDto>}
24761
+ * @memberof SalesReportGroupDtoPaymentReport
24762
+ */
24763
+ 'paymentMethods'?: Array<SalesReportPaymentMethodDto>;
24764
+ /**
24765
+ *
24766
+ * @type {SalesReportPaymentsDtoSummary}
24767
+ * @memberof SalesReportGroupDtoPaymentReport
24768
+ */
24769
+ 'summary'?: SalesReportPaymentsDtoSummary;
24770
+ /**
24771
+ * Part discounts: one row per discount
24772
+ * @type {Array<SalesReportDiscountDto>}
24773
+ * @memberof SalesReportGroupDtoPaymentReport
24774
+ */
24775
+ 'discounts'?: Array<SalesReportDiscountDto>;
24776
+ /**
24777
+ * Part summary: every discount given, in the major unit of the group\'s currency (euros for EUR)
24778
+ * @type {number}
24779
+ * @memberof SalesReportGroupDtoPaymentReport
24780
+ */
24781
+ 'totalDiscounts'?: number;
24782
+ }
24783
+ /**
24784
+ * The portal\'s salesReport for the group: present when part summary, items or vat was asked. One app answers as its portal report does (POS as report-service, kiosk, storefront and mobile as dashboard v2); several apps added together answer as v2
24785
+ * @export
24786
+ * @interface SalesReportGroupDtoSalesReport
24787
+ */
24788
+ export interface SalesReportGroupDtoSalesReport {
24789
+ /**
24790
+ * Part items: the categories with their items
24791
+ * @type {Array<SalesReportCategoryDto>}
24792
+ * @memberof SalesReportGroupDtoSalesReport
24793
+ */
24794
+ 'categories'?: Array<SalesReportCategoryDto>;
24795
+ /**
24796
+ * Part vat: one row per VAT rate, lowest first
24797
+ * @type {Array<SalesReportVatRateDto>}
24798
+ * @memberof SalesReportGroupDtoSalesReport
24799
+ */
24800
+ 'taxSummary'?: Array<SalesReportVatRateDto>;
24801
+ /**
24802
+ * Part summary: how many items were sold
24803
+ * @type {number}
24804
+ * @memberof SalesReportGroupDtoSalesReport
24805
+ */
24806
+ 'totalQuantity'?: number;
24807
+ /**
24808
+ * Part summary: sales with VAT, in the major unit of the group\'s currency (euros for EUR)
24809
+ * @type {number}
24810
+ * @memberof SalesReportGroupDtoSalesReport
24811
+ */
24812
+ 'totalWithTax'?: number;
24813
+ /**
24814
+ * Part summary: the VAT, in the major unit of the group\'s currency (euros for EUR)
24815
+ * @type {number}
24816
+ * @memberof SalesReportGroupDtoSalesReport
24817
+ */
24818
+ 'totalTaxAmount'?: number;
24819
+ /**
24820
+ * Part summary: sales without VAT, in the major unit of the group\'s currency (euros for EUR)
24821
+ * @type {number}
24822
+ * @memberof SalesReportGroupDtoSalesReport
24823
+ */
24824
+ 'totalWithoutTax'?: number;
24825
+ /**
24826
+ * Part summary, storefront and mobile: the delivery fees charged, in the major unit of the group\'s currency (euros for EUR); left out when none was
24827
+ * @type {number}
24828
+ * @memberof SalesReportGroupDtoSalesReport
24829
+ */
24830
+ 'deliveryFee'?: number;
24831
+ /**
24832
+ * Part summary, with deliveryFee: the VAT of the delivery fees, in the major unit of the group\'s currency (euros for EUR)
24833
+ * @type {number}
24834
+ * @memberof SalesReportGroupDtoSalesReport
24835
+ */
24836
+ 'deliveryTax'?: number;
24837
+ }
24838
+ /**
24839
+ *
24840
+ * @export
24841
+ * @interface SalesReportItemDto
24842
+ */
24843
+ export interface SalesReportItemDto {
24844
+ /**
24845
+ * The item\'s name. POS: its first sale\'s name and VAT rate, as the portal shows it
24846
+ * @type {object}
24847
+ * @memberof SalesReportItemDto
24848
+ */
24849
+ 'name': object | null;
24850
+ /**
24851
+ * The product\'s id; null when the sale carried none
24852
+ * @type {object}
24853
+ * @memberof SalesReportItemDto
24854
+ */
24855
+ 'productId': object | null;
24856
+ /**
24857
+ * How many were sold
24858
+ * @type {number}
24859
+ * @memberof SalesReportItemDto
24860
+ */
24861
+ 'quantity': number;
24862
+ /**
24863
+ * Sales with VAT, in the major unit of the group\'s currency (euros for EUR)
24864
+ * @type {number}
24865
+ * @memberof SalesReportItemDto
24866
+ */
24867
+ 'totalWithTax': number;
24868
+ /**
24869
+ * The VAT, in the major unit of the group\'s currency (euros for EUR)
24870
+ * @type {number}
24871
+ * @memberof SalesReportItemDto
24872
+ */
24873
+ 'taxAmount': number;
24874
+ /**
24875
+ * Sales without VAT, in the major unit of the group\'s currency (euros for EUR)
24876
+ * @type {number}
24877
+ * @memberof SalesReportItemDto
24878
+ */
24879
+ 'totalWithoutTax': number;
24880
+ /**
24881
+ * The VAT rate in percent; null when none was recorded
24882
+ * @type {object}
24883
+ * @memberof SalesReportItemDto
24884
+ */
24885
+ 'taxRate': object | null;
24886
+ /**
24887
+ * The options sold with the item; left out when none was
24888
+ * @type {Array<SalesReportOptionDto>}
24889
+ * @memberof SalesReportItemDto
24890
+ */
24891
+ 'subOptions'?: Array<SalesReportOptionDto>;
24892
+ }
24893
+ /**
24894
+ *
24895
+ * @export
24896
+ * @interface SalesReportOptionDto
24897
+ */
24898
+ export interface SalesReportOptionDto {
24899
+ /**
24900
+ * The option\'s name
24901
+ * @type {string}
24902
+ * @memberof SalesReportOptionDto
24903
+ */
24904
+ 'name': string;
24905
+ /**
24906
+ * How many were sold
24907
+ * @type {number}
24908
+ * @memberof SalesReportOptionDto
24909
+ */
24910
+ 'quantity': number;
24911
+ /**
24912
+ * Sales with VAT, in the major unit of the group\'s currency (euros for EUR)
24913
+ * @type {number}
24914
+ * @memberof SalesReportOptionDto
24915
+ */
24916
+ 'totalWithTax': number;
24917
+ /**
24918
+ * The VAT, in the major unit of the group\'s currency (euros for EUR)
24919
+ * @type {number}
24920
+ * @memberof SalesReportOptionDto
24921
+ */
24922
+ 'taxAmount': number;
24923
+ /**
24924
+ * Sales without VAT, in the major unit of the group\'s currency (euros for EUR)
24925
+ * @type {number}
24926
+ * @memberof SalesReportOptionDto
24927
+ */
24928
+ 'totalWithoutTax': number;
24929
+ /**
24930
+ * The VAT rate in percent; null when none was recorded
24931
+ * @type {object}
24932
+ * @memberof SalesReportOptionDto
24933
+ */
24934
+ 'taxRate': object | null;
24935
+ }
24936
+ /**
24937
+ *
24938
+ * @export
24939
+ * @interface SalesReportPaymentMethodDto
24940
+ */
24941
+ export interface SalesReportPaymentMethodDto {
24942
+ /**
24943
+ * The payment method, as the app records it
24944
+ * @type {string}
24945
+ * @memberof SalesReportPaymentMethodDto
24946
+ */
24947
+ 'paymentMethod': string;
24948
+ /**
24949
+ * How many payments were made with it
24950
+ * @type {number}
24951
+ * @memberof SalesReportPaymentMethodDto
24952
+ */
24953
+ 'count': number;
24954
+ /**
24955
+ * What was paid with it, in the major unit of the group\'s currency (euros for EUR)
24956
+ * @type {number}
24957
+ * @memberof SalesReportPaymentMethodDto
24958
+ */
24959
+ 'amount': number;
24960
+ }
24961
+ /**
24962
+ *
24963
+ * @export
24964
+ * @interface SalesReportPaymentSummaryDto
24965
+ */
24966
+ export interface SalesReportPaymentSummaryDto {
24967
+ /**
24968
+ * Tips, in the major unit of the group\'s currency (euros for EUR)
24969
+ * @type {number}
24970
+ * @memberof SalesReportPaymentSummaryDto
24971
+ */
24972
+ 'totalTipAmount': number;
24973
+ /**
24974
+ * Surcharges, in the major unit of the group\'s currency (euros for EUR)
24975
+ * @type {number}
24976
+ * @memberof SalesReportPaymentSummaryDto
24977
+ */
24978
+ 'totalSurchargeAmount': number;
24979
+ /**
24980
+ * What was paid, refunds taken off, in the major unit of the group\'s currency (euros for EUR)
24981
+ * @type {number}
24982
+ * @memberof SalesReportPaymentSummaryDto
24983
+ */
24984
+ 'salesAndRevenue': number;
24985
+ /**
24986
+ * How many card payments were made
24987
+ * @type {number}
24988
+ * @memberof SalesReportPaymentSummaryDto
24989
+ */
24990
+ 'cardsCount': number;
24991
+ /**
24992
+ * What was paid by card, in the major unit of the group\'s currency (euros for EUR)
24993
+ * @type {number}
24994
+ * @memberof SalesReportPaymentSummaryDto
24995
+ */
24996
+ 'cardsAmount': number;
24997
+ /**
24998
+ * How many Edenred vouchers were paid with
24999
+ * @type {number}
25000
+ * @memberof SalesReportPaymentSummaryDto
25001
+ */
25002
+ 'edenredVoucherCount': number;
25003
+ /**
25004
+ * What was paid with Edenred vouchers, in the major unit of the group\'s currency (euros for EUR)
25005
+ * @type {number}
25006
+ * @memberof SalesReportPaymentSummaryDto
25007
+ */
25008
+ 'edenredVoucherAmount': number;
25009
+ /**
25010
+ * How many Smartum vouchers were paid with
25011
+ * @type {number}
25012
+ * @memberof SalesReportPaymentSummaryDto
25013
+ */
25014
+ 'smartumVoucherCount': number;
25015
+ /**
25016
+ * What was paid with Smartum vouchers, in the major unit of the group\'s currency (euros for EUR)
25017
+ * @type {number}
25018
+ * @memberof SalesReportPaymentSummaryDto
25019
+ */
25020
+ 'smartumVoucherAmount': number;
25021
+ /**
25022
+ * How many payments were made
25023
+ * @type {number}
25024
+ * @memberof SalesReportPaymentSummaryDto
25025
+ */
25026
+ 'totalCount': number;
25027
+ /**
25028
+ * The same as salesAndRevenue, in the major unit of the group\'s currency (euros for EUR)
25029
+ * @type {number}
25030
+ * @memberof SalesReportPaymentSummaryDto
25031
+ */
25032
+ 'totalAmount': number;
25033
+ /**
25034
+ * Always 0: no app records coupons here
25035
+ * @type {number}
25036
+ * @memberof SalesReportPaymentSummaryDto
25037
+ */
25038
+ 'totalCoupons': number;
25039
+ /**
25040
+ * Vouchers\' leftover that was not given back, in the major unit of the group\'s currency (euros for EUR)
25041
+ * @type {number}
25042
+ * @memberof SalesReportPaymentSummaryDto
25043
+ */
25044
+ 'totalVoucherForfeited': number;
25045
+ /**
25046
+ * POS only: what was paid before refunds, in the major unit of the group\'s currency (euros for EUR)
25047
+ * @type {number}
25048
+ * @memberof SalesReportPaymentSummaryDto
25049
+ */
25050
+ 'grossAmount'?: number;
25051
+ /**
25052
+ * Refunds, in the major unit of the group\'s currency (euros for EUR), on the day of the order they refund
25053
+ * @type {number}
25054
+ * @memberof SalesReportPaymentSummaryDto
25055
+ */
25056
+ 'totalRefunds': number;
25057
+ /**
25058
+ * How many refunds were made
25059
+ * @type {number}
25060
+ * @memberof SalesReportPaymentSummaryDto
25061
+ */
25062
+ 'refundCount': number;
25063
+ }
25064
+ /**
25065
+ *
25066
+ * @export
25067
+ * @interface SalesReportPaymentsDto
25068
+ */
25069
+ export interface SalesReportPaymentsDto {
25070
+ /**
25071
+ * Part payments: one row per payment method
25072
+ * @type {Array<SalesReportPaymentMethodDto>}
25073
+ * @memberof SalesReportPaymentsDto
25074
+ */
25075
+ 'paymentMethods'?: Array<SalesReportPaymentMethodDto>;
25076
+ /**
25077
+ *
25078
+ * @type {SalesReportPaymentsDtoSummary}
25079
+ * @memberof SalesReportPaymentsDto
25080
+ */
25081
+ 'summary'?: SalesReportPaymentsDtoSummary;
25082
+ /**
25083
+ * Part discounts: one row per discount
25084
+ * @type {Array<SalesReportDiscountDto>}
25085
+ * @memberof SalesReportPaymentsDto
25086
+ */
25087
+ 'discounts'?: Array<SalesReportDiscountDto>;
25088
+ /**
25089
+ * Part summary: every discount given, in the major unit of the group\'s currency (euros for EUR)
25090
+ * @type {number}
25091
+ * @memberof SalesReportPaymentsDto
25092
+ */
25093
+ 'totalDiscounts'?: number;
25094
+ }
25095
+ /**
25096
+ * Part summary: the payment totals
25097
+ * @export
25098
+ * @interface SalesReportPaymentsDtoSummary
25099
+ */
25100
+ export interface SalesReportPaymentsDtoSummary {
25101
+ /**
25102
+ * Tips, in the major unit of the group\'s currency (euros for EUR)
25103
+ * @type {number}
25104
+ * @memberof SalesReportPaymentsDtoSummary
25105
+ */
25106
+ 'totalTipAmount': number;
25107
+ /**
25108
+ * Surcharges, in the major unit of the group\'s currency (euros for EUR)
25109
+ * @type {number}
25110
+ * @memberof SalesReportPaymentsDtoSummary
25111
+ */
25112
+ 'totalSurchargeAmount': number;
25113
+ /**
25114
+ * What was paid, refunds taken off, in the major unit of the group\'s currency (euros for EUR)
25115
+ * @type {number}
25116
+ * @memberof SalesReportPaymentsDtoSummary
25117
+ */
25118
+ 'salesAndRevenue': number;
25119
+ /**
25120
+ * How many card payments were made
25121
+ * @type {number}
25122
+ * @memberof SalesReportPaymentsDtoSummary
25123
+ */
25124
+ 'cardsCount': number;
25125
+ /**
25126
+ * What was paid by card, in the major unit of the group\'s currency (euros for EUR)
25127
+ * @type {number}
25128
+ * @memberof SalesReportPaymentsDtoSummary
25129
+ */
25130
+ 'cardsAmount': number;
25131
+ /**
25132
+ * How many Edenred vouchers were paid with
25133
+ * @type {number}
25134
+ * @memberof SalesReportPaymentsDtoSummary
25135
+ */
25136
+ 'edenredVoucherCount': number;
25137
+ /**
25138
+ * What was paid with Edenred vouchers, in the major unit of the group\'s currency (euros for EUR)
25139
+ * @type {number}
25140
+ * @memberof SalesReportPaymentsDtoSummary
25141
+ */
25142
+ 'edenredVoucherAmount': number;
25143
+ /**
25144
+ * How many Smartum vouchers were paid with
25145
+ * @type {number}
25146
+ * @memberof SalesReportPaymentsDtoSummary
25147
+ */
25148
+ 'smartumVoucherCount': number;
25149
+ /**
25150
+ * What was paid with Smartum vouchers, in the major unit of the group\'s currency (euros for EUR)
25151
+ * @type {number}
25152
+ * @memberof SalesReportPaymentsDtoSummary
25153
+ */
25154
+ 'smartumVoucherAmount': number;
25155
+ /**
25156
+ * How many payments were made
25157
+ * @type {number}
25158
+ * @memberof SalesReportPaymentsDtoSummary
25159
+ */
25160
+ 'totalCount': number;
25161
+ /**
25162
+ * The same as salesAndRevenue, in the major unit of the group\'s currency (euros for EUR)
25163
+ * @type {number}
25164
+ * @memberof SalesReportPaymentsDtoSummary
25165
+ */
25166
+ 'totalAmount': number;
25167
+ /**
25168
+ * Always 0: no app records coupons here
25169
+ * @type {number}
25170
+ * @memberof SalesReportPaymentsDtoSummary
25171
+ */
25172
+ 'totalCoupons': number;
25173
+ /**
25174
+ * Vouchers\' leftover that was not given back, in the major unit of the group\'s currency (euros for EUR)
25175
+ * @type {number}
25176
+ * @memberof SalesReportPaymentsDtoSummary
25177
+ */
25178
+ 'totalVoucherForfeited': number;
25179
+ /**
25180
+ * POS only: what was paid before refunds, in the major unit of the group\'s currency (euros for EUR)
25181
+ * @type {number}
25182
+ * @memberof SalesReportPaymentsDtoSummary
25183
+ */
25184
+ 'grossAmount'?: number;
25185
+ /**
25186
+ * Refunds, in the major unit of the group\'s currency (euros for EUR), on the day of the order they refund
25187
+ * @type {number}
25188
+ * @memberof SalesReportPaymentsDtoSummary
25189
+ */
25190
+ 'totalRefunds': number;
25191
+ /**
25192
+ * How many refunds were made
25193
+ * @type {number}
25194
+ * @memberof SalesReportPaymentsDtoSummary
25195
+ */
25196
+ 'refundCount': number;
25197
+ }
25198
+ /**
25199
+ *
25200
+ * @export
25201
+ * @interface SalesReportResponseDto
25202
+ */
25203
+ export interface SalesReportResponseDto {
25204
+ /**
25205
+ * The first instant of the period, ISO 8601 in UTC
25206
+ * @type {string}
25207
+ * @memberof SalesReportResponseDto
25208
+ */
25209
+ 'reportDateStart': string;
25210
+ /**
25211
+ * The last instant of the period, ISO 8601 in UTC; now, when the period ends later
25212
+ * @type {string}
25213
+ * @memberof SalesReportResponseDto
25214
+ */
25215
+ 'reportDateEnd': string;
25216
+ /**
25217
+ * When the report was answered, ISO 8601 in UTC
25218
+ * @type {string}
25219
+ * @memberof SalesReportResponseDto
25220
+ */
25221
+ 'reportGeneratedAt': string;
25222
+ /**
25223
+ * The time zone the period was read in: the request\'s, or else the first venue\'s
25224
+ * @type {string}
25225
+ * @memberof SalesReportResponseDto
25226
+ */
25227
+ 'timezone': string;
25228
+ /**
25229
+ * The first business day added up, YYYY-MM-DD; each venue\'s rows of that date in its own zone
25230
+ * @type {string}
25231
+ * @memberof SalesReportResponseDto
25232
+ */
25233
+ 'firstBusinessDay': string;
25234
+ /**
25235
+ * The last business day added up, YYYY-MM-DD, inclusive
25236
+ * @type {string}
25237
+ * @memberof SalesReportResponseDto
25238
+ */
25239
+ 'lastBusinessDay': string;
25240
+ /**
25241
+ * When the newest daily rows this report reads were rebuilt; a sale after it may not be counted yet (they are rebuilt every 5 minutes). Null when none were ever loaded
25242
+ * @type {object}
25243
+ * @memberof SalesReportResponseDto
25244
+ */
25245
+ 'dataUntil': object | null;
25246
+ /**
25247
+ * One group per venue, app and currency the breakdown keeps; an asked venue that sold nothing answers zeros
25248
+ * @type {Array<SalesReportGroupDto>}
25249
+ * @memberof SalesReportResponseDto
25250
+ */
25251
+ 'reports': Array<SalesReportGroupDto>;
25252
+ }
25253
+ /**
25254
+ *
25255
+ * @export
25256
+ * @interface SalesReportSalesDto
25257
+ */
25258
+ export interface SalesReportSalesDto {
25259
+ /**
25260
+ * Part items: the categories with their items
25261
+ * @type {Array<SalesReportCategoryDto>}
25262
+ * @memberof SalesReportSalesDto
25263
+ */
25264
+ 'categories'?: Array<SalesReportCategoryDto>;
25265
+ /**
25266
+ * Part vat: one row per VAT rate, lowest first
25267
+ * @type {Array<SalesReportVatRateDto>}
25268
+ * @memberof SalesReportSalesDto
25269
+ */
25270
+ 'taxSummary'?: Array<SalesReportVatRateDto>;
25271
+ /**
25272
+ * Part summary: how many items were sold
25273
+ * @type {number}
25274
+ * @memberof SalesReportSalesDto
25275
+ */
25276
+ 'totalQuantity'?: number;
25277
+ /**
25278
+ * Part summary: sales with VAT, in the major unit of the group\'s currency (euros for EUR)
25279
+ * @type {number}
25280
+ * @memberof SalesReportSalesDto
25281
+ */
25282
+ 'totalWithTax'?: number;
25283
+ /**
25284
+ * Part summary: the VAT, in the major unit of the group\'s currency (euros for EUR)
25285
+ * @type {number}
25286
+ * @memberof SalesReportSalesDto
25287
+ */
25288
+ 'totalTaxAmount'?: number;
25289
+ /**
25290
+ * Part summary: sales without VAT, in the major unit of the group\'s currency (euros for EUR)
25291
+ * @type {number}
25292
+ * @memberof SalesReportSalesDto
25293
+ */
25294
+ 'totalWithoutTax'?: number;
25295
+ /**
25296
+ * Part summary, storefront and mobile: the delivery fees charged, in the major unit of the group\'s currency (euros for EUR); left out when none was
25297
+ * @type {number}
25298
+ * @memberof SalesReportSalesDto
25299
+ */
25300
+ 'deliveryFee'?: number;
25301
+ /**
25302
+ * Part summary, with deliveryFee: the VAT of the delivery fees, in the major unit of the group\'s currency (euros for EUR)
25303
+ * @type {number}
25304
+ * @memberof SalesReportSalesDto
25305
+ */
25306
+ 'deliveryTax'?: number;
25307
+ }
25308
+ /**
25309
+ *
25310
+ * @export
25311
+ * @interface SalesReportVatRateDto
25312
+ */
25313
+ export interface SalesReportVatRateDto {
25314
+ /**
25315
+ * The VAT rate in percent
25316
+ * @type {number}
25317
+ * @memberof SalesReportVatRateDto
25318
+ */
25319
+ 'taxRate': number;
25320
+ /**
25321
+ * Sales with VAT at this rate, in the major unit of the group\'s currency (euros for EUR)
25322
+ * @type {number}
25323
+ * @memberof SalesReportVatRateDto
25324
+ */
25325
+ 'totalWithTax': number;
25326
+ /**
25327
+ * The VAT at this rate, in the major unit of the group\'s currency (euros for EUR)
25328
+ * @type {number}
25329
+ * @memberof SalesReportVatRateDto
25330
+ */
25331
+ 'taxAmount': number;
25332
+ /**
25333
+ * Sales without VAT at this rate, in the major unit of the group\'s currency (euros for EUR)
25334
+ * @type {number}
25335
+ * @memberof SalesReportVatRateDto
25336
+ */
25337
+ 'totalWithoutTax': number;
25338
+ }
24032
25339
  /**
24033
25340
  *
24034
25341
  * @export
@@ -29462,6 +30769,30 @@ export interface UpdateReservationPolicyDto {
29462
30769
  * @memberof UpdateReservationPolicyDto
29463
30770
  */
29464
30771
  'maxOnlinePartySize'?: number;
30772
+ /**
30773
+ * The smallest party offered slots online; 1 on create when absent
30774
+ * @type {number}
30775
+ * @memberof UpdateReservationPolicyDto
30776
+ */
30777
+ 'minPartySize'?: number;
30778
+ /**
30779
+ * How many days after today a guest may book: a later day offers no slots; 60 on create when absent
30780
+ * @type {number}
30781
+ * @memberof UpdateReservationPolicyDto
30782
+ */
30783
+ 'maxHorizonDays'?: number;
30784
+ /**
30785
+ * The last seating: no slot starts later than this many minutes before each opening closes; 0 (only the turn must fit) on create when absent
30786
+ * @type {number}
30787
+ * @memberof UpdateReservationPolicyDto
30788
+ */
30789
+ 'cutoffMins'?: number;
30790
+ /**
30791
+ * Minutes a table is held, by party size; a party size missing here takes defaultTurnTimeMins. Replaces the whole table when sent, {} clears it; {} on create when absent
30792
+ * @type {{ [key: string]: number; }}
30793
+ * @memberof UpdateReservationPolicyDto
30794
+ */
30795
+ 'turnTimeByPartySize'?: { [key: string]: number; };
29465
30796
  }
29466
30797
  /**
29467
30798
  *
@@ -30541,12 +31872,6 @@ export interface VendureSellerUpsertDto {
30541
31872
  * @memberof VendureSellerUpsertDto
30542
31873
  */
30543
31874
  'currency'?: string | null;
30544
- /**
30545
- * The time the venue\'s business day ends, \"HH:mm\" 24-hour, in the venue\'s time zone: a sale before it counts on the day before in the day\'s report. Kept on the venue\'s MunchiPos config. Null, absent, or text that is not \"HH:mm\" keeps the stored one; a venue with none ends its day at 05:00
30546
- * @type {string}
30547
- * @memberof VendureSellerUpsertDto
30548
- */
30549
- 'report_time'?: string | null;
30550
31875
  /**
30551
31876
  * Whether the venue is in use. Vendure sends false when the seller is deleted
30552
31877
  * @type {boolean}
@@ -42585,6 +43910,46 @@ export const KDSApiAxiosParamCreator = function (configuration?: Configuration)
42585
43910
  options: localVarRequestOptions,
42586
43911
  };
42587
43912
  },
43913
+ /**
43914
+ * Written in kds-service, in one call for every order; kds-service decides each order and leaves untouched any it cannot mark ready. It admits a signed-in ticket, whose venue must be on its account, or the Munchi-internal Clerk API key; never the shared service key. A failure there is answered with 200 and status false; when the call fails after kds-service has written (a dropped connection or a timeout), status is false although some tickets were marked ready, and the station\'s next list shows them.
43915
+ * @summary Mark several of a station\'s kitchen orders ready
43916
+ * @param {KdsMarkOrdersReadyDto} kdsMarkOrdersReadyDto The venue, the station, and the ids of its KDS orders to mark ready
43917
+ * @param {*} [options] Override http request option.
43918
+ * @throws {RequiredError}
43919
+ */
43920
+ kdsMarkOrdersReady: async (kdsMarkOrdersReadyDto: KdsMarkOrdersReadyDto, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
43921
+ // verify required parameter 'kdsMarkOrdersReadyDto' is not null or undefined
43922
+ assertParamExists('kdsMarkOrdersReady', 'kdsMarkOrdersReadyDto', kdsMarkOrdersReadyDto)
43923
+ const localVarPath = `/api/v1/kds/orders/ready`;
43924
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
43925
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
43926
+ let baseOptions;
43927
+ if (configuration) {
43928
+ baseOptions = configuration.baseOptions;
43929
+ }
43930
+
43931
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
43932
+ const localVarHeaderParameter = {} as any;
43933
+ const localVarQueryParameter = {} as any;
43934
+
43935
+ // authentication JWT-auth required
43936
+ // http bearer authentication required
43937
+ await setBearerAuthToObject(localVarHeaderParameter, configuration)
43938
+
43939
+
43940
+
43941
+ localVarHeaderParameter['Content-Type'] = 'application/json';
43942
+
43943
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
43944
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
43945
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
43946
+ localVarRequestOptions.data = serializeDataIfNeeded(kdsMarkOrdersReadyDto, localVarRequestOptions, configuration)
43947
+
43948
+ return {
43949
+ url: toPathString(localVarUrlObj),
43950
+ options: localVarRequestOptions,
43951
+ };
43952
+ },
42588
43953
  /**
42589
43954
  * Written in kds-service. A failure there is answered with 200 and status false.
42590
43955
  * @summary Revert a station\'s kitchen order back to in progress
@@ -42676,6 +44041,17 @@ export const KDSApiFp = function(configuration?: Configuration) {
42676
44041
  const localVarAxiosArgs = await localVarAxiosParamCreator.kdsMarkOrderReady(id, options);
42677
44042
  return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
42678
44043
  },
44044
+ /**
44045
+ * Written in kds-service, in one call for every order; kds-service decides each order and leaves untouched any it cannot mark ready. It admits a signed-in ticket, whose venue must be on its account, or the Munchi-internal Clerk API key; never the shared service key. A failure there is answered with 200 and status false; when the call fails after kds-service has written (a dropped connection or a timeout), status is false although some tickets were marked ready, and the station\'s next list shows them.
44046
+ * @summary Mark several of a station\'s kitchen orders ready
44047
+ * @param {KdsMarkOrdersReadyDto} kdsMarkOrdersReadyDto The venue, the station, and the ids of its KDS orders to mark ready
44048
+ * @param {*} [options] Override http request option.
44049
+ * @throws {RequiredError}
44050
+ */
44051
+ async kdsMarkOrdersReady(kdsMarkOrdersReadyDto: KdsMarkOrdersReadyDto, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<KdsReadyOrdersResponseDto>> {
44052
+ const localVarAxiosArgs = await localVarAxiosParamCreator.kdsMarkOrdersReady(kdsMarkOrdersReadyDto, options);
44053
+ return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
44054
+ },
42679
44055
  /**
42680
44056
  * Written in kds-service. A failure there is answered with 200 and status false.
42681
44057
  * @summary Revert a station\'s kitchen order back to in progress
@@ -42737,6 +44113,16 @@ export const KDSApiFactory = function (configuration?: Configuration, basePath?:
42737
44113
  kdsMarkOrderReady(id: string, options?: any): AxiosPromise<KdsReadyOrderResponseDto> {
42738
44114
  return localVarFp.kdsMarkOrderReady(id, options).then((request) => request(axios, basePath));
42739
44115
  },
44116
+ /**
44117
+ * Written in kds-service, in one call for every order; kds-service decides each order and leaves untouched any it cannot mark ready. It admits a signed-in ticket, whose venue must be on its account, or the Munchi-internal Clerk API key; never the shared service key. A failure there is answered with 200 and status false; when the call fails after kds-service has written (a dropped connection or a timeout), status is false although some tickets were marked ready, and the station\'s next list shows them.
44118
+ * @summary Mark several of a station\'s kitchen orders ready
44119
+ * @param {KdsMarkOrdersReadyDto} kdsMarkOrdersReadyDto The venue, the station, and the ids of its KDS orders to mark ready
44120
+ * @param {*} [options] Override http request option.
44121
+ * @throws {RequiredError}
44122
+ */
44123
+ kdsMarkOrdersReady(kdsMarkOrdersReadyDto: KdsMarkOrdersReadyDto, options?: any): AxiosPromise<KdsReadyOrdersResponseDto> {
44124
+ return localVarFp.kdsMarkOrdersReady(kdsMarkOrdersReadyDto, options).then((request) => request(axios, basePath));
44125
+ },
42740
44126
  /**
42741
44127
  * Written in kds-service. A failure there is answered with 200 and status false.
42742
44128
  * @summary Revert a station\'s kitchen order back to in progress
@@ -42796,6 +44182,16 @@ export interface KDSApiInterface {
42796
44182
  */
42797
44183
  kdsMarkOrderReady(id: string, options?: AxiosRequestConfig): AxiosPromise<KdsReadyOrderResponseDto>;
42798
44184
 
44185
+ /**
44186
+ * Written in kds-service, in one call for every order; kds-service decides each order and leaves untouched any it cannot mark ready. It admits a signed-in ticket, whose venue must be on its account, or the Munchi-internal Clerk API key; never the shared service key. A failure there is answered with 200 and status false; when the call fails after kds-service has written (a dropped connection or a timeout), status is false although some tickets were marked ready, and the station\'s next list shows them.
44187
+ * @summary Mark several of a station\'s kitchen orders ready
44188
+ * @param {KdsMarkOrdersReadyDto} kdsMarkOrdersReadyDto The venue, the station, and the ids of its KDS orders to mark ready
44189
+ * @param {*} [options] Override http request option.
44190
+ * @throws {RequiredError}
44191
+ * @memberof KDSApiInterface
44192
+ */
44193
+ kdsMarkOrdersReady(kdsMarkOrdersReadyDto: KdsMarkOrdersReadyDto, options?: AxiosRequestConfig): AxiosPromise<KdsReadyOrdersResponseDto>;
44194
+
42799
44195
  /**
42800
44196
  * Written in kds-service. A failure there is answered with 200 and status false.
42801
44197
  * @summary Revert a station\'s kitchen order back to in progress
@@ -42861,6 +44257,18 @@ export class KDSApi extends BaseAPI implements KDSApiInterface {
42861
44257
  return KDSApiFp(this.configuration).kdsMarkOrderReady(id, options).then((request) => request(this.axios, this.basePath));
42862
44258
  }
42863
44259
 
44260
+ /**
44261
+ * Written in kds-service, in one call for every order; kds-service decides each order and leaves untouched any it cannot mark ready. It admits a signed-in ticket, whose venue must be on its account, or the Munchi-internal Clerk API key; never the shared service key. A failure there is answered with 200 and status false; when the call fails after kds-service has written (a dropped connection or a timeout), status is false although some tickets were marked ready, and the station\'s next list shows them.
44262
+ * @summary Mark several of a station\'s kitchen orders ready
44263
+ * @param {KdsMarkOrdersReadyDto} kdsMarkOrdersReadyDto The venue, the station, and the ids of its KDS orders to mark ready
44264
+ * @param {*} [options] Override http request option.
44265
+ * @throws {RequiredError}
44266
+ * @memberof KDSApi
44267
+ */
44268
+ public kdsMarkOrdersReady(kdsMarkOrdersReadyDto: KdsMarkOrdersReadyDto, options?: AxiosRequestConfig) {
44269
+ return KDSApiFp(this.configuration).kdsMarkOrdersReady(kdsMarkOrdersReadyDto, options).then((request) => request(this.axios, this.basePath));
44270
+ }
44271
+
42864
44272
  /**
42865
44273
  * Written in kds-service. A failure there is answered with 200 and status false.
42866
44274
  * @summary Revert a station\'s kitchen order back to in progress
@@ -45897,6 +47305,42 @@ export const OrdersApiAxiosParamCreator = function (configuration?: Configuratio
45897
47305
  options: localVarRequestOptions,
45898
47306
  };
45899
47307
  },
47308
+ /**
47309
+ * One tap on a column of the till: Mark all ready (in progress → ready) or Deliver all (ready → delivered). Each id is looked for among the venue\'s tickets, then its orders, all in one Firestore read, and every one that may move is written in the same transaction; the rest are left as they are, each with its reason. Only the till\'s own tickets and orders move, never a channel\'s (Wolt, Foodora, Storefront): their ids are not found. A ticket the kitchen screen owns is never marked ready here, and nothing goes from in progress to delivered. The tills hear the request once: one kitchen_order_sync and one pos_order_change naming every moved id; the integrations hear every moved document in one announcement. Delivered orders earn their members\' loyalty points before the answer, a few at a time; a credit that fails is logged and does not change the answer.
47310
+ * @summary Move the till\'s tickets and orders of one column to the next status
47311
+ * @param {ChangePosOrdersStatusInBulkDto} changePosOrdersStatusInBulkDto The venue, the ids of its tickets and orders, and the status to move them to
47312
+ * @param {*} [options] Override http request option.
47313
+ * @throws {RequiredError}
47314
+ */
47315
+ changePosOrdersStatusInBulk: async (changePosOrdersStatusInBulkDto: ChangePosOrdersStatusInBulkDto, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
47316
+ // verify required parameter 'changePosOrdersStatusInBulkDto' is not null or undefined
47317
+ assertParamExists('changePosOrdersStatusInBulk', 'changePosOrdersStatusInBulkDto', changePosOrdersStatusInBulkDto)
47318
+ const localVarPath = `/api/v2/orders/pos/bulk-status`;
47319
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
47320
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
47321
+ let baseOptions;
47322
+ if (configuration) {
47323
+ baseOptions = configuration.baseOptions;
47324
+ }
47325
+
47326
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
47327
+ const localVarHeaderParameter = {} as any;
47328
+ const localVarQueryParameter = {} as any;
47329
+
47330
+
47331
+
47332
+ localVarHeaderParameter['Content-Type'] = 'application/json';
47333
+
47334
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
47335
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
47336
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
47337
+ localVarRequestOptions.data = serializeDataIfNeeded(changePosOrdersStatusInBulkDto, localVarRequestOptions, configuration)
47338
+
47339
+ return {
47340
+ url: toPathString(localVarUrlObj),
47341
+ options: localVarRequestOptions,
47342
+ };
47343
+ },
45900
47344
  /**
45901
47345
  * The till\'s Order Manager confirms a platform preorder with its preparation time. Its pickup time is stored, and a Foodora preorder also moves into preparation. Then the preorder is marked confirmed and the answer leaves; after it, the platform is told, and a courier or a reminder is booked where the channel needs one. A failure in those steps is logged and does not change the answer.
45902
47346
  * @summary Confirm a pre-order
@@ -46453,6 +47897,17 @@ export const OrdersApiFp = function(configuration?: Configuration) {
46453
47897
  const localVarAxiosArgs = await localVarAxiosParamCreator.acceptOrder(acceptOrderDto, options);
46454
47898
  return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
46455
47899
  },
47900
+ /**
47901
+ * One tap on a column of the till: Mark all ready (in progress → ready) or Deliver all (ready → delivered). Each id is looked for among the venue\'s tickets, then its orders, all in one Firestore read, and every one that may move is written in the same transaction; the rest are left as they are, each with its reason. Only the till\'s own tickets and orders move, never a channel\'s (Wolt, Foodora, Storefront): their ids are not found. A ticket the kitchen screen owns is never marked ready here, and nothing goes from in progress to delivered. The tills hear the request once: one kitchen_order_sync and one pos_order_change naming every moved id; the integrations hear every moved document in one announcement. Delivered orders earn their members\' loyalty points before the answer, a few at a time; a credit that fails is logged and does not change the answer.
47902
+ * @summary Move the till\'s tickets and orders of one column to the next status
47903
+ * @param {ChangePosOrdersStatusInBulkDto} changePosOrdersStatusInBulkDto The venue, the ids of its tickets and orders, and the status to move them to
47904
+ * @param {*} [options] Override http request option.
47905
+ * @throws {RequiredError}
47906
+ */
47907
+ async changePosOrdersStatusInBulk(changePosOrdersStatusInBulkDto: ChangePosOrdersStatusInBulkDto, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<ChangePosOrdersStatusInBulkResponseDto>> {
47908
+ const localVarAxiosArgs = await localVarAxiosParamCreator.changePosOrdersStatusInBulk(changePosOrdersStatusInBulkDto, options);
47909
+ return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
47910
+ },
46456
47911
  /**
46457
47912
  * The till\'s Order Manager confirms a platform preorder with its preparation time. Its pickup time is stored, and a Foodora preorder also moves into preparation. Then the preorder is marked confirmed and the answer leaves; after it, the platform is told, and a courier or a reminder is booked where the channel needs one. A failure in those steps is logged and does not change the answer.
46458
47913
  * @summary Confirm a pre-order
@@ -46633,6 +48088,16 @@ export const OrdersApiFactory = function (configuration?: Configuration, basePat
46633
48088
  acceptOrder(acceptOrderDto: AcceptOrderDto, options?: any): AxiosPromise<OrderStatusResponseDto> {
46634
48089
  return localVarFp.acceptOrder(acceptOrderDto, options).then((request) => request(axios, basePath));
46635
48090
  },
48091
+ /**
48092
+ * One tap on a column of the till: Mark all ready (in progress → ready) or Deliver all (ready → delivered). Each id is looked for among the venue\'s tickets, then its orders, all in one Firestore read, and every one that may move is written in the same transaction; the rest are left as they are, each with its reason. Only the till\'s own tickets and orders move, never a channel\'s (Wolt, Foodora, Storefront): their ids are not found. A ticket the kitchen screen owns is never marked ready here, and nothing goes from in progress to delivered. The tills hear the request once: one kitchen_order_sync and one pos_order_change naming every moved id; the integrations hear every moved document in one announcement. Delivered orders earn their members\' loyalty points before the answer, a few at a time; a credit that fails is logged and does not change the answer.
48093
+ * @summary Move the till\'s tickets and orders of one column to the next status
48094
+ * @param {ChangePosOrdersStatusInBulkDto} changePosOrdersStatusInBulkDto The venue, the ids of its tickets and orders, and the status to move them to
48095
+ * @param {*} [options] Override http request option.
48096
+ * @throws {RequiredError}
48097
+ */
48098
+ changePosOrdersStatusInBulk(changePosOrdersStatusInBulkDto: ChangePosOrdersStatusInBulkDto, options?: any): AxiosPromise<ChangePosOrdersStatusInBulkResponseDto> {
48099
+ return localVarFp.changePosOrdersStatusInBulk(changePosOrdersStatusInBulkDto, options).then((request) => request(axios, basePath));
48100
+ },
46636
48101
  /**
46637
48102
  * The till\'s Order Manager confirms a platform preorder with its preparation time. Its pickup time is stored, and a Foodora preorder also moves into preparation. Then the preorder is marked confirmed and the answer leaves; after it, the platform is told, and a courier or a reminder is booked where the channel needs one. A failure in those steps is logged and does not change the answer.
46638
48103
  * @summary Confirm a pre-order
@@ -46798,6 +48263,16 @@ export interface OrdersApiInterface {
46798
48263
  */
46799
48264
  acceptOrder(acceptOrderDto: AcceptOrderDto, options?: AxiosRequestConfig): AxiosPromise<OrderStatusResponseDto>;
46800
48265
 
48266
+ /**
48267
+ * One tap on a column of the till: Mark all ready (in progress → ready) or Deliver all (ready → delivered). Each id is looked for among the venue\'s tickets, then its orders, all in one Firestore read, and every one that may move is written in the same transaction; the rest are left as they are, each with its reason. Only the till\'s own tickets and orders move, never a channel\'s (Wolt, Foodora, Storefront): their ids are not found. A ticket the kitchen screen owns is never marked ready here, and nothing goes from in progress to delivered. The tills hear the request once: one kitchen_order_sync and one pos_order_change naming every moved id; the integrations hear every moved document in one announcement. Delivered orders earn their members\' loyalty points before the answer, a few at a time; a credit that fails is logged and does not change the answer.
48268
+ * @summary Move the till\'s tickets and orders of one column to the next status
48269
+ * @param {ChangePosOrdersStatusInBulkDto} changePosOrdersStatusInBulkDto The venue, the ids of its tickets and orders, and the status to move them to
48270
+ * @param {*} [options] Override http request option.
48271
+ * @throws {RequiredError}
48272
+ * @memberof OrdersApiInterface
48273
+ */
48274
+ changePosOrdersStatusInBulk(changePosOrdersStatusInBulkDto: ChangePosOrdersStatusInBulkDto, options?: AxiosRequestConfig): AxiosPromise<ChangePosOrdersStatusInBulkResponseDto>;
48275
+
46801
48276
  /**
46802
48277
  * The till\'s Order Manager confirms a platform preorder with its preparation time. Its pickup time is stored, and a Foodora preorder also moves into preparation. Then the preorder is marked confirmed and the answer leaves; after it, the platform is told, and a courier or a reminder is booked where the channel needs one. A failure in those steps is logged and does not change the answer.
46803
48278
  * @summary Confirm a pre-order
@@ -46965,6 +48440,18 @@ export class OrdersApi extends BaseAPI implements OrdersApiInterface {
46965
48440
  return OrdersApiFp(this.configuration).acceptOrder(acceptOrderDto, options).then((request) => request(this.axios, this.basePath));
46966
48441
  }
46967
48442
 
48443
+ /**
48444
+ * One tap on a column of the till: Mark all ready (in progress → ready) or Deliver all (ready → delivered). Each id is looked for among the venue\'s tickets, then its orders, all in one Firestore read, and every one that may move is written in the same transaction; the rest are left as they are, each with its reason. Only the till\'s own tickets and orders move, never a channel\'s (Wolt, Foodora, Storefront): their ids are not found. A ticket the kitchen screen owns is never marked ready here, and nothing goes from in progress to delivered. The tills hear the request once: one kitchen_order_sync and one pos_order_change naming every moved id; the integrations hear every moved document in one announcement. Delivered orders earn their members\' loyalty points before the answer, a few at a time; a credit that fails is logged and does not change the answer.
48445
+ * @summary Move the till\'s tickets and orders of one column to the next status
48446
+ * @param {ChangePosOrdersStatusInBulkDto} changePosOrdersStatusInBulkDto The venue, the ids of its tickets and orders, and the status to move them to
48447
+ * @param {*} [options] Override http request option.
48448
+ * @throws {RequiredError}
48449
+ * @memberof OrdersApi
48450
+ */
48451
+ public changePosOrdersStatusInBulk(changePosOrdersStatusInBulkDto: ChangePosOrdersStatusInBulkDto, options?: AxiosRequestConfig) {
48452
+ return OrdersApiFp(this.configuration).changePosOrdersStatusInBulk(changePosOrdersStatusInBulkDto, options).then((request) => request(this.axios, this.basePath));
48453
+ }
48454
+
46968
48455
  /**
46969
48456
  * The till\'s Order Manager confirms a platform preorder with its preparation time. Its pickup time is stored, and a Foodora preorder also moves into preparation. Then the preorder is marked confirmed and the answer leaves; after it, the platform is told, and a courier or a reminder is booked where the channel needs one. A failure in those steps is logged and does not change the answer.
46970
48457
  * @summary Confirm a pre-order
@@ -53997,6 +55484,102 @@ export const ReportApiAxiosParamCreator = function (configuration?: Configuratio
53997
55484
 
53998
55485
 
53999
55486
 
55487
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
55488
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
55489
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
55490
+
55491
+ return {
55492
+ url: toPathString(localVarUrlObj),
55493
+ options: localVarRequestOptions,
55494
+ };
55495
+ },
55496
+ /**
55497
+ * Adds up each venue\'s finished business days (the calendar date in the venue\'s own time zone) of the apps and parts asked, in one database statement. Each group answers in its app\'s portal shape: POS as report-service, kiosk, storefront and mobile as dashboard v2; several apps added together answer as v2. Amounts of two currencies are never added together: a venue whose sales are in a currency other than its current Business.currency answers a group in each. A person\'s signed-in ticket reads the venues on its account; a Clerk API key of the Munchi-internal organisation (the MCP\'s, D134, D137) reads any venue; the shared key and any other organisation\'s key are refused. A period must cover whole days; today is answered up to dataUntil. With compareStart and compareEnd, each group also answers comparison: the same group over those days, read in the same statement, and the change of each total worked out exactly; a currency only the compared period sold in adds a group of zeros after the others. With baseline, every other group answers changesFromBaseline, its change from the baseline group of its currency.
55498
+ * @summary Sales report of the venues and apps, whole business days, from the daily rows
55499
+ * @param {Array<number>} businessIds The venues asked about, by business id
55500
+ * @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
55501
+ * @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
55502
+ * @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
55503
+ * @param {string} [timezone] The time zone the period is read in, IANA. Absent: the first venue\&#39;s own (Business.timeZone)
55504
+ * @param {Array<ReportApp>} [apps] The apps to add up, the parameter repeated or a JSON list. Absent: all four
55505
+ * @param {Array<ReportPart>} [parts] The parts to answer, the parameter repeated or a JSON list; only their daily tables are read. Absent: all five
55506
+ * @param {ReportBreakdown} [breakdown] How the venues and apps are split into groups; every currency always splits, and one app asked is never added into several apps. Absent: venue for several venues, none for one
55507
+ * @param {string} [language] Accepted and not read, so a request copied from the portal\&#39;s report works: the report has no text to translate
55508
+ * @param {string} [compareStart] With compareEnd, compares the report with these whole days: each group then also answers comparison, the same group over them, and the change of every total worked out exactly. The first business day compared, YYYY-MM-DD, in the report\&#39;s time zone; not later than today. Neither sent: no comparison, and the answer is as before. Sent without compareEnd: refused
55509
+ * @param {string} [compareEnd] With compareStart: the last business day compared, YYYY-MM-DD, inclusive; a day later than today is read up to now. Sent without compareStart: refused
55510
+ * @param {string} [baseline] One group of the answer every other group is compared with: venue:&lt;id&gt; with breakdown venue, app:&lt;app&gt; with breakdown app, venue:&lt;id&gt;,app:&lt;app&gt; with breakdown venue_app. Every other group then answers changesFromBaseline (current: the group; previous: the baseline), of the main period only; a group in another currency than the baseline\&#39;s answers changesFromBaselineLeftOut instead. Refused when the breakdown does not split on what it names, or it names a venue or app not asked
55511
+ * @param {*} [options] Override http request option.
55512
+ * @throws {RequiredError}
55513
+ */
55514
+ getSalesReport: async (businessIds: Array<number>, timeSpan?: TimeSpan, start?: string, end?: string, timezone?: string, apps?: Array<ReportApp>, parts?: Array<ReportPart>, breakdown?: ReportBreakdown, language?: string, compareStart?: string, compareEnd?: string, baseline?: string, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
55515
+ // verify required parameter 'businessIds' is not null or undefined
55516
+ assertParamExists('getSalesReport', 'businessIds', businessIds)
55517
+ const localVarPath = `/api/v6/report/sales`;
55518
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
55519
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
55520
+ let baseOptions;
55521
+ if (configuration) {
55522
+ baseOptions = configuration.baseOptions;
55523
+ }
55524
+
55525
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
55526
+ const localVarHeaderParameter = {} as any;
55527
+ const localVarQueryParameter = {} as any;
55528
+
55529
+ // authentication JWT-auth required
55530
+ // http bearer authentication required
55531
+ await setBearerAuthToObject(localVarHeaderParameter, configuration)
55532
+
55533
+ if (timeSpan !== undefined) {
55534
+ localVarQueryParameter['timeSpan'] = timeSpan;
55535
+ }
55536
+
55537
+ if (start !== undefined) {
55538
+ localVarQueryParameter['start'] = start;
55539
+ }
55540
+
55541
+ if (end !== undefined) {
55542
+ localVarQueryParameter['end'] = end;
55543
+ }
55544
+
55545
+ if (businessIds) {
55546
+ localVarQueryParameter['businessIds'] = businessIds;
55547
+ }
55548
+
55549
+ if (timezone !== undefined) {
55550
+ localVarQueryParameter['timezone'] = timezone;
55551
+ }
55552
+
55553
+ if (apps) {
55554
+ localVarQueryParameter['apps'] = apps;
55555
+ }
55556
+
55557
+ if (parts) {
55558
+ localVarQueryParameter['parts'] = parts;
55559
+ }
55560
+
55561
+ if (breakdown !== undefined) {
55562
+ localVarQueryParameter['breakdown'] = breakdown;
55563
+ }
55564
+
55565
+ if (language !== undefined) {
55566
+ localVarQueryParameter['language'] = language;
55567
+ }
55568
+
55569
+ if (compareStart !== undefined) {
55570
+ localVarQueryParameter['compareStart'] = compareStart;
55571
+ }
55572
+
55573
+ if (compareEnd !== undefined) {
55574
+ localVarQueryParameter['compareEnd'] = compareEnd;
55575
+ }
55576
+
55577
+ if (baseline !== undefined) {
55578
+ localVarQueryParameter['baseline'] = baseline;
55579
+ }
55580
+
55581
+
55582
+
54000
55583
  setSearchParams(localVarUrlObj, localVarQueryParameter);
54001
55584
  let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
54002
55585
  localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
@@ -54102,6 +55685,28 @@ export const ReportApiFp = function(configuration?: Configuration) {
54102
55685
  const localVarAxiosArgs = await localVarAxiosParamCreator.getEndOfDayReportV5(businessIds, timeSpan, start, end, timezone, provider, options);
54103
55686
  return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
54104
55687
  },
55688
+ /**
55689
+ * Adds up each venue\'s finished business days (the calendar date in the venue\'s own time zone) of the apps and parts asked, in one database statement. Each group answers in its app\'s portal shape: POS as report-service, kiosk, storefront and mobile as dashboard v2; several apps added together answer as v2. Amounts of two currencies are never added together: a venue whose sales are in a currency other than its current Business.currency answers a group in each. A person\'s signed-in ticket reads the venues on its account; a Clerk API key of the Munchi-internal organisation (the MCP\'s, D134, D137) reads any venue; the shared key and any other organisation\'s key are refused. A period must cover whole days; today is answered up to dataUntil. With compareStart and compareEnd, each group also answers comparison: the same group over those days, read in the same statement, and the change of each total worked out exactly; a currency only the compared period sold in adds a group of zeros after the others. With baseline, every other group answers changesFromBaseline, its change from the baseline group of its currency.
55690
+ * @summary Sales report of the venues and apps, whole business days, from the daily rows
55691
+ * @param {Array<number>} businessIds The venues asked about, by business id
55692
+ * @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
55693
+ * @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
55694
+ * @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
55695
+ * @param {string} [timezone] The time zone the period is read in, IANA. Absent: the first venue\&#39;s own (Business.timeZone)
55696
+ * @param {Array<ReportApp>} [apps] The apps to add up, the parameter repeated or a JSON list. Absent: all four
55697
+ * @param {Array<ReportPart>} [parts] The parts to answer, the parameter repeated or a JSON list; only their daily tables are read. Absent: all five
55698
+ * @param {ReportBreakdown} [breakdown] How the venues and apps are split into groups; every currency always splits, and one app asked is never added into several apps. Absent: venue for several venues, none for one
55699
+ * @param {string} [language] Accepted and not read, so a request copied from the portal\&#39;s report works: the report has no text to translate
55700
+ * @param {string} [compareStart] With compareEnd, compares the report with these whole days: each group then also answers comparison, the same group over them, and the change of every total worked out exactly. The first business day compared, YYYY-MM-DD, in the report\&#39;s time zone; not later than today. Neither sent: no comparison, and the answer is as before. Sent without compareEnd: refused
55701
+ * @param {string} [compareEnd] With compareStart: the last business day compared, YYYY-MM-DD, inclusive; a day later than today is read up to now. Sent without compareStart: refused
55702
+ * @param {string} [baseline] One group of the answer every other group is compared with: venue:&lt;id&gt; with breakdown venue, app:&lt;app&gt; with breakdown app, venue:&lt;id&gt;,app:&lt;app&gt; with breakdown venue_app. Every other group then answers changesFromBaseline (current: the group; previous: the baseline), of the main period only; a group in another currency than the baseline\&#39;s answers changesFromBaselineLeftOut instead. Refused when the breakdown does not split on what it names, or it names a venue or app not asked
55703
+ * @param {*} [options] Override http request option.
55704
+ * @throws {RequiredError}
55705
+ */
55706
+ async getSalesReport(businessIds: Array<number>, timeSpan?: TimeSpan, start?: string, end?: string, timezone?: string, apps?: Array<ReportApp>, parts?: Array<ReportPart>, breakdown?: ReportBreakdown, language?: string, compareStart?: string, compareEnd?: string, baseline?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<SalesReportResponseDto>> {
55707
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getSalesReport(businessIds, timeSpan, start, end, timezone, apps, parts, breakdown, language, compareStart, compareEnd, baseline, options);
55708
+ return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
55709
+ },
54105
55710
  /**
54106
55711
  *
54107
55712
  * @summary Send end-of-day report via email (V5)
@@ -54144,6 +55749,27 @@ export const ReportApiFactory = function (configuration?: Configuration, basePat
54144
55749
  getEndOfDayReportV5(businessIds: Array<number>, timeSpan?: TimeSpan, start?: string, end?: string, timezone?: string, provider?: ProviderEnum, options?: any): AxiosPromise<EndOfDayReportDtoV4> {
54145
55750
  return localVarFp.getEndOfDayReportV5(businessIds, timeSpan, start, end, timezone, provider, options).then((request) => request(axios, basePath));
54146
55751
  },
55752
+ /**
55753
+ * Adds up each venue\'s finished business days (the calendar date in the venue\'s own time zone) of the apps and parts asked, in one database statement. Each group answers in its app\'s portal shape: POS as report-service, kiosk, storefront and mobile as dashboard v2; several apps added together answer as v2. Amounts of two currencies are never added together: a venue whose sales are in a currency other than its current Business.currency answers a group in each. A person\'s signed-in ticket reads the venues on its account; a Clerk API key of the Munchi-internal organisation (the MCP\'s, D134, D137) reads any venue; the shared key and any other organisation\'s key are refused. A period must cover whole days; today is answered up to dataUntil. With compareStart and compareEnd, each group also answers comparison: the same group over those days, read in the same statement, and the change of each total worked out exactly; a currency only the compared period sold in adds a group of zeros after the others. With baseline, every other group answers changesFromBaseline, its change from the baseline group of its currency.
55754
+ * @summary Sales report of the venues and apps, whole business days, from the daily rows
55755
+ * @param {Array<number>} businessIds The venues asked about, by business id
55756
+ * @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
55757
+ * @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
55758
+ * @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
55759
+ * @param {string} [timezone] The time zone the period is read in, IANA. Absent: the first venue\&#39;s own (Business.timeZone)
55760
+ * @param {Array<ReportApp>} [apps] The apps to add up, the parameter repeated or a JSON list. Absent: all four
55761
+ * @param {Array<ReportPart>} [parts] The parts to answer, the parameter repeated or a JSON list; only their daily tables are read. Absent: all five
55762
+ * @param {ReportBreakdown} [breakdown] How the venues and apps are split into groups; every currency always splits, and one app asked is never added into several apps. Absent: venue for several venues, none for one
55763
+ * @param {string} [language] Accepted and not read, so a request copied from the portal\&#39;s report works: the report has no text to translate
55764
+ * @param {string} [compareStart] With compareEnd, compares the report with these whole days: each group then also answers comparison, the same group over them, and the change of every total worked out exactly. The first business day compared, YYYY-MM-DD, in the report\&#39;s time zone; not later than today. Neither sent: no comparison, and the answer is as before. Sent without compareEnd: refused
55765
+ * @param {string} [compareEnd] With compareStart: the last business day compared, YYYY-MM-DD, inclusive; a day later than today is read up to now. Sent without compareStart: refused
55766
+ * @param {string} [baseline] One group of the answer every other group is compared with: venue:&lt;id&gt; with breakdown venue, app:&lt;app&gt; with breakdown app, venue:&lt;id&gt;,app:&lt;app&gt; with breakdown venue_app. Every other group then answers changesFromBaseline (current: the group; previous: the baseline), of the main period only; a group in another currency than the baseline\&#39;s answers changesFromBaselineLeftOut instead. Refused when the breakdown does not split on what it names, or it names a venue or app not asked
55767
+ * @param {*} [options] Override http request option.
55768
+ * @throws {RequiredError}
55769
+ */
55770
+ getSalesReport(businessIds: Array<number>, timeSpan?: TimeSpan, start?: string, end?: string, timezone?: string, apps?: Array<ReportApp>, parts?: Array<ReportPart>, breakdown?: ReportBreakdown, language?: string, compareStart?: string, compareEnd?: string, baseline?: string, options?: any): AxiosPromise<SalesReportResponseDto> {
55771
+ return localVarFp.getSalesReport(businessIds, timeSpan, start, end, timezone, apps, parts, breakdown, language, compareStart, compareEnd, baseline, options).then((request) => request(axios, basePath));
55772
+ },
54147
55773
  /**
54148
55774
  *
54149
55775
  * @summary Send end-of-day report via email (V5)
@@ -54184,6 +55810,27 @@ export interface ReportApiInterface {
54184
55810
  */
54185
55811
  getEndOfDayReportV5(businessIds: Array<number>, timeSpan?: TimeSpan, start?: string, end?: string, timezone?: string, provider?: ProviderEnum, options?: AxiosRequestConfig): AxiosPromise<EndOfDayReportDtoV4>;
54186
55812
 
55813
+ /**
55814
+ * Adds up each venue\'s finished business days (the calendar date in the venue\'s own time zone) of the apps and parts asked, in one database statement. Each group answers in its app\'s portal shape: POS as report-service, kiosk, storefront and mobile as dashboard v2; several apps added together answer as v2. Amounts of two currencies are never added together: a venue whose sales are in a currency other than its current Business.currency answers a group in each. A person\'s signed-in ticket reads the venues on its account; a Clerk API key of the Munchi-internal organisation (the MCP\'s, D134, D137) reads any venue; the shared key and any other organisation\'s key are refused. A period must cover whole days; today is answered up to dataUntil. With compareStart and compareEnd, each group also answers comparison: the same group over those days, read in the same statement, and the change of each total worked out exactly; a currency only the compared period sold in adds a group of zeros after the others. With baseline, every other group answers changesFromBaseline, its change from the baseline group of its currency.
55815
+ * @summary Sales report of the venues and apps, whole business days, from the daily rows
55816
+ * @param {Array<number>} businessIds The venues asked about, by business id
55817
+ * @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
55818
+ * @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
55819
+ * @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
55820
+ * @param {string} [timezone] The time zone the period is read in, IANA. Absent: the first venue\&#39;s own (Business.timeZone)
55821
+ * @param {Array<ReportApp>} [apps] The apps to add up, the parameter repeated or a JSON list. Absent: all four
55822
+ * @param {Array<ReportPart>} [parts] The parts to answer, the parameter repeated or a JSON list; only their daily tables are read. Absent: all five
55823
+ * @param {ReportBreakdown} [breakdown] How the venues and apps are split into groups; every currency always splits, and one app asked is never added into several apps. Absent: venue for several venues, none for one
55824
+ * @param {string} [language] Accepted and not read, so a request copied from the portal\&#39;s report works: the report has no text to translate
55825
+ * @param {string} [compareStart] With compareEnd, compares the report with these whole days: each group then also answers comparison, the same group over them, and the change of every total worked out exactly. The first business day compared, YYYY-MM-DD, in the report\&#39;s time zone; not later than today. Neither sent: no comparison, and the answer is as before. Sent without compareEnd: refused
55826
+ * @param {string} [compareEnd] With compareStart: the last business day compared, YYYY-MM-DD, inclusive; a day later than today is read up to now. Sent without compareStart: refused
55827
+ * @param {string} [baseline] One group of the answer every other group is compared with: venue:&lt;id&gt; with breakdown venue, app:&lt;app&gt; with breakdown app, venue:&lt;id&gt;,app:&lt;app&gt; with breakdown venue_app. Every other group then answers changesFromBaseline (current: the group; previous: the baseline), of the main period only; a group in another currency than the baseline\&#39;s answers changesFromBaselineLeftOut instead. Refused when the breakdown does not split on what it names, or it names a venue or app not asked
55828
+ * @param {*} [options] Override http request option.
55829
+ * @throws {RequiredError}
55830
+ * @memberof ReportApiInterface
55831
+ */
55832
+ getSalesReport(businessIds: Array<number>, timeSpan?: TimeSpan, start?: string, end?: string, timezone?: string, apps?: Array<ReportApp>, parts?: Array<ReportPart>, breakdown?: ReportBreakdown, language?: string, compareStart?: string, compareEnd?: string, baseline?: string, options?: AxiosRequestConfig): AxiosPromise<SalesReportResponseDto>;
55833
+
54187
55834
  /**
54188
55835
  *
54189
55836
  * @summary Send end-of-day report via email (V5)
@@ -54226,6 +55873,29 @@ export class ReportApi extends BaseAPI implements ReportApiInterface {
54226
55873
  return ReportApiFp(this.configuration).getEndOfDayReportV5(businessIds, timeSpan, start, end, timezone, provider, options).then((request) => request(this.axios, this.basePath));
54227
55874
  }
54228
55875
 
55876
+ /**
55877
+ * Adds up each venue\'s finished business days (the calendar date in the venue\'s own time zone) of the apps and parts asked, in one database statement. Each group answers in its app\'s portal shape: POS as report-service, kiosk, storefront and mobile as dashboard v2; several apps added together answer as v2. Amounts of two currencies are never added together: a venue whose sales are in a currency other than its current Business.currency answers a group in each. A person\'s signed-in ticket reads the venues on its account; a Clerk API key of the Munchi-internal organisation (the MCP\'s, D134, D137) reads any venue; the shared key and any other organisation\'s key are refused. A period must cover whole days; today is answered up to dataUntil. With compareStart and compareEnd, each group also answers comparison: the same group over those days, read in the same statement, and the change of each total worked out exactly; a currency only the compared period sold in adds a group of zeros after the others. With baseline, every other group answers changesFromBaseline, its change from the baseline group of its currency.
55878
+ * @summary Sales report of the venues and apps, whole business days, from the daily rows
55879
+ * @param {Array<number>} businessIds The venues asked about, by business id
55880
+ * @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
55881
+ * @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
55882
+ * @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
55883
+ * @param {string} [timezone] The time zone the period is read in, IANA. Absent: the first venue\&#39;s own (Business.timeZone)
55884
+ * @param {Array<ReportApp>} [apps] The apps to add up, the parameter repeated or a JSON list. Absent: all four
55885
+ * @param {Array<ReportPart>} [parts] The parts to answer, the parameter repeated or a JSON list; only their daily tables are read. Absent: all five
55886
+ * @param {ReportBreakdown} [breakdown] How the venues and apps are split into groups; every currency always splits, and one app asked is never added into several apps. Absent: venue for several venues, none for one
55887
+ * @param {string} [language] Accepted and not read, so a request copied from the portal\&#39;s report works: the report has no text to translate
55888
+ * @param {string} [compareStart] With compareEnd, compares the report with these whole days: each group then also answers comparison, the same group over them, and the change of every total worked out exactly. The first business day compared, YYYY-MM-DD, in the report\&#39;s time zone; not later than today. Neither sent: no comparison, and the answer is as before. Sent without compareEnd: refused
55889
+ * @param {string} [compareEnd] With compareStart: the last business day compared, YYYY-MM-DD, inclusive; a day later than today is read up to now. Sent without compareStart: refused
55890
+ * @param {string} [baseline] One group of the answer every other group is compared with: venue:&lt;id&gt; with breakdown venue, app:&lt;app&gt; with breakdown app, venue:&lt;id&gt;,app:&lt;app&gt; with breakdown venue_app. Every other group then answers changesFromBaseline (current: the group; previous: the baseline), of the main period only; a group in another currency than the baseline\&#39;s answers changesFromBaselineLeftOut instead. Refused when the breakdown does not split on what it names, or it names a venue or app not asked
55891
+ * @param {*} [options] Override http request option.
55892
+ * @throws {RequiredError}
55893
+ * @memberof ReportApi
55894
+ */
55895
+ public getSalesReport(businessIds: Array<number>, timeSpan?: TimeSpan, start?: string, end?: string, timezone?: string, apps?: Array<ReportApp>, parts?: Array<ReportPart>, breakdown?: ReportBreakdown, language?: string, compareStart?: string, compareEnd?: string, baseline?: string, options?: AxiosRequestConfig) {
55896
+ return ReportApiFp(this.configuration).getSalesReport(businessIds, timeSpan, start, end, timezone, apps, parts, breakdown, language, compareStart, compareEnd, baseline, options).then((request) => request(this.axios, this.basePath));
55897
+ }
55898
+
54229
55899
  /**
54230
55900
  *
54231
55901
  * @summary Send end-of-day report via email (V5)