@munchi_oy/core 2.0.8 → 2.2.0
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/dist/generated/api.d.ts +2595 -35
- package/dist/generated/api.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.mjs +1 -1
- package/dist/src/version.d.ts +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/generated/api.ts +3494 -97
- package/package.json +1 -1
- package/src/version.ts +1 -1
package/generated/api.ts
CHANGED
|
@@ -446,6 +446,138 @@ export interface AmountDto {
|
|
|
446
446
|
*/
|
|
447
447
|
'currency': string;
|
|
448
448
|
}
|
|
449
|
+
/**
|
|
450
|
+
*
|
|
451
|
+
* @export
|
|
452
|
+
* @interface AnalyticsDashboardCardDto
|
|
453
|
+
*/
|
|
454
|
+
export interface AnalyticsDashboardCardDto {
|
|
455
|
+
/**
|
|
456
|
+
* Which card this is, in dashboard-one\'s own words. The server keeps it as sent and never checks it against a list.
|
|
457
|
+
* @type {string}
|
|
458
|
+
* @memberof AnalyticsDashboardCardDto
|
|
459
|
+
*/
|
|
460
|
+
'id': string;
|
|
461
|
+
}
|
|
462
|
+
/**
|
|
463
|
+
*
|
|
464
|
+
* @export
|
|
465
|
+
* @interface AnalyticsDashboardGoalsDto
|
|
466
|
+
*/
|
|
467
|
+
export interface AnalyticsDashboardGoalsDto {
|
|
468
|
+
/**
|
|
469
|
+
* The day\'s sales goal, a whole number in the minor unit of the store\'s currency (cents for EUR). Absent: no day goal.
|
|
470
|
+
* @type {number}
|
|
471
|
+
* @memberof AnalyticsDashboardGoalsDto
|
|
472
|
+
*/
|
|
473
|
+
'daySales'?: number;
|
|
474
|
+
/**
|
|
475
|
+
* The month\'s sales goal, a whole number in the minor unit of the store\'s currency (cents for EUR). Absent: no month goal.
|
|
476
|
+
* @type {number}
|
|
477
|
+
* @memberof AnalyticsDashboardGoalsDto
|
|
478
|
+
*/
|
|
479
|
+
'monthSales'?: number;
|
|
480
|
+
}
|
|
481
|
+
/**
|
|
482
|
+
*
|
|
483
|
+
* @export
|
|
484
|
+
* @interface AnalyticsDashboardResponseDto
|
|
485
|
+
*/
|
|
486
|
+
export interface AnalyticsDashboardResponseDto {
|
|
487
|
+
/**
|
|
488
|
+
* The cards in the order they are shown, first card first
|
|
489
|
+
* @type {Array<AnalyticsDashboardCardDto>}
|
|
490
|
+
* @memberof AnalyticsDashboardResponseDto
|
|
491
|
+
*/
|
|
492
|
+
'cards': Array<AnalyticsDashboardCardDto>;
|
|
493
|
+
/**
|
|
494
|
+
*
|
|
495
|
+
* @type {AnalyticsDashboardResponseDtoGoals}
|
|
496
|
+
* @memberof AnalyticsDashboardResponseDto
|
|
497
|
+
*/
|
|
498
|
+
'goals': AnalyticsDashboardResponseDtoGoals;
|
|
499
|
+
/**
|
|
500
|
+
* When the dashboard was last saved, ISO 8601 in UTC
|
|
501
|
+
* @type {string}
|
|
502
|
+
* @memberof AnalyticsDashboardResponseDto
|
|
503
|
+
*/
|
|
504
|
+
'updatedAt': string;
|
|
505
|
+
/**
|
|
506
|
+
* The dashboard\'s version: 1 when first saved, one more on each save. Send it back as expectedVersion to save.
|
|
507
|
+
* @type {number}
|
|
508
|
+
* @memberof AnalyticsDashboardResponseDto
|
|
509
|
+
*/
|
|
510
|
+
'version': number;
|
|
511
|
+
/**
|
|
512
|
+
* The Clerk user id of the person who last saved it
|
|
513
|
+
* @type {string}
|
|
514
|
+
* @memberof AnalyticsDashboardResponseDto
|
|
515
|
+
*/
|
|
516
|
+
'updatedBy': string;
|
|
517
|
+
}
|
|
518
|
+
/**
|
|
519
|
+
* The sales goals, in the minor unit of the store\'s currency; a goal not set is absent
|
|
520
|
+
* @export
|
|
521
|
+
* @interface AnalyticsDashboardResponseDtoGoals
|
|
522
|
+
*/
|
|
523
|
+
export interface AnalyticsDashboardResponseDtoGoals {
|
|
524
|
+
/**
|
|
525
|
+
* The day\'s sales goal, a whole number in the minor unit of the store\'s currency (cents for EUR). Absent: no day goal.
|
|
526
|
+
* @type {number}
|
|
527
|
+
* @memberof AnalyticsDashboardResponseDtoGoals
|
|
528
|
+
*/
|
|
529
|
+
'daySales'?: number;
|
|
530
|
+
/**
|
|
531
|
+
* The month\'s sales goal, a whole number in the minor unit of the store\'s currency (cents for EUR). Absent: no month goal.
|
|
532
|
+
* @type {number}
|
|
533
|
+
* @memberof AnalyticsDashboardResponseDtoGoals
|
|
534
|
+
*/
|
|
535
|
+
'monthSales'?: number;
|
|
536
|
+
}
|
|
537
|
+
/**
|
|
538
|
+
*
|
|
539
|
+
* @export
|
|
540
|
+
* @interface AutomaticPromotionDto
|
|
541
|
+
*/
|
|
542
|
+
export interface AutomaticPromotionDto {
|
|
543
|
+
/**
|
|
544
|
+
* The Vendure promotion\'s id
|
|
545
|
+
* @type {number}
|
|
546
|
+
* @memberof AutomaticPromotionDto
|
|
547
|
+
*/
|
|
548
|
+
'id': number;
|
|
549
|
+
/**
|
|
550
|
+
* The promotion\'s name
|
|
551
|
+
* @type {string}
|
|
552
|
+
* @memberof AutomaticPromotionDto
|
|
553
|
+
*/
|
|
554
|
+
'name': string;
|
|
555
|
+
/**
|
|
556
|
+
* When the promotion starts, an ISO date-time; null when it has no start
|
|
557
|
+
* @type {string}
|
|
558
|
+
* @memberof AutomaticPromotionDto
|
|
559
|
+
*/
|
|
560
|
+
'startsAt': string | null;
|
|
561
|
+
/**
|
|
562
|
+
* When the promotion ends, an ISO date-time; null when it has no end
|
|
563
|
+
* @type {string}
|
|
564
|
+
* @memberof AutomaticPromotionDto
|
|
565
|
+
*/
|
|
566
|
+
'endsAt': string | null;
|
|
567
|
+
}
|
|
568
|
+
/**
|
|
569
|
+
*
|
|
570
|
+
* @export
|
|
571
|
+
* @interface AutomaticPromotionsAnswerDto
|
|
572
|
+
*/
|
|
573
|
+
export interface AutomaticPromotionsAnswerDto {
|
|
574
|
+
/**
|
|
575
|
+
* The venue\'s automatic promotions in the caller\'s app that are running now, judged at the moment of the read. Empty: no promotion applies by itself, so the app need not ask for the basket\'s price unless it holds a coupon code. Read again when the venue\'s DISCOUNTS sync arrives
|
|
576
|
+
* @type {Array<AutomaticPromotionDto>}
|
|
577
|
+
* @memberof AutomaticPromotionsAnswerDto
|
|
578
|
+
*/
|
|
579
|
+
'automaticPromotions': Array<AutomaticPromotionDto>;
|
|
580
|
+
}
|
|
449
581
|
/**
|
|
450
582
|
*
|
|
451
583
|
* @export
|
|
@@ -491,6 +623,19 @@ export interface AvailablePaymentMethodDto {
|
|
|
491
623
|
*/
|
|
492
624
|
'requiresCredentials': boolean;
|
|
493
625
|
}
|
|
626
|
+
/**
|
|
627
|
+
*
|
|
628
|
+
* @export
|
|
629
|
+
* @enum {string}
|
|
630
|
+
*/
|
|
631
|
+
|
|
632
|
+
export const BasketNotPricedReason = {
|
|
633
|
+
Unavailable: 'UNAVAILABLE'
|
|
634
|
+
} as const;
|
|
635
|
+
|
|
636
|
+
export type BasketNotPricedReason = typeof BasketNotPricedReason[keyof typeof BasketNotPricedReason];
|
|
637
|
+
|
|
638
|
+
|
|
494
639
|
/**
|
|
495
640
|
*
|
|
496
641
|
* @export
|
|
@@ -6287,7 +6432,7 @@ export interface DiscountDto {
|
|
|
6287
6432
|
*/
|
|
6288
6433
|
'updatedAt': string;
|
|
6289
6434
|
/**
|
|
6290
|
-
* The discount\'s id
|
|
6435
|
+
* The id the till knows the button by: the data-bridge discount\'s id for a button copied from data-bridge, 1,000,000,000 plus the Vendure promotion\'s id for any other button (one made or duplicated in Vendure), so the two never share an id
|
|
6291
6436
|
* @type {number}
|
|
6292
6437
|
* @memberof DiscountDto
|
|
6293
6438
|
*/
|
|
@@ -6317,13 +6462,13 @@ export interface DiscountDto {
|
|
|
6317
6462
|
*/
|
|
6318
6463
|
'type'?: PromotionDiscountType;
|
|
6319
6464
|
/**
|
|
6320
|
-
* The discount\'s description;
|
|
6465
|
+
* The discount\'s description; an empty string when it has none
|
|
6321
6466
|
* @type {string}
|
|
6322
6467
|
* @memberof DiscountDto
|
|
6323
6468
|
*/
|
|
6324
6469
|
'description'?: string;
|
|
6325
6470
|
/**
|
|
6326
|
-
* Whether the discount is
|
|
6471
|
+
* Whether the discount is switched on; always true, since a switched-off one is not answered
|
|
6327
6472
|
* @type {boolean}
|
|
6328
6473
|
* @memberof DiscountDto
|
|
6329
6474
|
*/
|
|
@@ -6347,7 +6492,7 @@ export interface DiscountDto {
|
|
|
6347
6492
|
*/
|
|
6348
6493
|
'maxUsesPerOrder'?: number | null;
|
|
6349
6494
|
/**
|
|
6350
|
-
*
|
|
6495
|
+
* The Vendure promotion\'s buttonOrder, which a button copied from data-bridge took from the discount\'s priority; 1 when it has none
|
|
6351
6496
|
* @type {number}
|
|
6352
6497
|
* @memberof DiscountDto
|
|
6353
6498
|
*/
|
|
@@ -7976,6 +8121,20 @@ export interface FeesDto {
|
|
|
7976
8121
|
*/
|
|
7977
8122
|
'parts': Array<FeePartDto>;
|
|
7978
8123
|
}
|
|
8124
|
+
/**
|
|
8125
|
+
*
|
|
8126
|
+
* @export
|
|
8127
|
+
* @enum {string}
|
|
8128
|
+
*/
|
|
8129
|
+
|
|
8130
|
+
export const FileFormat = {
|
|
8131
|
+
Pdf: 'pdf',
|
|
8132
|
+
Xlsx: 'xlsx'
|
|
8133
|
+
} as const;
|
|
8134
|
+
|
|
8135
|
+
export type FileFormat = typeof FileFormat[keyof typeof FileFormat];
|
|
8136
|
+
|
|
8137
|
+
|
|
7979
8138
|
/**
|
|
7980
8139
|
*
|
|
7981
8140
|
* @export
|
|
@@ -8565,6 +8724,19 @@ export interface InboundReservationWebhookDto {
|
|
|
8565
8724
|
*/
|
|
8566
8725
|
'payload': object;
|
|
8567
8726
|
}
|
|
8727
|
+
/**
|
|
8728
|
+
*
|
|
8729
|
+
* @export
|
|
8730
|
+
* @enum {string}
|
|
8731
|
+
*/
|
|
8732
|
+
|
|
8733
|
+
export const IngredientSectionHeadingCode = {
|
|
8734
|
+
IngredientsDefaultHeading: 'INGREDIENTS_DEFAULT_HEADING'
|
|
8735
|
+
} as const;
|
|
8736
|
+
|
|
8737
|
+
export type IngredientSectionHeadingCode = typeof IngredientSectionHeadingCode[keyof typeof IngredientSectionHeadingCode];
|
|
8738
|
+
|
|
8739
|
+
|
|
8568
8740
|
/**
|
|
8569
8741
|
*
|
|
8570
8742
|
* @export
|
|
@@ -9965,6 +10137,12 @@ export interface KdsOrderItemDto {
|
|
|
9965
10137
|
* @memberof KdsOrderItemDto
|
|
9966
10138
|
*/
|
|
9967
10139
|
'options': Array<KdsOrderOptionDto>;
|
|
10140
|
+
/**
|
|
10141
|
+
* Every ingredient shown on the guest\'s card for the item, kept (removed false) and removed, in the card\'s order, as kds-service keeps it. Absent only when no card was shown.
|
|
10142
|
+
* @type {Array<OrderIngredientDto>}
|
|
10143
|
+
* @memberof KdsOrderItemDto
|
|
10144
|
+
*/
|
|
10145
|
+
'ingredients'?: Array<OrderIngredientDto>;
|
|
9968
10146
|
}
|
|
9969
10147
|
|
|
9970
10148
|
|
|
@@ -14590,6 +14768,31 @@ export interface OrderHistoryResponseDtoSummary {
|
|
|
14590
14768
|
*/
|
|
14591
14769
|
'totalTipAmount'?: number;
|
|
14592
14770
|
}
|
|
14771
|
+
/**
|
|
14772
|
+
*
|
|
14773
|
+
* @export
|
|
14774
|
+
* @interface OrderIngredientDto
|
|
14775
|
+
*/
|
|
14776
|
+
export interface OrderIngredientDto {
|
|
14777
|
+
/**
|
|
14778
|
+
* Id of the inventory item behind the ingredient, in Vendure
|
|
14779
|
+
* @type {number}
|
|
14780
|
+
* @memberof OrderIngredientDto
|
|
14781
|
+
*/
|
|
14782
|
+
'itemId': number;
|
|
14783
|
+
/**
|
|
14784
|
+
* The ingredient\'s name as the guest saw it
|
|
14785
|
+
* @type {string}
|
|
14786
|
+
* @memberof OrderIngredientDto
|
|
14787
|
+
*/
|
|
14788
|
+
'name': string;
|
|
14789
|
+
/**
|
|
14790
|
+
* true when the guest removed the ingredient from the product
|
|
14791
|
+
* @type {boolean}
|
|
14792
|
+
* @memberof OrderIngredientDto
|
|
14793
|
+
*/
|
|
14794
|
+
'removed': boolean;
|
|
14795
|
+
}
|
|
14593
14796
|
/**
|
|
14594
14797
|
*
|
|
14595
14798
|
* @export
|
|
@@ -19731,6 +19934,58 @@ export interface PosMenuExtraDto {
|
|
|
19731
19934
|
*/
|
|
19732
19935
|
'options': Array<PosMenuOptionDto>;
|
|
19733
19936
|
}
|
|
19937
|
+
/**
|
|
19938
|
+
*
|
|
19939
|
+
* @export
|
|
19940
|
+
* @interface PosMenuIngredientDto
|
|
19941
|
+
*/
|
|
19942
|
+
export interface PosMenuIngredientDto {
|
|
19943
|
+
/**
|
|
19944
|
+
* The ingredient\'s inventory item id
|
|
19945
|
+
* @type {number}
|
|
19946
|
+
* @memberof PosMenuIngredientDto
|
|
19947
|
+
*/
|
|
19948
|
+
'id': number;
|
|
19949
|
+
/**
|
|
19950
|
+
* The name customers see: the venue\'s customer name, else the ingredient\'s own name. Never translated
|
|
19951
|
+
* @type {string}
|
|
19952
|
+
* @memberof PosMenuIngredientDto
|
|
19953
|
+
*/
|
|
19954
|
+
'name': string;
|
|
19955
|
+
/**
|
|
19956
|
+
* Its place in the section, from 1. The list is already in this order
|
|
19957
|
+
* @type {number}
|
|
19958
|
+
* @memberof PosMenuIngredientDto
|
|
19959
|
+
*/
|
|
19960
|
+
'rank': number;
|
|
19961
|
+
}
|
|
19962
|
+
/**
|
|
19963
|
+
*
|
|
19964
|
+
* @export
|
|
19965
|
+
* @interface PosMenuIngredientSectionDto
|
|
19966
|
+
*/
|
|
19967
|
+
export interface PosMenuIngredientSectionDto {
|
|
19968
|
+
/**
|
|
19969
|
+
*
|
|
19970
|
+
* @type {IngredientSectionHeadingCode}
|
|
19971
|
+
* @memberof PosMenuIngredientSectionDto
|
|
19972
|
+
*/
|
|
19973
|
+
'heading_code'?: IngredientSectionHeadingCode;
|
|
19974
|
+
/**
|
|
19975
|
+
* The venue\'s own heading, or null when the app shows its own translation of heading_code
|
|
19976
|
+
* @type {string}
|
|
19977
|
+
* @memberof PosMenuIngredientSectionDto
|
|
19978
|
+
*/
|
|
19979
|
+
'heading': string | null;
|
|
19980
|
+
/**
|
|
19981
|
+
* The ingredients the customer may remove, all ticked to start with. Never empty; hidden ones are not sent
|
|
19982
|
+
* @type {Array<PosMenuIngredientDto>}
|
|
19983
|
+
* @memberof PosMenuIngredientSectionDto
|
|
19984
|
+
*/
|
|
19985
|
+
'ingredients': Array<PosMenuIngredientDto>;
|
|
19986
|
+
}
|
|
19987
|
+
|
|
19988
|
+
|
|
19734
19989
|
/**
|
|
19735
19990
|
*
|
|
19736
19991
|
* @export
|
|
@@ -19955,7 +20210,40 @@ export interface PosMenuProductDto {
|
|
|
19955
20210
|
* @memberof PosMenuProductDto
|
|
19956
20211
|
*/
|
|
19957
20212
|
'extras': Array<PosMenuExtraDto>;
|
|
20213
|
+
/**
|
|
20214
|
+
*
|
|
20215
|
+
* @type {PosMenuProductDtoIngredientSection}
|
|
20216
|
+
* @memberof PosMenuProductDto
|
|
20217
|
+
*/
|
|
20218
|
+
'ingredient_section'?: PosMenuProductDtoIngredientSection;
|
|
19958
20219
|
}
|
|
20220
|
+
/**
|
|
20221
|
+
* What the customer may remove. Sent only when inventory is on, the venue shows ingredients on the till, and the product has a recipe with an ingredient not hidden; otherwise absent, never null
|
|
20222
|
+
* @export
|
|
20223
|
+
* @interface PosMenuProductDtoIngredientSection
|
|
20224
|
+
*/
|
|
20225
|
+
export interface PosMenuProductDtoIngredientSection {
|
|
20226
|
+
/**
|
|
20227
|
+
*
|
|
20228
|
+
* @type {IngredientSectionHeadingCode}
|
|
20229
|
+
* @memberof PosMenuProductDtoIngredientSection
|
|
20230
|
+
*/
|
|
20231
|
+
'heading_code'?: IngredientSectionHeadingCode;
|
|
20232
|
+
/**
|
|
20233
|
+
* The venue\'s own heading, or null when the app shows its own translation of heading_code
|
|
20234
|
+
* @type {string}
|
|
20235
|
+
* @memberof PosMenuProductDtoIngredientSection
|
|
20236
|
+
*/
|
|
20237
|
+
'heading': string | null;
|
|
20238
|
+
/**
|
|
20239
|
+
* The ingredients the customer may remove, all ticked to start with. Never empty; hidden ones are not sent
|
|
20240
|
+
* @type {Array<PosMenuIngredientDto>}
|
|
20241
|
+
* @memberof PosMenuProductDtoIngredientSection
|
|
20242
|
+
*/
|
|
20243
|
+
'ingredients': Array<PosMenuIngredientDto>;
|
|
20244
|
+
}
|
|
20245
|
+
|
|
20246
|
+
|
|
19959
20247
|
/**
|
|
19960
20248
|
* The reporting category the product\'s sales are counted under, or null when it has none
|
|
19961
20249
|
* @export
|
|
@@ -20918,6 +21206,12 @@ export interface PosOrderItemDto {
|
|
|
20918
21206
|
* @memberof PosOrderItemDto
|
|
20919
21207
|
*/
|
|
20920
21208
|
'options': Array<PosOrderOptionDto>;
|
|
21209
|
+
/**
|
|
21210
|
+
* Every ingredient shown on the guest\'s card for the line, kept (removed false) and removed, in the card\'s order: the only record of a removal. Sent whenever the card was shown, even when nothing was removed; absent only when no card was shown.
|
|
21211
|
+
* @type {Array<OrderIngredientDto>}
|
|
21212
|
+
* @memberof PosOrderItemDto
|
|
21213
|
+
*/
|
|
21214
|
+
'ingredients'?: Array<OrderIngredientDto>;
|
|
20921
21215
|
/**
|
|
20922
21216
|
* Whether the product has a display label
|
|
20923
21217
|
* @type {boolean}
|
|
@@ -21851,6 +22145,72 @@ export const PreorderStatus = {
|
|
|
21851
22145
|
export type PreorderStatus = typeof PreorderStatus[keyof typeof PreorderStatus];
|
|
21852
22146
|
|
|
21853
22147
|
|
|
22148
|
+
/**
|
|
22149
|
+
*
|
|
22150
|
+
* @export
|
|
22151
|
+
* @interface PriceBasketAnswerDto
|
|
22152
|
+
*/
|
|
22153
|
+
export interface PriceBasketAnswerDto {
|
|
22154
|
+
/**
|
|
22155
|
+
* true when Vendure priced the basket; false when it could not, and nothing is known of its discounts
|
|
22156
|
+
* @type {boolean}
|
|
22157
|
+
* @memberof PriceBasketAnswerDto
|
|
22158
|
+
*/
|
|
22159
|
+
'priced': boolean;
|
|
22160
|
+
/**
|
|
22161
|
+
*
|
|
22162
|
+
* @type {BasketNotPricedReason}
|
|
22163
|
+
* @memberof PriceBasketAnswerDto
|
|
22164
|
+
*/
|
|
22165
|
+
'reason': BasketNotPricedReason | null;
|
|
22166
|
+
/**
|
|
22167
|
+
* Every line sent, in the order sent, with its discounts; empty when priced is false
|
|
22168
|
+
* @type {Array<PricedLineDto>}
|
|
22169
|
+
* @memberof PriceBasketAnswerDto
|
|
22170
|
+
*/
|
|
22171
|
+
'lines': Array<PricedLineDto>;
|
|
22172
|
+
/**
|
|
22173
|
+
* Each promotion\'s discount over the whole basket, the lines\' shares added up, one per promotion and scope: what the receipt lists. It repeats the lines\' discounts, never adds to them. Empty when none applies or when priced is false
|
|
22174
|
+
* @type {Array<PricedDiscountDto>}
|
|
22175
|
+
* @memberof PriceBasketAnswerDto
|
|
22176
|
+
*/
|
|
22177
|
+
'orderDiscounts': Array<PricedDiscountDto>;
|
|
22178
|
+
/**
|
|
22179
|
+
* The basket\'s total in cents, VAT included, after the discounts, as Vendure worked it out; null when priced is false
|
|
22180
|
+
* @type {number}
|
|
22181
|
+
* @memberof PriceBasketAnswerDto
|
|
22182
|
+
*/
|
|
22183
|
+
'subTotalWithTax': number | null;
|
|
22184
|
+
}
|
|
22185
|
+
|
|
22186
|
+
|
|
22187
|
+
/**
|
|
22188
|
+
*
|
|
22189
|
+
* @export
|
|
22190
|
+
* @interface PriceBasketDto
|
|
22191
|
+
*/
|
|
22192
|
+
export interface PriceBasketDto {
|
|
22193
|
+
/**
|
|
22194
|
+
*
|
|
22195
|
+
* @type {OrderTypePOS}
|
|
22196
|
+
* @memberof PriceBasketDto
|
|
22197
|
+
*/
|
|
22198
|
+
'orderType': OrderTypePOS;
|
|
22199
|
+
/**
|
|
22200
|
+
* The coupon codes on the order, as typed or scanned, in any letter case, priced together with the venue\'s automatic promotions. A code is priced only when it is one of the venue\'s coupons in the app; whether it may be used (its limits, the customer\'s phone, a first order) is POST .../coupons/check\'s answer. Absent or empty: no coupon
|
|
22201
|
+
* @type {Array<string>}
|
|
22202
|
+
* @memberof PriceBasketDto
|
|
22203
|
+
*/
|
|
22204
|
+
'couponCodes'?: Array<string>;
|
|
22205
|
+
/**
|
|
22206
|
+
* The order\'s lines as they stand, VAT included; priced again whenever the basket changes
|
|
22207
|
+
* @type {Array<PricingBasketLineDto>}
|
|
22208
|
+
* @memberof PriceBasketDto
|
|
22209
|
+
*/
|
|
22210
|
+
'lines': Array<PricingBasketLineDto>;
|
|
22211
|
+
}
|
|
22212
|
+
|
|
22213
|
+
|
|
21854
22214
|
/**
|
|
21855
22215
|
*
|
|
21856
22216
|
* @export
|
|
@@ -21915,6 +22275,119 @@ export const PriceType = {
|
|
|
21915
22275
|
export type PriceType = typeof PriceType[keyof typeof PriceType];
|
|
21916
22276
|
|
|
21917
22277
|
|
|
22278
|
+
/**
|
|
22279
|
+
*
|
|
22280
|
+
* @export
|
|
22281
|
+
* @interface PricedDiscountDto
|
|
22282
|
+
*/
|
|
22283
|
+
export interface PricedDiscountDto {
|
|
22284
|
+
/**
|
|
22285
|
+
*
|
|
22286
|
+
* @type {DiscountSourceType}
|
|
22287
|
+
* @memberof PricedDiscountDto
|
|
22288
|
+
*/
|
|
22289
|
+
'sourceType': DiscountSourceType;
|
|
22290
|
+
/**
|
|
22291
|
+
* The Vendure promotion\'s id, as text
|
|
22292
|
+
* @type {string}
|
|
22293
|
+
* @memberof PricedDiscountDto
|
|
22294
|
+
*/
|
|
22295
|
+
'sourceId': string;
|
|
22296
|
+
/**
|
|
22297
|
+
* The promotion\'s name, in English, else Finnish; shown on the till, the receipt and the reports
|
|
22298
|
+
* @type {string}
|
|
22299
|
+
* @memberof PricedDiscountDto
|
|
22300
|
+
*/
|
|
22301
|
+
'name': string;
|
|
22302
|
+
/**
|
|
22303
|
+
* true when Vendure applies the promotion by itself, with no code; false when one of the basket\'s coupon codes applies it
|
|
22304
|
+
* @type {boolean}
|
|
22305
|
+
* @memberof PricedDiscountDto
|
|
22306
|
+
*/
|
|
22307
|
+
'isAutomatic': boolean;
|
|
22308
|
+
/**
|
|
22309
|
+
* The coupon code as the promotion holds it; null for an automatic promotion
|
|
22310
|
+
* @type {string}
|
|
22311
|
+
* @memberof PricedDiscountDto
|
|
22312
|
+
*/
|
|
22313
|
+
'couponCode': string | null;
|
|
22314
|
+
/**
|
|
22315
|
+
*
|
|
22316
|
+
* @type {DiscountScope}
|
|
22317
|
+
* @memberof PricedDiscountDto
|
|
22318
|
+
*/
|
|
22319
|
+
'scope': DiscountScope;
|
|
22320
|
+
/**
|
|
22321
|
+
* The discount in cents, VAT included, negative, exactly as Vendure worked it out: the cents the till takes off
|
|
22322
|
+
* @type {number}
|
|
22323
|
+
* @memberof PricedDiscountDto
|
|
22324
|
+
*/
|
|
22325
|
+
'amountWithTax': number;
|
|
22326
|
+
/**
|
|
22327
|
+
* The same discount in cents before VAT, negative
|
|
22328
|
+
* @type {number}
|
|
22329
|
+
* @memberof PricedDiscountDto
|
|
22330
|
+
*/
|
|
22331
|
+
'amount': number;
|
|
22332
|
+
}
|
|
22333
|
+
|
|
22334
|
+
|
|
22335
|
+
/**
|
|
22336
|
+
*
|
|
22337
|
+
* @export
|
|
22338
|
+
* @interface PricedLineDto
|
|
22339
|
+
*/
|
|
22340
|
+
export interface PricedLineDto {
|
|
22341
|
+
/**
|
|
22342
|
+
* The line\'s id, as sent
|
|
22343
|
+
* @type {string}
|
|
22344
|
+
* @memberof PricedLineDto
|
|
22345
|
+
*/
|
|
22346
|
+
'lineItemId': string;
|
|
22347
|
+
/**
|
|
22348
|
+
* The discounts on this line, each order discount\'s share included; empty when none reaches it
|
|
22349
|
+
* @type {Array<PricedDiscountDto>}
|
|
22350
|
+
* @memberof PricedLineDto
|
|
22351
|
+
*/
|
|
22352
|
+
'discounts': Array<PricedDiscountDto>;
|
|
22353
|
+
}
|
|
22354
|
+
/**
|
|
22355
|
+
*
|
|
22356
|
+
* @export
|
|
22357
|
+
* @interface PricingBasketLineDto
|
|
22358
|
+
*/
|
|
22359
|
+
export interface PricingBasketLineDto {
|
|
22360
|
+
/**
|
|
22361
|
+
* The line\'s stable id, the one the order\'s discounts point at
|
|
22362
|
+
* @type {string}
|
|
22363
|
+
* @memberof PricingBasketLineDto
|
|
22364
|
+
*/
|
|
22365
|
+
'lineItemId': string;
|
|
22366
|
+
/**
|
|
22367
|
+
* How many of the product the line holds, a whole number
|
|
22368
|
+
* @type {number}
|
|
22369
|
+
* @memberof PricingBasketLineDto
|
|
22370
|
+
*/
|
|
22371
|
+
'quantity': number;
|
|
22372
|
+
/**
|
|
22373
|
+
* The price of one unit as the till charges it, options included, in cents
|
|
22374
|
+
* @type {number}
|
|
22375
|
+
* @memberof PricingBasketLineDto
|
|
22376
|
+
*/
|
|
22377
|
+
'unitAmount': number;
|
|
22378
|
+
/**
|
|
22379
|
+
* The line\'s VAT rate in percent (14 is 14%): the item\'s taxRate. Needed when the coupon\'s minimum order is before VAT; absent there, Vendure answers CONDITIONS_NOT_MET
|
|
22380
|
+
* @type {number}
|
|
22381
|
+
* @memberof PricingBasketLineDto
|
|
22382
|
+
*/
|
|
22383
|
+
'vatRate'?: number;
|
|
22384
|
+
/**
|
|
22385
|
+
* The product\'s Vendure id: the line\'s posId, as a number
|
|
22386
|
+
* @type {number}
|
|
22387
|
+
* @memberof PricingBasketLineDto
|
|
22388
|
+
*/
|
|
22389
|
+
'productId'?: number;
|
|
22390
|
+
}
|
|
21918
22391
|
/**
|
|
21919
22392
|
*
|
|
21920
22393
|
* @export
|
|
@@ -22458,6 +22931,12 @@ export interface ProductDto {
|
|
|
22458
22931
|
* @memberof ProductDto
|
|
22459
22932
|
*/
|
|
22460
22933
|
'customField': object | null;
|
|
22934
|
+
/**
|
|
22935
|
+
* Every ingredient shown on the guest\'s card for the product, kept (removed false) and removed, in the card\'s order. Absent only when no card was shown.
|
|
22936
|
+
* @type {Array<OrderIngredientDto>}
|
|
22937
|
+
* @memberof ProductDto
|
|
22938
|
+
*/
|
|
22939
|
+
'ingredients'?: Array<OrderIngredientDto>;
|
|
22461
22940
|
/**
|
|
22462
22941
|
* Kitchen status of the product
|
|
22463
22942
|
* @type {string}
|
|
@@ -24642,7 +25121,9 @@ export const ReportChangeField = {
|
|
|
24642
25121
|
PaymentReportSummaryTotalSurchargeAmount: 'paymentReport.summary.totalSurchargeAmount',
|
|
24643
25122
|
PaymentReportSummaryTotalRefunds: 'paymentReport.summary.totalRefunds',
|
|
24644
25123
|
PaymentReportSummaryRefundCount: 'paymentReport.summary.refundCount',
|
|
24645
|
-
PaymentReportTotalDiscounts: 'paymentReport.totalDiscounts'
|
|
25124
|
+
PaymentReportTotalDiscounts: 'paymentReport.totalDiscounts',
|
|
25125
|
+
OrderCount: 'orderCount',
|
|
25126
|
+
AverageOrderValue: 'averageOrderValue'
|
|
24646
25127
|
} as const;
|
|
24647
25128
|
|
|
24648
25129
|
export type ReportChangeField = typeof ReportChangeField[keyof typeof ReportChangeField];
|
|
@@ -24662,6 +25143,22 @@ export const ReportLanguage = {
|
|
|
24662
25143
|
export type ReportLanguage = typeof ReportLanguage[keyof typeof ReportLanguage];
|
|
24663
25144
|
|
|
24664
25145
|
|
|
25146
|
+
/**
|
|
25147
|
+
*
|
|
25148
|
+
* @export
|
|
25149
|
+
* @enum {string}
|
|
25150
|
+
*/
|
|
25151
|
+
|
|
25152
|
+
export const ReportOrderType = {
|
|
25153
|
+
EatIn: 'eat_in',
|
|
25154
|
+
Takeaway: 'takeaway',
|
|
25155
|
+
Delivery: 'delivery',
|
|
25156
|
+
Unknown: 'unknown'
|
|
25157
|
+
} as const;
|
|
25158
|
+
|
|
25159
|
+
export type ReportOrderType = typeof ReportOrderType[keyof typeof ReportOrderType];
|
|
25160
|
+
|
|
25161
|
+
|
|
24665
25162
|
/**
|
|
24666
25163
|
*
|
|
24667
25164
|
* @export
|
|
@@ -25458,6 +25955,94 @@ export const SYNCKEY = {
|
|
|
25458
25955
|
export type SYNCKEY = typeof SYNCKEY[keyof typeof SYNCKEY];
|
|
25459
25956
|
|
|
25460
25957
|
|
|
25958
|
+
/**
|
|
25959
|
+
*
|
|
25960
|
+
* @export
|
|
25961
|
+
* @interface SalesReportBoughtTogetherGroupDto
|
|
25962
|
+
*/
|
|
25963
|
+
export interface SalesReportBoughtTogetherGroupDto {
|
|
25964
|
+
/**
|
|
25965
|
+
* The venue\'s orderingBusinessId, or null when the breakdown adds venues together
|
|
25966
|
+
* @type {number}
|
|
25967
|
+
* @memberof SalesReportBoughtTogetherGroupDto
|
|
25968
|
+
*/
|
|
25969
|
+
'businessId': number | null;
|
|
25970
|
+
/**
|
|
25971
|
+
*
|
|
25972
|
+
* @type {ReportApp}
|
|
25973
|
+
* @memberof SalesReportBoughtTogetherGroupDto
|
|
25974
|
+
*/
|
|
25975
|
+
'app': ReportApp | null;
|
|
25976
|
+
/**
|
|
25977
|
+
*
|
|
25978
|
+
* @type {CurrencyCode}
|
|
25979
|
+
* @memberof SalesReportBoughtTogetherGroupDto
|
|
25980
|
+
*/
|
|
25981
|
+
'currency': CurrencyCode;
|
|
25982
|
+
/**
|
|
25983
|
+
* Venue-app days of the period that sold more than 25 pairs: each kept only its top 25, so a pair\'s orders are exact when this is 0 and a lower bound otherwise
|
|
25984
|
+
* @type {number}
|
|
25985
|
+
* @memberof SalesReportBoughtTogetherGroupDto
|
|
25986
|
+
*/
|
|
25987
|
+
'daysWithPairsCut': number;
|
|
25988
|
+
/**
|
|
25989
|
+
* The pairs bought in the most orders, most first, ties by the items\' keys
|
|
25990
|
+
* @type {Array<SalesReportPairDto>}
|
|
25991
|
+
* @memberof SalesReportBoughtTogetherGroupDto
|
|
25992
|
+
*/
|
|
25993
|
+
'pairs': Array<SalesReportPairDto>;
|
|
25994
|
+
}
|
|
25995
|
+
|
|
25996
|
+
|
|
25997
|
+
/**
|
|
25998
|
+
*
|
|
25999
|
+
* @export
|
|
26000
|
+
* @interface SalesReportBoughtTogetherResponseDto
|
|
26001
|
+
*/
|
|
26002
|
+
export interface SalesReportBoughtTogetherResponseDto {
|
|
26003
|
+
/**
|
|
26004
|
+
* The first instant of the period, ISO 8601 in UTC
|
|
26005
|
+
* @type {string}
|
|
26006
|
+
* @memberof SalesReportBoughtTogetherResponseDto
|
|
26007
|
+
*/
|
|
26008
|
+
'reportDateStart': string;
|
|
26009
|
+
/**
|
|
26010
|
+
* The last instant of the period, ISO 8601 in UTC; now, when the period ends later
|
|
26011
|
+
* @type {string}
|
|
26012
|
+
* @memberof SalesReportBoughtTogetherResponseDto
|
|
26013
|
+
*/
|
|
26014
|
+
'reportDateEnd': string;
|
|
26015
|
+
/**
|
|
26016
|
+
* The IANA time zone the period\'s days are read in
|
|
26017
|
+
* @type {string}
|
|
26018
|
+
* @memberof SalesReportBoughtTogetherResponseDto
|
|
26019
|
+
*/
|
|
26020
|
+
'timezone': string;
|
|
26021
|
+
/**
|
|
26022
|
+
* The first business day, YYYY-MM-DD
|
|
26023
|
+
* @type {string}
|
|
26024
|
+
* @memberof SalesReportBoughtTogetherResponseDto
|
|
26025
|
+
*/
|
|
26026
|
+
'firstBusinessDay': string;
|
|
26027
|
+
/**
|
|
26028
|
+
* The last business day, YYYY-MM-DD, inclusive
|
|
26029
|
+
* @type {string}
|
|
26030
|
+
* @memberof SalesReportBoughtTogetherResponseDto
|
|
26031
|
+
*/
|
|
26032
|
+
'lastBusinessDay': string;
|
|
26033
|
+
/**
|
|
26034
|
+
* The newest BigQuery rebuild the rows read, ISO 8601 in UTC; null when none
|
|
26035
|
+
* @type {string}
|
|
26036
|
+
* @memberof SalesReportBoughtTogetherResponseDto
|
|
26037
|
+
*/
|
|
26038
|
+
'dataUntil': string | null;
|
|
26039
|
+
/**
|
|
26040
|
+
* One group per venue, app and currency the breakdown keeps
|
|
26041
|
+
* @type {Array<SalesReportBoughtTogetherGroupDto>}
|
|
26042
|
+
* @memberof SalesReportBoughtTogetherResponseDto
|
|
26043
|
+
*/
|
|
26044
|
+
'groups': Array<SalesReportBoughtTogetherGroupDto>;
|
|
26045
|
+
}
|
|
25461
26046
|
/**
|
|
25462
26047
|
*
|
|
25463
26048
|
* @export
|
|
@@ -25570,6 +26155,12 @@ export interface SalesReportComparisonDto {
|
|
|
25570
26155
|
* @memberof SalesReportComparisonDto
|
|
25571
26156
|
*/
|
|
25572
26157
|
'lastBusinessDay': string;
|
|
26158
|
+
/**
|
|
26159
|
+
* compareSameTime only: the instant the compared last day was added up to, ISO 8601 in UTC: that day at the last full hour, on the report\'s clock, that both the daily rows and the hours have reached on the report\'s last day (a client says \"until 14:00\"). The report\'s own last day is cut at the same hour of its day, so both sides cover the same hours: the group\'s totals and dailyBreakdown of that day stop there too. Present when no venue and app of the group was compared whole that day (one that sold nothing that day counts as cut); absent when compareSameTime was not sent, the report\'s last day is over, or a venue\'s day had no hours yet and was compared whole. In a group of venues in several time zones each venue is cut at its own clock\'s hour of the same instant, which this names in the report\'s time zone
|
|
26160
|
+
* @type {string}
|
|
26161
|
+
* @memberof SalesReportComparisonDto
|
|
26162
|
+
*/
|
|
26163
|
+
'comparedUntil'?: string;
|
|
25573
26164
|
/**
|
|
25574
26165
|
*
|
|
25575
26166
|
* @type {SalesReportComparisonDtoSalesReport}
|
|
@@ -25588,6 +26179,18 @@ export interface SalesReportComparisonDto {
|
|
|
25588
26179
|
* @memberof SalesReportComparisonDto
|
|
25589
26180
|
*/
|
|
25590
26181
|
'dailyBreakdown'?: Array<SalesReportDayDto>;
|
|
26182
|
+
/**
|
|
26183
|
+
* Part summary: how many orders were sold, the sum of dailyBreakdown[].orders. POS counts orders as the till does, so a split bill counts once; kiosk, storefront and mobile count each of their orders once. A group that adds apps together (breakdown none or venue) adds POS\'s count to the other apps\' counts. Wolt, Foodora and other platform orders are not included. Count orders with this, never with paymentReport.summary.totalCount, which counts payments. Left out without part summary
|
|
26184
|
+
* @type {number}
|
|
26185
|
+
* @memberof SalesReportComparisonDto
|
|
26186
|
+
*/
|
|
26187
|
+
'orderCount'?: number;
|
|
26188
|
+
/**
|
|
26189
|
+
* Part summary: what was paid, refunds taken off (paymentReport.summary.salesAndRevenue), divided by orderCount, rounded half up to the currency\'s minor digits, in the major unit of the group\'s currency (euros for EUR). Null when no order was sold, and then its change is left out of changes and changesFromBaseline. Left out without part summary
|
|
26190
|
+
* @type {number}
|
|
26191
|
+
* @memberof SalesReportComparisonDto
|
|
26192
|
+
*/
|
|
26193
|
+
'averageOrderValue'?: number | null;
|
|
25591
26194
|
/**
|
|
25592
26195
|
* The change of each total either period answers, in ReportChangeField\'s order; empty when part summary was not asked
|
|
25593
26196
|
* @type {Array<SalesReportChangeDto>}
|
|
@@ -25694,7 +26297,7 @@ export interface SalesReportDayDto {
|
|
|
25694
26297
|
*/
|
|
25695
26298
|
'date': string;
|
|
25696
26299
|
/**
|
|
25697
|
-
* How many orders were sold that day
|
|
26300
|
+
* How many orders were sold that day. POS counts them as the till\'s end-of-day report does: an order refunded in full is not counted, one refunded in part, unpaid or at 0 is. Kiosk, storefront and mobile count the orders with items not refunded in full, a kiosk order only when paid
|
|
25698
26301
|
* @type {number}
|
|
25699
26302
|
* @memberof SalesReportDayDto
|
|
25700
26303
|
*/
|
|
@@ -25809,6 +26412,18 @@ export interface SalesReportGroupDto {
|
|
|
25809
26412
|
* @memberof SalesReportGroupDto
|
|
25810
26413
|
*/
|
|
25811
26414
|
'dailyBreakdown'?: Array<SalesReportDayDto>;
|
|
26415
|
+
/**
|
|
26416
|
+
* Part summary: how many orders were sold, the sum of dailyBreakdown[].orders. POS counts orders as the till does, so a split bill counts once; kiosk, storefront and mobile count each of their orders once. A group that adds apps together (breakdown none or venue) adds POS\'s count to the other apps\' counts. Wolt, Foodora and other platform orders are not included. Count orders with this, never with paymentReport.summary.totalCount, which counts payments. Left out without part summary
|
|
26417
|
+
* @type {number}
|
|
26418
|
+
* @memberof SalesReportGroupDto
|
|
26419
|
+
*/
|
|
26420
|
+
'orderCount'?: number;
|
|
26421
|
+
/**
|
|
26422
|
+
* Part summary: what was paid, refunds taken off (paymentReport.summary.salesAndRevenue), divided by orderCount, rounded half up to the currency\'s minor digits, in the major unit of the group\'s currency (euros for EUR). Null when no order was sold, and then its change is left out of changes and changesFromBaseline. Left out without part summary
|
|
26423
|
+
* @type {number}
|
|
26424
|
+
* @memberof SalesReportGroupDto
|
|
26425
|
+
*/
|
|
26426
|
+
'averageOrderValue'?: number | null;
|
|
25812
26427
|
/**
|
|
25813
26428
|
*
|
|
25814
26429
|
* @type {SalesReportGroupDtoComparison}
|
|
@@ -25860,6 +26475,12 @@ export interface SalesReportGroupDtoComparison {
|
|
|
25860
26475
|
* @memberof SalesReportGroupDtoComparison
|
|
25861
26476
|
*/
|
|
25862
26477
|
'lastBusinessDay': string;
|
|
26478
|
+
/**
|
|
26479
|
+
* compareSameTime only: the instant the compared last day was added up to, ISO 8601 in UTC: that day at the last full hour, on the report\'s clock, that both the daily rows and the hours have reached on the report\'s last day (a client says \"until 14:00\"). The report\'s own last day is cut at the same hour of its day, so both sides cover the same hours: the group\'s totals and dailyBreakdown of that day stop there too. Present when no venue and app of the group was compared whole that day (one that sold nothing that day counts as cut); absent when compareSameTime was not sent, the report\'s last day is over, or a venue\'s day had no hours yet and was compared whole. In a group of venues in several time zones each venue is cut at its own clock\'s hour of the same instant, which this names in the report\'s time zone
|
|
26480
|
+
* @type {string}
|
|
26481
|
+
* @memberof SalesReportGroupDtoComparison
|
|
26482
|
+
*/
|
|
26483
|
+
'comparedUntil'?: string;
|
|
25863
26484
|
/**
|
|
25864
26485
|
*
|
|
25865
26486
|
* @type {SalesReportComparisonDtoSalesReport}
|
|
@@ -25878,6 +26499,18 @@ export interface SalesReportGroupDtoComparison {
|
|
|
25878
26499
|
* @memberof SalesReportGroupDtoComparison
|
|
25879
26500
|
*/
|
|
25880
26501
|
'dailyBreakdown'?: Array<SalesReportDayDto>;
|
|
26502
|
+
/**
|
|
26503
|
+
* Part summary: how many orders were sold, the sum of dailyBreakdown[].orders. POS counts orders as the till does, so a split bill counts once; kiosk, storefront and mobile count each of their orders once. A group that adds apps together (breakdown none or venue) adds POS\'s count to the other apps\' counts. Wolt, Foodora and other platform orders are not included. Count orders with this, never with paymentReport.summary.totalCount, which counts payments. Left out without part summary
|
|
26504
|
+
* @type {number}
|
|
26505
|
+
* @memberof SalesReportGroupDtoComparison
|
|
26506
|
+
*/
|
|
26507
|
+
'orderCount'?: number;
|
|
26508
|
+
/**
|
|
26509
|
+
* Part summary: what was paid, refunds taken off (paymentReport.summary.salesAndRevenue), divided by orderCount, rounded half up to the currency\'s minor digits, in the major unit of the group\'s currency (euros for EUR). Null when no order was sold, and then its change is left out of changes and changesFromBaseline. Left out without part summary
|
|
26510
|
+
* @type {number}
|
|
26511
|
+
* @memberof SalesReportGroupDtoComparison
|
|
26512
|
+
*/
|
|
26513
|
+
'averageOrderValue'?: number | null;
|
|
25881
26514
|
/**
|
|
25882
26515
|
* The change of each total either period answers, in ReportChangeField\'s order; empty when part summary was not asked
|
|
25883
26516
|
* @type {Array<SalesReportChangeDto>}
|
|
@@ -25971,6 +26604,167 @@ export interface SalesReportGroupDtoSalesReport {
|
|
|
25971
26604
|
*/
|
|
25972
26605
|
'deliveryTax'?: number;
|
|
25973
26606
|
}
|
|
26607
|
+
/**
|
|
26608
|
+
*
|
|
26609
|
+
* @export
|
|
26610
|
+
* @interface SalesReportHourDto
|
|
26611
|
+
*/
|
|
26612
|
+
export interface SalesReportHourDto {
|
|
26613
|
+
/**
|
|
26614
|
+
* The hour of the venue\'s clock, 0 to 23: its orders from hour:00 to hour:59. On the day the clocks go back, the hour that repeats holds both; on the day they go forward, the hour skipped holds nothing
|
|
26615
|
+
* @type {number}
|
|
26616
|
+
* @memberof SalesReportHourDto
|
|
26617
|
+
*/
|
|
26618
|
+
'hour': number;
|
|
26619
|
+
/**
|
|
26620
|
+
* The period\'s orders counted in this hour, as orderCount counts them
|
|
26621
|
+
* @type {number}
|
|
26622
|
+
* @memberof SalesReportHourDto
|
|
26623
|
+
*/
|
|
26624
|
+
'orderCount': number;
|
|
26625
|
+
/**
|
|
26626
|
+
* The period\'s sales of this hour, as the report\'s salesReport.totalWithTax adds them up, in the major unit: the 24 hours add up to the period\'s totalWithTax within each hour\'s own rounding to the minor unit
|
|
26627
|
+
* @type {number}
|
|
26628
|
+
* @memberof SalesReportHourDto
|
|
26629
|
+
*/
|
|
26630
|
+
'totalWithTax': number;
|
|
26631
|
+
/**
|
|
26632
|
+
* The hour\'s orders on an average finished day: orderCount less today\'s, divided by the group\'s daysAveraged, 2 decimals, rounded half up
|
|
26633
|
+
* @type {number}
|
|
26634
|
+
* @memberof SalesReportHourDto
|
|
26635
|
+
*/
|
|
26636
|
+
'averageOrderCount': number;
|
|
26637
|
+
/**
|
|
26638
|
+
* The hour\'s sales on an average finished day: totalWithTax less today\'s, divided by the group\'s daysAveraged, in the major unit, rounded half up to the currency\'s minor digits
|
|
26639
|
+
* @type {number}
|
|
26640
|
+
* @memberof SalesReportHourDto
|
|
26641
|
+
*/
|
|
26642
|
+
'averageTotalWithTax': number;
|
|
26643
|
+
/**
|
|
26644
|
+
* The period\'s sales of this hour without VAT, as the report\'s salesReport.totalWithoutTax adds them up (the POS\'s item lines without VAT, kiosk and online the tax summary\'s; with the forfeited vouchers where the app\'s report adds them), in the major unit; with totalWithTax less this, the hour\'s VAT
|
|
26645
|
+
* @type {number}
|
|
26646
|
+
* @memberof SalesReportHourDto
|
|
26647
|
+
*/
|
|
26648
|
+
'totalWithoutTax': number;
|
|
26649
|
+
/**
|
|
26650
|
+
* The hour\'s sales without VAT on an average finished day: totalWithoutTax less today\'s, divided by the group\'s daysAveraged, in the major unit, rounded half up to the currency\'s minor digits
|
|
26651
|
+
* @type {number}
|
|
26652
|
+
* @memberof SalesReportHourDto
|
|
26653
|
+
*/
|
|
26654
|
+
'averageTotalWithoutTax': number;
|
|
26655
|
+
}
|
|
26656
|
+
/**
|
|
26657
|
+
*
|
|
26658
|
+
* @export
|
|
26659
|
+
* @interface SalesReportHoursGroupDto
|
|
26660
|
+
*/
|
|
26661
|
+
export interface SalesReportHoursGroupDto {
|
|
26662
|
+
/**
|
|
26663
|
+
* The venue\'s orderingBusinessId, or null when the breakdown adds venues together
|
|
26664
|
+
* @type {number}
|
|
26665
|
+
* @memberof SalesReportHoursGroupDto
|
|
26666
|
+
*/
|
|
26667
|
+
'businessId': number | null;
|
|
26668
|
+
/**
|
|
26669
|
+
*
|
|
26670
|
+
* @type {ReportApp}
|
|
26671
|
+
* @memberof SalesReportHoursGroupDto
|
|
26672
|
+
*/
|
|
26673
|
+
'app': ReportApp | null;
|
|
26674
|
+
/**
|
|
26675
|
+
*
|
|
26676
|
+
* @type {CurrencyCode}
|
|
26677
|
+
* @memberof SalesReportHoursGroupDto
|
|
26678
|
+
*/
|
|
26679
|
+
'currency': CurrencyCode;
|
|
26680
|
+
/**
|
|
26681
|
+
* Decimals of the currency\'s minor unit (2 for EUR)
|
|
26682
|
+
* @type {number}
|
|
26683
|
+
* @memberof SalesReportHoursGroupDto
|
|
26684
|
+
*/
|
|
26685
|
+
'minorDigits': number;
|
|
26686
|
+
/**
|
|
26687
|
+
* The finished days of the period (of isoWeekday, when sent) on which a venue or app of the group sold but has no hours yet (built before hours were kept, until their backfill): their sales are in no hour, and the averages leave them out. 0 when every day has them
|
|
26688
|
+
* @type {number}
|
|
26689
|
+
* @memberof SalesReportHoursGroupDto
|
|
26690
|
+
*/
|
|
26691
|
+
'daysWithoutHours': number;
|
|
26692
|
+
/**
|
|
26693
|
+
* What the group\'s averages divide by: daysCounted less daysWithoutHours
|
|
26694
|
+
* @type {number}
|
|
26695
|
+
* @memberof SalesReportHoursGroupDto
|
|
26696
|
+
*/
|
|
26697
|
+
'daysAveraged': number;
|
|
26698
|
+
/**
|
|
26699
|
+
* Every hour of the day, 0 to 23, in order
|
|
26700
|
+
* @type {Array<SalesReportHourDto>}
|
|
26701
|
+
* @memberof SalesReportHoursGroupDto
|
|
26702
|
+
*/
|
|
26703
|
+
'hours': Array<SalesReportHourDto>;
|
|
26704
|
+
}
|
|
26705
|
+
|
|
26706
|
+
|
|
26707
|
+
/**
|
|
26708
|
+
*
|
|
26709
|
+
* @export
|
|
26710
|
+
* @interface SalesReportHoursResponseDto
|
|
26711
|
+
*/
|
|
26712
|
+
export interface SalesReportHoursResponseDto {
|
|
26713
|
+
/**
|
|
26714
|
+
* The first instant of the period, ISO 8601 in UTC
|
|
26715
|
+
* @type {string}
|
|
26716
|
+
* @memberof SalesReportHoursResponseDto
|
|
26717
|
+
*/
|
|
26718
|
+
'reportDateStart': string;
|
|
26719
|
+
/**
|
|
26720
|
+
* The last instant of the period, ISO 8601 in UTC; now, when the period ends later
|
|
26721
|
+
* @type {string}
|
|
26722
|
+
* @memberof SalesReportHoursResponseDto
|
|
26723
|
+
*/
|
|
26724
|
+
'reportDateEnd': string;
|
|
26725
|
+
/**
|
|
26726
|
+
* The IANA time zone the period\'s days are read in
|
|
26727
|
+
* @type {string}
|
|
26728
|
+
* @memberof SalesReportHoursResponseDto
|
|
26729
|
+
*/
|
|
26730
|
+
'timezone': string;
|
|
26731
|
+
/**
|
|
26732
|
+
* The first business day, YYYY-MM-DD
|
|
26733
|
+
* @type {string}
|
|
26734
|
+
* @memberof SalesReportHoursResponseDto
|
|
26735
|
+
*/
|
|
26736
|
+
'firstBusinessDay': string;
|
|
26737
|
+
/**
|
|
26738
|
+
* The last business day, YYYY-MM-DD, inclusive
|
|
26739
|
+
* @type {string}
|
|
26740
|
+
* @memberof SalesReportHoursResponseDto
|
|
26741
|
+
*/
|
|
26742
|
+
'lastBusinessDay': string;
|
|
26743
|
+
/**
|
|
26744
|
+
* The ISO weekday counted, 1 Monday to 7 Sunday, or null for every day
|
|
26745
|
+
* @type {number}
|
|
26746
|
+
* @memberof SalesReportHoursResponseDto
|
|
26747
|
+
*/
|
|
26748
|
+
'isoWeekday': number | null;
|
|
26749
|
+
/**
|
|
26750
|
+
* The finished calendar days of the period (of isoWeekday, when sent), sold on or not; today, still running, is not one of them. Each group\'s averages divide by its daysAveraged
|
|
26751
|
+
* @type {number}
|
|
26752
|
+
* @memberof SalesReportHoursResponseDto
|
|
26753
|
+
*/
|
|
26754
|
+
'daysCounted': number;
|
|
26755
|
+
/**
|
|
26756
|
+
* The newest BigQuery rebuild the rows read, ISO 8601 in UTC; null when none
|
|
26757
|
+
* @type {string}
|
|
26758
|
+
* @memberof SalesReportHoursResponseDto
|
|
26759
|
+
*/
|
|
26760
|
+
'dataUntil': string | null;
|
|
26761
|
+
/**
|
|
26762
|
+
* One group per venue, app and currency the breakdown keeps
|
|
26763
|
+
* @type {Array<SalesReportHoursGroupDto>}
|
|
26764
|
+
* @memberof SalesReportHoursResponseDto
|
|
26765
|
+
*/
|
|
26766
|
+
'groups': Array<SalesReportHoursGroupDto>;
|
|
26767
|
+
}
|
|
25974
26768
|
/**
|
|
25975
26769
|
*
|
|
25976
26770
|
* @export
|
|
@@ -26069,6 +26863,251 @@ export interface SalesReportOptionDto {
|
|
|
26069
26863
|
*/
|
|
26070
26864
|
'taxRate': object | null;
|
|
26071
26865
|
}
|
|
26866
|
+
/**
|
|
26867
|
+
*
|
|
26868
|
+
* @export
|
|
26869
|
+
* @interface SalesReportOrderTypeDto
|
|
26870
|
+
*/
|
|
26871
|
+
export interface SalesReportOrderTypeDto {
|
|
26872
|
+
/**
|
|
26873
|
+
*
|
|
26874
|
+
* @type {ReportOrderType}
|
|
26875
|
+
* @memberof SalesReportOrderTypeDto
|
|
26876
|
+
*/
|
|
26877
|
+
'orderType': ReportOrderType;
|
|
26878
|
+
/**
|
|
26879
|
+
* The period\'s orders of this type, as orderCount counts them
|
|
26880
|
+
* @type {number}
|
|
26881
|
+
* @memberof SalesReportOrderTypeDto
|
|
26882
|
+
*/
|
|
26883
|
+
'orderCount': number;
|
|
26884
|
+
/**
|
|
26885
|
+
* The period\'s sales of this type, as the report\'s salesReport.totalWithTax adds them up, in the major unit: the types add up to the period\'s totalWithTax within each type\'s own rounding to the minor unit
|
|
26886
|
+
* @type {number}
|
|
26887
|
+
* @memberof SalesReportOrderTypeDto
|
|
26888
|
+
*/
|
|
26889
|
+
'totalWithTax': number;
|
|
26890
|
+
/**
|
|
26891
|
+
* Their VAT, as salesReport.totalTaxAmount, in the major unit
|
|
26892
|
+
* @type {number}
|
|
26893
|
+
* @memberof SalesReportOrderTypeDto
|
|
26894
|
+
*/
|
|
26895
|
+
'totalTaxAmount': number;
|
|
26896
|
+
/**
|
|
26897
|
+
* Their sales without VAT, as salesReport.totalWithoutTax, in the major unit
|
|
26898
|
+
* @type {number}
|
|
26899
|
+
* @memberof SalesReportOrderTypeDto
|
|
26900
|
+
*/
|
|
26901
|
+
'totalWithoutTax': number;
|
|
26902
|
+
}
|
|
26903
|
+
|
|
26904
|
+
|
|
26905
|
+
/**
|
|
26906
|
+
*
|
|
26907
|
+
* @export
|
|
26908
|
+
* @interface SalesReportOrderTypesGroupDto
|
|
26909
|
+
*/
|
|
26910
|
+
export interface SalesReportOrderTypesGroupDto {
|
|
26911
|
+
/**
|
|
26912
|
+
* The venue\'s orderingBusinessId, or null when the breakdown adds venues together
|
|
26913
|
+
* @type {number}
|
|
26914
|
+
* @memberof SalesReportOrderTypesGroupDto
|
|
26915
|
+
*/
|
|
26916
|
+
'businessId': number | null;
|
|
26917
|
+
/**
|
|
26918
|
+
*
|
|
26919
|
+
* @type {ReportApp}
|
|
26920
|
+
* @memberof SalesReportOrderTypesGroupDto
|
|
26921
|
+
*/
|
|
26922
|
+
'app': ReportApp | null;
|
|
26923
|
+
/**
|
|
26924
|
+
*
|
|
26925
|
+
* @type {CurrencyCode}
|
|
26926
|
+
* @memberof SalesReportOrderTypesGroupDto
|
|
26927
|
+
*/
|
|
26928
|
+
'currency': CurrencyCode;
|
|
26929
|
+
/**
|
|
26930
|
+
* Decimals of the currency\'s minor unit (2 for EUR)
|
|
26931
|
+
* @type {number}
|
|
26932
|
+
* @memberof SalesReportOrderTypesGroupDto
|
|
26933
|
+
*/
|
|
26934
|
+
'minorDigits': number;
|
|
26935
|
+
/**
|
|
26936
|
+
* Venue-app days of the period with sales but no order types yet (built before they were kept, until their backfill): their sales are in no type. 0 when every day has them
|
|
26937
|
+
* @type {number}
|
|
26938
|
+
* @memberof SalesReportOrderTypesGroupDto
|
|
26939
|
+
*/
|
|
26940
|
+
'daysWithoutOrderTypes': number;
|
|
26941
|
+
/**
|
|
26942
|
+
* Every order type, in the order eat_in, takeaway, delivery, unknown; a type nobody ordered answers zeros
|
|
26943
|
+
* @type {Array<SalesReportOrderTypeDto>}
|
|
26944
|
+
* @memberof SalesReportOrderTypesGroupDto
|
|
26945
|
+
*/
|
|
26946
|
+
'orderTypes': Array<SalesReportOrderTypeDto>;
|
|
26947
|
+
}
|
|
26948
|
+
|
|
26949
|
+
|
|
26950
|
+
/**
|
|
26951
|
+
*
|
|
26952
|
+
* @export
|
|
26953
|
+
* @interface SalesReportOrderTypesResponseDto
|
|
26954
|
+
*/
|
|
26955
|
+
export interface SalesReportOrderTypesResponseDto {
|
|
26956
|
+
/**
|
|
26957
|
+
* The first instant of the period, ISO 8601 in UTC
|
|
26958
|
+
* @type {string}
|
|
26959
|
+
* @memberof SalesReportOrderTypesResponseDto
|
|
26960
|
+
*/
|
|
26961
|
+
'reportDateStart': string;
|
|
26962
|
+
/**
|
|
26963
|
+
* The last instant of the period, ISO 8601 in UTC; now, when the period ends later
|
|
26964
|
+
* @type {string}
|
|
26965
|
+
* @memberof SalesReportOrderTypesResponseDto
|
|
26966
|
+
*/
|
|
26967
|
+
'reportDateEnd': string;
|
|
26968
|
+
/**
|
|
26969
|
+
* The IANA time zone the period\'s days are read in
|
|
26970
|
+
* @type {string}
|
|
26971
|
+
* @memberof SalesReportOrderTypesResponseDto
|
|
26972
|
+
*/
|
|
26973
|
+
'timezone': string;
|
|
26974
|
+
/**
|
|
26975
|
+
* The first business day, YYYY-MM-DD
|
|
26976
|
+
* @type {string}
|
|
26977
|
+
* @memberof SalesReportOrderTypesResponseDto
|
|
26978
|
+
*/
|
|
26979
|
+
'firstBusinessDay': string;
|
|
26980
|
+
/**
|
|
26981
|
+
* The last business day, YYYY-MM-DD, inclusive
|
|
26982
|
+
* @type {string}
|
|
26983
|
+
* @memberof SalesReportOrderTypesResponseDto
|
|
26984
|
+
*/
|
|
26985
|
+
'lastBusinessDay': string;
|
|
26986
|
+
/**
|
|
26987
|
+
* The newest BigQuery rebuild the rows read, ISO 8601 in UTC; null when none
|
|
26988
|
+
* @type {string}
|
|
26989
|
+
* @memberof SalesReportOrderTypesResponseDto
|
|
26990
|
+
*/
|
|
26991
|
+
'dataUntil': string | null;
|
|
26992
|
+
/**
|
|
26993
|
+
* One group per venue, app and currency the breakdown keeps
|
|
26994
|
+
* @type {Array<SalesReportOrderTypesGroupDto>}
|
|
26995
|
+
* @memberof SalesReportOrderTypesResponseDto
|
|
26996
|
+
*/
|
|
26997
|
+
'groups': Array<SalesReportOrderTypesGroupDto>;
|
|
26998
|
+
}
|
|
26999
|
+
/**
|
|
27000
|
+
*
|
|
27001
|
+
* @export
|
|
27002
|
+
* @interface SalesReportPairDto
|
|
27003
|
+
*/
|
|
27004
|
+
export interface SalesReportPairDto {
|
|
27005
|
+
/**
|
|
27006
|
+
*
|
|
27007
|
+
* @type {SalesReportPairDtoItemA}
|
|
27008
|
+
* @memberof SalesReportPairDto
|
|
27009
|
+
*/
|
|
27010
|
+
'itemA': SalesReportPairDtoItemA;
|
|
27011
|
+
/**
|
|
27012
|
+
*
|
|
27013
|
+
* @type {SalesReportPairDtoItemB}
|
|
27014
|
+
* @memberof SalesReportPairDto
|
|
27015
|
+
*/
|
|
27016
|
+
'itemB': SalesReportPairDtoItemB;
|
|
27017
|
+
/**
|
|
27018
|
+
* The period\'s orders with both items, each order once whatever the quantities. A lower bound when the group has daysWithPairsCut: a cut day kept only its top 25 pairs
|
|
27019
|
+
* @type {number}
|
|
27020
|
+
* @memberof SalesReportPairDto
|
|
27021
|
+
*/
|
|
27022
|
+
'orders': number;
|
|
27023
|
+
/**
|
|
27024
|
+
* Of the orders with itemA, the percent that also had itemB: orders / itemA.orders × 100, 2 decimals, half up
|
|
27025
|
+
* @type {number}
|
|
27026
|
+
* @memberof SalesReportPairDto
|
|
27027
|
+
*/
|
|
27028
|
+
'percentOfItemA': number;
|
|
27029
|
+
/**
|
|
27030
|
+
* Of the orders with itemB, the percent that also had itemA: orders / itemB.orders × 100, 2 decimals, half up
|
|
27031
|
+
* @type {number}
|
|
27032
|
+
* @memberof SalesReportPairDto
|
|
27033
|
+
*/
|
|
27034
|
+
'percentOfItemB': number;
|
|
27035
|
+
}
|
|
27036
|
+
/**
|
|
27037
|
+
* One item of the pair: the one whose key sorts first
|
|
27038
|
+
* @export
|
|
27039
|
+
* @interface SalesReportPairDtoItemA
|
|
27040
|
+
*/
|
|
27041
|
+
export interface SalesReportPairDtoItemA {
|
|
27042
|
+
/**
|
|
27043
|
+
* The item\'s key: the POS posId, the online product id
|
|
27044
|
+
* @type {string}
|
|
27045
|
+
* @memberof SalesReportPairDtoItemA
|
|
27046
|
+
*/
|
|
27047
|
+
'itemKey': string;
|
|
27048
|
+
/**
|
|
27049
|
+
* The item\'s least name over the period, as the sales report names it; null when none was recorded
|
|
27050
|
+
* @type {string}
|
|
27051
|
+
* @memberof SalesReportPairDtoItemA
|
|
27052
|
+
*/
|
|
27053
|
+
'name': string | null;
|
|
27054
|
+
/**
|
|
27055
|
+
* The period\'s orders with the item (as its own line, never as an option)
|
|
27056
|
+
* @type {number}
|
|
27057
|
+
* @memberof SalesReportPairDtoItemA
|
|
27058
|
+
*/
|
|
27059
|
+
'orders': number;
|
|
27060
|
+
}
|
|
27061
|
+
/**
|
|
27062
|
+
* The other item of the pair
|
|
27063
|
+
* @export
|
|
27064
|
+
* @interface SalesReportPairDtoItemB
|
|
27065
|
+
*/
|
|
27066
|
+
export interface SalesReportPairDtoItemB {
|
|
27067
|
+
/**
|
|
27068
|
+
* The item\'s key: the POS posId, the online product id
|
|
27069
|
+
* @type {string}
|
|
27070
|
+
* @memberof SalesReportPairDtoItemB
|
|
27071
|
+
*/
|
|
27072
|
+
'itemKey': string;
|
|
27073
|
+
/**
|
|
27074
|
+
* The item\'s least name over the period, as the sales report names it; null when none was recorded
|
|
27075
|
+
* @type {string}
|
|
27076
|
+
* @memberof SalesReportPairDtoItemB
|
|
27077
|
+
*/
|
|
27078
|
+
'name': string | null;
|
|
27079
|
+
/**
|
|
27080
|
+
* The period\'s orders with the item (as its own line, never as an option)
|
|
27081
|
+
* @type {number}
|
|
27082
|
+
* @memberof SalesReportPairDtoItemB
|
|
27083
|
+
*/
|
|
27084
|
+
'orders': number;
|
|
27085
|
+
}
|
|
27086
|
+
/**
|
|
27087
|
+
*
|
|
27088
|
+
* @export
|
|
27089
|
+
* @interface SalesReportPairItemDto
|
|
27090
|
+
*/
|
|
27091
|
+
export interface SalesReportPairItemDto {
|
|
27092
|
+
/**
|
|
27093
|
+
* The item\'s key: the POS posId, the online product id
|
|
27094
|
+
* @type {string}
|
|
27095
|
+
* @memberof SalesReportPairItemDto
|
|
27096
|
+
*/
|
|
27097
|
+
'itemKey': string;
|
|
27098
|
+
/**
|
|
27099
|
+
* The item\'s least name over the period, as the sales report names it; null when none was recorded
|
|
27100
|
+
* @type {string}
|
|
27101
|
+
* @memberof SalesReportPairItemDto
|
|
27102
|
+
*/
|
|
27103
|
+
'name': string | null;
|
|
27104
|
+
/**
|
|
27105
|
+
* The period\'s orders with the item (as its own line, never as an option)
|
|
27106
|
+
* @type {number}
|
|
27107
|
+
* @memberof SalesReportPairItemDto
|
|
27108
|
+
*/
|
|
27109
|
+
'orders': number;
|
|
27110
|
+
}
|
|
26072
27111
|
/**
|
|
26073
27112
|
*
|
|
26074
27113
|
* @export
|
|
@@ -26385,6 +27424,12 @@ export interface SalesReportResponseDto {
|
|
|
26385
27424
|
* @memberof SalesReportResponseDto
|
|
26386
27425
|
*/
|
|
26387
27426
|
'reports': Array<SalesReportGroupDto>;
|
|
27427
|
+
/**
|
|
27428
|
+
* The short report (GET /api/v6/report/sales/short), when the breakdown splits several venues or apps: their groups added together, one per currency, as breakdown none answers them (comparison and changes too), so the parts and their total come in one answer
|
|
27429
|
+
* @type {Array<SalesReportGroupDto>}
|
|
27430
|
+
* @memberof SalesReportResponseDto
|
|
27431
|
+
*/
|
|
27432
|
+
'totals'?: Array<SalesReportGroupDto>;
|
|
26388
27433
|
}
|
|
26389
27434
|
/**
|
|
26390
27435
|
*
|
|
@@ -26441,6 +27486,563 @@ export interface SalesReportSalesDto {
|
|
|
26441
27486
|
*/
|
|
26442
27487
|
'deliveryTax'?: number;
|
|
26443
27488
|
}
|
|
27489
|
+
/**
|
|
27490
|
+
*
|
|
27491
|
+
* @export
|
|
27492
|
+
* @interface SalesReportShortCategoryDto
|
|
27493
|
+
*/
|
|
27494
|
+
export interface SalesReportShortCategoryDto {
|
|
27495
|
+
/**
|
|
27496
|
+
* The category\'s name
|
|
27497
|
+
* @type {string}
|
|
27498
|
+
* @memberof SalesReportShortCategoryDto
|
|
27499
|
+
*/
|
|
27500
|
+
'categoryName': string;
|
|
27501
|
+
/**
|
|
27502
|
+
* How many of its items were sold
|
|
27503
|
+
* @type {number}
|
|
27504
|
+
* @memberof SalesReportShortCategoryDto
|
|
27505
|
+
*/
|
|
27506
|
+
'totalQuantity': number;
|
|
27507
|
+
/**
|
|
27508
|
+
* Sales with VAT, in the major unit of the group\'s currency (euros for EUR)
|
|
27509
|
+
* @type {number}
|
|
27510
|
+
* @memberof SalesReportShortCategoryDto
|
|
27511
|
+
*/
|
|
27512
|
+
'totalWithTax': number;
|
|
27513
|
+
/**
|
|
27514
|
+
* The VAT, in the major unit of the group\'s currency (euros for EUR)
|
|
27515
|
+
* @type {number}
|
|
27516
|
+
* @memberof SalesReportShortCategoryDto
|
|
27517
|
+
*/
|
|
27518
|
+
'taxAmount': number;
|
|
27519
|
+
/**
|
|
27520
|
+
* Sales without VAT, in the major unit of the group\'s currency (euros for EUR)
|
|
27521
|
+
* @type {number}
|
|
27522
|
+
* @memberof SalesReportShortCategoryDto
|
|
27523
|
+
*/
|
|
27524
|
+
'totalWithoutTax': number;
|
|
27525
|
+
}
|
|
27526
|
+
/**
|
|
27527
|
+
*
|
|
27528
|
+
* @export
|
|
27529
|
+
* @interface SalesReportShortComparisonDto
|
|
27530
|
+
*/
|
|
27531
|
+
export interface SalesReportShortComparisonDto {
|
|
27532
|
+
/**
|
|
27533
|
+
* The first instant of the compared period, ISO 8601 in UTC
|
|
27534
|
+
* @type {string}
|
|
27535
|
+
* @memberof SalesReportShortComparisonDto
|
|
27536
|
+
*/
|
|
27537
|
+
'reportDateStart': string;
|
|
27538
|
+
/**
|
|
27539
|
+
* The last instant of the compared period, ISO 8601 in UTC; now, when the period ends later
|
|
27540
|
+
* @type {string}
|
|
27541
|
+
* @memberof SalesReportShortComparisonDto
|
|
27542
|
+
*/
|
|
27543
|
+
'reportDateEnd': string;
|
|
27544
|
+
/**
|
|
27545
|
+
* The first business day compared, YYYY-MM-DD, in the report\'s time zone
|
|
27546
|
+
* @type {string}
|
|
27547
|
+
* @memberof SalesReportShortComparisonDto
|
|
27548
|
+
*/
|
|
27549
|
+
'firstBusinessDay': string;
|
|
27550
|
+
/**
|
|
27551
|
+
* The last business day compared, YYYY-MM-DD, inclusive
|
|
27552
|
+
* @type {string}
|
|
27553
|
+
* @memberof SalesReportShortComparisonDto
|
|
27554
|
+
*/
|
|
27555
|
+
'lastBusinessDay': string;
|
|
27556
|
+
/**
|
|
27557
|
+
* compareSameTime only: the instant the compared last day was added up to, ISO 8601 in UTC: that day at the last full hour, on the report\'s clock, that both the daily rows and the hours have reached on the report\'s last day (a client says \"until 14:00\"). The report\'s own last day is cut at the same hour of its day, so both sides cover the same hours: the group\'s totals and dailyBreakdown of that day stop there too. Present when no venue and app of the group was compared whole that day (one that sold nothing that day counts as cut); absent when compareSameTime was not sent, the report\'s last day is over, or a venue\'s day had no hours yet and was compared whole. In a group of venues in several time zones each venue is cut at its own clock\'s hour of the same instant, which this names in the report\'s time zone
|
|
27558
|
+
* @type {string}
|
|
27559
|
+
* @memberof SalesReportShortComparisonDto
|
|
27560
|
+
*/
|
|
27561
|
+
'comparedUntil'?: string;
|
|
27562
|
+
/**
|
|
27563
|
+
*
|
|
27564
|
+
* @type {SalesReportComparisonDtoPaymentReport}
|
|
27565
|
+
* @memberof SalesReportShortComparisonDto
|
|
27566
|
+
*/
|
|
27567
|
+
'paymentReport'?: SalesReportComparisonDtoPaymentReport;
|
|
27568
|
+
/**
|
|
27569
|
+
* The compared period\'s days that sold, oldest first, as the group\'s own dailyBreakdown: present when it is
|
|
27570
|
+
* @type {Array<SalesReportDayDto>}
|
|
27571
|
+
* @memberof SalesReportShortComparisonDto
|
|
27572
|
+
*/
|
|
27573
|
+
'dailyBreakdown'?: Array<SalesReportDayDto>;
|
|
27574
|
+
/**
|
|
27575
|
+
* Part summary: how many orders were sold, the sum of dailyBreakdown[].orders. POS counts orders as the till does, so a split bill counts once; kiosk, storefront and mobile count each of their orders once. A group that adds apps together (breakdown none or venue) adds POS\'s count to the other apps\' counts. Wolt, Foodora and other platform orders are not included. Count orders with this, never with paymentReport.summary.totalCount, which counts payments. Left out without part summary
|
|
27576
|
+
* @type {number}
|
|
27577
|
+
* @memberof SalesReportShortComparisonDto
|
|
27578
|
+
*/
|
|
27579
|
+
'orderCount'?: number;
|
|
27580
|
+
/**
|
|
27581
|
+
* Part summary: what was paid, refunds taken off (paymentReport.summary.salesAndRevenue), divided by orderCount, rounded half up to the currency\'s minor digits, in the major unit of the group\'s currency (euros for EUR). Null when no order was sold, and then its change is left out of changes and changesFromBaseline. Left out without part summary
|
|
27582
|
+
* @type {number}
|
|
27583
|
+
* @memberof SalesReportShortComparisonDto
|
|
27584
|
+
*/
|
|
27585
|
+
'averageOrderValue'?: number | null;
|
|
27586
|
+
/**
|
|
27587
|
+
* The change of each total either period answers, in ReportChangeField\'s order; empty when part summary was not asked
|
|
27588
|
+
* @type {Array<SalesReportChangeDto>}
|
|
27589
|
+
* @memberof SalesReportShortComparisonDto
|
|
27590
|
+
*/
|
|
27591
|
+
'changes': Array<SalesReportChangeDto>;
|
|
27592
|
+
/**
|
|
27593
|
+
*
|
|
27594
|
+
* @type {SalesReportShortComparisonDtoSalesReport}
|
|
27595
|
+
* @memberof SalesReportShortComparisonDto
|
|
27596
|
+
*/
|
|
27597
|
+
'salesReport'?: SalesReportShortComparisonDtoSalesReport;
|
|
27598
|
+
}
|
|
27599
|
+
/**
|
|
27600
|
+
* The compared period\'s salesReport, short as the group\'s own: present when it is
|
|
27601
|
+
* @export
|
|
27602
|
+
* @interface SalesReportShortComparisonDtoSalesReport
|
|
27603
|
+
*/
|
|
27604
|
+
export interface SalesReportShortComparisonDtoSalesReport {
|
|
27605
|
+
/**
|
|
27606
|
+
* Part vat: one row per VAT rate, lowest first
|
|
27607
|
+
* @type {Array<SalesReportVatRateDto>}
|
|
27608
|
+
* @memberof SalesReportShortComparisonDtoSalesReport
|
|
27609
|
+
*/
|
|
27610
|
+
'taxSummary'?: Array<SalesReportVatRateDto>;
|
|
27611
|
+
/**
|
|
27612
|
+
* Part summary: how many items were sold
|
|
27613
|
+
* @type {number}
|
|
27614
|
+
* @memberof SalesReportShortComparisonDtoSalesReport
|
|
27615
|
+
*/
|
|
27616
|
+
'totalQuantity'?: number;
|
|
27617
|
+
/**
|
|
27618
|
+
* Part summary: sales with VAT, in the major unit of the group\'s currency (euros for EUR)
|
|
27619
|
+
* @type {number}
|
|
27620
|
+
* @memberof SalesReportShortComparisonDtoSalesReport
|
|
27621
|
+
*/
|
|
27622
|
+
'totalWithTax'?: number;
|
|
27623
|
+
/**
|
|
27624
|
+
* Part summary: the VAT, in the major unit of the group\'s currency (euros for EUR)
|
|
27625
|
+
* @type {number}
|
|
27626
|
+
* @memberof SalesReportShortComparisonDtoSalesReport
|
|
27627
|
+
*/
|
|
27628
|
+
'totalTaxAmount'?: number;
|
|
27629
|
+
/**
|
|
27630
|
+
* Part summary: sales without VAT, in the major unit of the group\'s currency (euros for EUR)
|
|
27631
|
+
* @type {number}
|
|
27632
|
+
* @memberof SalesReportShortComparisonDtoSalesReport
|
|
27633
|
+
*/
|
|
27634
|
+
'totalWithoutTax'?: number;
|
|
27635
|
+
/**
|
|
27636
|
+
* 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
|
|
27637
|
+
* @type {number}
|
|
27638
|
+
* @memberof SalesReportShortComparisonDtoSalesReport
|
|
27639
|
+
*/
|
|
27640
|
+
'deliveryFee'?: number;
|
|
27641
|
+
/**
|
|
27642
|
+
* Part summary, with deliveryFee: the VAT of the delivery fees, in the major unit of the group\'s currency (euros for EUR)
|
|
27643
|
+
* @type {number}
|
|
27644
|
+
* @memberof SalesReportShortComparisonDtoSalesReport
|
|
27645
|
+
*/
|
|
27646
|
+
'deliveryTax'?: number;
|
|
27647
|
+
/**
|
|
27648
|
+
* Part items: each category\'s totals, without its items
|
|
27649
|
+
* @type {Array<SalesReportShortCategoryDto>}
|
|
27650
|
+
* @memberof SalesReportShortComparisonDtoSalesReport
|
|
27651
|
+
*/
|
|
27652
|
+
'categories'?: Array<SalesReportShortCategoryDto>;
|
|
27653
|
+
/**
|
|
27654
|
+
* Part items: the 10 items with the most sales with VAT, most first (then the most sold); an item in several categories is added up once
|
|
27655
|
+
* @type {Array<SalesReportTopItemDto>}
|
|
27656
|
+
* @memberof SalesReportShortComparisonDtoSalesReport
|
|
27657
|
+
*/
|
|
27658
|
+
'topItemsBySales'?: Array<SalesReportTopItemDto>;
|
|
27659
|
+
/**
|
|
27660
|
+
* Part items: the 10 items sold most often, most first (then the most sales); an item in several categories is added up once
|
|
27661
|
+
* @type {Array<SalesReportTopItemDto>}
|
|
27662
|
+
* @memberof SalesReportShortComparisonDtoSalesReport
|
|
27663
|
+
*/
|
|
27664
|
+
'topItemsByQuantity'?: Array<SalesReportTopItemDto>;
|
|
27665
|
+
}
|
|
27666
|
+
/**
|
|
27667
|
+
*
|
|
27668
|
+
* @export
|
|
27669
|
+
* @interface SalesReportShortGroupDto
|
|
27670
|
+
*/
|
|
27671
|
+
export interface SalesReportShortGroupDto {
|
|
27672
|
+
/**
|
|
27673
|
+
* The venue\'s business id; null when the breakdown adds venues together (none, app)
|
|
27674
|
+
* @type {object}
|
|
27675
|
+
* @memberof SalesReportShortGroupDto
|
|
27676
|
+
*/
|
|
27677
|
+
'businessId': object | null;
|
|
27678
|
+
/**
|
|
27679
|
+
*
|
|
27680
|
+
* @type {ReportApp}
|
|
27681
|
+
* @memberof SalesReportShortGroupDto
|
|
27682
|
+
*/
|
|
27683
|
+
'app': ReportApp | null;
|
|
27684
|
+
/**
|
|
27685
|
+
*
|
|
27686
|
+
* @type {CurrencyCode}
|
|
27687
|
+
* @memberof SalesReportShortGroupDto
|
|
27688
|
+
*/
|
|
27689
|
+
'currency': CurrencyCode;
|
|
27690
|
+
/**
|
|
27691
|
+
* The currency\'s ISO 4217 minor digits: EUR 2, ISK 0, BHD 3
|
|
27692
|
+
* @type {number}
|
|
27693
|
+
* @memberof SalesReportShortGroupDto
|
|
27694
|
+
*/
|
|
27695
|
+
'minorDigits': number;
|
|
27696
|
+
/**
|
|
27697
|
+
*
|
|
27698
|
+
* @type {SalesReportGroupDtoPaymentReport}
|
|
27699
|
+
* @memberof SalesReportShortGroupDto
|
|
27700
|
+
*/
|
|
27701
|
+
'paymentReport'?: SalesReportGroupDtoPaymentReport;
|
|
27702
|
+
/**
|
|
27703
|
+
* Part summary: one row per business day that sold, oldest first. POS leaves it out when no day sold
|
|
27704
|
+
* @type {Array<SalesReportDayDto>}
|
|
27705
|
+
* @memberof SalesReportShortGroupDto
|
|
27706
|
+
*/
|
|
27707
|
+
'dailyBreakdown'?: Array<SalesReportDayDto>;
|
|
27708
|
+
/**
|
|
27709
|
+
* Part summary: how many orders were sold, the sum of dailyBreakdown[].orders. POS counts orders as the till does, so a split bill counts once; kiosk, storefront and mobile count each of their orders once. A group that adds apps together (breakdown none or venue) adds POS\'s count to the other apps\' counts. Wolt, Foodora and other platform orders are not included. Count orders with this, never with paymentReport.summary.totalCount, which counts payments. Left out without part summary
|
|
27710
|
+
* @type {number}
|
|
27711
|
+
* @memberof SalesReportShortGroupDto
|
|
27712
|
+
*/
|
|
27713
|
+
'orderCount'?: number;
|
|
27714
|
+
/**
|
|
27715
|
+
* Part summary: what was paid, refunds taken off (paymentReport.summary.salesAndRevenue), divided by orderCount, rounded half up to the currency\'s minor digits, in the major unit of the group\'s currency (euros for EUR). Null when no order was sold, and then its change is left out of changes and changesFromBaseline. Left out without part summary
|
|
27716
|
+
* @type {number}
|
|
27717
|
+
* @memberof SalesReportShortGroupDto
|
|
27718
|
+
*/
|
|
27719
|
+
'averageOrderValue'?: number | null;
|
|
27720
|
+
/**
|
|
27721
|
+
* 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
|
|
27722
|
+
* @type {Array<SalesReportChangeDto>}
|
|
27723
|
+
* @memberof SalesReportShortGroupDto
|
|
27724
|
+
*/
|
|
27725
|
+
'changesFromBaseline'?: Array<SalesReportChangeDto>;
|
|
27726
|
+
/**
|
|
27727
|
+
*
|
|
27728
|
+
* @type {ReportBaselineLeftOut}
|
|
27729
|
+
* @memberof SalesReportShortGroupDto
|
|
27730
|
+
*/
|
|
27731
|
+
'changesFromBaselineLeftOut'?: ReportBaselineLeftOut;
|
|
27732
|
+
/**
|
|
27733
|
+
*
|
|
27734
|
+
* @type {SalesReportShortGroupDtoSalesReport}
|
|
27735
|
+
* @memberof SalesReportShortGroupDto
|
|
27736
|
+
*/
|
|
27737
|
+
'salesReport'?: SalesReportShortGroupDtoSalesReport;
|
|
27738
|
+
/**
|
|
27739
|
+
*
|
|
27740
|
+
* @type {SalesReportShortGroupDtoComparison}
|
|
27741
|
+
* @memberof SalesReportShortGroupDto
|
|
27742
|
+
*/
|
|
27743
|
+
'comparison'?: SalesReportShortGroupDtoComparison;
|
|
27744
|
+
}
|
|
27745
|
+
|
|
27746
|
+
|
|
27747
|
+
/**
|
|
27748
|
+
* With compareStart and compareEnd: the same group\'s short report of those days and the change of each total
|
|
27749
|
+
* @export
|
|
27750
|
+
* @interface SalesReportShortGroupDtoComparison
|
|
27751
|
+
*/
|
|
27752
|
+
export interface SalesReportShortGroupDtoComparison {
|
|
27753
|
+
/**
|
|
27754
|
+
* The first instant of the compared period, ISO 8601 in UTC
|
|
27755
|
+
* @type {string}
|
|
27756
|
+
* @memberof SalesReportShortGroupDtoComparison
|
|
27757
|
+
*/
|
|
27758
|
+
'reportDateStart': string;
|
|
27759
|
+
/**
|
|
27760
|
+
* The last instant of the compared period, ISO 8601 in UTC; now, when the period ends later
|
|
27761
|
+
* @type {string}
|
|
27762
|
+
* @memberof SalesReportShortGroupDtoComparison
|
|
27763
|
+
*/
|
|
27764
|
+
'reportDateEnd': string;
|
|
27765
|
+
/**
|
|
27766
|
+
* The first business day compared, YYYY-MM-DD, in the report\'s time zone
|
|
27767
|
+
* @type {string}
|
|
27768
|
+
* @memberof SalesReportShortGroupDtoComparison
|
|
27769
|
+
*/
|
|
27770
|
+
'firstBusinessDay': string;
|
|
27771
|
+
/**
|
|
27772
|
+
* The last business day compared, YYYY-MM-DD, inclusive
|
|
27773
|
+
* @type {string}
|
|
27774
|
+
* @memberof SalesReportShortGroupDtoComparison
|
|
27775
|
+
*/
|
|
27776
|
+
'lastBusinessDay': string;
|
|
27777
|
+
/**
|
|
27778
|
+
* compareSameTime only: the instant the compared last day was added up to, ISO 8601 in UTC: that day at the last full hour, on the report\'s clock, that both the daily rows and the hours have reached on the report\'s last day (a client says \"until 14:00\"). The report\'s own last day is cut at the same hour of its day, so both sides cover the same hours: the group\'s totals and dailyBreakdown of that day stop there too. Present when no venue and app of the group was compared whole that day (one that sold nothing that day counts as cut); absent when compareSameTime was not sent, the report\'s last day is over, or a venue\'s day had no hours yet and was compared whole. In a group of venues in several time zones each venue is cut at its own clock\'s hour of the same instant, which this names in the report\'s time zone
|
|
27779
|
+
* @type {string}
|
|
27780
|
+
* @memberof SalesReportShortGroupDtoComparison
|
|
27781
|
+
*/
|
|
27782
|
+
'comparedUntil'?: string;
|
|
27783
|
+
/**
|
|
27784
|
+
*
|
|
27785
|
+
* @type {SalesReportComparisonDtoPaymentReport}
|
|
27786
|
+
* @memberof SalesReportShortGroupDtoComparison
|
|
27787
|
+
*/
|
|
27788
|
+
'paymentReport'?: SalesReportComparisonDtoPaymentReport;
|
|
27789
|
+
/**
|
|
27790
|
+
* The compared period\'s days that sold, oldest first, as the group\'s own dailyBreakdown: present when it is
|
|
27791
|
+
* @type {Array<SalesReportDayDto>}
|
|
27792
|
+
* @memberof SalesReportShortGroupDtoComparison
|
|
27793
|
+
*/
|
|
27794
|
+
'dailyBreakdown'?: Array<SalesReportDayDto>;
|
|
27795
|
+
/**
|
|
27796
|
+
* Part summary: how many orders were sold, the sum of dailyBreakdown[].orders. POS counts orders as the till does, so a split bill counts once; kiosk, storefront and mobile count each of their orders once. A group that adds apps together (breakdown none or venue) adds POS\'s count to the other apps\' counts. Wolt, Foodora and other platform orders are not included. Count orders with this, never with paymentReport.summary.totalCount, which counts payments. Left out without part summary
|
|
27797
|
+
* @type {number}
|
|
27798
|
+
* @memberof SalesReportShortGroupDtoComparison
|
|
27799
|
+
*/
|
|
27800
|
+
'orderCount'?: number;
|
|
27801
|
+
/**
|
|
27802
|
+
* Part summary: what was paid, refunds taken off (paymentReport.summary.salesAndRevenue), divided by orderCount, rounded half up to the currency\'s minor digits, in the major unit of the group\'s currency (euros for EUR). Null when no order was sold, and then its change is left out of changes and changesFromBaseline. Left out without part summary
|
|
27803
|
+
* @type {number}
|
|
27804
|
+
* @memberof SalesReportShortGroupDtoComparison
|
|
27805
|
+
*/
|
|
27806
|
+
'averageOrderValue'?: number | null;
|
|
27807
|
+
/**
|
|
27808
|
+
* The change of each total either period answers, in ReportChangeField\'s order; empty when part summary was not asked
|
|
27809
|
+
* @type {Array<SalesReportChangeDto>}
|
|
27810
|
+
* @memberof SalesReportShortGroupDtoComparison
|
|
27811
|
+
*/
|
|
27812
|
+
'changes': Array<SalesReportChangeDto>;
|
|
27813
|
+
/**
|
|
27814
|
+
*
|
|
27815
|
+
* @type {SalesReportShortComparisonDtoSalesReport}
|
|
27816
|
+
* @memberof SalesReportShortGroupDtoComparison
|
|
27817
|
+
*/
|
|
27818
|
+
'salesReport'?: SalesReportShortComparisonDtoSalesReport;
|
|
27819
|
+
}
|
|
27820
|
+
/**
|
|
27821
|
+
* The group\'s salesReport, short: present when part summary, items or vat was asked
|
|
27822
|
+
* @export
|
|
27823
|
+
* @interface SalesReportShortGroupDtoSalesReport
|
|
27824
|
+
*/
|
|
27825
|
+
export interface SalesReportShortGroupDtoSalesReport {
|
|
27826
|
+
/**
|
|
27827
|
+
* Part vat: one row per VAT rate, lowest first
|
|
27828
|
+
* @type {Array<SalesReportVatRateDto>}
|
|
27829
|
+
* @memberof SalesReportShortGroupDtoSalesReport
|
|
27830
|
+
*/
|
|
27831
|
+
'taxSummary'?: Array<SalesReportVatRateDto>;
|
|
27832
|
+
/**
|
|
27833
|
+
* Part summary: how many items were sold
|
|
27834
|
+
* @type {number}
|
|
27835
|
+
* @memberof SalesReportShortGroupDtoSalesReport
|
|
27836
|
+
*/
|
|
27837
|
+
'totalQuantity'?: number;
|
|
27838
|
+
/**
|
|
27839
|
+
* Part summary: sales with VAT, in the major unit of the group\'s currency (euros for EUR)
|
|
27840
|
+
* @type {number}
|
|
27841
|
+
* @memberof SalesReportShortGroupDtoSalesReport
|
|
27842
|
+
*/
|
|
27843
|
+
'totalWithTax'?: number;
|
|
27844
|
+
/**
|
|
27845
|
+
* Part summary: the VAT, in the major unit of the group\'s currency (euros for EUR)
|
|
27846
|
+
* @type {number}
|
|
27847
|
+
* @memberof SalesReportShortGroupDtoSalesReport
|
|
27848
|
+
*/
|
|
27849
|
+
'totalTaxAmount'?: number;
|
|
27850
|
+
/**
|
|
27851
|
+
* Part summary: sales without VAT, in the major unit of the group\'s currency (euros for EUR)
|
|
27852
|
+
* @type {number}
|
|
27853
|
+
* @memberof SalesReportShortGroupDtoSalesReport
|
|
27854
|
+
*/
|
|
27855
|
+
'totalWithoutTax'?: number;
|
|
27856
|
+
/**
|
|
27857
|
+
* 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
|
|
27858
|
+
* @type {number}
|
|
27859
|
+
* @memberof SalesReportShortGroupDtoSalesReport
|
|
27860
|
+
*/
|
|
27861
|
+
'deliveryFee'?: number;
|
|
27862
|
+
/**
|
|
27863
|
+
* Part summary, with deliveryFee: the VAT of the delivery fees, in the major unit of the group\'s currency (euros for EUR)
|
|
27864
|
+
* @type {number}
|
|
27865
|
+
* @memberof SalesReportShortGroupDtoSalesReport
|
|
27866
|
+
*/
|
|
27867
|
+
'deliveryTax'?: number;
|
|
27868
|
+
/**
|
|
27869
|
+
* Part items: each category\'s totals, without its items
|
|
27870
|
+
* @type {Array<SalesReportShortCategoryDto>}
|
|
27871
|
+
* @memberof SalesReportShortGroupDtoSalesReport
|
|
27872
|
+
*/
|
|
27873
|
+
'categories'?: Array<SalesReportShortCategoryDto>;
|
|
27874
|
+
/**
|
|
27875
|
+
* Part items: the 10 items with the most sales with VAT, most first (then the most sold); an item in several categories is added up once
|
|
27876
|
+
* @type {Array<SalesReportTopItemDto>}
|
|
27877
|
+
* @memberof SalesReportShortGroupDtoSalesReport
|
|
27878
|
+
*/
|
|
27879
|
+
'topItemsBySales'?: Array<SalesReportTopItemDto>;
|
|
27880
|
+
/**
|
|
27881
|
+
* Part items: the 10 items sold most often, most first (then the most sales); an item in several categories is added up once
|
|
27882
|
+
* @type {Array<SalesReportTopItemDto>}
|
|
27883
|
+
* @memberof SalesReportShortGroupDtoSalesReport
|
|
27884
|
+
*/
|
|
27885
|
+
'topItemsByQuantity'?: Array<SalesReportTopItemDto>;
|
|
27886
|
+
}
|
|
27887
|
+
/**
|
|
27888
|
+
*
|
|
27889
|
+
* @export
|
|
27890
|
+
* @interface SalesReportShortResponseDto
|
|
27891
|
+
*/
|
|
27892
|
+
export interface SalesReportShortResponseDto {
|
|
27893
|
+
/**
|
|
27894
|
+
* The first instant of the period, ISO 8601 in UTC
|
|
27895
|
+
* @type {string}
|
|
27896
|
+
* @memberof SalesReportShortResponseDto
|
|
27897
|
+
*/
|
|
27898
|
+
'reportDateStart': string;
|
|
27899
|
+
/**
|
|
27900
|
+
* The last instant of the period, ISO 8601 in UTC; now, when the period ends later
|
|
27901
|
+
* @type {string}
|
|
27902
|
+
* @memberof SalesReportShortResponseDto
|
|
27903
|
+
*/
|
|
27904
|
+
'reportDateEnd': string;
|
|
27905
|
+
/**
|
|
27906
|
+
* When the report was answered, ISO 8601 in UTC
|
|
27907
|
+
* @type {string}
|
|
27908
|
+
* @memberof SalesReportShortResponseDto
|
|
27909
|
+
*/
|
|
27910
|
+
'reportGeneratedAt': string;
|
|
27911
|
+
/**
|
|
27912
|
+
* The time zone the period was read in: the request\'s, or else the first venue\'s
|
|
27913
|
+
* @type {string}
|
|
27914
|
+
* @memberof SalesReportShortResponseDto
|
|
27915
|
+
*/
|
|
27916
|
+
'timezone': string;
|
|
27917
|
+
/**
|
|
27918
|
+
* The first business day added up, YYYY-MM-DD; each venue\'s rows of that date in its own zone
|
|
27919
|
+
* @type {string}
|
|
27920
|
+
* @memberof SalesReportShortResponseDto
|
|
27921
|
+
*/
|
|
27922
|
+
'firstBusinessDay': string;
|
|
27923
|
+
/**
|
|
27924
|
+
* The last business day added up, YYYY-MM-DD, inclusive
|
|
27925
|
+
* @type {string}
|
|
27926
|
+
* @memberof SalesReportShortResponseDto
|
|
27927
|
+
*/
|
|
27928
|
+
'lastBusinessDay': string;
|
|
27929
|
+
/**
|
|
27930
|
+
* 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
|
|
27931
|
+
* @type {object}
|
|
27932
|
+
* @memberof SalesReportShortResponseDto
|
|
27933
|
+
*/
|
|
27934
|
+
'dataUntil': object | null;
|
|
27935
|
+
/**
|
|
27936
|
+
* One group per venue, app and currency the breakdown keeps, as GET /api/v6/report/sales answers them, short
|
|
27937
|
+
* @type {Array<SalesReportShortGroupDto>}
|
|
27938
|
+
* @memberof SalesReportShortResponseDto
|
|
27939
|
+
*/
|
|
27940
|
+
'reports': Array<SalesReportShortGroupDto>;
|
|
27941
|
+
/**
|
|
27942
|
+
* When the breakdown splits several venues or apps: their groups added together, one per currency, short
|
|
27943
|
+
* @type {Array<SalesReportShortGroupDto>}
|
|
27944
|
+
* @memberof SalesReportShortResponseDto
|
|
27945
|
+
*/
|
|
27946
|
+
'totals'?: Array<SalesReportShortGroupDto>;
|
|
27947
|
+
}
|
|
27948
|
+
/**
|
|
27949
|
+
*
|
|
27950
|
+
* @export
|
|
27951
|
+
* @interface SalesReportShortSalesDto
|
|
27952
|
+
*/
|
|
27953
|
+
export interface SalesReportShortSalesDto {
|
|
27954
|
+
/**
|
|
27955
|
+
* Part vat: one row per VAT rate, lowest first
|
|
27956
|
+
* @type {Array<SalesReportVatRateDto>}
|
|
27957
|
+
* @memberof SalesReportShortSalesDto
|
|
27958
|
+
*/
|
|
27959
|
+
'taxSummary'?: Array<SalesReportVatRateDto>;
|
|
27960
|
+
/**
|
|
27961
|
+
* Part summary: how many items were sold
|
|
27962
|
+
* @type {number}
|
|
27963
|
+
* @memberof SalesReportShortSalesDto
|
|
27964
|
+
*/
|
|
27965
|
+
'totalQuantity'?: number;
|
|
27966
|
+
/**
|
|
27967
|
+
* Part summary: sales with VAT, in the major unit of the group\'s currency (euros for EUR)
|
|
27968
|
+
* @type {number}
|
|
27969
|
+
* @memberof SalesReportShortSalesDto
|
|
27970
|
+
*/
|
|
27971
|
+
'totalWithTax'?: number;
|
|
27972
|
+
/**
|
|
27973
|
+
* Part summary: the VAT, in the major unit of the group\'s currency (euros for EUR)
|
|
27974
|
+
* @type {number}
|
|
27975
|
+
* @memberof SalesReportShortSalesDto
|
|
27976
|
+
*/
|
|
27977
|
+
'totalTaxAmount'?: number;
|
|
27978
|
+
/**
|
|
27979
|
+
* Part summary: sales without VAT, in the major unit of the group\'s currency (euros for EUR)
|
|
27980
|
+
* @type {number}
|
|
27981
|
+
* @memberof SalesReportShortSalesDto
|
|
27982
|
+
*/
|
|
27983
|
+
'totalWithoutTax'?: number;
|
|
27984
|
+
/**
|
|
27985
|
+
* 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
|
|
27986
|
+
* @type {number}
|
|
27987
|
+
* @memberof SalesReportShortSalesDto
|
|
27988
|
+
*/
|
|
27989
|
+
'deliveryFee'?: number;
|
|
27990
|
+
/**
|
|
27991
|
+
* Part summary, with deliveryFee: the VAT of the delivery fees, in the major unit of the group\'s currency (euros for EUR)
|
|
27992
|
+
* @type {number}
|
|
27993
|
+
* @memberof SalesReportShortSalesDto
|
|
27994
|
+
*/
|
|
27995
|
+
'deliveryTax'?: number;
|
|
27996
|
+
/**
|
|
27997
|
+
* Part items: each category\'s totals, without its items
|
|
27998
|
+
* @type {Array<SalesReportShortCategoryDto>}
|
|
27999
|
+
* @memberof SalesReportShortSalesDto
|
|
28000
|
+
*/
|
|
28001
|
+
'categories'?: Array<SalesReportShortCategoryDto>;
|
|
28002
|
+
/**
|
|
28003
|
+
* Part items: the 10 items with the most sales with VAT, most first (then the most sold); an item in several categories is added up once
|
|
28004
|
+
* @type {Array<SalesReportTopItemDto>}
|
|
28005
|
+
* @memberof SalesReportShortSalesDto
|
|
28006
|
+
*/
|
|
28007
|
+
'topItemsBySales'?: Array<SalesReportTopItemDto>;
|
|
28008
|
+
/**
|
|
28009
|
+
* Part items: the 10 items sold most often, most first (then the most sales); an item in several categories is added up once
|
|
28010
|
+
* @type {Array<SalesReportTopItemDto>}
|
|
28011
|
+
* @memberof SalesReportShortSalesDto
|
|
28012
|
+
*/
|
|
28013
|
+
'topItemsByQuantity'?: Array<SalesReportTopItemDto>;
|
|
28014
|
+
}
|
|
28015
|
+
/**
|
|
28016
|
+
*
|
|
28017
|
+
* @export
|
|
28018
|
+
* @interface SalesReportTopItemDto
|
|
28019
|
+
*/
|
|
28020
|
+
export interface SalesReportTopItemDto {
|
|
28021
|
+
/**
|
|
28022
|
+
* The item\'s name, as the full report names it; items of the same name in several categories are one. Null when the sale carried no name: such an item is its product id, and one with neither is listed alone
|
|
28023
|
+
* @type {object}
|
|
28024
|
+
* @memberof SalesReportTopItemDto
|
|
28025
|
+
*/
|
|
28026
|
+
'name': object | null;
|
|
28027
|
+
/**
|
|
28028
|
+
* The categories it sold in
|
|
28029
|
+
* @type {Array<string>}
|
|
28030
|
+
* @memberof SalesReportTopItemDto
|
|
28031
|
+
*/
|
|
28032
|
+
'categoryNames': Array<string>;
|
|
28033
|
+
/**
|
|
28034
|
+
* How many were sold, in every category
|
|
28035
|
+
* @type {number}
|
|
28036
|
+
* @memberof SalesReportTopItemDto
|
|
28037
|
+
*/
|
|
28038
|
+
'quantity': number;
|
|
28039
|
+
/**
|
|
28040
|
+
* Sales with VAT, in every category, in the major unit of the group\'s currency (euros for EUR), rounded to its minor digits
|
|
28041
|
+
* @type {number}
|
|
28042
|
+
* @memberof SalesReportTopItemDto
|
|
28043
|
+
*/
|
|
28044
|
+
'totalWithTax': number;
|
|
28045
|
+
}
|
|
26444
28046
|
/**
|
|
26445
28047
|
*
|
|
26446
28048
|
* @export
|
|
@@ -26575,6 +28177,50 @@ export interface SalesSummaryDtoV2 {
|
|
|
26575
28177
|
*/
|
|
26576
28178
|
'totalSurchargeAmount': number;
|
|
26577
28179
|
}
|
|
28180
|
+
/**
|
|
28181
|
+
*
|
|
28182
|
+
* @export
|
|
28183
|
+
* @interface SaveAnalyticsDashboardDto
|
|
28184
|
+
*/
|
|
28185
|
+
export interface SaveAnalyticsDashboardDto {
|
|
28186
|
+
/**
|
|
28187
|
+
* The cards in the order they are shown, first card first; at most 60. An empty list saves an empty dashboard.
|
|
28188
|
+
* @type {Array<AnalyticsDashboardCardDto>}
|
|
28189
|
+
* @memberof SaveAnalyticsDashboardDto
|
|
28190
|
+
*/
|
|
28191
|
+
'cards': Array<AnalyticsDashboardCardDto>;
|
|
28192
|
+
/**
|
|
28193
|
+
*
|
|
28194
|
+
* @type {SaveAnalyticsDashboardDtoGoals}
|
|
28195
|
+
* @memberof SaveAnalyticsDashboardDto
|
|
28196
|
+
*/
|
|
28197
|
+
'goals': SaveAnalyticsDashboardDtoGoals;
|
|
28198
|
+
/**
|
|
28199
|
+
* The version the dashboard was read at, from its GET. Absent or null only to create the first dashboard; answered 409 when someone saved since, or when one already exists.
|
|
28200
|
+
* @type {number}
|
|
28201
|
+
* @memberof SaveAnalyticsDashboardDto
|
|
28202
|
+
*/
|
|
28203
|
+
'expectedVersion'?: number | null;
|
|
28204
|
+
}
|
|
28205
|
+
/**
|
|
28206
|
+
* The sales goals the cards measure against; an empty object saves none.
|
|
28207
|
+
* @export
|
|
28208
|
+
* @interface SaveAnalyticsDashboardDtoGoals
|
|
28209
|
+
*/
|
|
28210
|
+
export interface SaveAnalyticsDashboardDtoGoals {
|
|
28211
|
+
/**
|
|
28212
|
+
* The day\'s sales goal, a whole number in the minor unit of the store\'s currency (cents for EUR). Absent: no day goal.
|
|
28213
|
+
* @type {number}
|
|
28214
|
+
* @memberof SaveAnalyticsDashboardDtoGoals
|
|
28215
|
+
*/
|
|
28216
|
+
'daySales'?: number;
|
|
28217
|
+
/**
|
|
28218
|
+
* The month\'s sales goal, a whole number in the minor unit of the store\'s currency (cents for EUR). Absent: no month goal.
|
|
28219
|
+
* @type {number}
|
|
28220
|
+
* @memberof SaveAnalyticsDashboardDtoGoals
|
|
28221
|
+
*/
|
|
28222
|
+
'monthSales'?: number;
|
|
28223
|
+
}
|
|
26578
28224
|
/**
|
|
26579
28225
|
*
|
|
26580
28226
|
* @export
|
|
@@ -26755,6 +28401,34 @@ export interface SendReportEmailDto {
|
|
|
26755
28401
|
}
|
|
26756
28402
|
|
|
26757
28403
|
|
|
28404
|
+
/**
|
|
28405
|
+
*
|
|
28406
|
+
* @export
|
|
28407
|
+
* @interface ServeMcpRequest403Response
|
|
28408
|
+
*/
|
|
28409
|
+
export interface ServeMcpRequest403Response {
|
|
28410
|
+
/**
|
|
28411
|
+
* Why the person\'s request is refused
|
|
28412
|
+
* @type {string}
|
|
28413
|
+
* @memberof ServeMcpRequest403Response
|
|
28414
|
+
*/
|
|
28415
|
+
'error'?: ErrorEnum;
|
|
28416
|
+
/**
|
|
28417
|
+
* With NOT_STORE_OWNER: each venue a tool call named that the person does not own
|
|
28418
|
+
* @type {Array<any>}
|
|
28419
|
+
* @memberof ServeMcpRequest403Response
|
|
28420
|
+
*/
|
|
28421
|
+
'venueIds'?: Array<any>;
|
|
28422
|
+
}
|
|
28423
|
+
|
|
28424
|
+
export const ErrorEnum = {
|
|
28425
|
+
NoAriAccess: 'NO_ARI_ACCESS',
|
|
28426
|
+
NotStoreOwner: 'NOT_STORE_OWNER',
|
|
28427
|
+
RightsUnavailable: 'RIGHTS_UNAVAILABLE'
|
|
28428
|
+
} as const;
|
|
28429
|
+
|
|
28430
|
+
export type ErrorEnum = typeof ErrorEnum[keyof typeof ErrorEnum];
|
|
28431
|
+
|
|
26758
28432
|
/**
|
|
26759
28433
|
*
|
|
26760
28434
|
* @export
|
|
@@ -31255,6 +32929,12 @@ export interface UnifiedProductDto {
|
|
|
31255
32929
|
* @memberof UnifiedProductDto
|
|
31256
32930
|
*/
|
|
31257
32931
|
'options': Array<UnifiedOptionDto>;
|
|
32932
|
+
/**
|
|
32933
|
+
* Every ingredient shown on the guest\'s card for this product, kept (removed false) and removed, in the card\'s order. Absent only when no card was shown.
|
|
32934
|
+
* @type {Array<OrderIngredientDto>}
|
|
32935
|
+
* @memberof UnifiedProductDto
|
|
32936
|
+
*/
|
|
32937
|
+
'ingredients'?: Array<OrderIngredientDto>;
|
|
31258
32938
|
}
|
|
31259
32939
|
|
|
31260
32940
|
|
|
@@ -36489,6 +38169,396 @@ export class ActionPasscodesApi extends BaseAPI implements ActionPasscodesApiInt
|
|
|
36489
38169
|
}
|
|
36490
38170
|
|
|
36491
38171
|
|
|
38172
|
+
/**
|
|
38173
|
+
* AnalyticsDashboardsApi - axios parameter creator
|
|
38174
|
+
* @export
|
|
38175
|
+
*/
|
|
38176
|
+
export const AnalyticsDashboardsApiAxiosParamCreator = function (configuration?: Configuration) {
|
|
38177
|
+
return {
|
|
38178
|
+
/**
|
|
38179
|
+
* The organisation\'s saved cards and sales goals for its All stores view, shared by its management and everyone working at one of its stores. 404 when none is saved yet. Asks the licence server who the person is in the organisation on every call.
|
|
38180
|
+
* @summary Read an organisation\'s Analytics dashboard
|
|
38181
|
+
* @param {string} groupId The organisation\'s id: its group\'s accountId in the licence server
|
|
38182
|
+
* @param {*} [options] Override http request option.
|
|
38183
|
+
* @throws {RequiredError}
|
|
38184
|
+
*/
|
|
38185
|
+
getOrganisationAnalyticsDashboard: async (groupId: string, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
|
38186
|
+
// verify required parameter 'groupId' is not null or undefined
|
|
38187
|
+
assertParamExists('getOrganisationAnalyticsDashboard', 'groupId', groupId)
|
|
38188
|
+
const localVarPath = `/api/v6/groups/{groupId}/analytics-dashboard`
|
|
38189
|
+
.replace(`{${"groupId"}}`, encodeURIComponent(String(groupId)));
|
|
38190
|
+
// use dummy base URL string because the URL constructor only accepts absolute URLs.
|
|
38191
|
+
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
|
|
38192
|
+
let baseOptions;
|
|
38193
|
+
if (configuration) {
|
|
38194
|
+
baseOptions = configuration.baseOptions;
|
|
38195
|
+
}
|
|
38196
|
+
|
|
38197
|
+
const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
|
|
38198
|
+
const localVarHeaderParameter = {} as any;
|
|
38199
|
+
const localVarQueryParameter = {} as any;
|
|
38200
|
+
|
|
38201
|
+
// authentication JWT-auth required
|
|
38202
|
+
// http bearer authentication required
|
|
38203
|
+
await setBearerAuthToObject(localVarHeaderParameter, configuration)
|
|
38204
|
+
|
|
38205
|
+
|
|
38206
|
+
|
|
38207
|
+
setSearchParams(localVarUrlObj, localVarQueryParameter);
|
|
38208
|
+
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
|
|
38209
|
+
localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
|
|
38210
|
+
|
|
38211
|
+
return {
|
|
38212
|
+
url: toPathString(localVarUrlObj),
|
|
38213
|
+
options: localVarRequestOptions,
|
|
38214
|
+
};
|
|
38215
|
+
},
|
|
38216
|
+
/**
|
|
38217
|
+
* The store\'s saved cards and sales goals, shared by everyone who can see the store. 404 when none is saved yet. Read from the database every time.
|
|
38218
|
+
* @summary Read a store\'s Analytics dashboard
|
|
38219
|
+
* @param {number} businessId The store\'s orderingBusinessId
|
|
38220
|
+
* @param {*} [options] Override http request option.
|
|
38221
|
+
* @throws {RequiredError}
|
|
38222
|
+
*/
|
|
38223
|
+
getStoreAnalyticsDashboard: async (businessId: number, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
|
38224
|
+
// verify required parameter 'businessId' is not null or undefined
|
|
38225
|
+
assertParamExists('getStoreAnalyticsDashboard', 'businessId', businessId)
|
|
38226
|
+
const localVarPath = `/api/v6/businesses/{businessId}/analytics-dashboard`
|
|
38227
|
+
.replace(`{${"businessId"}}`, encodeURIComponent(String(businessId)));
|
|
38228
|
+
// use dummy base URL string because the URL constructor only accepts absolute URLs.
|
|
38229
|
+
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
|
|
38230
|
+
let baseOptions;
|
|
38231
|
+
if (configuration) {
|
|
38232
|
+
baseOptions = configuration.baseOptions;
|
|
38233
|
+
}
|
|
38234
|
+
|
|
38235
|
+
const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
|
|
38236
|
+
const localVarHeaderParameter = {} as any;
|
|
38237
|
+
const localVarQueryParameter = {} as any;
|
|
38238
|
+
|
|
38239
|
+
// authentication JWT-auth required
|
|
38240
|
+
// http bearer authentication required
|
|
38241
|
+
await setBearerAuthToObject(localVarHeaderParameter, configuration)
|
|
38242
|
+
|
|
38243
|
+
|
|
38244
|
+
|
|
38245
|
+
setSearchParams(localVarUrlObj, localVarQueryParameter);
|
|
38246
|
+
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
|
|
38247
|
+
localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
|
|
38248
|
+
|
|
38249
|
+
return {
|
|
38250
|
+
url: toPathString(localVarUrlObj),
|
|
38251
|
+
options: localVarRequestOptions,
|
|
38252
|
+
};
|
|
38253
|
+
},
|
|
38254
|
+
/**
|
|
38255
|
+
* Saves the cards, in order, and the sales goals of the organisation\'s All stores view, replacing what was saved. The first save, without expectedVersion, creates it; every later one sends the version it read, and loses with 409 when someone saved since. Only the organisation\'s management may save.
|
|
38256
|
+
* @summary Replace an organisation\'s Analytics dashboard
|
|
38257
|
+
* @param {string} groupId The organisation\'s id: its group\'s accountId in the licence server
|
|
38258
|
+
* @param {SaveAnalyticsDashboardDto} saveAnalyticsDashboardDto
|
|
38259
|
+
* @param {*} [options] Override http request option.
|
|
38260
|
+
* @throws {RequiredError}
|
|
38261
|
+
*/
|
|
38262
|
+
saveOrganisationAnalyticsDashboard: async (groupId: string, saveAnalyticsDashboardDto: SaveAnalyticsDashboardDto, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
|
38263
|
+
// verify required parameter 'groupId' is not null or undefined
|
|
38264
|
+
assertParamExists('saveOrganisationAnalyticsDashboard', 'groupId', groupId)
|
|
38265
|
+
// verify required parameter 'saveAnalyticsDashboardDto' is not null or undefined
|
|
38266
|
+
assertParamExists('saveOrganisationAnalyticsDashboard', 'saveAnalyticsDashboardDto', saveAnalyticsDashboardDto)
|
|
38267
|
+
const localVarPath = `/api/v6/groups/{groupId}/analytics-dashboard`
|
|
38268
|
+
.replace(`{${"groupId"}}`, encodeURIComponent(String(groupId)));
|
|
38269
|
+
// use dummy base URL string because the URL constructor only accepts absolute URLs.
|
|
38270
|
+
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
|
|
38271
|
+
let baseOptions;
|
|
38272
|
+
if (configuration) {
|
|
38273
|
+
baseOptions = configuration.baseOptions;
|
|
38274
|
+
}
|
|
38275
|
+
|
|
38276
|
+
const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options};
|
|
38277
|
+
const localVarHeaderParameter = {} as any;
|
|
38278
|
+
const localVarQueryParameter = {} as any;
|
|
38279
|
+
|
|
38280
|
+
// authentication JWT-auth required
|
|
38281
|
+
// http bearer authentication required
|
|
38282
|
+
await setBearerAuthToObject(localVarHeaderParameter, configuration)
|
|
38283
|
+
|
|
38284
|
+
|
|
38285
|
+
|
|
38286
|
+
localVarHeaderParameter['Content-Type'] = 'application/json';
|
|
38287
|
+
|
|
38288
|
+
setSearchParams(localVarUrlObj, localVarQueryParameter);
|
|
38289
|
+
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
|
|
38290
|
+
localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
|
|
38291
|
+
localVarRequestOptions.data = serializeDataIfNeeded(saveAnalyticsDashboardDto, localVarRequestOptions, configuration)
|
|
38292
|
+
|
|
38293
|
+
return {
|
|
38294
|
+
url: toPathString(localVarUrlObj),
|
|
38295
|
+
options: localVarRequestOptions,
|
|
38296
|
+
};
|
|
38297
|
+
},
|
|
38298
|
+
/**
|
|
38299
|
+
* Saves the cards, in order, and the sales goals, replacing what was saved. The first save, without expectedVersion, creates it; every later one sends the version it read, and loses with 409 when someone saved since. Only the store\'s managers and its organisation\'s management may save, read from the licence server at each save.
|
|
38300
|
+
* @summary Replace a store\'s Analytics dashboard
|
|
38301
|
+
* @param {number} businessId The store\'s orderingBusinessId
|
|
38302
|
+
* @param {SaveAnalyticsDashboardDto} saveAnalyticsDashboardDto
|
|
38303
|
+
* @param {*} [options] Override http request option.
|
|
38304
|
+
* @throws {RequiredError}
|
|
38305
|
+
*/
|
|
38306
|
+
saveStoreAnalyticsDashboard: async (businessId: number, saveAnalyticsDashboardDto: SaveAnalyticsDashboardDto, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
|
38307
|
+
// verify required parameter 'businessId' is not null or undefined
|
|
38308
|
+
assertParamExists('saveStoreAnalyticsDashboard', 'businessId', businessId)
|
|
38309
|
+
// verify required parameter 'saveAnalyticsDashboardDto' is not null or undefined
|
|
38310
|
+
assertParamExists('saveStoreAnalyticsDashboard', 'saveAnalyticsDashboardDto', saveAnalyticsDashboardDto)
|
|
38311
|
+
const localVarPath = `/api/v6/businesses/{businessId}/analytics-dashboard`
|
|
38312
|
+
.replace(`{${"businessId"}}`, encodeURIComponent(String(businessId)));
|
|
38313
|
+
// use dummy base URL string because the URL constructor only accepts absolute URLs.
|
|
38314
|
+
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
|
|
38315
|
+
let baseOptions;
|
|
38316
|
+
if (configuration) {
|
|
38317
|
+
baseOptions = configuration.baseOptions;
|
|
38318
|
+
}
|
|
38319
|
+
|
|
38320
|
+
const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options};
|
|
38321
|
+
const localVarHeaderParameter = {} as any;
|
|
38322
|
+
const localVarQueryParameter = {} as any;
|
|
38323
|
+
|
|
38324
|
+
// authentication JWT-auth required
|
|
38325
|
+
// http bearer authentication required
|
|
38326
|
+
await setBearerAuthToObject(localVarHeaderParameter, configuration)
|
|
38327
|
+
|
|
38328
|
+
|
|
38329
|
+
|
|
38330
|
+
localVarHeaderParameter['Content-Type'] = 'application/json';
|
|
38331
|
+
|
|
38332
|
+
setSearchParams(localVarUrlObj, localVarQueryParameter);
|
|
38333
|
+
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
|
|
38334
|
+
localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
|
|
38335
|
+
localVarRequestOptions.data = serializeDataIfNeeded(saveAnalyticsDashboardDto, localVarRequestOptions, configuration)
|
|
38336
|
+
|
|
38337
|
+
return {
|
|
38338
|
+
url: toPathString(localVarUrlObj),
|
|
38339
|
+
options: localVarRequestOptions,
|
|
38340
|
+
};
|
|
38341
|
+
},
|
|
38342
|
+
}
|
|
38343
|
+
};
|
|
38344
|
+
|
|
38345
|
+
/**
|
|
38346
|
+
* AnalyticsDashboardsApi - functional programming interface
|
|
38347
|
+
* @export
|
|
38348
|
+
*/
|
|
38349
|
+
export const AnalyticsDashboardsApiFp = function(configuration?: Configuration) {
|
|
38350
|
+
const localVarAxiosParamCreator = AnalyticsDashboardsApiAxiosParamCreator(configuration)
|
|
38351
|
+
return {
|
|
38352
|
+
/**
|
|
38353
|
+
* The organisation\'s saved cards and sales goals for its All stores view, shared by its management and everyone working at one of its stores. 404 when none is saved yet. Asks the licence server who the person is in the organisation on every call.
|
|
38354
|
+
* @summary Read an organisation\'s Analytics dashboard
|
|
38355
|
+
* @param {string} groupId The organisation\'s id: its group\'s accountId in the licence server
|
|
38356
|
+
* @param {*} [options] Override http request option.
|
|
38357
|
+
* @throws {RequiredError}
|
|
38358
|
+
*/
|
|
38359
|
+
async getOrganisationAnalyticsDashboard(groupId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AnalyticsDashboardResponseDto>> {
|
|
38360
|
+
const localVarAxiosArgs = await localVarAxiosParamCreator.getOrganisationAnalyticsDashboard(groupId, options);
|
|
38361
|
+
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
|
|
38362
|
+
},
|
|
38363
|
+
/**
|
|
38364
|
+
* The store\'s saved cards and sales goals, shared by everyone who can see the store. 404 when none is saved yet. Read from the database every time.
|
|
38365
|
+
* @summary Read a store\'s Analytics dashboard
|
|
38366
|
+
* @param {number} businessId The store\'s orderingBusinessId
|
|
38367
|
+
* @param {*} [options] Override http request option.
|
|
38368
|
+
* @throws {RequiredError}
|
|
38369
|
+
*/
|
|
38370
|
+
async getStoreAnalyticsDashboard(businessId: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AnalyticsDashboardResponseDto>> {
|
|
38371
|
+
const localVarAxiosArgs = await localVarAxiosParamCreator.getStoreAnalyticsDashboard(businessId, options);
|
|
38372
|
+
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
|
|
38373
|
+
},
|
|
38374
|
+
/**
|
|
38375
|
+
* Saves the cards, in order, and the sales goals of the organisation\'s All stores view, replacing what was saved. The first save, without expectedVersion, creates it; every later one sends the version it read, and loses with 409 when someone saved since. Only the organisation\'s management may save.
|
|
38376
|
+
* @summary Replace an organisation\'s Analytics dashboard
|
|
38377
|
+
* @param {string} groupId The organisation\'s id: its group\'s accountId in the licence server
|
|
38378
|
+
* @param {SaveAnalyticsDashboardDto} saveAnalyticsDashboardDto
|
|
38379
|
+
* @param {*} [options] Override http request option.
|
|
38380
|
+
* @throws {RequiredError}
|
|
38381
|
+
*/
|
|
38382
|
+
async saveOrganisationAnalyticsDashboard(groupId: string, saveAnalyticsDashboardDto: SaveAnalyticsDashboardDto, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AnalyticsDashboardResponseDto>> {
|
|
38383
|
+
const localVarAxiosArgs = await localVarAxiosParamCreator.saveOrganisationAnalyticsDashboard(groupId, saveAnalyticsDashboardDto, options);
|
|
38384
|
+
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
|
|
38385
|
+
},
|
|
38386
|
+
/**
|
|
38387
|
+
* Saves the cards, in order, and the sales goals, replacing what was saved. The first save, without expectedVersion, creates it; every later one sends the version it read, and loses with 409 when someone saved since. Only the store\'s managers and its organisation\'s management may save, read from the licence server at each save.
|
|
38388
|
+
* @summary Replace a store\'s Analytics dashboard
|
|
38389
|
+
* @param {number} businessId The store\'s orderingBusinessId
|
|
38390
|
+
* @param {SaveAnalyticsDashboardDto} saveAnalyticsDashboardDto
|
|
38391
|
+
* @param {*} [options] Override http request option.
|
|
38392
|
+
* @throws {RequiredError}
|
|
38393
|
+
*/
|
|
38394
|
+
async saveStoreAnalyticsDashboard(businessId: number, saveAnalyticsDashboardDto: SaveAnalyticsDashboardDto, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AnalyticsDashboardResponseDto>> {
|
|
38395
|
+
const localVarAxiosArgs = await localVarAxiosParamCreator.saveStoreAnalyticsDashboard(businessId, saveAnalyticsDashboardDto, options);
|
|
38396
|
+
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
|
|
38397
|
+
},
|
|
38398
|
+
}
|
|
38399
|
+
};
|
|
38400
|
+
|
|
38401
|
+
/**
|
|
38402
|
+
* AnalyticsDashboardsApi - factory interface
|
|
38403
|
+
* @export
|
|
38404
|
+
*/
|
|
38405
|
+
export const AnalyticsDashboardsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {
|
|
38406
|
+
const localVarFp = AnalyticsDashboardsApiFp(configuration)
|
|
38407
|
+
return {
|
|
38408
|
+
/**
|
|
38409
|
+
* The organisation\'s saved cards and sales goals for its All stores view, shared by its management and everyone working at one of its stores. 404 when none is saved yet. Asks the licence server who the person is in the organisation on every call.
|
|
38410
|
+
* @summary Read an organisation\'s Analytics dashboard
|
|
38411
|
+
* @param {string} groupId The organisation\'s id: its group\'s accountId in the licence server
|
|
38412
|
+
* @param {*} [options] Override http request option.
|
|
38413
|
+
* @throws {RequiredError}
|
|
38414
|
+
*/
|
|
38415
|
+
getOrganisationAnalyticsDashboard(groupId: string, options?: any): AxiosPromise<AnalyticsDashboardResponseDto> {
|
|
38416
|
+
return localVarFp.getOrganisationAnalyticsDashboard(groupId, options).then((request) => request(axios, basePath));
|
|
38417
|
+
},
|
|
38418
|
+
/**
|
|
38419
|
+
* The store\'s saved cards and sales goals, shared by everyone who can see the store. 404 when none is saved yet. Read from the database every time.
|
|
38420
|
+
* @summary Read a store\'s Analytics dashboard
|
|
38421
|
+
* @param {number} businessId The store\'s orderingBusinessId
|
|
38422
|
+
* @param {*} [options] Override http request option.
|
|
38423
|
+
* @throws {RequiredError}
|
|
38424
|
+
*/
|
|
38425
|
+
getStoreAnalyticsDashboard(businessId: number, options?: any): AxiosPromise<AnalyticsDashboardResponseDto> {
|
|
38426
|
+
return localVarFp.getStoreAnalyticsDashboard(businessId, options).then((request) => request(axios, basePath));
|
|
38427
|
+
},
|
|
38428
|
+
/**
|
|
38429
|
+
* Saves the cards, in order, and the sales goals of the organisation\'s All stores view, replacing what was saved. The first save, without expectedVersion, creates it; every later one sends the version it read, and loses with 409 when someone saved since. Only the organisation\'s management may save.
|
|
38430
|
+
* @summary Replace an organisation\'s Analytics dashboard
|
|
38431
|
+
* @param {string} groupId The organisation\'s id: its group\'s accountId in the licence server
|
|
38432
|
+
* @param {SaveAnalyticsDashboardDto} saveAnalyticsDashboardDto
|
|
38433
|
+
* @param {*} [options] Override http request option.
|
|
38434
|
+
* @throws {RequiredError}
|
|
38435
|
+
*/
|
|
38436
|
+
saveOrganisationAnalyticsDashboard(groupId: string, saveAnalyticsDashboardDto: SaveAnalyticsDashboardDto, options?: any): AxiosPromise<AnalyticsDashboardResponseDto> {
|
|
38437
|
+
return localVarFp.saveOrganisationAnalyticsDashboard(groupId, saveAnalyticsDashboardDto, options).then((request) => request(axios, basePath));
|
|
38438
|
+
},
|
|
38439
|
+
/**
|
|
38440
|
+
* Saves the cards, in order, and the sales goals, replacing what was saved. The first save, without expectedVersion, creates it; every later one sends the version it read, and loses with 409 when someone saved since. Only the store\'s managers and its organisation\'s management may save, read from the licence server at each save.
|
|
38441
|
+
* @summary Replace a store\'s Analytics dashboard
|
|
38442
|
+
* @param {number} businessId The store\'s orderingBusinessId
|
|
38443
|
+
* @param {SaveAnalyticsDashboardDto} saveAnalyticsDashboardDto
|
|
38444
|
+
* @param {*} [options] Override http request option.
|
|
38445
|
+
* @throws {RequiredError}
|
|
38446
|
+
*/
|
|
38447
|
+
saveStoreAnalyticsDashboard(businessId: number, saveAnalyticsDashboardDto: SaveAnalyticsDashboardDto, options?: any): AxiosPromise<AnalyticsDashboardResponseDto> {
|
|
38448
|
+
return localVarFp.saveStoreAnalyticsDashboard(businessId, saveAnalyticsDashboardDto, options).then((request) => request(axios, basePath));
|
|
38449
|
+
},
|
|
38450
|
+
};
|
|
38451
|
+
};
|
|
38452
|
+
|
|
38453
|
+
/**
|
|
38454
|
+
* AnalyticsDashboardsApi - interface
|
|
38455
|
+
* @export
|
|
38456
|
+
* @interface AnalyticsDashboardsApi
|
|
38457
|
+
*/
|
|
38458
|
+
export interface AnalyticsDashboardsApiInterface {
|
|
38459
|
+
/**
|
|
38460
|
+
* The organisation\'s saved cards and sales goals for its All stores view, shared by its management and everyone working at one of its stores. 404 when none is saved yet. Asks the licence server who the person is in the organisation on every call.
|
|
38461
|
+
* @summary Read an organisation\'s Analytics dashboard
|
|
38462
|
+
* @param {string} groupId The organisation\'s id: its group\'s accountId in the licence server
|
|
38463
|
+
* @param {*} [options] Override http request option.
|
|
38464
|
+
* @throws {RequiredError}
|
|
38465
|
+
* @memberof AnalyticsDashboardsApiInterface
|
|
38466
|
+
*/
|
|
38467
|
+
getOrganisationAnalyticsDashboard(groupId: string, options?: AxiosRequestConfig): AxiosPromise<AnalyticsDashboardResponseDto>;
|
|
38468
|
+
|
|
38469
|
+
/**
|
|
38470
|
+
* The store\'s saved cards and sales goals, shared by everyone who can see the store. 404 when none is saved yet. Read from the database every time.
|
|
38471
|
+
* @summary Read a store\'s Analytics dashboard
|
|
38472
|
+
* @param {number} businessId The store\'s orderingBusinessId
|
|
38473
|
+
* @param {*} [options] Override http request option.
|
|
38474
|
+
* @throws {RequiredError}
|
|
38475
|
+
* @memberof AnalyticsDashboardsApiInterface
|
|
38476
|
+
*/
|
|
38477
|
+
getStoreAnalyticsDashboard(businessId: number, options?: AxiosRequestConfig): AxiosPromise<AnalyticsDashboardResponseDto>;
|
|
38478
|
+
|
|
38479
|
+
/**
|
|
38480
|
+
* Saves the cards, in order, and the sales goals of the organisation\'s All stores view, replacing what was saved. The first save, without expectedVersion, creates it; every later one sends the version it read, and loses with 409 when someone saved since. Only the organisation\'s management may save.
|
|
38481
|
+
* @summary Replace an organisation\'s Analytics dashboard
|
|
38482
|
+
* @param {string} groupId The organisation\'s id: its group\'s accountId in the licence server
|
|
38483
|
+
* @param {SaveAnalyticsDashboardDto} saveAnalyticsDashboardDto
|
|
38484
|
+
* @param {*} [options] Override http request option.
|
|
38485
|
+
* @throws {RequiredError}
|
|
38486
|
+
* @memberof AnalyticsDashboardsApiInterface
|
|
38487
|
+
*/
|
|
38488
|
+
saveOrganisationAnalyticsDashboard(groupId: string, saveAnalyticsDashboardDto: SaveAnalyticsDashboardDto, options?: AxiosRequestConfig): AxiosPromise<AnalyticsDashboardResponseDto>;
|
|
38489
|
+
|
|
38490
|
+
/**
|
|
38491
|
+
* Saves the cards, in order, and the sales goals, replacing what was saved. The first save, without expectedVersion, creates it; every later one sends the version it read, and loses with 409 when someone saved since. Only the store\'s managers and its organisation\'s management may save, read from the licence server at each save.
|
|
38492
|
+
* @summary Replace a store\'s Analytics dashboard
|
|
38493
|
+
* @param {number} businessId The store\'s orderingBusinessId
|
|
38494
|
+
* @param {SaveAnalyticsDashboardDto} saveAnalyticsDashboardDto
|
|
38495
|
+
* @param {*} [options] Override http request option.
|
|
38496
|
+
* @throws {RequiredError}
|
|
38497
|
+
* @memberof AnalyticsDashboardsApiInterface
|
|
38498
|
+
*/
|
|
38499
|
+
saveStoreAnalyticsDashboard(businessId: number, saveAnalyticsDashboardDto: SaveAnalyticsDashboardDto, options?: AxiosRequestConfig): AxiosPromise<AnalyticsDashboardResponseDto>;
|
|
38500
|
+
|
|
38501
|
+
}
|
|
38502
|
+
|
|
38503
|
+
/**
|
|
38504
|
+
* AnalyticsDashboardsApi - object-oriented interface
|
|
38505
|
+
* @export
|
|
38506
|
+
* @class AnalyticsDashboardsApi
|
|
38507
|
+
* @extends {BaseAPI}
|
|
38508
|
+
*/
|
|
38509
|
+
export class AnalyticsDashboardsApi extends BaseAPI implements AnalyticsDashboardsApiInterface {
|
|
38510
|
+
/**
|
|
38511
|
+
* The organisation\'s saved cards and sales goals for its All stores view, shared by its management and everyone working at one of its stores. 404 when none is saved yet. Asks the licence server who the person is in the organisation on every call.
|
|
38512
|
+
* @summary Read an organisation\'s Analytics dashboard
|
|
38513
|
+
* @param {string} groupId The organisation\'s id: its group\'s accountId in the licence server
|
|
38514
|
+
* @param {*} [options] Override http request option.
|
|
38515
|
+
* @throws {RequiredError}
|
|
38516
|
+
* @memberof AnalyticsDashboardsApi
|
|
38517
|
+
*/
|
|
38518
|
+
public getOrganisationAnalyticsDashboard(groupId: string, options?: AxiosRequestConfig) {
|
|
38519
|
+
return AnalyticsDashboardsApiFp(this.configuration).getOrganisationAnalyticsDashboard(groupId, options).then((request) => request(this.axios, this.basePath));
|
|
38520
|
+
}
|
|
38521
|
+
|
|
38522
|
+
/**
|
|
38523
|
+
* The store\'s saved cards and sales goals, shared by everyone who can see the store. 404 when none is saved yet. Read from the database every time.
|
|
38524
|
+
* @summary Read a store\'s Analytics dashboard
|
|
38525
|
+
* @param {number} businessId The store\'s orderingBusinessId
|
|
38526
|
+
* @param {*} [options] Override http request option.
|
|
38527
|
+
* @throws {RequiredError}
|
|
38528
|
+
* @memberof AnalyticsDashboardsApi
|
|
38529
|
+
*/
|
|
38530
|
+
public getStoreAnalyticsDashboard(businessId: number, options?: AxiosRequestConfig) {
|
|
38531
|
+
return AnalyticsDashboardsApiFp(this.configuration).getStoreAnalyticsDashboard(businessId, options).then((request) => request(this.axios, this.basePath));
|
|
38532
|
+
}
|
|
38533
|
+
|
|
38534
|
+
/**
|
|
38535
|
+
* Saves the cards, in order, and the sales goals of the organisation\'s All stores view, replacing what was saved. The first save, without expectedVersion, creates it; every later one sends the version it read, and loses with 409 when someone saved since. Only the organisation\'s management may save.
|
|
38536
|
+
* @summary Replace an organisation\'s Analytics dashboard
|
|
38537
|
+
* @param {string} groupId The organisation\'s id: its group\'s accountId in the licence server
|
|
38538
|
+
* @param {SaveAnalyticsDashboardDto} saveAnalyticsDashboardDto
|
|
38539
|
+
* @param {*} [options] Override http request option.
|
|
38540
|
+
* @throws {RequiredError}
|
|
38541
|
+
* @memberof AnalyticsDashboardsApi
|
|
38542
|
+
*/
|
|
38543
|
+
public saveOrganisationAnalyticsDashboard(groupId: string, saveAnalyticsDashboardDto: SaveAnalyticsDashboardDto, options?: AxiosRequestConfig) {
|
|
38544
|
+
return AnalyticsDashboardsApiFp(this.configuration).saveOrganisationAnalyticsDashboard(groupId, saveAnalyticsDashboardDto, options).then((request) => request(this.axios, this.basePath));
|
|
38545
|
+
}
|
|
38546
|
+
|
|
38547
|
+
/**
|
|
38548
|
+
* Saves the cards, in order, and the sales goals, replacing what was saved. The first save, without expectedVersion, creates it; every later one sends the version it read, and loses with 409 when someone saved since. Only the store\'s managers and its organisation\'s management may save, read from the licence server at each save.
|
|
38549
|
+
* @summary Replace a store\'s Analytics dashboard
|
|
38550
|
+
* @param {number} businessId The store\'s orderingBusinessId
|
|
38551
|
+
* @param {SaveAnalyticsDashboardDto} saveAnalyticsDashboardDto
|
|
38552
|
+
* @param {*} [options] Override http request option.
|
|
38553
|
+
* @throws {RequiredError}
|
|
38554
|
+
* @memberof AnalyticsDashboardsApi
|
|
38555
|
+
*/
|
|
38556
|
+
public saveStoreAnalyticsDashboard(businessId: number, saveAnalyticsDashboardDto: SaveAnalyticsDashboardDto, options?: AxiosRequestConfig) {
|
|
38557
|
+
return AnalyticsDashboardsApiFp(this.configuration).saveStoreAnalyticsDashboard(businessId, saveAnalyticsDashboardDto, options).then((request) => request(this.axios, this.basePath));
|
|
38558
|
+
}
|
|
38559
|
+
}
|
|
38560
|
+
|
|
38561
|
+
|
|
36492
38562
|
/**
|
|
36493
38563
|
* AuthApi - axios parameter creator
|
|
36494
38564
|
* @export
|
|
@@ -36838,7 +38908,7 @@ export class AuthApi extends BaseAPI implements AuthApiInterface {
|
|
|
36838
38908
|
export const BusinessApiAxiosParamCreator = function (configuration?: Configuration) {
|
|
36839
38909
|
return {
|
|
36840
38910
|
/**
|
|
36841
|
-
* For the channel the x-app-x header names (any channel when it names none). Kept 30 days per venue and channel;
|
|
38911
|
+
* For the channel the x-app-x header names (any channel when it names none), read from Vendure\'s manual promotions. Kept 30 days per venue and channel; cleared when Vendure announces a change of the venue\'s promotions. A failed read is not kept.
|
|
36842
38912
|
* @summary Get unified discounts for all business and venue
|
|
36843
38913
|
* @param {string} businessId The venue\'s business id
|
|
36844
38914
|
* @param {*} [options] Override http request option.
|
|
@@ -37562,7 +39632,7 @@ export const BusinessApiFp = function(configuration?: Configuration) {
|
|
|
37562
39632
|
const localVarAxiosParamCreator = BusinessApiAxiosParamCreator(configuration)
|
|
37563
39633
|
return {
|
|
37564
39634
|
/**
|
|
37565
|
-
* For the channel the x-app-x header names (any channel when it names none). Kept 30 days per venue and channel;
|
|
39635
|
+
* For the channel the x-app-x header names (any channel when it names none), read from Vendure\'s manual promotions. Kept 30 days per venue and channel; cleared when Vendure announces a change of the venue\'s promotions. A failed read is not kept.
|
|
37566
39636
|
* @summary Get unified discounts for all business and venue
|
|
37567
39637
|
* @param {string} businessId The venue\'s business id
|
|
37568
39638
|
* @param {*} [options] Override http request option.
|
|
@@ -37772,7 +39842,7 @@ export const BusinessApiFactory = function (configuration?: Configuration, baseP
|
|
|
37772
39842
|
const localVarFp = BusinessApiFp(configuration)
|
|
37773
39843
|
return {
|
|
37774
39844
|
/**
|
|
37775
|
-
* For the channel the x-app-x header names (any channel when it names none). Kept 30 days per venue and channel;
|
|
39845
|
+
* For the channel the x-app-x header names (any channel when it names none), read from Vendure\'s manual promotions. Kept 30 days per venue and channel; cleared when Vendure announces a change of the venue\'s promotions. A failed read is not kept.
|
|
37776
39846
|
* @summary Get unified discounts for all business and venue
|
|
37777
39847
|
* @param {string} businessId The venue\'s business id
|
|
37778
39848
|
* @param {*} [options] Override http request option.
|
|
@@ -37964,7 +40034,7 @@ export const BusinessApiFactory = function (configuration?: Configuration, baseP
|
|
|
37964
40034
|
*/
|
|
37965
40035
|
export interface BusinessApiInterface {
|
|
37966
40036
|
/**
|
|
37967
|
-
* For the channel the x-app-x header names (any channel when it names none). Kept 30 days per venue and channel;
|
|
40037
|
+
* For the channel the x-app-x header names (any channel when it names none), read from Vendure\'s manual promotions. Kept 30 days per venue and channel; cleared when Vendure announces a change of the venue\'s promotions. A failed read is not kept.
|
|
37968
40038
|
* @summary Get unified discounts for all business and venue
|
|
37969
40039
|
* @param {string} businessId The venue\'s business id
|
|
37970
40040
|
* @param {*} [options] Override http request option.
|
|
@@ -38156,7 +40226,7 @@ export interface BusinessApiInterface {
|
|
|
38156
40226
|
*/
|
|
38157
40227
|
export class BusinessApi extends BaseAPI implements BusinessApiInterface {
|
|
38158
40228
|
/**
|
|
38159
|
-
* For the channel the x-app-x header names (any channel when it names none). Kept 30 days per venue and channel;
|
|
40229
|
+
* For the channel the x-app-x header names (any channel when it names none), read from Vendure\'s manual promotions. Kept 30 days per venue and channel; cleared when Vendure announces a change of the venue\'s promotions. A failed read is not kept.
|
|
38160
40230
|
* @summary Get unified discounts for all business and venue
|
|
38161
40231
|
* @param {string} businessId The venue\'s business id
|
|
38162
40232
|
* @param {*} [options] Override http request option.
|
|
@@ -44844,7 +46914,7 @@ export const HistoryApiAxiosParamCreator = function (configuration?: Configurati
|
|
|
44844
46914
|
};
|
|
44845
46915
|
},
|
|
44846
46916
|
/**
|
|
44847
|
-
* The same answer as GET history/orders/pos, for a service holding the service key.
|
|
46917
|
+
* The same answer as GET history/orders/pos, for a service holding the service key. A store\'s owner signed in for Ari (D152) reads it too, only for the venues where they are org:owner.
|
|
44848
46918
|
* @summary POS order history of the first venue named, for munchi-dashboard-server
|
|
44849
46919
|
* @param {Array<number>} businessIds The venues asked about, by business id
|
|
44850
46920
|
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
@@ -44985,7 +47055,7 @@ export const HistoryApiFp = function(configuration?: Configuration) {
|
|
|
44985
47055
|
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
|
|
44986
47056
|
},
|
|
44987
47057
|
/**
|
|
44988
|
-
* The same answer as GET history/orders/pos, for a service holding the service key.
|
|
47058
|
+
* The same answer as GET history/orders/pos, for a service holding the service key. A store\'s owner signed in for Ari (D152) reads it too, only for the venues where they are org:owner.
|
|
44989
47059
|
* @summary POS order history of the first venue named, for munchi-dashboard-server
|
|
44990
47060
|
* @param {Array<number>} businessIds The venues asked about, by business id
|
|
44991
47061
|
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
@@ -45043,7 +47113,7 @@ export const HistoryApiFactory = function (configuration?: Configuration, basePa
|
|
|
45043
47113
|
return localVarFp.getOrderHistoryPOSV5(businessIds, timeSpan, start, end, page, rowPerPage, provider, paymentType, orderStatus, paymentStatus, orderType, paymentTypePos, invoiceCompanyId, timezone, options).then((request) => request(axios, basePath));
|
|
45044
47114
|
},
|
|
45045
47115
|
/**
|
|
45046
|
-
* The same answer as GET history/orders/pos, for a service holding the service key.
|
|
47116
|
+
* The same answer as GET history/orders/pos, for a service holding the service key. A store\'s owner signed in for Ari (D152) reads it too, only for the venues where they are org:owner.
|
|
45047
47117
|
* @summary POS order history of the first venue named, for munchi-dashboard-server
|
|
45048
47118
|
* @param {Array<number>} businessIds The venues asked about, by business id
|
|
45049
47119
|
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
@@ -45099,7 +47169,7 @@ export interface HistoryApiInterface {
|
|
|
45099
47169
|
getOrderHistoryPOSV5(businessIds: Array<number>, timeSpan?: TimeSpan, start?: string, end?: string, page?: number, rowPerPage?: number, provider?: Array<ProviderEnum>, paymentType?: Array<PaymentTypeEnum>, orderStatus?: Array<OrderStatusEnum>, paymentStatus?: Array<PaymentStatus>, orderType?: Array<OrderType>, paymentTypePos?: Array<PaymentMethod>, invoiceCompanyId?: string, timezone?: string, options?: AxiosRequestConfig): AxiosPromise<OrderHistoryPosResponseDtoV2>;
|
|
45100
47170
|
|
|
45101
47171
|
/**
|
|
45102
|
-
* The same answer as GET history/orders/pos, for a service holding the service key.
|
|
47172
|
+
* The same answer as GET history/orders/pos, for a service holding the service key. A store\'s owner signed in for Ari (D152) reads it too, only for the venues where they are org:owner.
|
|
45103
47173
|
* @summary POS order history of the first venue named, for munchi-dashboard-server
|
|
45104
47174
|
* @param {Array<number>} businessIds The venues asked about, by business id
|
|
45105
47175
|
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
@@ -45157,7 +47227,7 @@ export class HistoryApi extends BaseAPI implements HistoryApiInterface {
|
|
|
45157
47227
|
}
|
|
45158
47228
|
|
|
45159
47229
|
/**
|
|
45160
|
-
* The same answer as GET history/orders/pos, for a service holding the service key.
|
|
47230
|
+
* The same answer as GET history/orders/pos, for a service holding the service key. A store\'s owner signed in for Ari (D152) reads it too, only for the venues where they are org:owner.
|
|
45161
47231
|
* @summary POS order history of the first venue named, for munchi-dashboard-server
|
|
45162
47232
|
* @param {Array<number>} businessIds The venues asked about, by business id
|
|
45163
47233
|
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
@@ -45190,7 +47260,7 @@ export class HistoryApi extends BaseAPI implements HistoryApiInterface {
|
|
|
45190
47260
|
export const HistoryV6ApiAxiosParamCreator = function (configuration?: Configuration) {
|
|
45191
47261
|
return {
|
|
45192
47262
|
/**
|
|
45193
|
-
* The same answer as v1 GET history/internal/orders, which it replaces for munchi-dashboard-server, for a service holding the service key. Nothing is narrowed to a person.
|
|
47263
|
+
* The same answer as v1 GET history/internal/orders, which it replaces for munchi-dashboard-server, for a service holding the service key. Nothing is narrowed to a person. A store\'s owner signed in for Ari (D152) reads it too, only for the venues where they are org:owner.
|
|
45194
47264
|
* @summary Online order history of the venues, for munchi-dashboard-server
|
|
45195
47265
|
* @param {Array<number>} businessIds The venues asked about, by business id
|
|
45196
47266
|
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
@@ -45514,7 +47584,7 @@ export const HistoryV6ApiFp = function(configuration?: Configuration) {
|
|
|
45514
47584
|
const localVarAxiosParamCreator = HistoryV6ApiAxiosParamCreator(configuration)
|
|
45515
47585
|
return {
|
|
45516
47586
|
/**
|
|
45517
|
-
* The same answer as v1 GET history/internal/orders, which it replaces for munchi-dashboard-server, for a service holding the service key. Nothing is narrowed to a person.
|
|
47587
|
+
* The same answer as v1 GET history/internal/orders, which it replaces for munchi-dashboard-server, for a service holding the service key. Nothing is narrowed to a person. A store\'s owner signed in for Ari (D152) reads it too, only for the venues where they are org:owner.
|
|
45518
47588
|
* @summary Online order history of the venues, for munchi-dashboard-server
|
|
45519
47589
|
* @param {Array<number>} businessIds The venues asked about, by business id
|
|
45520
47590
|
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
@@ -45596,7 +47666,7 @@ export const HistoryV6ApiFactory = function (configuration?: Configuration, base
|
|
|
45596
47666
|
const localVarFp = HistoryV6ApiFp(configuration)
|
|
45597
47667
|
return {
|
|
45598
47668
|
/**
|
|
45599
|
-
* The same answer as v1 GET history/internal/orders, which it replaces for munchi-dashboard-server, for a service holding the service key. Nothing is narrowed to a person.
|
|
47669
|
+
* The same answer as v1 GET history/internal/orders, which it replaces for munchi-dashboard-server, for a service holding the service key. Nothing is narrowed to a person. A store\'s owner signed in for Ari (D152) reads it too, only for the venues where they are org:owner.
|
|
45600
47670
|
* @summary Online order history of the venues, for munchi-dashboard-server
|
|
45601
47671
|
* @param {Array<number>} businessIds The venues asked about, by business id
|
|
45602
47672
|
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
@@ -45674,7 +47744,7 @@ export const HistoryV6ApiFactory = function (configuration?: Configuration, base
|
|
|
45674
47744
|
*/
|
|
45675
47745
|
export interface HistoryV6ApiInterface {
|
|
45676
47746
|
/**
|
|
45677
|
-
* The same answer as v1 GET history/internal/orders, which it replaces for munchi-dashboard-server, for a service holding the service key. Nothing is narrowed to a person.
|
|
47747
|
+
* The same answer as v1 GET history/internal/orders, which it replaces for munchi-dashboard-server, for a service holding the service key. Nothing is narrowed to a person. A store\'s owner signed in for Ari (D152) reads it too, only for the venues where they are org:owner.
|
|
45678
47748
|
* @summary Online order history of the venues, for munchi-dashboard-server
|
|
45679
47749
|
* @param {Array<number>} businessIds The venues asked about, by business id
|
|
45680
47750
|
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
@@ -45752,7 +47822,7 @@ export interface HistoryV6ApiInterface {
|
|
|
45752
47822
|
*/
|
|
45753
47823
|
export class HistoryV6Api extends BaseAPI implements HistoryV6ApiInterface {
|
|
45754
47824
|
/**
|
|
45755
|
-
* The same answer as v1 GET history/internal/orders, which it replaces for munchi-dashboard-server, for a service holding the service key. Nothing is narrowed to a person.
|
|
47825
|
+
* The same answer as v1 GET history/internal/orders, which it replaces for munchi-dashboard-server, for a service holding the service key. Nothing is narrowed to a person. A store\'s owner signed in for Ari (D152) reads it too, only for the venues where they are org:owner.
|
|
45756
47826
|
* @summary Online order history of the venues, for munchi-dashboard-server
|
|
45757
47827
|
* @param {Array<number>} businessIds The venues asked about, by business id
|
|
45758
47828
|
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
@@ -48810,7 +50880,7 @@ export const MCPApiAxiosParamCreator = function (configuration?: Configuration)
|
|
|
48810
50880
|
};
|
|
48811
50881
|
},
|
|
48812
50882
|
/**
|
|
48813
|
-
* One JSON-RPC message of the Model Context Protocol: initialize, tools/list or tools/call. Each tool calls super-server\'s own REST route with the caller\'s own
|
|
50883
|
+
* One JSON-RPC message of the Model Context Protocol: initialize, tools/list or tools/call. Each tool calls super-server\'s own REST route with the caller\'s own credential, so that route\'s guard and logs decide as for a direct call. A person signed in for Ari with their own Clerk token sees only the read tools, at the stores where they are `org:owner` (D152). A tool\'s answer never carries a credential. Connect with `claude mcp add --transport http munchi-super <host>/api/v1/mcp --header \"Authorization: Bearer ak_…\"` (D137).
|
|
48814
50884
|
* @summary The MCP server for Munchi ops (Streamable HTTP, stateless)
|
|
48815
50885
|
* @param {object} body A JSON-RPC 2.0 message
|
|
48816
50886
|
* @param {*} [options] Override http request option.
|
|
@@ -48880,7 +50950,7 @@ export const MCPApiFp = function(configuration?: Configuration) {
|
|
|
48880
50950
|
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
|
|
48881
50951
|
},
|
|
48882
50952
|
/**
|
|
48883
|
-
* One JSON-RPC message of the Model Context Protocol: initialize, tools/list or tools/call. Each tool calls super-server\'s own REST route with the caller\'s own
|
|
50953
|
+
* One JSON-RPC message of the Model Context Protocol: initialize, tools/list or tools/call. Each tool calls super-server\'s own REST route with the caller\'s own credential, so that route\'s guard and logs decide as for a direct call. A person signed in for Ari with their own Clerk token sees only the read tools, at the stores where they are `org:owner` (D152). A tool\'s answer never carries a credential. Connect with `claude mcp add --transport http munchi-super <host>/api/v1/mcp --header \"Authorization: Bearer ak_…\"` (D137).
|
|
48884
50954
|
* @summary The MCP server for Munchi ops (Streamable HTTP, stateless)
|
|
48885
50955
|
* @param {object} body A JSON-RPC 2.0 message
|
|
48886
50956
|
* @param {*} [options] Override http request option.
|
|
@@ -48919,7 +50989,7 @@ export const MCPApiFactory = function (configuration?: Configuration, basePath?:
|
|
|
48919
50989
|
return localVarFp.refuseStream(options).then((request) => request(axios, basePath));
|
|
48920
50990
|
},
|
|
48921
50991
|
/**
|
|
48922
|
-
* One JSON-RPC message of the Model Context Protocol: initialize, tools/list or tools/call. Each tool calls super-server\'s own REST route with the caller\'s own
|
|
50992
|
+
* One JSON-RPC message of the Model Context Protocol: initialize, tools/list or tools/call. Each tool calls super-server\'s own REST route with the caller\'s own credential, so that route\'s guard and logs decide as for a direct call. A person signed in for Ari with their own Clerk token sees only the read tools, at the stores where they are `org:owner` (D152). A tool\'s answer never carries a credential. Connect with `claude mcp add --transport http munchi-super <host>/api/v1/mcp --header \"Authorization: Bearer ak_…\"` (D137).
|
|
48923
50993
|
* @summary The MCP server for Munchi ops (Streamable HTTP, stateless)
|
|
48924
50994
|
* @param {object} body A JSON-RPC 2.0 message
|
|
48925
50995
|
* @param {*} [options] Override http request option.
|
|
@@ -48956,7 +51026,7 @@ export interface MCPApiInterface {
|
|
|
48956
51026
|
refuseStream(options?: AxiosRequestConfig): AxiosPromise<void>;
|
|
48957
51027
|
|
|
48958
51028
|
/**
|
|
48959
|
-
* One JSON-RPC message of the Model Context Protocol: initialize, tools/list or tools/call. Each tool calls super-server\'s own REST route with the caller\'s own
|
|
51029
|
+
* One JSON-RPC message of the Model Context Protocol: initialize, tools/list or tools/call. Each tool calls super-server\'s own REST route with the caller\'s own credential, so that route\'s guard and logs decide as for a direct call. A person signed in for Ari with their own Clerk token sees only the read tools, at the stores where they are `org:owner` (D152). A tool\'s answer never carries a credential. Connect with `claude mcp add --transport http munchi-super <host>/api/v1/mcp --header \"Authorization: Bearer ak_…\"` (D137).
|
|
48960
51030
|
* @summary The MCP server for Munchi ops (Streamable HTTP, stateless)
|
|
48961
51031
|
* @param {object} body A JSON-RPC 2.0 message
|
|
48962
51032
|
* @param {*} [options] Override http request option.
|
|
@@ -48997,7 +51067,7 @@ export class MCPApi extends BaseAPI implements MCPApiInterface {
|
|
|
48997
51067
|
}
|
|
48998
51068
|
|
|
48999
51069
|
/**
|
|
49000
|
-
* One JSON-RPC message of the Model Context Protocol: initialize, tools/list or tools/call. Each tool calls super-server\'s own REST route with the caller\'s own
|
|
51070
|
+
* One JSON-RPC message of the Model Context Protocol: initialize, tools/list or tools/call. Each tool calls super-server\'s own REST route with the caller\'s own credential, so that route\'s guard and logs decide as for a direct call. A person signed in for Ari with their own Clerk token sees only the read tools, at the stores where they are `org:owner` (D152). A tool\'s answer never carries a credential. Connect with `claude mcp add --transport http munchi-super <host>/api/v1/mcp --header \"Authorization: Bearer ak_…\"` (D137).
|
|
49001
51071
|
* @summary The MCP server for Munchi ops (Streamable HTTP, stateless)
|
|
49002
51072
|
* @param {object} body A JSON-RPC 2.0 message
|
|
49003
51073
|
* @param {*} [options] Override http request option.
|
|
@@ -50364,7 +52434,7 @@ export class OrderCompletionApi extends BaseAPI implements OrderCompletionApiInt
|
|
|
50364
52434
|
export const OrderInternalApiAxiosParamCreator = function (configuration?: Configuration) {
|
|
50365
52435
|
return {
|
|
50366
52436
|
/**
|
|
50367
|
-
* kds-service reads one platform order from Postgres, whole, with the shared service key in x-api-key or as a Bearer token.
|
|
52437
|
+
* kds-service reads one platform order from Postgres, whole, with the shared service key in x-api-key or as a Bearer token. A store\'s owner signed in for Ari (D152) reads an order of a store they are org:owner of.
|
|
50368
52438
|
* @summary Get order data by external ID for internal microservice communication
|
|
50369
52439
|
* @param {string} externalId The order\'s id on its channel (Order.externalId): the id Wolt, Foodora, Bolt or Uber Eats gave it, or the id our own channels gave it
|
|
50370
52440
|
* @param {*} [options] Override http request option.
|
|
@@ -50408,7 +52478,7 @@ export const OrderInternalApiFp = function(configuration?: Configuration) {
|
|
|
50408
52478
|
const localVarAxiosParamCreator = OrderInternalApiAxiosParamCreator(configuration)
|
|
50409
52479
|
return {
|
|
50410
52480
|
/**
|
|
50411
|
-
* kds-service reads one platform order from Postgres, whole, with the shared service key in x-api-key or as a Bearer token.
|
|
52481
|
+
* kds-service reads one platform order from Postgres, whole, with the shared service key in x-api-key or as a Bearer token. A store\'s owner signed in for Ari (D152) reads an order of a store they are org:owner of.
|
|
50412
52482
|
* @summary Get order data by external ID for internal microservice communication
|
|
50413
52483
|
* @param {string} externalId The order\'s id on its channel (Order.externalId): the id Wolt, Foodora, Bolt or Uber Eats gave it, or the id our own channels gave it
|
|
50414
52484
|
* @param {*} [options] Override http request option.
|
|
@@ -50429,7 +52499,7 @@ export const OrderInternalApiFactory = function (configuration?: Configuration,
|
|
|
50429
52499
|
const localVarFp = OrderInternalApiFp(configuration)
|
|
50430
52500
|
return {
|
|
50431
52501
|
/**
|
|
50432
|
-
* kds-service reads one platform order from Postgres, whole, with the shared service key in x-api-key or as a Bearer token.
|
|
52502
|
+
* kds-service reads one platform order from Postgres, whole, with the shared service key in x-api-key or as a Bearer token. A store\'s owner signed in for Ari (D152) reads an order of a store they are org:owner of.
|
|
50433
52503
|
* @summary Get order data by external ID for internal microservice communication
|
|
50434
52504
|
* @param {string} externalId The order\'s id on its channel (Order.externalId): the id Wolt, Foodora, Bolt or Uber Eats gave it, or the id our own channels gave it
|
|
50435
52505
|
* @param {*} [options] Override http request option.
|
|
@@ -50448,7 +52518,7 @@ export const OrderInternalApiFactory = function (configuration?: Configuration,
|
|
|
50448
52518
|
*/
|
|
50449
52519
|
export interface OrderInternalApiInterface {
|
|
50450
52520
|
/**
|
|
50451
|
-
* kds-service reads one platform order from Postgres, whole, with the shared service key in x-api-key or as a Bearer token.
|
|
52521
|
+
* kds-service reads one platform order from Postgres, whole, with the shared service key in x-api-key or as a Bearer token. A store\'s owner signed in for Ari (D152) reads an order of a store they are org:owner of.
|
|
50452
52522
|
* @summary Get order data by external ID for internal microservice communication
|
|
50453
52523
|
* @param {string} externalId The order\'s id on its channel (Order.externalId): the id Wolt, Foodora, Bolt or Uber Eats gave it, or the id our own channels gave it
|
|
50454
52524
|
* @param {*} [options] Override http request option.
|
|
@@ -50467,7 +52537,7 @@ export interface OrderInternalApiInterface {
|
|
|
50467
52537
|
*/
|
|
50468
52538
|
export class OrderInternalApi extends BaseAPI implements OrderInternalApiInterface {
|
|
50469
52539
|
/**
|
|
50470
|
-
* kds-service reads one platform order from Postgres, whole, with the shared service key in x-api-key or as a Bearer token.
|
|
52540
|
+
* kds-service reads one platform order from Postgres, whole, with the shared service key in x-api-key or as a Bearer token. A store\'s owner signed in for Ari (D152) reads an order of a store they are org:owner of.
|
|
50471
52541
|
* @summary Get order data by external ID for internal microservice communication
|
|
50472
52542
|
* @param {string} externalId The order\'s id on its channel (Order.externalId): the id Wolt, Foodora, Bolt or Uber Eats gave it, or the id our own channels gave it
|
|
50473
52543
|
* @param {*} [options] Override http request option.
|
|
@@ -57216,66 +59286,22 @@ export class ProductApi extends BaseAPI implements ProductApiInterface {
|
|
|
57216
59286
|
|
|
57217
59287
|
|
|
57218
59288
|
/**
|
|
57219
|
-
*
|
|
59289
|
+
* PromotionsApi - axios parameter creator
|
|
57220
59290
|
* @export
|
|
57221
59291
|
*/
|
|
57222
|
-
export const
|
|
59292
|
+
export const PromotionsApiAxiosParamCreator = function (configuration?: Configuration) {
|
|
57223
59293
|
return {
|
|
57224
59294
|
/**
|
|
57225
|
-
*
|
|
57226
|
-
* @summary
|
|
57227
|
-
* @param {ProviderEnum} channel The channel to connect: UberEats, Wolt, WoltStorefront or ResQ. Any other channel is answered 400
|
|
57228
|
-
* @param {CreateOnboardingSessionDto} createOnboardingSessionDto
|
|
57229
|
-
* @param {*} [options] Override http request option.
|
|
57230
|
-
* @throws {RequiredError}
|
|
57231
|
-
*/
|
|
57232
|
-
createOnboardingSession: async (channel: ProviderEnum, createOnboardingSessionDto: CreateOnboardingSessionDto, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
|
57233
|
-
// verify required parameter 'channel' is not null or undefined
|
|
57234
|
-
assertParamExists('createOnboardingSession', 'channel', channel)
|
|
57235
|
-
// verify required parameter 'createOnboardingSessionDto' is not null or undefined
|
|
57236
|
-
assertParamExists('createOnboardingSession', 'createOnboardingSessionDto', createOnboardingSessionDto)
|
|
57237
|
-
const localVarPath = `/api/v1/provider/onboarding/{channel}/sessions`
|
|
57238
|
-
.replace(`{${"channel"}}`, encodeURIComponent(String(channel)));
|
|
57239
|
-
// use dummy base URL string because the URL constructor only accepts absolute URLs.
|
|
57240
|
-
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
|
|
57241
|
-
let baseOptions;
|
|
57242
|
-
if (configuration) {
|
|
57243
|
-
baseOptions = configuration.baseOptions;
|
|
57244
|
-
}
|
|
57245
|
-
|
|
57246
|
-
const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
|
|
57247
|
-
const localVarHeaderParameter = {} as any;
|
|
57248
|
-
const localVarQueryParameter = {} as any;
|
|
57249
|
-
|
|
57250
|
-
|
|
57251
|
-
|
|
57252
|
-
localVarHeaderParameter['Content-Type'] = 'application/json';
|
|
57253
|
-
|
|
57254
|
-
setSearchParams(localVarUrlObj, localVarQueryParameter);
|
|
57255
|
-
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
|
|
57256
|
-
localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
|
|
57257
|
-
localVarRequestOptions.data = serializeDataIfNeeded(createOnboardingSessionDto, localVarRequestOptions, configuration)
|
|
57258
|
-
|
|
57259
|
-
return {
|
|
57260
|
-
url: toPathString(localVarUrlObj),
|
|
57261
|
-
options: localVarRequestOptions,
|
|
57262
|
-
};
|
|
57263
|
-
},
|
|
57264
|
-
/**
|
|
57265
|
-
* The channel\'s service disconnects the venue, writes its provider row and announces the change; its answer is passed on as it is: Uber Eats\' disconnected store, or the message of wolt-service or resq-service.
|
|
57266
|
-
* @summary Disconnect a venue from Uber Eats, Wolt or ResQ
|
|
57267
|
-
* @param {ProviderEnum} channel The channel to connect: UberEats, Wolt, WoltStorefront or ResQ. Any other channel is answered 400
|
|
59295
|
+
* The signal that tells the till whether to price its baskets: the venue\'s automatic promotions for the POS that are running at the moment of the read. Empty: the till need not call .../promotions/price unless the order holds a coupon code. Read it again when the venue\'s DISCOUNTS sync arrives.
|
|
59296
|
+
* @summary List the venue\'s automatic promotions running now on the POS
|
|
57268
59297
|
* @param {number} businessId The venue\'s orderingBusinessId
|
|
57269
59298
|
* @param {*} [options] Override http request option.
|
|
57270
59299
|
* @throws {RequiredError}
|
|
57271
59300
|
*/
|
|
57272
|
-
|
|
57273
|
-
// verify required parameter 'channel' is not null or undefined
|
|
57274
|
-
assertParamExists('disconnectOnboarding', 'channel', channel)
|
|
59301
|
+
listAutomaticPromotions: async (businessId: number, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
|
57275
59302
|
// verify required parameter 'businessId' is not null or undefined
|
|
57276
|
-
assertParamExists('
|
|
57277
|
-
const localVarPath = `/api/
|
|
57278
|
-
.replace(`{${"channel"}}`, encodeURIComponent(String(channel)))
|
|
59303
|
+
assertParamExists('listAutomaticPromotions', 'businessId', businessId)
|
|
59304
|
+
const localVarPath = `/api/v2/venues/{businessId}/promotions/automatic`
|
|
57279
59305
|
.replace(`{${"businessId"}}`, encodeURIComponent(String(businessId)));
|
|
57280
59306
|
// use dummy base URL string because the URL constructor only accepts absolute URLs.
|
|
57281
59307
|
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
|
|
@@ -57284,10 +59310,14 @@ export const ProviderApiAxiosParamCreator = function (configuration?: Configurat
|
|
|
57284
59310
|
baseOptions = configuration.baseOptions;
|
|
57285
59311
|
}
|
|
57286
59312
|
|
|
57287
|
-
const localVarRequestOptions = { method: '
|
|
59313
|
+
const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
|
|
57288
59314
|
const localVarHeaderParameter = {} as any;
|
|
57289
59315
|
const localVarQueryParameter = {} as any;
|
|
57290
59316
|
|
|
59317
|
+
// authentication JWT-auth required
|
|
59318
|
+
// http bearer authentication required
|
|
59319
|
+
await setBearerAuthToObject(localVarHeaderParameter, configuration)
|
|
59320
|
+
|
|
57291
59321
|
|
|
57292
59322
|
|
|
57293
59323
|
setSearchParams(localVarUrlObj, localVarQueryParameter);
|
|
@@ -57300,16 +59330,438 @@ export const ProviderApiAxiosParamCreator = function (configuration?: Configurat
|
|
|
57300
59330
|
};
|
|
57301
59331
|
},
|
|
57302
59332
|
/**
|
|
57303
|
-
* The
|
|
57304
|
-
* @summary
|
|
57305
|
-
* @param {number} businessId The venue\'s orderingBusinessId
|
|
59333
|
+
* The signal that tells the kiosk whether to price its baskets: the venue\'s automatic promotions for the kiosk that are running at the moment of the read. Empty: the kiosk need not call .../promotions/price unless the order holds a coupon code.
|
|
59334
|
+
* @summary List the venue\'s automatic promotions running now on the kiosk
|
|
59335
|
+
* @param {number} businessId The venue\'s orderingBusinessId, the kiosk\'s own venue
|
|
57306
59336
|
* @param {*} [options] Override http request option.
|
|
57307
59337
|
* @throws {RequiredError}
|
|
57308
59338
|
*/
|
|
57309
|
-
|
|
59339
|
+
listKioskAutomaticPromotions: async (businessId: number, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
|
57310
59340
|
// verify required parameter 'businessId' is not null or undefined
|
|
57311
|
-
assertParamExists('
|
|
57312
|
-
const localVarPath = `/api/
|
|
59341
|
+
assertParamExists('listKioskAutomaticPromotions', 'businessId', businessId)
|
|
59342
|
+
const localVarPath = `/api/v2/kiosk/venues/{businessId}/promotions/automatic`
|
|
59343
|
+
.replace(`{${"businessId"}}`, encodeURIComponent(String(businessId)));
|
|
59344
|
+
// use dummy base URL string because the URL constructor only accepts absolute URLs.
|
|
59345
|
+
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
|
|
59346
|
+
let baseOptions;
|
|
59347
|
+
if (configuration) {
|
|
59348
|
+
baseOptions = configuration.baseOptions;
|
|
59349
|
+
}
|
|
59350
|
+
|
|
59351
|
+
const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
|
|
59352
|
+
const localVarHeaderParameter = {} as any;
|
|
59353
|
+
const localVarQueryParameter = {} as any;
|
|
59354
|
+
|
|
59355
|
+
|
|
59356
|
+
|
|
59357
|
+
setSearchParams(localVarUrlObj, localVarQueryParameter);
|
|
59358
|
+
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
|
|
59359
|
+
localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
|
|
59360
|
+
|
|
59361
|
+
return {
|
|
59362
|
+
url: toPathString(localVarUrlObj),
|
|
59363
|
+
options: localVarRequestOptions,
|
|
59364
|
+
};
|
|
59365
|
+
},
|
|
59366
|
+
/**
|
|
59367
|
+
* Vendure prices the basket as the online store prices a cart: the venue\'s automatic promotions for the POS and the order type, and the basket\'s coupon codes, and answers each discount with the money it takes off. Nothing is stored, reserved or counted. Ask only when the venue has automatic promotions running (GET .../promotions/automatic) or the order holds a coupon code, again whenever the basket changes, and keep the newest answer. Vendure not answering within 2 seconds is answered 200 with priced false and reason UNAVAILABLE.
|
|
59368
|
+
* @summary Price a till\'s basket with the venue\'s promotions
|
|
59369
|
+
* @param {number} businessId The venue\'s orderingBusinessId
|
|
59370
|
+
* @param {PriceBasketDto} priceBasketDto
|
|
59371
|
+
* @param {*} [options] Override http request option.
|
|
59372
|
+
* @throws {RequiredError}
|
|
59373
|
+
*/
|
|
59374
|
+
priceBasketWithPromotions: async (businessId: number, priceBasketDto: PriceBasketDto, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
|
59375
|
+
// verify required parameter 'businessId' is not null or undefined
|
|
59376
|
+
assertParamExists('priceBasketWithPromotions', 'businessId', businessId)
|
|
59377
|
+
// verify required parameter 'priceBasketDto' is not null or undefined
|
|
59378
|
+
assertParamExists('priceBasketWithPromotions', 'priceBasketDto', priceBasketDto)
|
|
59379
|
+
const localVarPath = `/api/v2/venues/{businessId}/promotions/price`
|
|
59380
|
+
.replace(`{${"businessId"}}`, encodeURIComponent(String(businessId)));
|
|
59381
|
+
// use dummy base URL string because the URL constructor only accepts absolute URLs.
|
|
59382
|
+
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
|
|
59383
|
+
let baseOptions;
|
|
59384
|
+
if (configuration) {
|
|
59385
|
+
baseOptions = configuration.baseOptions;
|
|
59386
|
+
}
|
|
59387
|
+
|
|
59388
|
+
const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
|
|
59389
|
+
const localVarHeaderParameter = {} as any;
|
|
59390
|
+
const localVarQueryParameter = {} as any;
|
|
59391
|
+
|
|
59392
|
+
// authentication JWT-auth required
|
|
59393
|
+
// http bearer authentication required
|
|
59394
|
+
await setBearerAuthToObject(localVarHeaderParameter, configuration)
|
|
59395
|
+
|
|
59396
|
+
|
|
59397
|
+
|
|
59398
|
+
localVarHeaderParameter['Content-Type'] = 'application/json';
|
|
59399
|
+
|
|
59400
|
+
setSearchParams(localVarUrlObj, localVarQueryParameter);
|
|
59401
|
+
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
|
|
59402
|
+
localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
|
|
59403
|
+
localVarRequestOptions.data = serializeDataIfNeeded(priceBasketDto, localVarRequestOptions, configuration)
|
|
59404
|
+
|
|
59405
|
+
return {
|
|
59406
|
+
url: toPathString(localVarUrlObj),
|
|
59407
|
+
options: localVarRequestOptions,
|
|
59408
|
+
};
|
|
59409
|
+
},
|
|
59410
|
+
/**
|
|
59411
|
+
* The kiosk\'s pricing, with the kiosk\'s key: the same pricing as the till\'s, for the kiosk app. Vendure prices the basket with the venue\'s automatic promotions and the basket\'s coupon codes and answers each discount with the money it takes off; nothing is stored, reserved or counted. Vendure not answering within 2 seconds is answered 200 with priced false and reason UNAVAILABLE.
|
|
59412
|
+
* @summary Price a kiosk\'s basket with the venue\'s promotions
|
|
59413
|
+
* @param {number} businessId The venue\'s orderingBusinessId, the kiosk\'s own venue
|
|
59414
|
+
* @param {PriceBasketDto} priceBasketDto
|
|
59415
|
+
* @param {*} [options] Override http request option.
|
|
59416
|
+
* @throws {RequiredError}
|
|
59417
|
+
*/
|
|
59418
|
+
priceKioskBasketWithPromotions: async (businessId: number, priceBasketDto: PriceBasketDto, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
|
59419
|
+
// verify required parameter 'businessId' is not null or undefined
|
|
59420
|
+
assertParamExists('priceKioskBasketWithPromotions', 'businessId', businessId)
|
|
59421
|
+
// verify required parameter 'priceBasketDto' is not null or undefined
|
|
59422
|
+
assertParamExists('priceKioskBasketWithPromotions', 'priceBasketDto', priceBasketDto)
|
|
59423
|
+
const localVarPath = `/api/v2/kiosk/venues/{businessId}/promotions/price`
|
|
59424
|
+
.replace(`{${"businessId"}}`, encodeURIComponent(String(businessId)));
|
|
59425
|
+
// use dummy base URL string because the URL constructor only accepts absolute URLs.
|
|
59426
|
+
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
|
|
59427
|
+
let baseOptions;
|
|
59428
|
+
if (configuration) {
|
|
59429
|
+
baseOptions = configuration.baseOptions;
|
|
59430
|
+
}
|
|
59431
|
+
|
|
59432
|
+
const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
|
|
59433
|
+
const localVarHeaderParameter = {} as any;
|
|
59434
|
+
const localVarQueryParameter = {} as any;
|
|
59435
|
+
|
|
59436
|
+
|
|
59437
|
+
|
|
59438
|
+
localVarHeaderParameter['Content-Type'] = 'application/json';
|
|
59439
|
+
|
|
59440
|
+
setSearchParams(localVarUrlObj, localVarQueryParameter);
|
|
59441
|
+
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
|
|
59442
|
+
localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
|
|
59443
|
+
localVarRequestOptions.data = serializeDataIfNeeded(priceBasketDto, localVarRequestOptions, configuration)
|
|
59444
|
+
|
|
59445
|
+
return {
|
|
59446
|
+
url: toPathString(localVarUrlObj),
|
|
59447
|
+
options: localVarRequestOptions,
|
|
59448
|
+
};
|
|
59449
|
+
},
|
|
59450
|
+
}
|
|
59451
|
+
};
|
|
59452
|
+
|
|
59453
|
+
/**
|
|
59454
|
+
* PromotionsApi - functional programming interface
|
|
59455
|
+
* @export
|
|
59456
|
+
*/
|
|
59457
|
+
export const PromotionsApiFp = function(configuration?: Configuration) {
|
|
59458
|
+
const localVarAxiosParamCreator = PromotionsApiAxiosParamCreator(configuration)
|
|
59459
|
+
return {
|
|
59460
|
+
/**
|
|
59461
|
+
* The signal that tells the till whether to price its baskets: the venue\'s automatic promotions for the POS that are running at the moment of the read. Empty: the till need not call .../promotions/price unless the order holds a coupon code. Read it again when the venue\'s DISCOUNTS sync arrives.
|
|
59462
|
+
* @summary List the venue\'s automatic promotions running now on the POS
|
|
59463
|
+
* @param {number} businessId The venue\'s orderingBusinessId
|
|
59464
|
+
* @param {*} [options] Override http request option.
|
|
59465
|
+
* @throws {RequiredError}
|
|
59466
|
+
*/
|
|
59467
|
+
async listAutomaticPromotions(businessId: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AutomaticPromotionsAnswerDto>> {
|
|
59468
|
+
const localVarAxiosArgs = await localVarAxiosParamCreator.listAutomaticPromotions(businessId, options);
|
|
59469
|
+
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
|
|
59470
|
+
},
|
|
59471
|
+
/**
|
|
59472
|
+
* The signal that tells the kiosk whether to price its baskets: the venue\'s automatic promotions for the kiosk that are running at the moment of the read. Empty: the kiosk need not call .../promotions/price unless the order holds a coupon code.
|
|
59473
|
+
* @summary List the venue\'s automatic promotions running now on the kiosk
|
|
59474
|
+
* @param {number} businessId The venue\'s orderingBusinessId, the kiosk\'s own venue
|
|
59475
|
+
* @param {*} [options] Override http request option.
|
|
59476
|
+
* @throws {RequiredError}
|
|
59477
|
+
*/
|
|
59478
|
+
async listKioskAutomaticPromotions(businessId: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AutomaticPromotionsAnswerDto>> {
|
|
59479
|
+
const localVarAxiosArgs = await localVarAxiosParamCreator.listKioskAutomaticPromotions(businessId, options);
|
|
59480
|
+
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
|
|
59481
|
+
},
|
|
59482
|
+
/**
|
|
59483
|
+
* Vendure prices the basket as the online store prices a cart: the venue\'s automatic promotions for the POS and the order type, and the basket\'s coupon codes, and answers each discount with the money it takes off. Nothing is stored, reserved or counted. Ask only when the venue has automatic promotions running (GET .../promotions/automatic) or the order holds a coupon code, again whenever the basket changes, and keep the newest answer. Vendure not answering within 2 seconds is answered 200 with priced false and reason UNAVAILABLE.
|
|
59484
|
+
* @summary Price a till\'s basket with the venue\'s promotions
|
|
59485
|
+
* @param {number} businessId The venue\'s orderingBusinessId
|
|
59486
|
+
* @param {PriceBasketDto} priceBasketDto
|
|
59487
|
+
* @param {*} [options] Override http request option.
|
|
59488
|
+
* @throws {RequiredError}
|
|
59489
|
+
*/
|
|
59490
|
+
async priceBasketWithPromotions(businessId: number, priceBasketDto: PriceBasketDto, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<PriceBasketAnswerDto>> {
|
|
59491
|
+
const localVarAxiosArgs = await localVarAxiosParamCreator.priceBasketWithPromotions(businessId, priceBasketDto, options);
|
|
59492
|
+
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
|
|
59493
|
+
},
|
|
59494
|
+
/**
|
|
59495
|
+
* The kiosk\'s pricing, with the kiosk\'s key: the same pricing as the till\'s, for the kiosk app. Vendure prices the basket with the venue\'s automatic promotions and the basket\'s coupon codes and answers each discount with the money it takes off; nothing is stored, reserved or counted. Vendure not answering within 2 seconds is answered 200 with priced false and reason UNAVAILABLE.
|
|
59496
|
+
* @summary Price a kiosk\'s basket with the venue\'s promotions
|
|
59497
|
+
* @param {number} businessId The venue\'s orderingBusinessId, the kiosk\'s own venue
|
|
59498
|
+
* @param {PriceBasketDto} priceBasketDto
|
|
59499
|
+
* @param {*} [options] Override http request option.
|
|
59500
|
+
* @throws {RequiredError}
|
|
59501
|
+
*/
|
|
59502
|
+
async priceKioskBasketWithPromotions(businessId: number, priceBasketDto: PriceBasketDto, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<PriceBasketAnswerDto>> {
|
|
59503
|
+
const localVarAxiosArgs = await localVarAxiosParamCreator.priceKioskBasketWithPromotions(businessId, priceBasketDto, options);
|
|
59504
|
+
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
|
|
59505
|
+
},
|
|
59506
|
+
}
|
|
59507
|
+
};
|
|
59508
|
+
|
|
59509
|
+
/**
|
|
59510
|
+
* PromotionsApi - factory interface
|
|
59511
|
+
* @export
|
|
59512
|
+
*/
|
|
59513
|
+
export const PromotionsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {
|
|
59514
|
+
const localVarFp = PromotionsApiFp(configuration)
|
|
59515
|
+
return {
|
|
59516
|
+
/**
|
|
59517
|
+
* The signal that tells the till whether to price its baskets: the venue\'s automatic promotions for the POS that are running at the moment of the read. Empty: the till need not call .../promotions/price unless the order holds a coupon code. Read it again when the venue\'s DISCOUNTS sync arrives.
|
|
59518
|
+
* @summary List the venue\'s automatic promotions running now on the POS
|
|
59519
|
+
* @param {number} businessId The venue\'s orderingBusinessId
|
|
59520
|
+
* @param {*} [options] Override http request option.
|
|
59521
|
+
* @throws {RequiredError}
|
|
59522
|
+
*/
|
|
59523
|
+
listAutomaticPromotions(businessId: number, options?: any): AxiosPromise<AutomaticPromotionsAnswerDto> {
|
|
59524
|
+
return localVarFp.listAutomaticPromotions(businessId, options).then((request) => request(axios, basePath));
|
|
59525
|
+
},
|
|
59526
|
+
/**
|
|
59527
|
+
* The signal that tells the kiosk whether to price its baskets: the venue\'s automatic promotions for the kiosk that are running at the moment of the read. Empty: the kiosk need not call .../promotions/price unless the order holds a coupon code.
|
|
59528
|
+
* @summary List the venue\'s automatic promotions running now on the kiosk
|
|
59529
|
+
* @param {number} businessId The venue\'s orderingBusinessId, the kiosk\'s own venue
|
|
59530
|
+
* @param {*} [options] Override http request option.
|
|
59531
|
+
* @throws {RequiredError}
|
|
59532
|
+
*/
|
|
59533
|
+
listKioskAutomaticPromotions(businessId: number, options?: any): AxiosPromise<AutomaticPromotionsAnswerDto> {
|
|
59534
|
+
return localVarFp.listKioskAutomaticPromotions(businessId, options).then((request) => request(axios, basePath));
|
|
59535
|
+
},
|
|
59536
|
+
/**
|
|
59537
|
+
* Vendure prices the basket as the online store prices a cart: the venue\'s automatic promotions for the POS and the order type, and the basket\'s coupon codes, and answers each discount with the money it takes off. Nothing is stored, reserved or counted. Ask only when the venue has automatic promotions running (GET .../promotions/automatic) or the order holds a coupon code, again whenever the basket changes, and keep the newest answer. Vendure not answering within 2 seconds is answered 200 with priced false and reason UNAVAILABLE.
|
|
59538
|
+
* @summary Price a till\'s basket with the venue\'s promotions
|
|
59539
|
+
* @param {number} businessId The venue\'s orderingBusinessId
|
|
59540
|
+
* @param {PriceBasketDto} priceBasketDto
|
|
59541
|
+
* @param {*} [options] Override http request option.
|
|
59542
|
+
* @throws {RequiredError}
|
|
59543
|
+
*/
|
|
59544
|
+
priceBasketWithPromotions(businessId: number, priceBasketDto: PriceBasketDto, options?: any): AxiosPromise<PriceBasketAnswerDto> {
|
|
59545
|
+
return localVarFp.priceBasketWithPromotions(businessId, priceBasketDto, options).then((request) => request(axios, basePath));
|
|
59546
|
+
},
|
|
59547
|
+
/**
|
|
59548
|
+
* The kiosk\'s pricing, with the kiosk\'s key: the same pricing as the till\'s, for the kiosk app. Vendure prices the basket with the venue\'s automatic promotions and the basket\'s coupon codes and answers each discount with the money it takes off; nothing is stored, reserved or counted. Vendure not answering within 2 seconds is answered 200 with priced false and reason UNAVAILABLE.
|
|
59549
|
+
* @summary Price a kiosk\'s basket with the venue\'s promotions
|
|
59550
|
+
* @param {number} businessId The venue\'s orderingBusinessId, the kiosk\'s own venue
|
|
59551
|
+
* @param {PriceBasketDto} priceBasketDto
|
|
59552
|
+
* @param {*} [options] Override http request option.
|
|
59553
|
+
* @throws {RequiredError}
|
|
59554
|
+
*/
|
|
59555
|
+
priceKioskBasketWithPromotions(businessId: number, priceBasketDto: PriceBasketDto, options?: any): AxiosPromise<PriceBasketAnswerDto> {
|
|
59556
|
+
return localVarFp.priceKioskBasketWithPromotions(businessId, priceBasketDto, options).then((request) => request(axios, basePath));
|
|
59557
|
+
},
|
|
59558
|
+
};
|
|
59559
|
+
};
|
|
59560
|
+
|
|
59561
|
+
/**
|
|
59562
|
+
* PromotionsApi - interface
|
|
59563
|
+
* @export
|
|
59564
|
+
* @interface PromotionsApi
|
|
59565
|
+
*/
|
|
59566
|
+
export interface PromotionsApiInterface {
|
|
59567
|
+
/**
|
|
59568
|
+
* The signal that tells the till whether to price its baskets: the venue\'s automatic promotions for the POS that are running at the moment of the read. Empty: the till need not call .../promotions/price unless the order holds a coupon code. Read it again when the venue\'s DISCOUNTS sync arrives.
|
|
59569
|
+
* @summary List the venue\'s automatic promotions running now on the POS
|
|
59570
|
+
* @param {number} businessId The venue\'s orderingBusinessId
|
|
59571
|
+
* @param {*} [options] Override http request option.
|
|
59572
|
+
* @throws {RequiredError}
|
|
59573
|
+
* @memberof PromotionsApiInterface
|
|
59574
|
+
*/
|
|
59575
|
+
listAutomaticPromotions(businessId: number, options?: AxiosRequestConfig): AxiosPromise<AutomaticPromotionsAnswerDto>;
|
|
59576
|
+
|
|
59577
|
+
/**
|
|
59578
|
+
* The signal that tells the kiosk whether to price its baskets: the venue\'s automatic promotions for the kiosk that are running at the moment of the read. Empty: the kiosk need not call .../promotions/price unless the order holds a coupon code.
|
|
59579
|
+
* @summary List the venue\'s automatic promotions running now on the kiosk
|
|
59580
|
+
* @param {number} businessId The venue\'s orderingBusinessId, the kiosk\'s own venue
|
|
59581
|
+
* @param {*} [options] Override http request option.
|
|
59582
|
+
* @throws {RequiredError}
|
|
59583
|
+
* @memberof PromotionsApiInterface
|
|
59584
|
+
*/
|
|
59585
|
+
listKioskAutomaticPromotions(businessId: number, options?: AxiosRequestConfig): AxiosPromise<AutomaticPromotionsAnswerDto>;
|
|
59586
|
+
|
|
59587
|
+
/**
|
|
59588
|
+
* Vendure prices the basket as the online store prices a cart: the venue\'s automatic promotions for the POS and the order type, and the basket\'s coupon codes, and answers each discount with the money it takes off. Nothing is stored, reserved or counted. Ask only when the venue has automatic promotions running (GET .../promotions/automatic) or the order holds a coupon code, again whenever the basket changes, and keep the newest answer. Vendure not answering within 2 seconds is answered 200 with priced false and reason UNAVAILABLE.
|
|
59589
|
+
* @summary Price a till\'s basket with the venue\'s promotions
|
|
59590
|
+
* @param {number} businessId The venue\'s orderingBusinessId
|
|
59591
|
+
* @param {PriceBasketDto} priceBasketDto
|
|
59592
|
+
* @param {*} [options] Override http request option.
|
|
59593
|
+
* @throws {RequiredError}
|
|
59594
|
+
* @memberof PromotionsApiInterface
|
|
59595
|
+
*/
|
|
59596
|
+
priceBasketWithPromotions(businessId: number, priceBasketDto: PriceBasketDto, options?: AxiosRequestConfig): AxiosPromise<PriceBasketAnswerDto>;
|
|
59597
|
+
|
|
59598
|
+
/**
|
|
59599
|
+
* The kiosk\'s pricing, with the kiosk\'s key: the same pricing as the till\'s, for the kiosk app. Vendure prices the basket with the venue\'s automatic promotions and the basket\'s coupon codes and answers each discount with the money it takes off; nothing is stored, reserved or counted. Vendure not answering within 2 seconds is answered 200 with priced false and reason UNAVAILABLE.
|
|
59600
|
+
* @summary Price a kiosk\'s basket with the venue\'s promotions
|
|
59601
|
+
* @param {number} businessId The venue\'s orderingBusinessId, the kiosk\'s own venue
|
|
59602
|
+
* @param {PriceBasketDto} priceBasketDto
|
|
59603
|
+
* @param {*} [options] Override http request option.
|
|
59604
|
+
* @throws {RequiredError}
|
|
59605
|
+
* @memberof PromotionsApiInterface
|
|
59606
|
+
*/
|
|
59607
|
+
priceKioskBasketWithPromotions(businessId: number, priceBasketDto: PriceBasketDto, options?: AxiosRequestConfig): AxiosPromise<PriceBasketAnswerDto>;
|
|
59608
|
+
|
|
59609
|
+
}
|
|
59610
|
+
|
|
59611
|
+
/**
|
|
59612
|
+
* PromotionsApi - object-oriented interface
|
|
59613
|
+
* @export
|
|
59614
|
+
* @class PromotionsApi
|
|
59615
|
+
* @extends {BaseAPI}
|
|
59616
|
+
*/
|
|
59617
|
+
export class PromotionsApi extends BaseAPI implements PromotionsApiInterface {
|
|
59618
|
+
/**
|
|
59619
|
+
* The signal that tells the till whether to price its baskets: the venue\'s automatic promotions for the POS that are running at the moment of the read. Empty: the till need not call .../promotions/price unless the order holds a coupon code. Read it again when the venue\'s DISCOUNTS sync arrives.
|
|
59620
|
+
* @summary List the venue\'s automatic promotions running now on the POS
|
|
59621
|
+
* @param {number} businessId The venue\'s orderingBusinessId
|
|
59622
|
+
* @param {*} [options] Override http request option.
|
|
59623
|
+
* @throws {RequiredError}
|
|
59624
|
+
* @memberof PromotionsApi
|
|
59625
|
+
*/
|
|
59626
|
+
public listAutomaticPromotions(businessId: number, options?: AxiosRequestConfig) {
|
|
59627
|
+
return PromotionsApiFp(this.configuration).listAutomaticPromotions(businessId, options).then((request) => request(this.axios, this.basePath));
|
|
59628
|
+
}
|
|
59629
|
+
|
|
59630
|
+
/**
|
|
59631
|
+
* The signal that tells the kiosk whether to price its baskets: the venue\'s automatic promotions for the kiosk that are running at the moment of the read. Empty: the kiosk need not call .../promotions/price unless the order holds a coupon code.
|
|
59632
|
+
* @summary List the venue\'s automatic promotions running now on the kiosk
|
|
59633
|
+
* @param {number} businessId The venue\'s orderingBusinessId, the kiosk\'s own venue
|
|
59634
|
+
* @param {*} [options] Override http request option.
|
|
59635
|
+
* @throws {RequiredError}
|
|
59636
|
+
* @memberof PromotionsApi
|
|
59637
|
+
*/
|
|
59638
|
+
public listKioskAutomaticPromotions(businessId: number, options?: AxiosRequestConfig) {
|
|
59639
|
+
return PromotionsApiFp(this.configuration).listKioskAutomaticPromotions(businessId, options).then((request) => request(this.axios, this.basePath));
|
|
59640
|
+
}
|
|
59641
|
+
|
|
59642
|
+
/**
|
|
59643
|
+
* Vendure prices the basket as the online store prices a cart: the venue\'s automatic promotions for the POS and the order type, and the basket\'s coupon codes, and answers each discount with the money it takes off. Nothing is stored, reserved or counted. Ask only when the venue has automatic promotions running (GET .../promotions/automatic) or the order holds a coupon code, again whenever the basket changes, and keep the newest answer. Vendure not answering within 2 seconds is answered 200 with priced false and reason UNAVAILABLE.
|
|
59644
|
+
* @summary Price a till\'s basket with the venue\'s promotions
|
|
59645
|
+
* @param {number} businessId The venue\'s orderingBusinessId
|
|
59646
|
+
* @param {PriceBasketDto} priceBasketDto
|
|
59647
|
+
* @param {*} [options] Override http request option.
|
|
59648
|
+
* @throws {RequiredError}
|
|
59649
|
+
* @memberof PromotionsApi
|
|
59650
|
+
*/
|
|
59651
|
+
public priceBasketWithPromotions(businessId: number, priceBasketDto: PriceBasketDto, options?: AxiosRequestConfig) {
|
|
59652
|
+
return PromotionsApiFp(this.configuration).priceBasketWithPromotions(businessId, priceBasketDto, options).then((request) => request(this.axios, this.basePath));
|
|
59653
|
+
}
|
|
59654
|
+
|
|
59655
|
+
/**
|
|
59656
|
+
* The kiosk\'s pricing, with the kiosk\'s key: the same pricing as the till\'s, for the kiosk app. Vendure prices the basket with the venue\'s automatic promotions and the basket\'s coupon codes and answers each discount with the money it takes off; nothing is stored, reserved or counted. Vendure not answering within 2 seconds is answered 200 with priced false and reason UNAVAILABLE.
|
|
59657
|
+
* @summary Price a kiosk\'s basket with the venue\'s promotions
|
|
59658
|
+
* @param {number} businessId The venue\'s orderingBusinessId, the kiosk\'s own venue
|
|
59659
|
+
* @param {PriceBasketDto} priceBasketDto
|
|
59660
|
+
* @param {*} [options] Override http request option.
|
|
59661
|
+
* @throws {RequiredError}
|
|
59662
|
+
* @memberof PromotionsApi
|
|
59663
|
+
*/
|
|
59664
|
+
public priceKioskBasketWithPromotions(businessId: number, priceBasketDto: PriceBasketDto, options?: AxiosRequestConfig) {
|
|
59665
|
+
return PromotionsApiFp(this.configuration).priceKioskBasketWithPromotions(businessId, priceBasketDto, options).then((request) => request(this.axios, this.basePath));
|
|
59666
|
+
}
|
|
59667
|
+
}
|
|
59668
|
+
|
|
59669
|
+
|
|
59670
|
+
/**
|
|
59671
|
+
* ProviderApi - axios parameter creator
|
|
59672
|
+
* @export
|
|
59673
|
+
*/
|
|
59674
|
+
export const ProviderApiAxiosParamCreator = function (configuration?: Configuration) {
|
|
59675
|
+
return {
|
|
59676
|
+
/**
|
|
59677
|
+
* Asks the channel\'s service (ubereats-service for UberEats, wolt-service for Wolt and WoltStorefront, resq-service for ResQ) for a sign-in session and answers it as that service answered it. Nothing is written here.
|
|
59678
|
+
* @summary Start connecting a venue to Uber Eats, Wolt or ResQ
|
|
59679
|
+
* @param {ProviderEnum} channel The channel to connect: UberEats, Wolt, WoltStorefront or ResQ. Any other channel is answered 400
|
|
59680
|
+
* @param {CreateOnboardingSessionDto} createOnboardingSessionDto
|
|
59681
|
+
* @param {*} [options] Override http request option.
|
|
59682
|
+
* @throws {RequiredError}
|
|
59683
|
+
*/
|
|
59684
|
+
createOnboardingSession: async (channel: ProviderEnum, createOnboardingSessionDto: CreateOnboardingSessionDto, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
|
59685
|
+
// verify required parameter 'channel' is not null or undefined
|
|
59686
|
+
assertParamExists('createOnboardingSession', 'channel', channel)
|
|
59687
|
+
// verify required parameter 'createOnboardingSessionDto' is not null or undefined
|
|
59688
|
+
assertParamExists('createOnboardingSession', 'createOnboardingSessionDto', createOnboardingSessionDto)
|
|
59689
|
+
const localVarPath = `/api/v1/provider/onboarding/{channel}/sessions`
|
|
59690
|
+
.replace(`{${"channel"}}`, encodeURIComponent(String(channel)));
|
|
59691
|
+
// use dummy base URL string because the URL constructor only accepts absolute URLs.
|
|
59692
|
+
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
|
|
59693
|
+
let baseOptions;
|
|
59694
|
+
if (configuration) {
|
|
59695
|
+
baseOptions = configuration.baseOptions;
|
|
59696
|
+
}
|
|
59697
|
+
|
|
59698
|
+
const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
|
|
59699
|
+
const localVarHeaderParameter = {} as any;
|
|
59700
|
+
const localVarQueryParameter = {} as any;
|
|
59701
|
+
|
|
59702
|
+
|
|
59703
|
+
|
|
59704
|
+
localVarHeaderParameter['Content-Type'] = 'application/json';
|
|
59705
|
+
|
|
59706
|
+
setSearchParams(localVarUrlObj, localVarQueryParameter);
|
|
59707
|
+
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
|
|
59708
|
+
localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
|
|
59709
|
+
localVarRequestOptions.data = serializeDataIfNeeded(createOnboardingSessionDto, localVarRequestOptions, configuration)
|
|
59710
|
+
|
|
59711
|
+
return {
|
|
59712
|
+
url: toPathString(localVarUrlObj),
|
|
59713
|
+
options: localVarRequestOptions,
|
|
59714
|
+
};
|
|
59715
|
+
},
|
|
59716
|
+
/**
|
|
59717
|
+
* The channel\'s service disconnects the venue, writes its provider row and announces the change; its answer is passed on as it is: Uber Eats\' disconnected store, or the message of wolt-service or resq-service.
|
|
59718
|
+
* @summary Disconnect a venue from Uber Eats, Wolt or ResQ
|
|
59719
|
+
* @param {ProviderEnum} channel The channel to connect: UberEats, Wolt, WoltStorefront or ResQ. Any other channel is answered 400
|
|
59720
|
+
* @param {number} businessId The venue\'s orderingBusinessId
|
|
59721
|
+
* @param {*} [options] Override http request option.
|
|
59722
|
+
* @throws {RequiredError}
|
|
59723
|
+
*/
|
|
59724
|
+
disconnectOnboarding: async (channel: ProviderEnum, businessId: number, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
|
59725
|
+
// verify required parameter 'channel' is not null or undefined
|
|
59726
|
+
assertParamExists('disconnectOnboarding', 'channel', channel)
|
|
59727
|
+
// verify required parameter 'businessId' is not null or undefined
|
|
59728
|
+
assertParamExists('disconnectOnboarding', 'businessId', businessId)
|
|
59729
|
+
const localVarPath = `/api/v1/provider/onboarding/{channel}/{businessId}`
|
|
59730
|
+
.replace(`{${"channel"}}`, encodeURIComponent(String(channel)))
|
|
59731
|
+
.replace(`{${"businessId"}}`, encodeURIComponent(String(businessId)));
|
|
59732
|
+
// use dummy base URL string because the URL constructor only accepts absolute URLs.
|
|
59733
|
+
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
|
|
59734
|
+
let baseOptions;
|
|
59735
|
+
if (configuration) {
|
|
59736
|
+
baseOptions = configuration.baseOptions;
|
|
59737
|
+
}
|
|
59738
|
+
|
|
59739
|
+
const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options};
|
|
59740
|
+
const localVarHeaderParameter = {} as any;
|
|
59741
|
+
const localVarQueryParameter = {} as any;
|
|
59742
|
+
|
|
59743
|
+
|
|
59744
|
+
|
|
59745
|
+
setSearchParams(localVarUrlObj, localVarQueryParameter);
|
|
59746
|
+
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
|
|
59747
|
+
localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
|
|
59748
|
+
|
|
59749
|
+
return {
|
|
59750
|
+
url: toPathString(localVarUrlObj),
|
|
59751
|
+
options: localVarRequestOptions,
|
|
59752
|
+
};
|
|
59753
|
+
},
|
|
59754
|
+
/**
|
|
59755
|
+
* The venue\'s channels that take the menu, so the till can switch a product\'s availability on each. Kept per venue under menu-integrations:<businessId>, an empty list too, and cleared when the venue\'s providers change (SYNC_KEY.BUSINESS_PROVIDER_SUPPORTED_INTEGRATIONS).
|
|
59756
|
+
* @summary Get provider integrations (MENU) for a business
|
|
59757
|
+
* @param {number} businessId The venue\'s orderingBusinessId
|
|
59758
|
+
* @param {*} [options] Override http request option.
|
|
59759
|
+
* @throws {RequiredError}
|
|
59760
|
+
*/
|
|
59761
|
+
getMenuIntegrations: async (businessId: number, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
|
59762
|
+
// verify required parameter 'businessId' is not null or undefined
|
|
59763
|
+
assertParamExists('getMenuIntegrations', 'businessId', businessId)
|
|
59764
|
+
const localVarPath = `/api/v1/provider/integrations/{businessId}`
|
|
57313
59765
|
.replace(`{${"businessId"}}`, encodeURIComponent(String(businessId)));
|
|
57314
59766
|
// use dummy base URL string because the URL constructor only accepts absolute URLs.
|
|
57315
59767
|
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
|
|
@@ -58924,6 +61376,163 @@ export class RefundsApi extends BaseAPI implements RefundsApiInterface {
|
|
|
58924
61376
|
*/
|
|
58925
61377
|
export const ReportApiAxiosParamCreator = function (configuration?: Configuration) {
|
|
58926
61378
|
return {
|
|
61379
|
+
/**
|
|
61380
|
+
* The period GET /api/v6/report/sales would add up, for the same venues, apps, time zone and breakdown, with the same access: each group\'s pairs of base items (an item\'s own line, never an option) sold in the most orders, each order once, with every order of each item, so percentOfItemA is exact: of the orders with A, how many also had B. Each venue-day keeps its top 25 pairs (daily_item_pairs); a group whose daysWithPairsCut is not 0 answers each pair\'s orders as a lower bound. itemKey answers the pairs of one item only.
|
|
61381
|
+
* @summary Items bought together in one order, over the period
|
|
61382
|
+
* @param {Array<number>} businessIds The venues asked about, by business id
|
|
61383
|
+
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
61384
|
+
* @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
61385
|
+
* @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
61386
|
+
* @param {string} [timezone] The time zone the period is read in, IANA. Absent: the first venue\'s own (Business.timeZone)
|
|
61387
|
+
* @param {Array<ReportApp>} [apps] The apps to add up, the parameter repeated or a JSON list. Absent: all four
|
|
61388
|
+
* @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
|
|
61389
|
+
* @param {string} [language] Accepted and not read, so a request copied from the portal\'s report works: the report has no text to translate
|
|
61390
|
+
* @param {string} [itemKey] Only the pairs with this item, by its key (an item\'s itemKey of an earlier answer: the POS posId, the online product id). Absent: every pair
|
|
61391
|
+
* @param {number} [limit] How many pairs each group answers, most orders first: 1 to 100. Absent: 20
|
|
61392
|
+
* @param {*} [options] Override http request option.
|
|
61393
|
+
* @throws {RequiredError}
|
|
61394
|
+
*/
|
|
61395
|
+
getBoughtTogether: async (businessIds: Array<number>, timeSpan?: TimeSpan, start?: string, end?: string, timezone?: string, apps?: Array<ReportApp>, breakdown?: ReportBreakdown, language?: string, itemKey?: string, limit?: number, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
|
61396
|
+
// verify required parameter 'businessIds' is not null or undefined
|
|
61397
|
+
assertParamExists('getBoughtTogether', 'businessIds', businessIds)
|
|
61398
|
+
const localVarPath = `/api/v6/report/sales/bought-together`;
|
|
61399
|
+
// use dummy base URL string because the URL constructor only accepts absolute URLs.
|
|
61400
|
+
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
|
|
61401
|
+
let baseOptions;
|
|
61402
|
+
if (configuration) {
|
|
61403
|
+
baseOptions = configuration.baseOptions;
|
|
61404
|
+
}
|
|
61405
|
+
|
|
61406
|
+
const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
|
|
61407
|
+
const localVarHeaderParameter = {} as any;
|
|
61408
|
+
const localVarQueryParameter = {} as any;
|
|
61409
|
+
|
|
61410
|
+
// authentication JWT-auth required
|
|
61411
|
+
// http bearer authentication required
|
|
61412
|
+
await setBearerAuthToObject(localVarHeaderParameter, configuration)
|
|
61413
|
+
|
|
61414
|
+
if (timeSpan !== undefined) {
|
|
61415
|
+
localVarQueryParameter['timeSpan'] = timeSpan;
|
|
61416
|
+
}
|
|
61417
|
+
|
|
61418
|
+
if (start !== undefined) {
|
|
61419
|
+
localVarQueryParameter['start'] = start;
|
|
61420
|
+
}
|
|
61421
|
+
|
|
61422
|
+
if (end !== undefined) {
|
|
61423
|
+
localVarQueryParameter['end'] = end;
|
|
61424
|
+
}
|
|
61425
|
+
|
|
61426
|
+
if (businessIds) {
|
|
61427
|
+
localVarQueryParameter['businessIds'] = businessIds;
|
|
61428
|
+
}
|
|
61429
|
+
|
|
61430
|
+
if (timezone !== undefined) {
|
|
61431
|
+
localVarQueryParameter['timezone'] = timezone;
|
|
61432
|
+
}
|
|
61433
|
+
|
|
61434
|
+
if (apps) {
|
|
61435
|
+
localVarQueryParameter['apps'] = apps;
|
|
61436
|
+
}
|
|
61437
|
+
|
|
61438
|
+
if (breakdown !== undefined) {
|
|
61439
|
+
localVarQueryParameter['breakdown'] = breakdown;
|
|
61440
|
+
}
|
|
61441
|
+
|
|
61442
|
+
if (language !== undefined) {
|
|
61443
|
+
localVarQueryParameter['language'] = language;
|
|
61444
|
+
}
|
|
61445
|
+
|
|
61446
|
+
if (itemKey !== undefined) {
|
|
61447
|
+
localVarQueryParameter['itemKey'] = itemKey;
|
|
61448
|
+
}
|
|
61449
|
+
|
|
61450
|
+
if (limit !== undefined) {
|
|
61451
|
+
localVarQueryParameter['limit'] = limit;
|
|
61452
|
+
}
|
|
61453
|
+
|
|
61454
|
+
|
|
61455
|
+
|
|
61456
|
+
setSearchParams(localVarUrlObj, localVarQueryParameter);
|
|
61457
|
+
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
|
|
61458
|
+
localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
|
|
61459
|
+
|
|
61460
|
+
return {
|
|
61461
|
+
url: toPathString(localVarUrlObj),
|
|
61462
|
+
options: localVarRequestOptions,
|
|
61463
|
+
};
|
|
61464
|
+
},
|
|
61465
|
+
/**
|
|
61466
|
+
* The same report, rendered by the same generator, as the PDF the report e-mail (POST /api/v6/report/email) attaches, answered as the file itself instead of e-mailed. The period is the e-mail\'s: timeSpan DAY (the venue\'s business day), WEEK, MONTH, YEAR, or CUSTOM between start and end. A till\'s ticket gets it narrowed to the person on the till, as the e-mail is. Answers application/pdf with Content-Disposition attachment and the file\'s name.
|
|
61467
|
+
* @summary End-of-day sales report of a venue as a PDF file to download, for a day, week, month, year or custom period
|
|
61468
|
+
* @param {number} businessId The venue the file is of, by business id
|
|
61469
|
+
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
61470
|
+
* @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
61471
|
+
* @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
61472
|
+
* @param {string} [timezone] The IANA time zone the period\'s days are counted in. Absent: the venue\'s own
|
|
61473
|
+
* @param {ProviderEnum} [provider] The order source the report counts. Absent: MunchiPos, as the till\'s report
|
|
61474
|
+
* @param {ReportLanguage} [language] The language the file is printed in. Absent: English
|
|
61475
|
+
* @param {*} [options] Override http request option.
|
|
61476
|
+
* @throws {RequiredError}
|
|
61477
|
+
*/
|
|
61478
|
+
getEndOfDayReportFile: async (businessId: number, timeSpan?: TimeSpan, start?: string, end?: string, timezone?: string, provider?: ProviderEnum, language?: ReportLanguage, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
|
61479
|
+
// verify required parameter 'businessId' is not null or undefined
|
|
61480
|
+
assertParamExists('getEndOfDayReportFile', 'businessId', businessId)
|
|
61481
|
+
const localVarPath = `/api/v6/report/end-of-day/file`;
|
|
61482
|
+
// use dummy base URL string because the URL constructor only accepts absolute URLs.
|
|
61483
|
+
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
|
|
61484
|
+
let baseOptions;
|
|
61485
|
+
if (configuration) {
|
|
61486
|
+
baseOptions = configuration.baseOptions;
|
|
61487
|
+
}
|
|
61488
|
+
|
|
61489
|
+
const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
|
|
61490
|
+
const localVarHeaderParameter = {} as any;
|
|
61491
|
+
const localVarQueryParameter = {} as any;
|
|
61492
|
+
|
|
61493
|
+
// authentication JWT-auth required
|
|
61494
|
+
// http bearer authentication required
|
|
61495
|
+
await setBearerAuthToObject(localVarHeaderParameter, configuration)
|
|
61496
|
+
|
|
61497
|
+
if (timeSpan !== undefined) {
|
|
61498
|
+
localVarQueryParameter['timeSpan'] = timeSpan;
|
|
61499
|
+
}
|
|
61500
|
+
|
|
61501
|
+
if (start !== undefined) {
|
|
61502
|
+
localVarQueryParameter['start'] = start;
|
|
61503
|
+
}
|
|
61504
|
+
|
|
61505
|
+
if (end !== undefined) {
|
|
61506
|
+
localVarQueryParameter['end'] = end;
|
|
61507
|
+
}
|
|
61508
|
+
|
|
61509
|
+
if (businessId !== undefined) {
|
|
61510
|
+
localVarQueryParameter['businessId'] = businessId;
|
|
61511
|
+
}
|
|
61512
|
+
|
|
61513
|
+
if (timezone !== undefined) {
|
|
61514
|
+
localVarQueryParameter['timezone'] = timezone;
|
|
61515
|
+
}
|
|
61516
|
+
|
|
61517
|
+
if (provider !== undefined) {
|
|
61518
|
+
localVarQueryParameter['provider'] = provider;
|
|
61519
|
+
}
|
|
61520
|
+
|
|
61521
|
+
if (language !== undefined) {
|
|
61522
|
+
localVarQueryParameter['language'] = language;
|
|
61523
|
+
}
|
|
61524
|
+
|
|
61525
|
+
|
|
61526
|
+
|
|
61527
|
+
setSearchParams(localVarUrlObj, localVarQueryParameter);
|
|
61528
|
+
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
|
|
61529
|
+
localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
|
|
61530
|
+
|
|
61531
|
+
return {
|
|
61532
|
+
url: toPathString(localVarUrlObj),
|
|
61533
|
+
options: localVarRequestOptions,
|
|
61534
|
+
};
|
|
61535
|
+
},
|
|
58927
61536
|
/**
|
|
58928
61537
|
*
|
|
58929
61538
|
* @summary Get end-of-day financial report (V5)
|
|
@@ -59000,11 +61609,12 @@ export const ReportApiAxiosParamCreator = function (configuration?: Configuratio
|
|
|
59000
61609
|
* @param {string} [language] Accepted and not read, so a request copied from the portal\'s report works: the report has no text to translate
|
|
59001
61610
|
* @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\'s time zone; not later than today. Neither sent: no comparison, and the answer is as before. Sent without compareEnd: refused
|
|
59002
61611
|
* @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
|
|
61612
|
+
* @param {boolean} [compareSameTime] With compareStart and compareEnd, true compares up to the same time: while the report\'s last day is still running, both last days, the report\'s and the compared one, are added up only to the last full hour the data has reached, on each venue\'s own clock (today until 14:00 against that day until 14:00), so neither side counts minutes the other does not; earlier days stay whole. Each group whose compared day was cut answers comparison.comparedUntil. Only totals are cut (salesReport\'s and paymentReport.summary\'s totals, totalDiscounts, orderCount, averageOrderValue, the changes and the day\'s dailyBreakdown); the lists (categories, items, VAT rates, payment methods, discounts) of the compared last day stay whole, since the hours hold totals only, not lines per item, payment method, VAT rate or discount. A day without hours yet is compared whole. Absent or false: the comparison is as before
|
|
59003
61613
|
* @param {string} [baseline] One group of the answer every other group is compared with: venue:<id> with breakdown venue, app:<app> with breakdown app, venue:<id>,app:<app> 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\'s answers changesFromBaselineLeftOut instead. Refused when the breakdown does not split on what it names, or it names a venue or app not asked
|
|
59004
61614
|
* @param {*} [options] Override http request option.
|
|
59005
61615
|
* @throws {RequiredError}
|
|
59006
61616
|
*/
|
|
59007
|
-
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> => {
|
|
61617
|
+
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, compareSameTime?: boolean, baseline?: string, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
|
59008
61618
|
// verify required parameter 'businessIds' is not null or undefined
|
|
59009
61619
|
assertParamExists('getSalesReport', 'businessIds', businessIds)
|
|
59010
61620
|
const localVarPath = `/api/v6/report/sales`;
|
|
@@ -59067,6 +61677,339 @@ export const ReportApiAxiosParamCreator = function (configuration?: Configuratio
|
|
|
59067
61677
|
localVarQueryParameter['compareEnd'] = compareEnd;
|
|
59068
61678
|
}
|
|
59069
61679
|
|
|
61680
|
+
if (compareSameTime !== undefined) {
|
|
61681
|
+
localVarQueryParameter['compareSameTime'] = compareSameTime;
|
|
61682
|
+
}
|
|
61683
|
+
|
|
61684
|
+
if (baseline !== undefined) {
|
|
61685
|
+
localVarQueryParameter['baseline'] = baseline;
|
|
61686
|
+
}
|
|
61687
|
+
|
|
61688
|
+
|
|
61689
|
+
|
|
61690
|
+
setSearchParams(localVarUrlObj, localVarQueryParameter);
|
|
61691
|
+
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
|
|
61692
|
+
localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
|
|
61693
|
+
|
|
61694
|
+
return {
|
|
61695
|
+
url: toPathString(localVarUrlObj),
|
|
61696
|
+
options: localVarRequestOptions,
|
|
61697
|
+
};
|
|
61698
|
+
},
|
|
61699
|
+
/**
|
|
61700
|
+
* The venue\'s sales report over the channels it has enabled (its active providers: MunchiPos is POS; MunchiKiosk, MunchiKioskV2 and Kiosk are the kiosk; Storefront is the storefront and the mobile app), added together: the same report GET /api/v6/report/sales answers for those apps with breakdown none, so its totals are that route\'s. The PDF prints a summary (channels, orders, average order value, gross sales, refunds), the sales breakdown (categories, items, VAT) and the payments breakdown (payment methods, vouchers, tips, discounts). With format xlsx the same report is an Excel workbook of plain numbers in the venue\'s currency, with the PDF\'s totals: sheets Summary, Items (every item and every option on its own row), Categories, VAT by rate, Payments, Vouchers & extras and Discounts. The period is whole business days, as that route reads them: timeSpan DAY, WEEK, MONTH or YEAR, or CUSTOM between start and end. Answers application/pdf (format pdf, the default) or application/vnd.openxmlformats-officedocument.spreadsheetml.sheet (format xlsx) with Content-Disposition attachment, named sales-report-<businessId>-<first day>-<last day>.pdf or .xlsx.
|
|
61701
|
+
* @summary Sales report of a venue, every channel it has enabled (POS, kiosk, storefront and mobile app), as a PDF or Excel (xlsx) file to download
|
|
61702
|
+
* @param {number} businessId The venue the file is of, by business id
|
|
61703
|
+
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
61704
|
+
* @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
61705
|
+
* @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
61706
|
+
* @param {string} [timezone] The time zone the period is read in, IANA. Absent: the venue\'s own (Business.timeZone)
|
|
61707
|
+
* @param {ReportLanguage} [language] The language the file is printed in. Absent: English
|
|
61708
|
+
* @param {FileFormat} [format] The file\'s format: pdf, or xlsx for an Excel workbook of the same report with every item and option on its own row. Absent: pdf
|
|
61709
|
+
* @param {*} [options] Override http request option.
|
|
61710
|
+
* @throws {RequiredError}
|
|
61711
|
+
*/
|
|
61712
|
+
getSalesReportFile: async (businessId: number, timeSpan?: TimeSpan, start?: string, end?: string, timezone?: string, language?: ReportLanguage, format?: FileFormat, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
|
61713
|
+
// verify required parameter 'businessId' is not null or undefined
|
|
61714
|
+
assertParamExists('getSalesReportFile', 'businessId', businessId)
|
|
61715
|
+
const localVarPath = `/api/v6/report/sales/file`;
|
|
61716
|
+
// use dummy base URL string because the URL constructor only accepts absolute URLs.
|
|
61717
|
+
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
|
|
61718
|
+
let baseOptions;
|
|
61719
|
+
if (configuration) {
|
|
61720
|
+
baseOptions = configuration.baseOptions;
|
|
61721
|
+
}
|
|
61722
|
+
|
|
61723
|
+
const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
|
|
61724
|
+
const localVarHeaderParameter = {} as any;
|
|
61725
|
+
const localVarQueryParameter = {} as any;
|
|
61726
|
+
|
|
61727
|
+
// authentication JWT-auth required
|
|
61728
|
+
// http bearer authentication required
|
|
61729
|
+
await setBearerAuthToObject(localVarHeaderParameter, configuration)
|
|
61730
|
+
|
|
61731
|
+
if (timeSpan !== undefined) {
|
|
61732
|
+
localVarQueryParameter['timeSpan'] = timeSpan;
|
|
61733
|
+
}
|
|
61734
|
+
|
|
61735
|
+
if (start !== undefined) {
|
|
61736
|
+
localVarQueryParameter['start'] = start;
|
|
61737
|
+
}
|
|
61738
|
+
|
|
61739
|
+
if (end !== undefined) {
|
|
61740
|
+
localVarQueryParameter['end'] = end;
|
|
61741
|
+
}
|
|
61742
|
+
|
|
61743
|
+
if (businessId !== undefined) {
|
|
61744
|
+
localVarQueryParameter['businessId'] = businessId;
|
|
61745
|
+
}
|
|
61746
|
+
|
|
61747
|
+
if (timezone !== undefined) {
|
|
61748
|
+
localVarQueryParameter['timezone'] = timezone;
|
|
61749
|
+
}
|
|
61750
|
+
|
|
61751
|
+
if (language !== undefined) {
|
|
61752
|
+
localVarQueryParameter['language'] = language;
|
|
61753
|
+
}
|
|
61754
|
+
|
|
61755
|
+
if (format !== undefined) {
|
|
61756
|
+
localVarQueryParameter['format'] = format;
|
|
61757
|
+
}
|
|
61758
|
+
|
|
61759
|
+
|
|
61760
|
+
|
|
61761
|
+
setSearchParams(localVarUrlObj, localVarQueryParameter);
|
|
61762
|
+
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
|
|
61763
|
+
localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
|
|
61764
|
+
|
|
61765
|
+
return {
|
|
61766
|
+
url: toPathString(localVarUrlObj),
|
|
61767
|
+
options: localVarRequestOptions,
|
|
61768
|
+
};
|
|
61769
|
+
},
|
|
61770
|
+
/**
|
|
61771
|
+
* The period GET /api/v6/report/sales would add up, for the same venues, apps, time zone and breakdown, with the same access, per hour of each venue\'s own clock (hourly_summary): each hour\'s orders and totalWithTax, added up by the report\'s own rules, and their average over the period\'s calendar days, of isoWeekday only when it is sent. Busy hours: a month, its averageOrderCount. A normal Tuesday beside today: the last 8 weeks with isoWeekday 2, against today\'s own hours. A day sold on before hours were kept answers in no hour and is counted in daysWithoutHours.
|
|
61772
|
+
* @summary Sales of the venues and apps per hour of the day, with each hour\'s average day
|
|
61773
|
+
* @param {Array<number>} businessIds The venues asked about, by business id
|
|
61774
|
+
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
61775
|
+
* @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
61776
|
+
* @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
61777
|
+
* @param {string} [timezone] The time zone the period is read in, IANA. Absent: the first venue\'s own (Business.timeZone)
|
|
61778
|
+
* @param {Array<ReportApp>} [apps] The apps to add up, the parameter repeated or a JSON list. Absent: all four
|
|
61779
|
+
* @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
|
|
61780
|
+
* @param {string} [language] Accepted and not read, so a request copied from the portal\'s report works: the report has no text to translate
|
|
61781
|
+
* @param {number} [isoWeekday] Only the business days of this ISO weekday count, 1 Monday to 7 Sunday, in the report\'s time zone; the average then is over those days. Absent: every day of the period. A normal Tuesday: the last 8 weeks before today with isoWeekday 2
|
|
61782
|
+
* @param {*} [options] Override http request option.
|
|
61783
|
+
* @throws {RequiredError}
|
|
61784
|
+
*/
|
|
61785
|
+
getSalesReportHours: async (businessIds: Array<number>, timeSpan?: TimeSpan, start?: string, end?: string, timezone?: string, apps?: Array<ReportApp>, breakdown?: ReportBreakdown, language?: string, isoWeekday?: number, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
|
61786
|
+
// verify required parameter 'businessIds' is not null or undefined
|
|
61787
|
+
assertParamExists('getSalesReportHours', 'businessIds', businessIds)
|
|
61788
|
+
const localVarPath = `/api/v6/report/sales/hours`;
|
|
61789
|
+
// use dummy base URL string because the URL constructor only accepts absolute URLs.
|
|
61790
|
+
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
|
|
61791
|
+
let baseOptions;
|
|
61792
|
+
if (configuration) {
|
|
61793
|
+
baseOptions = configuration.baseOptions;
|
|
61794
|
+
}
|
|
61795
|
+
|
|
61796
|
+
const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
|
|
61797
|
+
const localVarHeaderParameter = {} as any;
|
|
61798
|
+
const localVarQueryParameter = {} as any;
|
|
61799
|
+
|
|
61800
|
+
// authentication JWT-auth required
|
|
61801
|
+
// http bearer authentication required
|
|
61802
|
+
await setBearerAuthToObject(localVarHeaderParameter, configuration)
|
|
61803
|
+
|
|
61804
|
+
if (timeSpan !== undefined) {
|
|
61805
|
+
localVarQueryParameter['timeSpan'] = timeSpan;
|
|
61806
|
+
}
|
|
61807
|
+
|
|
61808
|
+
if (start !== undefined) {
|
|
61809
|
+
localVarQueryParameter['start'] = start;
|
|
61810
|
+
}
|
|
61811
|
+
|
|
61812
|
+
if (end !== undefined) {
|
|
61813
|
+
localVarQueryParameter['end'] = end;
|
|
61814
|
+
}
|
|
61815
|
+
|
|
61816
|
+
if (businessIds) {
|
|
61817
|
+
localVarQueryParameter['businessIds'] = businessIds;
|
|
61818
|
+
}
|
|
61819
|
+
|
|
61820
|
+
if (timezone !== undefined) {
|
|
61821
|
+
localVarQueryParameter['timezone'] = timezone;
|
|
61822
|
+
}
|
|
61823
|
+
|
|
61824
|
+
if (apps) {
|
|
61825
|
+
localVarQueryParameter['apps'] = apps;
|
|
61826
|
+
}
|
|
61827
|
+
|
|
61828
|
+
if (breakdown !== undefined) {
|
|
61829
|
+
localVarQueryParameter['breakdown'] = breakdown;
|
|
61830
|
+
}
|
|
61831
|
+
|
|
61832
|
+
if (language !== undefined) {
|
|
61833
|
+
localVarQueryParameter['language'] = language;
|
|
61834
|
+
}
|
|
61835
|
+
|
|
61836
|
+
if (isoWeekday !== undefined) {
|
|
61837
|
+
localVarQueryParameter['isoWeekday'] = isoWeekday;
|
|
61838
|
+
}
|
|
61839
|
+
|
|
61840
|
+
|
|
61841
|
+
|
|
61842
|
+
setSearchParams(localVarUrlObj, localVarQueryParameter);
|
|
61843
|
+
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
|
|
61844
|
+
localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
|
|
61845
|
+
|
|
61846
|
+
return {
|
|
61847
|
+
url: toPathString(localVarUrlObj),
|
|
61848
|
+
options: localVarRequestOptions,
|
|
61849
|
+
};
|
|
61850
|
+
},
|
|
61851
|
+
/**
|
|
61852
|
+
* The period GET /api/v6/report/sales would add up, for the same venues, apps, time zone and breakdown, with the same access, per order type (daily_order_types): each type\'s orders and sales, added up by the report\'s own rules. The till and the kiosk write dine_in or pick_up, the online store\'s Vendure dine_in, pickup or delivery; anything else, and an online order counted from its Postgres copy, is unknown, never guessed. A day sold on before order types were kept answers in no type and is counted in daysWithoutOrderTypes.
|
|
61853
|
+
* @summary Sales of the venues and apps per order type: eat in, takeaway, delivery
|
|
61854
|
+
* @param {Array<number>} businessIds The venues asked about, by business id
|
|
61855
|
+
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
61856
|
+
* @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
61857
|
+
* @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
61858
|
+
* @param {string} [timezone] The time zone the period is read in, IANA. Absent: the first venue\'s own (Business.timeZone)
|
|
61859
|
+
* @param {Array<ReportApp>} [apps] The apps to add up, the parameter repeated or a JSON list. Absent: all four
|
|
61860
|
+
* @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
|
|
61861
|
+
* @param {string} [language] Accepted and not read, so a request copied from the portal\'s report works: the report has no text to translate
|
|
61862
|
+
* @param {*} [options] Override http request option.
|
|
61863
|
+
* @throws {RequiredError}
|
|
61864
|
+
*/
|
|
61865
|
+
getSalesReportOrderTypes: async (businessIds: Array<number>, timeSpan?: TimeSpan, start?: string, end?: string, timezone?: string, apps?: Array<ReportApp>, breakdown?: ReportBreakdown, language?: string, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
|
61866
|
+
// verify required parameter 'businessIds' is not null or undefined
|
|
61867
|
+
assertParamExists('getSalesReportOrderTypes', 'businessIds', businessIds)
|
|
61868
|
+
const localVarPath = `/api/v6/report/sales/order-types`;
|
|
61869
|
+
// use dummy base URL string because the URL constructor only accepts absolute URLs.
|
|
61870
|
+
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
|
|
61871
|
+
let baseOptions;
|
|
61872
|
+
if (configuration) {
|
|
61873
|
+
baseOptions = configuration.baseOptions;
|
|
61874
|
+
}
|
|
61875
|
+
|
|
61876
|
+
const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
|
|
61877
|
+
const localVarHeaderParameter = {} as any;
|
|
61878
|
+
const localVarQueryParameter = {} as any;
|
|
61879
|
+
|
|
61880
|
+
// authentication JWT-auth required
|
|
61881
|
+
// http bearer authentication required
|
|
61882
|
+
await setBearerAuthToObject(localVarHeaderParameter, configuration)
|
|
61883
|
+
|
|
61884
|
+
if (timeSpan !== undefined) {
|
|
61885
|
+
localVarQueryParameter['timeSpan'] = timeSpan;
|
|
61886
|
+
}
|
|
61887
|
+
|
|
61888
|
+
if (start !== undefined) {
|
|
61889
|
+
localVarQueryParameter['start'] = start;
|
|
61890
|
+
}
|
|
61891
|
+
|
|
61892
|
+
if (end !== undefined) {
|
|
61893
|
+
localVarQueryParameter['end'] = end;
|
|
61894
|
+
}
|
|
61895
|
+
|
|
61896
|
+
if (businessIds) {
|
|
61897
|
+
localVarQueryParameter['businessIds'] = businessIds;
|
|
61898
|
+
}
|
|
61899
|
+
|
|
61900
|
+
if (timezone !== undefined) {
|
|
61901
|
+
localVarQueryParameter['timezone'] = timezone;
|
|
61902
|
+
}
|
|
61903
|
+
|
|
61904
|
+
if (apps) {
|
|
61905
|
+
localVarQueryParameter['apps'] = apps;
|
|
61906
|
+
}
|
|
61907
|
+
|
|
61908
|
+
if (breakdown !== undefined) {
|
|
61909
|
+
localVarQueryParameter['breakdown'] = breakdown;
|
|
61910
|
+
}
|
|
61911
|
+
|
|
61912
|
+
if (language !== undefined) {
|
|
61913
|
+
localVarQueryParameter['language'] = language;
|
|
61914
|
+
}
|
|
61915
|
+
|
|
61916
|
+
|
|
61917
|
+
|
|
61918
|
+
setSearchParams(localVarUrlObj, localVarQueryParameter);
|
|
61919
|
+
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
|
|
61920
|
+
localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
|
|
61921
|
+
|
|
61922
|
+
return {
|
|
61923
|
+
url: toPathString(localVarUrlObj),
|
|
61924
|
+
options: localVarRequestOptions,
|
|
61925
|
+
};
|
|
61926
|
+
},
|
|
61927
|
+
/**
|
|
61928
|
+
* The report GET /api/v6/report/sales answers for the same query, with the same access, short enough to read whole: the same totals, orderCount, averageOrderValue, days, VAT, payments, discounts, comparison, changes and changesFromBaseline, every amount rounded to the currency\'s minor digits; with part items, each category\'s totals (with and without VAT) without its items, and topItemsBySales and topItemsByQuantity, the 10 best-selling items with an item of the same name in several categories added up once. For every item with its VAT, its net and its options, read GET /api/v6/report/sales.
|
|
61929
|
+
* @summary Sales report of the venues and apps, short: totals, categories and best-selling items
|
|
61930
|
+
* @param {Array<number>} businessIds The venues asked about, by business id
|
|
61931
|
+
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
61932
|
+
* @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
61933
|
+
* @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
61934
|
+
* @param {string} [timezone] The time zone the period is read in, IANA. Absent: the first venue\'s own (Business.timeZone)
|
|
61935
|
+
* @param {Array<ReportApp>} [apps] The apps to add up, the parameter repeated or a JSON list. Absent: all four
|
|
61936
|
+
* @param {Array<ReportPart>} [parts] The parts to answer, the parameter repeated or a JSON list; only their daily tables are read. Absent: all five
|
|
61937
|
+
* @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
|
|
61938
|
+
* @param {string} [language] Accepted and not read, so a request copied from the portal\'s report works: the report has no text to translate
|
|
61939
|
+
* @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\'s time zone; not later than today. Neither sent: no comparison, and the answer is as before. Sent without compareEnd: refused
|
|
61940
|
+
* @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
|
|
61941
|
+
* @param {boolean} [compareSameTime] With compareStart and compareEnd, true compares up to the same time: while the report\'s last day is still running, both last days, the report\'s and the compared one, are added up only to the last full hour the data has reached, on each venue\'s own clock (today until 14:00 against that day until 14:00), so neither side counts minutes the other does not; earlier days stay whole. Each group whose compared day was cut answers comparison.comparedUntil. Only totals are cut (salesReport\'s and paymentReport.summary\'s totals, totalDiscounts, orderCount, averageOrderValue, the changes and the day\'s dailyBreakdown); the lists (categories, items, VAT rates, payment methods, discounts) of the compared last day stay whole, since the hours hold totals only, not lines per item, payment method, VAT rate or discount. A day without hours yet is compared whole. Absent or false: the comparison is as before
|
|
61942
|
+
* @param {string} [baseline] One group of the answer every other group is compared with: venue:<id> with breakdown venue, app:<app> with breakdown app, venue:<id>,app:<app> 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\'s answers changesFromBaselineLeftOut instead. Refused when the breakdown does not split on what it names, or it names a venue or app not asked
|
|
61943
|
+
* @param {*} [options] Override http request option.
|
|
61944
|
+
* @throws {RequiredError}
|
|
61945
|
+
*/
|
|
61946
|
+
getShortSalesReport: 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, compareSameTime?: boolean, baseline?: string, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
|
|
61947
|
+
// verify required parameter 'businessIds' is not null or undefined
|
|
61948
|
+
assertParamExists('getShortSalesReport', 'businessIds', businessIds)
|
|
61949
|
+
const localVarPath = `/api/v6/report/sales/short`;
|
|
61950
|
+
// use dummy base URL string because the URL constructor only accepts absolute URLs.
|
|
61951
|
+
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
|
|
61952
|
+
let baseOptions;
|
|
61953
|
+
if (configuration) {
|
|
61954
|
+
baseOptions = configuration.baseOptions;
|
|
61955
|
+
}
|
|
61956
|
+
|
|
61957
|
+
const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
|
|
61958
|
+
const localVarHeaderParameter = {} as any;
|
|
61959
|
+
const localVarQueryParameter = {} as any;
|
|
61960
|
+
|
|
61961
|
+
// authentication JWT-auth required
|
|
61962
|
+
// http bearer authentication required
|
|
61963
|
+
await setBearerAuthToObject(localVarHeaderParameter, configuration)
|
|
61964
|
+
|
|
61965
|
+
if (timeSpan !== undefined) {
|
|
61966
|
+
localVarQueryParameter['timeSpan'] = timeSpan;
|
|
61967
|
+
}
|
|
61968
|
+
|
|
61969
|
+
if (start !== undefined) {
|
|
61970
|
+
localVarQueryParameter['start'] = start;
|
|
61971
|
+
}
|
|
61972
|
+
|
|
61973
|
+
if (end !== undefined) {
|
|
61974
|
+
localVarQueryParameter['end'] = end;
|
|
61975
|
+
}
|
|
61976
|
+
|
|
61977
|
+
if (businessIds) {
|
|
61978
|
+
localVarQueryParameter['businessIds'] = businessIds;
|
|
61979
|
+
}
|
|
61980
|
+
|
|
61981
|
+
if (timezone !== undefined) {
|
|
61982
|
+
localVarQueryParameter['timezone'] = timezone;
|
|
61983
|
+
}
|
|
61984
|
+
|
|
61985
|
+
if (apps) {
|
|
61986
|
+
localVarQueryParameter['apps'] = apps;
|
|
61987
|
+
}
|
|
61988
|
+
|
|
61989
|
+
if (parts) {
|
|
61990
|
+
localVarQueryParameter['parts'] = parts;
|
|
61991
|
+
}
|
|
61992
|
+
|
|
61993
|
+
if (breakdown !== undefined) {
|
|
61994
|
+
localVarQueryParameter['breakdown'] = breakdown;
|
|
61995
|
+
}
|
|
61996
|
+
|
|
61997
|
+
if (language !== undefined) {
|
|
61998
|
+
localVarQueryParameter['language'] = language;
|
|
61999
|
+
}
|
|
62000
|
+
|
|
62001
|
+
if (compareStart !== undefined) {
|
|
62002
|
+
localVarQueryParameter['compareStart'] = compareStart;
|
|
62003
|
+
}
|
|
62004
|
+
|
|
62005
|
+
if (compareEnd !== undefined) {
|
|
62006
|
+
localVarQueryParameter['compareEnd'] = compareEnd;
|
|
62007
|
+
}
|
|
62008
|
+
|
|
62009
|
+
if (compareSameTime !== undefined) {
|
|
62010
|
+
localVarQueryParameter['compareSameTime'] = compareSameTime;
|
|
62011
|
+
}
|
|
62012
|
+
|
|
59070
62013
|
if (baseline !== undefined) {
|
|
59071
62014
|
localVarQueryParameter['baseline'] = baseline;
|
|
59072
62015
|
}
|
|
@@ -59162,6 +62105,43 @@ export const ReportApiAxiosParamCreator = function (configuration?: Configuratio
|
|
|
59162
62105
|
export const ReportApiFp = function(configuration?: Configuration) {
|
|
59163
62106
|
const localVarAxiosParamCreator = ReportApiAxiosParamCreator(configuration)
|
|
59164
62107
|
return {
|
|
62108
|
+
/**
|
|
62109
|
+
* The period GET /api/v6/report/sales would add up, for the same venues, apps, time zone and breakdown, with the same access: each group\'s pairs of base items (an item\'s own line, never an option) sold in the most orders, each order once, with every order of each item, so percentOfItemA is exact: of the orders with A, how many also had B. Each venue-day keeps its top 25 pairs (daily_item_pairs); a group whose daysWithPairsCut is not 0 answers each pair\'s orders as a lower bound. itemKey answers the pairs of one item only.
|
|
62110
|
+
* @summary Items bought together in one order, over the period
|
|
62111
|
+
* @param {Array<number>} businessIds The venues asked about, by business id
|
|
62112
|
+
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
62113
|
+
* @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62114
|
+
* @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62115
|
+
* @param {string} [timezone] The time zone the period is read in, IANA. Absent: the first venue\'s own (Business.timeZone)
|
|
62116
|
+
* @param {Array<ReportApp>} [apps] The apps to add up, the parameter repeated or a JSON list. Absent: all four
|
|
62117
|
+
* @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
|
|
62118
|
+
* @param {string} [language] Accepted and not read, so a request copied from the portal\'s report works: the report has no text to translate
|
|
62119
|
+
* @param {string} [itemKey] Only the pairs with this item, by its key (an item\'s itemKey of an earlier answer: the POS posId, the online product id). Absent: every pair
|
|
62120
|
+
* @param {number} [limit] How many pairs each group answers, most orders first: 1 to 100. Absent: 20
|
|
62121
|
+
* @param {*} [options] Override http request option.
|
|
62122
|
+
* @throws {RequiredError}
|
|
62123
|
+
*/
|
|
62124
|
+
async getBoughtTogether(businessIds: Array<number>, timeSpan?: TimeSpan, start?: string, end?: string, timezone?: string, apps?: Array<ReportApp>, breakdown?: ReportBreakdown, language?: string, itemKey?: string, limit?: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<SalesReportBoughtTogetherResponseDto>> {
|
|
62125
|
+
const localVarAxiosArgs = await localVarAxiosParamCreator.getBoughtTogether(businessIds, timeSpan, start, end, timezone, apps, breakdown, language, itemKey, limit, options);
|
|
62126
|
+
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
|
|
62127
|
+
},
|
|
62128
|
+
/**
|
|
62129
|
+
* The same report, rendered by the same generator, as the PDF the report e-mail (POST /api/v6/report/email) attaches, answered as the file itself instead of e-mailed. The period is the e-mail\'s: timeSpan DAY (the venue\'s business day), WEEK, MONTH, YEAR, or CUSTOM between start and end. A till\'s ticket gets it narrowed to the person on the till, as the e-mail is. Answers application/pdf with Content-Disposition attachment and the file\'s name.
|
|
62130
|
+
* @summary End-of-day sales report of a venue as a PDF file to download, for a day, week, month, year or custom period
|
|
62131
|
+
* @param {number} businessId The venue the file is of, by business id
|
|
62132
|
+
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
62133
|
+
* @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62134
|
+
* @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62135
|
+
* @param {string} [timezone] The IANA time zone the period\'s days are counted in. Absent: the venue\'s own
|
|
62136
|
+
* @param {ProviderEnum} [provider] The order source the report counts. Absent: MunchiPos, as the till\'s report
|
|
62137
|
+
* @param {ReportLanguage} [language] The language the file is printed in. Absent: English
|
|
62138
|
+
* @param {*} [options] Override http request option.
|
|
62139
|
+
* @throws {RequiredError}
|
|
62140
|
+
*/
|
|
62141
|
+
async getEndOfDayReportFile(businessId: number, timeSpan?: TimeSpan, start?: string, end?: string, timezone?: string, provider?: ProviderEnum, language?: ReportLanguage, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<File>> {
|
|
62142
|
+
const localVarAxiosArgs = await localVarAxiosParamCreator.getEndOfDayReportFile(businessId, timeSpan, start, end, timezone, provider, language, options);
|
|
62143
|
+
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
|
|
62144
|
+
},
|
|
59165
62145
|
/**
|
|
59166
62146
|
*
|
|
59167
62147
|
* @summary Get end-of-day financial report (V5)
|
|
@@ -59192,12 +62172,90 @@ export const ReportApiFp = function(configuration?: Configuration) {
|
|
|
59192
62172
|
* @param {string} [language] Accepted and not read, so a request copied from the portal\'s report works: the report has no text to translate
|
|
59193
62173
|
* @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\'s time zone; not later than today. Neither sent: no comparison, and the answer is as before. Sent without compareEnd: refused
|
|
59194
62174
|
* @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
|
|
62175
|
+
* @param {boolean} [compareSameTime] With compareStart and compareEnd, true compares up to the same time: while the report\'s last day is still running, both last days, the report\'s and the compared one, are added up only to the last full hour the data has reached, on each venue\'s own clock (today until 14:00 against that day until 14:00), so neither side counts minutes the other does not; earlier days stay whole. Each group whose compared day was cut answers comparison.comparedUntil. Only totals are cut (salesReport\'s and paymentReport.summary\'s totals, totalDiscounts, orderCount, averageOrderValue, the changes and the day\'s dailyBreakdown); the lists (categories, items, VAT rates, payment methods, discounts) of the compared last day stay whole, since the hours hold totals only, not lines per item, payment method, VAT rate or discount. A day without hours yet is compared whole. Absent or false: the comparison is as before
|
|
62176
|
+
* @param {string} [baseline] One group of the answer every other group is compared with: venue:<id> with breakdown venue, app:<app> with breakdown app, venue:<id>,app:<app> 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\'s answers changesFromBaselineLeftOut instead. Refused when the breakdown does not split on what it names, or it names a venue or app not asked
|
|
62177
|
+
* @param {*} [options] Override http request option.
|
|
62178
|
+
* @throws {RequiredError}
|
|
62179
|
+
*/
|
|
62180
|
+
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, compareSameTime?: boolean, baseline?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<SalesReportResponseDto>> {
|
|
62181
|
+
const localVarAxiosArgs = await localVarAxiosParamCreator.getSalesReport(businessIds, timeSpan, start, end, timezone, apps, parts, breakdown, language, compareStart, compareEnd, compareSameTime, baseline, options);
|
|
62182
|
+
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
|
|
62183
|
+
},
|
|
62184
|
+
/**
|
|
62185
|
+
* The venue\'s sales report over the channels it has enabled (its active providers: MunchiPos is POS; MunchiKiosk, MunchiKioskV2 and Kiosk are the kiosk; Storefront is the storefront and the mobile app), added together: the same report GET /api/v6/report/sales answers for those apps with breakdown none, so its totals are that route\'s. The PDF prints a summary (channels, orders, average order value, gross sales, refunds), the sales breakdown (categories, items, VAT) and the payments breakdown (payment methods, vouchers, tips, discounts). With format xlsx the same report is an Excel workbook of plain numbers in the venue\'s currency, with the PDF\'s totals: sheets Summary, Items (every item and every option on its own row), Categories, VAT by rate, Payments, Vouchers & extras and Discounts. The period is whole business days, as that route reads them: timeSpan DAY, WEEK, MONTH or YEAR, or CUSTOM between start and end. Answers application/pdf (format pdf, the default) or application/vnd.openxmlformats-officedocument.spreadsheetml.sheet (format xlsx) with Content-Disposition attachment, named sales-report-<businessId>-<first day>-<last day>.pdf or .xlsx.
|
|
62186
|
+
* @summary Sales report of a venue, every channel it has enabled (POS, kiosk, storefront and mobile app), as a PDF or Excel (xlsx) file to download
|
|
62187
|
+
* @param {number} businessId The venue the file is of, by business id
|
|
62188
|
+
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
62189
|
+
* @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62190
|
+
* @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62191
|
+
* @param {string} [timezone] The time zone the period is read in, IANA. Absent: the venue\'s own (Business.timeZone)
|
|
62192
|
+
* @param {ReportLanguage} [language] The language the file is printed in. Absent: English
|
|
62193
|
+
* @param {FileFormat} [format] The file\'s format: pdf, or xlsx for an Excel workbook of the same report with every item and option on its own row. Absent: pdf
|
|
62194
|
+
* @param {*} [options] Override http request option.
|
|
62195
|
+
* @throws {RequiredError}
|
|
62196
|
+
*/
|
|
62197
|
+
async getSalesReportFile(businessId: number, timeSpan?: TimeSpan, start?: string, end?: string, timezone?: string, language?: ReportLanguage, format?: FileFormat, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<File>> {
|
|
62198
|
+
const localVarAxiosArgs = await localVarAxiosParamCreator.getSalesReportFile(businessId, timeSpan, start, end, timezone, language, format, options);
|
|
62199
|
+
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
|
|
62200
|
+
},
|
|
62201
|
+
/**
|
|
62202
|
+
* The period GET /api/v6/report/sales would add up, for the same venues, apps, time zone and breakdown, with the same access, per hour of each venue\'s own clock (hourly_summary): each hour\'s orders and totalWithTax, added up by the report\'s own rules, and their average over the period\'s calendar days, of isoWeekday only when it is sent. Busy hours: a month, its averageOrderCount. A normal Tuesday beside today: the last 8 weeks with isoWeekday 2, against today\'s own hours. A day sold on before hours were kept answers in no hour and is counted in daysWithoutHours.
|
|
62203
|
+
* @summary Sales of the venues and apps per hour of the day, with each hour\'s average day
|
|
62204
|
+
* @param {Array<number>} businessIds The venues asked about, by business id
|
|
62205
|
+
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
62206
|
+
* @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62207
|
+
* @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62208
|
+
* @param {string} [timezone] The time zone the period is read in, IANA. Absent: the first venue\'s own (Business.timeZone)
|
|
62209
|
+
* @param {Array<ReportApp>} [apps] The apps to add up, the parameter repeated or a JSON list. Absent: all four
|
|
62210
|
+
* @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
|
|
62211
|
+
* @param {string} [language] Accepted and not read, so a request copied from the portal\'s report works: the report has no text to translate
|
|
62212
|
+
* @param {number} [isoWeekday] Only the business days of this ISO weekday count, 1 Monday to 7 Sunday, in the report\'s time zone; the average then is over those days. Absent: every day of the period. A normal Tuesday: the last 8 weeks before today with isoWeekday 2
|
|
62213
|
+
* @param {*} [options] Override http request option.
|
|
62214
|
+
* @throws {RequiredError}
|
|
62215
|
+
*/
|
|
62216
|
+
async getSalesReportHours(businessIds: Array<number>, timeSpan?: TimeSpan, start?: string, end?: string, timezone?: string, apps?: Array<ReportApp>, breakdown?: ReportBreakdown, language?: string, isoWeekday?: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<SalesReportHoursResponseDto>> {
|
|
62217
|
+
const localVarAxiosArgs = await localVarAxiosParamCreator.getSalesReportHours(businessIds, timeSpan, start, end, timezone, apps, breakdown, language, isoWeekday, options);
|
|
62218
|
+
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
|
|
62219
|
+
},
|
|
62220
|
+
/**
|
|
62221
|
+
* The period GET /api/v6/report/sales would add up, for the same venues, apps, time zone and breakdown, with the same access, per order type (daily_order_types): each type\'s orders and sales, added up by the report\'s own rules. The till and the kiosk write dine_in or pick_up, the online store\'s Vendure dine_in, pickup or delivery; anything else, and an online order counted from its Postgres copy, is unknown, never guessed. A day sold on before order types were kept answers in no type and is counted in daysWithoutOrderTypes.
|
|
62222
|
+
* @summary Sales of the venues and apps per order type: eat in, takeaway, delivery
|
|
62223
|
+
* @param {Array<number>} businessIds The venues asked about, by business id
|
|
62224
|
+
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
62225
|
+
* @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62226
|
+
* @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62227
|
+
* @param {string} [timezone] The time zone the period is read in, IANA. Absent: the first venue\'s own (Business.timeZone)
|
|
62228
|
+
* @param {Array<ReportApp>} [apps] The apps to add up, the parameter repeated or a JSON list. Absent: all four
|
|
62229
|
+
* @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
|
|
62230
|
+
* @param {string} [language] Accepted and not read, so a request copied from the portal\'s report works: the report has no text to translate
|
|
62231
|
+
* @param {*} [options] Override http request option.
|
|
62232
|
+
* @throws {RequiredError}
|
|
62233
|
+
*/
|
|
62234
|
+
async getSalesReportOrderTypes(businessIds: Array<number>, timeSpan?: TimeSpan, start?: string, end?: string, timezone?: string, apps?: Array<ReportApp>, breakdown?: ReportBreakdown, language?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<SalesReportOrderTypesResponseDto>> {
|
|
62235
|
+
const localVarAxiosArgs = await localVarAxiosParamCreator.getSalesReportOrderTypes(businessIds, timeSpan, start, end, timezone, apps, breakdown, language, options);
|
|
62236
|
+
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
|
|
62237
|
+
},
|
|
62238
|
+
/**
|
|
62239
|
+
* The report GET /api/v6/report/sales answers for the same query, with the same access, short enough to read whole: the same totals, orderCount, averageOrderValue, days, VAT, payments, discounts, comparison, changes and changesFromBaseline, every amount rounded to the currency\'s minor digits; with part items, each category\'s totals (with and without VAT) without its items, and topItemsBySales and topItemsByQuantity, the 10 best-selling items with an item of the same name in several categories added up once. For every item with its VAT, its net and its options, read GET /api/v6/report/sales.
|
|
62240
|
+
* @summary Sales report of the venues and apps, short: totals, categories and best-selling items
|
|
62241
|
+
* @param {Array<number>} businessIds The venues asked about, by business id
|
|
62242
|
+
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
62243
|
+
* @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62244
|
+
* @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62245
|
+
* @param {string} [timezone] The time zone the period is read in, IANA. Absent: the first venue\'s own (Business.timeZone)
|
|
62246
|
+
* @param {Array<ReportApp>} [apps] The apps to add up, the parameter repeated or a JSON list. Absent: all four
|
|
62247
|
+
* @param {Array<ReportPart>} [parts] The parts to answer, the parameter repeated or a JSON list; only their daily tables are read. Absent: all five
|
|
62248
|
+
* @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
|
|
62249
|
+
* @param {string} [language] Accepted and not read, so a request copied from the portal\'s report works: the report has no text to translate
|
|
62250
|
+
* @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\'s time zone; not later than today. Neither sent: no comparison, and the answer is as before. Sent without compareEnd: refused
|
|
62251
|
+
* @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
|
|
62252
|
+
* @param {boolean} [compareSameTime] With compareStart and compareEnd, true compares up to the same time: while the report\'s last day is still running, both last days, the report\'s and the compared one, are added up only to the last full hour the data has reached, on each venue\'s own clock (today until 14:00 against that day until 14:00), so neither side counts minutes the other does not; earlier days stay whole. Each group whose compared day was cut answers comparison.comparedUntil. Only totals are cut (salesReport\'s and paymentReport.summary\'s totals, totalDiscounts, orderCount, averageOrderValue, the changes and the day\'s dailyBreakdown); the lists (categories, items, VAT rates, payment methods, discounts) of the compared last day stay whole, since the hours hold totals only, not lines per item, payment method, VAT rate or discount. A day without hours yet is compared whole. Absent or false: the comparison is as before
|
|
59195
62253
|
* @param {string} [baseline] One group of the answer every other group is compared with: venue:<id> with breakdown venue, app:<app> with breakdown app, venue:<id>,app:<app> 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\'s answers changesFromBaselineLeftOut instead. Refused when the breakdown does not split on what it names, or it names a venue or app not asked
|
|
59196
62254
|
* @param {*} [options] Override http request option.
|
|
59197
62255
|
* @throws {RequiredError}
|
|
59198
62256
|
*/
|
|
59199
|
-
async
|
|
59200
|
-
const localVarAxiosArgs = await localVarAxiosParamCreator.
|
|
62257
|
+
async getShortSalesReport(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, compareSameTime?: boolean, baseline?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<SalesReportShortResponseDto>> {
|
|
62258
|
+
const localVarAxiosArgs = await localVarAxiosParamCreator.getShortSalesReport(businessIds, timeSpan, start, end, timezone, apps, parts, breakdown, language, compareStart, compareEnd, compareSameTime, baseline, options);
|
|
59201
62259
|
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
|
|
59202
62260
|
},
|
|
59203
62261
|
/**
|
|
@@ -59227,6 +62285,41 @@ export const ReportApiFp = function(configuration?: Configuration) {
|
|
|
59227
62285
|
export const ReportApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {
|
|
59228
62286
|
const localVarFp = ReportApiFp(configuration)
|
|
59229
62287
|
return {
|
|
62288
|
+
/**
|
|
62289
|
+
* The period GET /api/v6/report/sales would add up, for the same venues, apps, time zone and breakdown, with the same access: each group\'s pairs of base items (an item\'s own line, never an option) sold in the most orders, each order once, with every order of each item, so percentOfItemA is exact: of the orders with A, how many also had B. Each venue-day keeps its top 25 pairs (daily_item_pairs); a group whose daysWithPairsCut is not 0 answers each pair\'s orders as a lower bound. itemKey answers the pairs of one item only.
|
|
62290
|
+
* @summary Items bought together in one order, over the period
|
|
62291
|
+
* @param {Array<number>} businessIds The venues asked about, by business id
|
|
62292
|
+
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
62293
|
+
* @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62294
|
+
* @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62295
|
+
* @param {string} [timezone] The time zone the period is read in, IANA. Absent: the first venue\'s own (Business.timeZone)
|
|
62296
|
+
* @param {Array<ReportApp>} [apps] The apps to add up, the parameter repeated or a JSON list. Absent: all four
|
|
62297
|
+
* @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
|
|
62298
|
+
* @param {string} [language] Accepted and not read, so a request copied from the portal\'s report works: the report has no text to translate
|
|
62299
|
+
* @param {string} [itemKey] Only the pairs with this item, by its key (an item\'s itemKey of an earlier answer: the POS posId, the online product id). Absent: every pair
|
|
62300
|
+
* @param {number} [limit] How many pairs each group answers, most orders first: 1 to 100. Absent: 20
|
|
62301
|
+
* @param {*} [options] Override http request option.
|
|
62302
|
+
* @throws {RequiredError}
|
|
62303
|
+
*/
|
|
62304
|
+
getBoughtTogether(businessIds: Array<number>, timeSpan?: TimeSpan, start?: string, end?: string, timezone?: string, apps?: Array<ReportApp>, breakdown?: ReportBreakdown, language?: string, itemKey?: string, limit?: number, options?: any): AxiosPromise<SalesReportBoughtTogetherResponseDto> {
|
|
62305
|
+
return localVarFp.getBoughtTogether(businessIds, timeSpan, start, end, timezone, apps, breakdown, language, itemKey, limit, options).then((request) => request(axios, basePath));
|
|
62306
|
+
},
|
|
62307
|
+
/**
|
|
62308
|
+
* The same report, rendered by the same generator, as the PDF the report e-mail (POST /api/v6/report/email) attaches, answered as the file itself instead of e-mailed. The period is the e-mail\'s: timeSpan DAY (the venue\'s business day), WEEK, MONTH, YEAR, or CUSTOM between start and end. A till\'s ticket gets it narrowed to the person on the till, as the e-mail is. Answers application/pdf with Content-Disposition attachment and the file\'s name.
|
|
62309
|
+
* @summary End-of-day sales report of a venue as a PDF file to download, for a day, week, month, year or custom period
|
|
62310
|
+
* @param {number} businessId The venue the file is of, by business id
|
|
62311
|
+
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
62312
|
+
* @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62313
|
+
* @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62314
|
+
* @param {string} [timezone] The IANA time zone the period\'s days are counted in. Absent: the venue\'s own
|
|
62315
|
+
* @param {ProviderEnum} [provider] The order source the report counts. Absent: MunchiPos, as the till\'s report
|
|
62316
|
+
* @param {ReportLanguage} [language] The language the file is printed in. Absent: English
|
|
62317
|
+
* @param {*} [options] Override http request option.
|
|
62318
|
+
* @throws {RequiredError}
|
|
62319
|
+
*/
|
|
62320
|
+
getEndOfDayReportFile(businessId: number, timeSpan?: TimeSpan, start?: string, end?: string, timezone?: string, provider?: ProviderEnum, language?: ReportLanguage, options?: any): AxiosPromise<File> {
|
|
62321
|
+
return localVarFp.getEndOfDayReportFile(businessId, timeSpan, start, end, timezone, provider, language, options).then((request) => request(axios, basePath));
|
|
62322
|
+
},
|
|
59230
62323
|
/**
|
|
59231
62324
|
*
|
|
59232
62325
|
* @summary Get end-of-day financial report (V5)
|
|
@@ -59256,12 +62349,86 @@ export const ReportApiFactory = function (configuration?: Configuration, basePat
|
|
|
59256
62349
|
* @param {string} [language] Accepted and not read, so a request copied from the portal\'s report works: the report has no text to translate
|
|
59257
62350
|
* @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\'s time zone; not later than today. Neither sent: no comparison, and the answer is as before. Sent without compareEnd: refused
|
|
59258
62351
|
* @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
|
|
62352
|
+
* @param {boolean} [compareSameTime] With compareStart and compareEnd, true compares up to the same time: while the report\'s last day is still running, both last days, the report\'s and the compared one, are added up only to the last full hour the data has reached, on each venue\'s own clock (today until 14:00 against that day until 14:00), so neither side counts minutes the other does not; earlier days stay whole. Each group whose compared day was cut answers comparison.comparedUntil. Only totals are cut (salesReport\'s and paymentReport.summary\'s totals, totalDiscounts, orderCount, averageOrderValue, the changes and the day\'s dailyBreakdown); the lists (categories, items, VAT rates, payment methods, discounts) of the compared last day stay whole, since the hours hold totals only, not lines per item, payment method, VAT rate or discount. A day without hours yet is compared whole. Absent or false: the comparison is as before
|
|
59259
62353
|
* @param {string} [baseline] One group of the answer every other group is compared with: venue:<id> with breakdown venue, app:<app> with breakdown app, venue:<id>,app:<app> 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\'s answers changesFromBaselineLeftOut instead. Refused when the breakdown does not split on what it names, or it names a venue or app not asked
|
|
59260
62354
|
* @param {*} [options] Override http request option.
|
|
59261
62355
|
* @throws {RequiredError}
|
|
59262
62356
|
*/
|
|
59263
|
-
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> {
|
|
59264
|
-
return localVarFp.getSalesReport(businessIds, timeSpan, start, end, timezone, apps, parts, breakdown, language, compareStart, compareEnd, baseline, options).then((request) => request(axios, basePath));
|
|
62357
|
+
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, compareSameTime?: boolean, baseline?: string, options?: any): AxiosPromise<SalesReportResponseDto> {
|
|
62358
|
+
return localVarFp.getSalesReport(businessIds, timeSpan, start, end, timezone, apps, parts, breakdown, language, compareStart, compareEnd, compareSameTime, baseline, options).then((request) => request(axios, basePath));
|
|
62359
|
+
},
|
|
62360
|
+
/**
|
|
62361
|
+
* The venue\'s sales report over the channels it has enabled (its active providers: MunchiPos is POS; MunchiKiosk, MunchiKioskV2 and Kiosk are the kiosk; Storefront is the storefront and the mobile app), added together: the same report GET /api/v6/report/sales answers for those apps with breakdown none, so its totals are that route\'s. The PDF prints a summary (channels, orders, average order value, gross sales, refunds), the sales breakdown (categories, items, VAT) and the payments breakdown (payment methods, vouchers, tips, discounts). With format xlsx the same report is an Excel workbook of plain numbers in the venue\'s currency, with the PDF\'s totals: sheets Summary, Items (every item and every option on its own row), Categories, VAT by rate, Payments, Vouchers & extras and Discounts. The period is whole business days, as that route reads them: timeSpan DAY, WEEK, MONTH or YEAR, or CUSTOM between start and end. Answers application/pdf (format pdf, the default) or application/vnd.openxmlformats-officedocument.spreadsheetml.sheet (format xlsx) with Content-Disposition attachment, named sales-report-<businessId>-<first day>-<last day>.pdf or .xlsx.
|
|
62362
|
+
* @summary Sales report of a venue, every channel it has enabled (POS, kiosk, storefront and mobile app), as a PDF or Excel (xlsx) file to download
|
|
62363
|
+
* @param {number} businessId The venue the file is of, by business id
|
|
62364
|
+
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
62365
|
+
* @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62366
|
+
* @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62367
|
+
* @param {string} [timezone] The time zone the period is read in, IANA. Absent: the venue\'s own (Business.timeZone)
|
|
62368
|
+
* @param {ReportLanguage} [language] The language the file is printed in. Absent: English
|
|
62369
|
+
* @param {FileFormat} [format] The file\'s format: pdf, or xlsx for an Excel workbook of the same report with every item and option on its own row. Absent: pdf
|
|
62370
|
+
* @param {*} [options] Override http request option.
|
|
62371
|
+
* @throws {RequiredError}
|
|
62372
|
+
*/
|
|
62373
|
+
getSalesReportFile(businessId: number, timeSpan?: TimeSpan, start?: string, end?: string, timezone?: string, language?: ReportLanguage, format?: FileFormat, options?: any): AxiosPromise<File> {
|
|
62374
|
+
return localVarFp.getSalesReportFile(businessId, timeSpan, start, end, timezone, language, format, options).then((request) => request(axios, basePath));
|
|
62375
|
+
},
|
|
62376
|
+
/**
|
|
62377
|
+
* The period GET /api/v6/report/sales would add up, for the same venues, apps, time zone and breakdown, with the same access, per hour of each venue\'s own clock (hourly_summary): each hour\'s orders and totalWithTax, added up by the report\'s own rules, and their average over the period\'s calendar days, of isoWeekday only when it is sent. Busy hours: a month, its averageOrderCount. A normal Tuesday beside today: the last 8 weeks with isoWeekday 2, against today\'s own hours. A day sold on before hours were kept answers in no hour and is counted in daysWithoutHours.
|
|
62378
|
+
* @summary Sales of the venues and apps per hour of the day, with each hour\'s average day
|
|
62379
|
+
* @param {Array<number>} businessIds The venues asked about, by business id
|
|
62380
|
+
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
62381
|
+
* @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62382
|
+
* @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62383
|
+
* @param {string} [timezone] The time zone the period is read in, IANA. Absent: the first venue\'s own (Business.timeZone)
|
|
62384
|
+
* @param {Array<ReportApp>} [apps] The apps to add up, the parameter repeated or a JSON list. Absent: all four
|
|
62385
|
+
* @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
|
|
62386
|
+
* @param {string} [language] Accepted and not read, so a request copied from the portal\'s report works: the report has no text to translate
|
|
62387
|
+
* @param {number} [isoWeekday] Only the business days of this ISO weekday count, 1 Monday to 7 Sunday, in the report\'s time zone; the average then is over those days. Absent: every day of the period. A normal Tuesday: the last 8 weeks before today with isoWeekday 2
|
|
62388
|
+
* @param {*} [options] Override http request option.
|
|
62389
|
+
* @throws {RequiredError}
|
|
62390
|
+
*/
|
|
62391
|
+
getSalesReportHours(businessIds: Array<number>, timeSpan?: TimeSpan, start?: string, end?: string, timezone?: string, apps?: Array<ReportApp>, breakdown?: ReportBreakdown, language?: string, isoWeekday?: number, options?: any): AxiosPromise<SalesReportHoursResponseDto> {
|
|
62392
|
+
return localVarFp.getSalesReportHours(businessIds, timeSpan, start, end, timezone, apps, breakdown, language, isoWeekday, options).then((request) => request(axios, basePath));
|
|
62393
|
+
},
|
|
62394
|
+
/**
|
|
62395
|
+
* The period GET /api/v6/report/sales would add up, for the same venues, apps, time zone and breakdown, with the same access, per order type (daily_order_types): each type\'s orders and sales, added up by the report\'s own rules. The till and the kiosk write dine_in or pick_up, the online store\'s Vendure dine_in, pickup or delivery; anything else, and an online order counted from its Postgres copy, is unknown, never guessed. A day sold on before order types were kept answers in no type and is counted in daysWithoutOrderTypes.
|
|
62396
|
+
* @summary Sales of the venues and apps per order type: eat in, takeaway, delivery
|
|
62397
|
+
* @param {Array<number>} businessIds The venues asked about, by business id
|
|
62398
|
+
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
62399
|
+
* @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62400
|
+
* @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62401
|
+
* @param {string} [timezone] The time zone the period is read in, IANA. Absent: the first venue\'s own (Business.timeZone)
|
|
62402
|
+
* @param {Array<ReportApp>} [apps] The apps to add up, the parameter repeated or a JSON list. Absent: all four
|
|
62403
|
+
* @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
|
|
62404
|
+
* @param {string} [language] Accepted and not read, so a request copied from the portal\'s report works: the report has no text to translate
|
|
62405
|
+
* @param {*} [options] Override http request option.
|
|
62406
|
+
* @throws {RequiredError}
|
|
62407
|
+
*/
|
|
62408
|
+
getSalesReportOrderTypes(businessIds: Array<number>, timeSpan?: TimeSpan, start?: string, end?: string, timezone?: string, apps?: Array<ReportApp>, breakdown?: ReportBreakdown, language?: string, options?: any): AxiosPromise<SalesReportOrderTypesResponseDto> {
|
|
62409
|
+
return localVarFp.getSalesReportOrderTypes(businessIds, timeSpan, start, end, timezone, apps, breakdown, language, options).then((request) => request(axios, basePath));
|
|
62410
|
+
},
|
|
62411
|
+
/**
|
|
62412
|
+
* The report GET /api/v6/report/sales answers for the same query, with the same access, short enough to read whole: the same totals, orderCount, averageOrderValue, days, VAT, payments, discounts, comparison, changes and changesFromBaseline, every amount rounded to the currency\'s minor digits; with part items, each category\'s totals (with and without VAT) without its items, and topItemsBySales and topItemsByQuantity, the 10 best-selling items with an item of the same name in several categories added up once. For every item with its VAT, its net and its options, read GET /api/v6/report/sales.
|
|
62413
|
+
* @summary Sales report of the venues and apps, short: totals, categories and best-selling items
|
|
62414
|
+
* @param {Array<number>} businessIds The venues asked about, by business id
|
|
62415
|
+
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
62416
|
+
* @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62417
|
+
* @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62418
|
+
* @param {string} [timezone] The time zone the period is read in, IANA. Absent: the first venue\'s own (Business.timeZone)
|
|
62419
|
+
* @param {Array<ReportApp>} [apps] The apps to add up, the parameter repeated or a JSON list. Absent: all four
|
|
62420
|
+
* @param {Array<ReportPart>} [parts] The parts to answer, the parameter repeated or a JSON list; only their daily tables are read. Absent: all five
|
|
62421
|
+
* @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
|
|
62422
|
+
* @param {string} [language] Accepted and not read, so a request copied from the portal\'s report works: the report has no text to translate
|
|
62423
|
+
* @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\'s time zone; not later than today. Neither sent: no comparison, and the answer is as before. Sent without compareEnd: refused
|
|
62424
|
+
* @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
|
|
62425
|
+
* @param {boolean} [compareSameTime] With compareStart and compareEnd, true compares up to the same time: while the report\'s last day is still running, both last days, the report\'s and the compared one, are added up only to the last full hour the data has reached, on each venue\'s own clock (today until 14:00 against that day until 14:00), so neither side counts minutes the other does not; earlier days stay whole. Each group whose compared day was cut answers comparison.comparedUntil. Only totals are cut (salesReport\'s and paymentReport.summary\'s totals, totalDiscounts, orderCount, averageOrderValue, the changes and the day\'s dailyBreakdown); the lists (categories, items, VAT rates, payment methods, discounts) of the compared last day stay whole, since the hours hold totals only, not lines per item, payment method, VAT rate or discount. A day without hours yet is compared whole. Absent or false: the comparison is as before
|
|
62426
|
+
* @param {string} [baseline] One group of the answer every other group is compared with: venue:<id> with breakdown venue, app:<app> with breakdown app, venue:<id>,app:<app> 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\'s answers changesFromBaselineLeftOut instead. Refused when the breakdown does not split on what it names, or it names a venue or app not asked
|
|
62427
|
+
* @param {*} [options] Override http request option.
|
|
62428
|
+
* @throws {RequiredError}
|
|
62429
|
+
*/
|
|
62430
|
+
getShortSalesReport(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, compareSameTime?: boolean, baseline?: string, options?: any): AxiosPromise<SalesReportShortResponseDto> {
|
|
62431
|
+
return localVarFp.getShortSalesReport(businessIds, timeSpan, start, end, timezone, apps, parts, breakdown, language, compareStart, compareEnd, compareSameTime, baseline, options).then((request) => request(axios, basePath));
|
|
59265
62432
|
},
|
|
59266
62433
|
/**
|
|
59267
62434
|
*
|
|
@@ -59288,6 +62455,41 @@ export const ReportApiFactory = function (configuration?: Configuration, basePat
|
|
|
59288
62455
|
* @interface ReportApi
|
|
59289
62456
|
*/
|
|
59290
62457
|
export interface ReportApiInterface {
|
|
62458
|
+
/**
|
|
62459
|
+
* The period GET /api/v6/report/sales would add up, for the same venues, apps, time zone and breakdown, with the same access: each group\'s pairs of base items (an item\'s own line, never an option) sold in the most orders, each order once, with every order of each item, so percentOfItemA is exact: of the orders with A, how many also had B. Each venue-day keeps its top 25 pairs (daily_item_pairs); a group whose daysWithPairsCut is not 0 answers each pair\'s orders as a lower bound. itemKey answers the pairs of one item only.
|
|
62460
|
+
* @summary Items bought together in one order, over the period
|
|
62461
|
+
* @param {Array<number>} businessIds The venues asked about, by business id
|
|
62462
|
+
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
62463
|
+
* @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62464
|
+
* @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62465
|
+
* @param {string} [timezone] The time zone the period is read in, IANA. Absent: the first venue\'s own (Business.timeZone)
|
|
62466
|
+
* @param {Array<ReportApp>} [apps] The apps to add up, the parameter repeated or a JSON list. Absent: all four
|
|
62467
|
+
* @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
|
|
62468
|
+
* @param {string} [language] Accepted and not read, so a request copied from the portal\'s report works: the report has no text to translate
|
|
62469
|
+
* @param {string} [itemKey] Only the pairs with this item, by its key (an item\'s itemKey of an earlier answer: the POS posId, the online product id). Absent: every pair
|
|
62470
|
+
* @param {number} [limit] How many pairs each group answers, most orders first: 1 to 100. Absent: 20
|
|
62471
|
+
* @param {*} [options] Override http request option.
|
|
62472
|
+
* @throws {RequiredError}
|
|
62473
|
+
* @memberof ReportApiInterface
|
|
62474
|
+
*/
|
|
62475
|
+
getBoughtTogether(businessIds: Array<number>, timeSpan?: TimeSpan, start?: string, end?: string, timezone?: string, apps?: Array<ReportApp>, breakdown?: ReportBreakdown, language?: string, itemKey?: string, limit?: number, options?: AxiosRequestConfig): AxiosPromise<SalesReportBoughtTogetherResponseDto>;
|
|
62476
|
+
|
|
62477
|
+
/**
|
|
62478
|
+
* The same report, rendered by the same generator, as the PDF the report e-mail (POST /api/v6/report/email) attaches, answered as the file itself instead of e-mailed. The period is the e-mail\'s: timeSpan DAY (the venue\'s business day), WEEK, MONTH, YEAR, or CUSTOM between start and end. A till\'s ticket gets it narrowed to the person on the till, as the e-mail is. Answers application/pdf with Content-Disposition attachment and the file\'s name.
|
|
62479
|
+
* @summary End-of-day sales report of a venue as a PDF file to download, for a day, week, month, year or custom period
|
|
62480
|
+
* @param {number} businessId The venue the file is of, by business id
|
|
62481
|
+
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
62482
|
+
* @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62483
|
+
* @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62484
|
+
* @param {string} [timezone] The IANA time zone the period\'s days are counted in. Absent: the venue\'s own
|
|
62485
|
+
* @param {ProviderEnum} [provider] The order source the report counts. Absent: MunchiPos, as the till\'s report
|
|
62486
|
+
* @param {ReportLanguage} [language] The language the file is printed in. Absent: English
|
|
62487
|
+
* @param {*} [options] Override http request option.
|
|
62488
|
+
* @throws {RequiredError}
|
|
62489
|
+
* @memberof ReportApiInterface
|
|
62490
|
+
*/
|
|
62491
|
+
getEndOfDayReportFile(businessId: number, timeSpan?: TimeSpan, start?: string, end?: string, timezone?: string, provider?: ProviderEnum, language?: ReportLanguage, options?: AxiosRequestConfig): AxiosPromise<File>;
|
|
62492
|
+
|
|
59291
62493
|
/**
|
|
59292
62494
|
*
|
|
59293
62495
|
* @summary Get end-of-day financial report (V5)
|
|
@@ -59317,12 +62519,86 @@ export interface ReportApiInterface {
|
|
|
59317
62519
|
* @param {string} [language] Accepted and not read, so a request copied from the portal\'s report works: the report has no text to translate
|
|
59318
62520
|
* @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\'s time zone; not later than today. Neither sent: no comparison, and the answer is as before. Sent without compareEnd: refused
|
|
59319
62521
|
* @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
|
|
62522
|
+
* @param {boolean} [compareSameTime] With compareStart and compareEnd, true compares up to the same time: while the report\'s last day is still running, both last days, the report\'s and the compared one, are added up only to the last full hour the data has reached, on each venue\'s own clock (today until 14:00 against that day until 14:00), so neither side counts minutes the other does not; earlier days stay whole. Each group whose compared day was cut answers comparison.comparedUntil. Only totals are cut (salesReport\'s and paymentReport.summary\'s totals, totalDiscounts, orderCount, averageOrderValue, the changes and the day\'s dailyBreakdown); the lists (categories, items, VAT rates, payment methods, discounts) of the compared last day stay whole, since the hours hold totals only, not lines per item, payment method, VAT rate or discount. A day without hours yet is compared whole. Absent or false: the comparison is as before
|
|
59320
62523
|
* @param {string} [baseline] One group of the answer every other group is compared with: venue:<id> with breakdown venue, app:<app> with breakdown app, venue:<id>,app:<app> 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\'s answers changesFromBaselineLeftOut instead. Refused when the breakdown does not split on what it names, or it names a venue or app not asked
|
|
59321
62524
|
* @param {*} [options] Override http request option.
|
|
59322
62525
|
* @throws {RequiredError}
|
|
59323
62526
|
* @memberof ReportApiInterface
|
|
59324
62527
|
*/
|
|
59325
|
-
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>;
|
|
62528
|
+
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, compareSameTime?: boolean, baseline?: string, options?: AxiosRequestConfig): AxiosPromise<SalesReportResponseDto>;
|
|
62529
|
+
|
|
62530
|
+
/**
|
|
62531
|
+
* The venue\'s sales report over the channels it has enabled (its active providers: MunchiPos is POS; MunchiKiosk, MunchiKioskV2 and Kiosk are the kiosk; Storefront is the storefront and the mobile app), added together: the same report GET /api/v6/report/sales answers for those apps with breakdown none, so its totals are that route\'s. The PDF prints a summary (channels, orders, average order value, gross sales, refunds), the sales breakdown (categories, items, VAT) and the payments breakdown (payment methods, vouchers, tips, discounts). With format xlsx the same report is an Excel workbook of plain numbers in the venue\'s currency, with the PDF\'s totals: sheets Summary, Items (every item and every option on its own row), Categories, VAT by rate, Payments, Vouchers & extras and Discounts. The period is whole business days, as that route reads them: timeSpan DAY, WEEK, MONTH or YEAR, or CUSTOM between start and end. Answers application/pdf (format pdf, the default) or application/vnd.openxmlformats-officedocument.spreadsheetml.sheet (format xlsx) with Content-Disposition attachment, named sales-report-<businessId>-<first day>-<last day>.pdf or .xlsx.
|
|
62532
|
+
* @summary Sales report of a venue, every channel it has enabled (POS, kiosk, storefront and mobile app), as a PDF or Excel (xlsx) file to download
|
|
62533
|
+
* @param {number} businessId The venue the file is of, by business id
|
|
62534
|
+
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
62535
|
+
* @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62536
|
+
* @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62537
|
+
* @param {string} [timezone] The time zone the period is read in, IANA. Absent: the venue\'s own (Business.timeZone)
|
|
62538
|
+
* @param {ReportLanguage} [language] The language the file is printed in. Absent: English
|
|
62539
|
+
* @param {FileFormat} [format] The file\'s format: pdf, or xlsx for an Excel workbook of the same report with every item and option on its own row. Absent: pdf
|
|
62540
|
+
* @param {*} [options] Override http request option.
|
|
62541
|
+
* @throws {RequiredError}
|
|
62542
|
+
* @memberof ReportApiInterface
|
|
62543
|
+
*/
|
|
62544
|
+
getSalesReportFile(businessId: number, timeSpan?: TimeSpan, start?: string, end?: string, timezone?: string, language?: ReportLanguage, format?: FileFormat, options?: AxiosRequestConfig): AxiosPromise<File>;
|
|
62545
|
+
|
|
62546
|
+
/**
|
|
62547
|
+
* The period GET /api/v6/report/sales would add up, for the same venues, apps, time zone and breakdown, with the same access, per hour of each venue\'s own clock (hourly_summary): each hour\'s orders and totalWithTax, added up by the report\'s own rules, and their average over the period\'s calendar days, of isoWeekday only when it is sent. Busy hours: a month, its averageOrderCount. A normal Tuesday beside today: the last 8 weeks with isoWeekday 2, against today\'s own hours. A day sold on before hours were kept answers in no hour and is counted in daysWithoutHours.
|
|
62548
|
+
* @summary Sales of the venues and apps per hour of the day, with each hour\'s average day
|
|
62549
|
+
* @param {Array<number>} businessIds The venues asked about, by business id
|
|
62550
|
+
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
62551
|
+
* @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62552
|
+
* @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62553
|
+
* @param {string} [timezone] The time zone the period is read in, IANA. Absent: the first venue\'s own (Business.timeZone)
|
|
62554
|
+
* @param {Array<ReportApp>} [apps] The apps to add up, the parameter repeated or a JSON list. Absent: all four
|
|
62555
|
+
* @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
|
|
62556
|
+
* @param {string} [language] Accepted and not read, so a request copied from the portal\'s report works: the report has no text to translate
|
|
62557
|
+
* @param {number} [isoWeekday] Only the business days of this ISO weekday count, 1 Monday to 7 Sunday, in the report\'s time zone; the average then is over those days. Absent: every day of the period. A normal Tuesday: the last 8 weeks before today with isoWeekday 2
|
|
62558
|
+
* @param {*} [options] Override http request option.
|
|
62559
|
+
* @throws {RequiredError}
|
|
62560
|
+
* @memberof ReportApiInterface
|
|
62561
|
+
*/
|
|
62562
|
+
getSalesReportHours(businessIds: Array<number>, timeSpan?: TimeSpan, start?: string, end?: string, timezone?: string, apps?: Array<ReportApp>, breakdown?: ReportBreakdown, language?: string, isoWeekday?: number, options?: AxiosRequestConfig): AxiosPromise<SalesReportHoursResponseDto>;
|
|
62563
|
+
|
|
62564
|
+
/**
|
|
62565
|
+
* The period GET /api/v6/report/sales would add up, for the same venues, apps, time zone and breakdown, with the same access, per order type (daily_order_types): each type\'s orders and sales, added up by the report\'s own rules. The till and the kiosk write dine_in or pick_up, the online store\'s Vendure dine_in, pickup or delivery; anything else, and an online order counted from its Postgres copy, is unknown, never guessed. A day sold on before order types were kept answers in no type and is counted in daysWithoutOrderTypes.
|
|
62566
|
+
* @summary Sales of the venues and apps per order type: eat in, takeaway, delivery
|
|
62567
|
+
* @param {Array<number>} businessIds The venues asked about, by business id
|
|
62568
|
+
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
62569
|
+
* @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62570
|
+
* @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62571
|
+
* @param {string} [timezone] The time zone the period is read in, IANA. Absent: the first venue\'s own (Business.timeZone)
|
|
62572
|
+
* @param {Array<ReportApp>} [apps] The apps to add up, the parameter repeated or a JSON list. Absent: all four
|
|
62573
|
+
* @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
|
|
62574
|
+
* @param {string} [language] Accepted and not read, so a request copied from the portal\'s report works: the report has no text to translate
|
|
62575
|
+
* @param {*} [options] Override http request option.
|
|
62576
|
+
* @throws {RequiredError}
|
|
62577
|
+
* @memberof ReportApiInterface
|
|
62578
|
+
*/
|
|
62579
|
+
getSalesReportOrderTypes(businessIds: Array<number>, timeSpan?: TimeSpan, start?: string, end?: string, timezone?: string, apps?: Array<ReportApp>, breakdown?: ReportBreakdown, language?: string, options?: AxiosRequestConfig): AxiosPromise<SalesReportOrderTypesResponseDto>;
|
|
62580
|
+
|
|
62581
|
+
/**
|
|
62582
|
+
* The report GET /api/v6/report/sales answers for the same query, with the same access, short enough to read whole: the same totals, orderCount, averageOrderValue, days, VAT, payments, discounts, comparison, changes and changesFromBaseline, every amount rounded to the currency\'s minor digits; with part items, each category\'s totals (with and without VAT) without its items, and topItemsBySales and topItemsByQuantity, the 10 best-selling items with an item of the same name in several categories added up once. For every item with its VAT, its net and its options, read GET /api/v6/report/sales.
|
|
62583
|
+
* @summary Sales report of the venues and apps, short: totals, categories and best-selling items
|
|
62584
|
+
* @param {Array<number>} businessIds The venues asked about, by business id
|
|
62585
|
+
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
62586
|
+
* @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62587
|
+
* @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62588
|
+
* @param {string} [timezone] The time zone the period is read in, IANA. Absent: the first venue\'s own (Business.timeZone)
|
|
62589
|
+
* @param {Array<ReportApp>} [apps] The apps to add up, the parameter repeated or a JSON list. Absent: all four
|
|
62590
|
+
* @param {Array<ReportPart>} [parts] The parts to answer, the parameter repeated or a JSON list; only their daily tables are read. Absent: all five
|
|
62591
|
+
* @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
|
|
62592
|
+
* @param {string} [language] Accepted and not read, so a request copied from the portal\'s report works: the report has no text to translate
|
|
62593
|
+
* @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\'s time zone; not later than today. Neither sent: no comparison, and the answer is as before. Sent without compareEnd: refused
|
|
62594
|
+
* @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
|
|
62595
|
+
* @param {boolean} [compareSameTime] With compareStart and compareEnd, true compares up to the same time: while the report\'s last day is still running, both last days, the report\'s and the compared one, are added up only to the last full hour the data has reached, on each venue\'s own clock (today until 14:00 against that day until 14:00), so neither side counts minutes the other does not; earlier days stay whole. Each group whose compared day was cut answers comparison.comparedUntil. Only totals are cut (salesReport\'s and paymentReport.summary\'s totals, totalDiscounts, orderCount, averageOrderValue, the changes and the day\'s dailyBreakdown); the lists (categories, items, VAT rates, payment methods, discounts) of the compared last day stay whole, since the hours hold totals only, not lines per item, payment method, VAT rate or discount. A day without hours yet is compared whole. Absent or false: the comparison is as before
|
|
62596
|
+
* @param {string} [baseline] One group of the answer every other group is compared with: venue:<id> with breakdown venue, app:<app> with breakdown app, venue:<id>,app:<app> 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\'s answers changesFromBaselineLeftOut instead. Refused when the breakdown does not split on what it names, or it names a venue or app not asked
|
|
62597
|
+
* @param {*} [options] Override http request option.
|
|
62598
|
+
* @throws {RequiredError}
|
|
62599
|
+
* @memberof ReportApiInterface
|
|
62600
|
+
*/
|
|
62601
|
+
getShortSalesReport(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, compareSameTime?: boolean, baseline?: string, options?: AxiosRequestConfig): AxiosPromise<SalesReportShortResponseDto>;
|
|
59326
62602
|
|
|
59327
62603
|
/**
|
|
59328
62604
|
*
|
|
@@ -59349,6 +62625,45 @@ export interface ReportApiInterface {
|
|
|
59349
62625
|
* @extends {BaseAPI}
|
|
59350
62626
|
*/
|
|
59351
62627
|
export class ReportApi extends BaseAPI implements ReportApiInterface {
|
|
62628
|
+
/**
|
|
62629
|
+
* The period GET /api/v6/report/sales would add up, for the same venues, apps, time zone and breakdown, with the same access: each group\'s pairs of base items (an item\'s own line, never an option) sold in the most orders, each order once, with every order of each item, so percentOfItemA is exact: of the orders with A, how many also had B. Each venue-day keeps its top 25 pairs (daily_item_pairs); a group whose daysWithPairsCut is not 0 answers each pair\'s orders as a lower bound. itemKey answers the pairs of one item only.
|
|
62630
|
+
* @summary Items bought together in one order, over the period
|
|
62631
|
+
* @param {Array<number>} businessIds The venues asked about, by business id
|
|
62632
|
+
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
62633
|
+
* @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62634
|
+
* @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62635
|
+
* @param {string} [timezone] The time zone the period is read in, IANA. Absent: the first venue\'s own (Business.timeZone)
|
|
62636
|
+
* @param {Array<ReportApp>} [apps] The apps to add up, the parameter repeated or a JSON list. Absent: all four
|
|
62637
|
+
* @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
|
|
62638
|
+
* @param {string} [language] Accepted and not read, so a request copied from the portal\'s report works: the report has no text to translate
|
|
62639
|
+
* @param {string} [itemKey] Only the pairs with this item, by its key (an item\'s itemKey of an earlier answer: the POS posId, the online product id). Absent: every pair
|
|
62640
|
+
* @param {number} [limit] How many pairs each group answers, most orders first: 1 to 100. Absent: 20
|
|
62641
|
+
* @param {*} [options] Override http request option.
|
|
62642
|
+
* @throws {RequiredError}
|
|
62643
|
+
* @memberof ReportApi
|
|
62644
|
+
*/
|
|
62645
|
+
public getBoughtTogether(businessIds: Array<number>, timeSpan?: TimeSpan, start?: string, end?: string, timezone?: string, apps?: Array<ReportApp>, breakdown?: ReportBreakdown, language?: string, itemKey?: string, limit?: number, options?: AxiosRequestConfig) {
|
|
62646
|
+
return ReportApiFp(this.configuration).getBoughtTogether(businessIds, timeSpan, start, end, timezone, apps, breakdown, language, itemKey, limit, options).then((request) => request(this.axios, this.basePath));
|
|
62647
|
+
}
|
|
62648
|
+
|
|
62649
|
+
/**
|
|
62650
|
+
* The same report, rendered by the same generator, as the PDF the report e-mail (POST /api/v6/report/email) attaches, answered as the file itself instead of e-mailed. The period is the e-mail\'s: timeSpan DAY (the venue\'s business day), WEEK, MONTH, YEAR, or CUSTOM between start and end. A till\'s ticket gets it narrowed to the person on the till, as the e-mail is. Answers application/pdf with Content-Disposition attachment and the file\'s name.
|
|
62651
|
+
* @summary End-of-day sales report of a venue as a PDF file to download, for a day, week, month, year or custom period
|
|
62652
|
+
* @param {number} businessId The venue the file is of, by business id
|
|
62653
|
+
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
62654
|
+
* @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62655
|
+
* @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62656
|
+
* @param {string} [timezone] The IANA time zone the period\'s days are counted in. Absent: the venue\'s own
|
|
62657
|
+
* @param {ProviderEnum} [provider] The order source the report counts. Absent: MunchiPos, as the till\'s report
|
|
62658
|
+
* @param {ReportLanguage} [language] The language the file is printed in. Absent: English
|
|
62659
|
+
* @param {*} [options] Override http request option.
|
|
62660
|
+
* @throws {RequiredError}
|
|
62661
|
+
* @memberof ReportApi
|
|
62662
|
+
*/
|
|
62663
|
+
public getEndOfDayReportFile(businessId: number, timeSpan?: TimeSpan, start?: string, end?: string, timezone?: string, provider?: ProviderEnum, language?: ReportLanguage, options?: AxiosRequestConfig) {
|
|
62664
|
+
return ReportApiFp(this.configuration).getEndOfDayReportFile(businessId, timeSpan, start, end, timezone, provider, language, options).then((request) => request(this.axios, this.basePath));
|
|
62665
|
+
}
|
|
62666
|
+
|
|
59352
62667
|
/**
|
|
59353
62668
|
*
|
|
59354
62669
|
* @summary Get end-of-day financial report (V5)
|
|
@@ -59380,13 +62695,95 @@ export class ReportApi extends BaseAPI implements ReportApiInterface {
|
|
|
59380
62695
|
* @param {string} [language] Accepted and not read, so a request copied from the portal\'s report works: the report has no text to translate
|
|
59381
62696
|
* @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\'s time zone; not later than today. Neither sent: no comparison, and the answer is as before. Sent without compareEnd: refused
|
|
59382
62697
|
* @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
|
|
62698
|
+
* @param {boolean} [compareSameTime] With compareStart and compareEnd, true compares up to the same time: while the report\'s last day is still running, both last days, the report\'s and the compared one, are added up only to the last full hour the data has reached, on each venue\'s own clock (today until 14:00 against that day until 14:00), so neither side counts minutes the other does not; earlier days stay whole. Each group whose compared day was cut answers comparison.comparedUntil. Only totals are cut (salesReport\'s and paymentReport.summary\'s totals, totalDiscounts, orderCount, averageOrderValue, the changes and the day\'s dailyBreakdown); the lists (categories, items, VAT rates, payment methods, discounts) of the compared last day stay whole, since the hours hold totals only, not lines per item, payment method, VAT rate or discount. A day without hours yet is compared whole. Absent or false: the comparison is as before
|
|
62699
|
+
* @param {string} [baseline] One group of the answer every other group is compared with: venue:<id> with breakdown venue, app:<app> with breakdown app, venue:<id>,app:<app> 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\'s answers changesFromBaselineLeftOut instead. Refused when the breakdown does not split on what it names, or it names a venue or app not asked
|
|
62700
|
+
* @param {*} [options] Override http request option.
|
|
62701
|
+
* @throws {RequiredError}
|
|
62702
|
+
* @memberof ReportApi
|
|
62703
|
+
*/
|
|
62704
|
+
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, compareSameTime?: boolean, baseline?: string, options?: AxiosRequestConfig) {
|
|
62705
|
+
return ReportApiFp(this.configuration).getSalesReport(businessIds, timeSpan, start, end, timezone, apps, parts, breakdown, language, compareStart, compareEnd, compareSameTime, baseline, options).then((request) => request(this.axios, this.basePath));
|
|
62706
|
+
}
|
|
62707
|
+
|
|
62708
|
+
/**
|
|
62709
|
+
* The venue\'s sales report over the channels it has enabled (its active providers: MunchiPos is POS; MunchiKiosk, MunchiKioskV2 and Kiosk are the kiosk; Storefront is the storefront and the mobile app), added together: the same report GET /api/v6/report/sales answers for those apps with breakdown none, so its totals are that route\'s. The PDF prints a summary (channels, orders, average order value, gross sales, refunds), the sales breakdown (categories, items, VAT) and the payments breakdown (payment methods, vouchers, tips, discounts). With format xlsx the same report is an Excel workbook of plain numbers in the venue\'s currency, with the PDF\'s totals: sheets Summary, Items (every item and every option on its own row), Categories, VAT by rate, Payments, Vouchers & extras and Discounts. The period is whole business days, as that route reads them: timeSpan DAY, WEEK, MONTH or YEAR, or CUSTOM between start and end. Answers application/pdf (format pdf, the default) or application/vnd.openxmlformats-officedocument.spreadsheetml.sheet (format xlsx) with Content-Disposition attachment, named sales-report-<businessId>-<first day>-<last day>.pdf or .xlsx.
|
|
62710
|
+
* @summary Sales report of a venue, every channel it has enabled (POS, kiosk, storefront and mobile app), as a PDF or Excel (xlsx) file to download
|
|
62711
|
+
* @param {number} businessId The venue the file is of, by business id
|
|
62712
|
+
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
62713
|
+
* @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62714
|
+
* @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62715
|
+
* @param {string} [timezone] The time zone the period is read in, IANA. Absent: the venue\'s own (Business.timeZone)
|
|
62716
|
+
* @param {ReportLanguage} [language] The language the file is printed in. Absent: English
|
|
62717
|
+
* @param {FileFormat} [format] The file\'s format: pdf, or xlsx for an Excel workbook of the same report with every item and option on its own row. Absent: pdf
|
|
62718
|
+
* @param {*} [options] Override http request option.
|
|
62719
|
+
* @throws {RequiredError}
|
|
62720
|
+
* @memberof ReportApi
|
|
62721
|
+
*/
|
|
62722
|
+
public getSalesReportFile(businessId: number, timeSpan?: TimeSpan, start?: string, end?: string, timezone?: string, language?: ReportLanguage, format?: FileFormat, options?: AxiosRequestConfig) {
|
|
62723
|
+
return ReportApiFp(this.configuration).getSalesReportFile(businessId, timeSpan, start, end, timezone, language, format, options).then((request) => request(this.axios, this.basePath));
|
|
62724
|
+
}
|
|
62725
|
+
|
|
62726
|
+
/**
|
|
62727
|
+
* The period GET /api/v6/report/sales would add up, for the same venues, apps, time zone and breakdown, with the same access, per hour of each venue\'s own clock (hourly_summary): each hour\'s orders and totalWithTax, added up by the report\'s own rules, and their average over the period\'s calendar days, of isoWeekday only when it is sent. Busy hours: a month, its averageOrderCount. A normal Tuesday beside today: the last 8 weeks with isoWeekday 2, against today\'s own hours. A day sold on before hours were kept answers in no hour and is counted in daysWithoutHours.
|
|
62728
|
+
* @summary Sales of the venues and apps per hour of the day, with each hour\'s average day
|
|
62729
|
+
* @param {Array<number>} businessIds The venues asked about, by business id
|
|
62730
|
+
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
62731
|
+
* @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62732
|
+
* @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62733
|
+
* @param {string} [timezone] The time zone the period is read in, IANA. Absent: the first venue\'s own (Business.timeZone)
|
|
62734
|
+
* @param {Array<ReportApp>} [apps] The apps to add up, the parameter repeated or a JSON list. Absent: all four
|
|
62735
|
+
* @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
|
|
62736
|
+
* @param {string} [language] Accepted and not read, so a request copied from the portal\'s report works: the report has no text to translate
|
|
62737
|
+
* @param {number} [isoWeekday] Only the business days of this ISO weekday count, 1 Monday to 7 Sunday, in the report\'s time zone; the average then is over those days. Absent: every day of the period. A normal Tuesday: the last 8 weeks before today with isoWeekday 2
|
|
62738
|
+
* @param {*} [options] Override http request option.
|
|
62739
|
+
* @throws {RequiredError}
|
|
62740
|
+
* @memberof ReportApi
|
|
62741
|
+
*/
|
|
62742
|
+
public getSalesReportHours(businessIds: Array<number>, timeSpan?: TimeSpan, start?: string, end?: string, timezone?: string, apps?: Array<ReportApp>, breakdown?: ReportBreakdown, language?: string, isoWeekday?: number, options?: AxiosRequestConfig) {
|
|
62743
|
+
return ReportApiFp(this.configuration).getSalesReportHours(businessIds, timeSpan, start, end, timezone, apps, breakdown, language, isoWeekday, options).then((request) => request(this.axios, this.basePath));
|
|
62744
|
+
}
|
|
62745
|
+
|
|
62746
|
+
/**
|
|
62747
|
+
* The period GET /api/v6/report/sales would add up, for the same venues, apps, time zone and breakdown, with the same access, per order type (daily_order_types): each type\'s orders and sales, added up by the report\'s own rules. The till and the kiosk write dine_in or pick_up, the online store\'s Vendure dine_in, pickup or delivery; anything else, and an online order counted from its Postgres copy, is unknown, never guessed. A day sold on before order types were kept answers in no type and is counted in daysWithoutOrderTypes.
|
|
62748
|
+
* @summary Sales of the venues and apps per order type: eat in, takeaway, delivery
|
|
62749
|
+
* @param {Array<number>} businessIds The venues asked about, by business id
|
|
62750
|
+
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
62751
|
+
* @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62752
|
+
* @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62753
|
+
* @param {string} [timezone] The time zone the period is read in, IANA. Absent: the first venue\'s own (Business.timeZone)
|
|
62754
|
+
* @param {Array<ReportApp>} [apps] The apps to add up, the parameter repeated or a JSON list. Absent: all four
|
|
62755
|
+
* @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
|
|
62756
|
+
* @param {string} [language] Accepted and not read, so a request copied from the portal\'s report works: the report has no text to translate
|
|
62757
|
+
* @param {*} [options] Override http request option.
|
|
62758
|
+
* @throws {RequiredError}
|
|
62759
|
+
* @memberof ReportApi
|
|
62760
|
+
*/
|
|
62761
|
+
public getSalesReportOrderTypes(businessIds: Array<number>, timeSpan?: TimeSpan, start?: string, end?: string, timezone?: string, apps?: Array<ReportApp>, breakdown?: ReportBreakdown, language?: string, options?: AxiosRequestConfig) {
|
|
62762
|
+
return ReportApiFp(this.configuration).getSalesReportOrderTypes(businessIds, timeSpan, start, end, timezone, apps, breakdown, language, options).then((request) => request(this.axios, this.basePath));
|
|
62763
|
+
}
|
|
62764
|
+
|
|
62765
|
+
/**
|
|
62766
|
+
* The report GET /api/v6/report/sales answers for the same query, with the same access, short enough to read whole: the same totals, orderCount, averageOrderValue, days, VAT, payments, discounts, comparison, changes and changesFromBaseline, every amount rounded to the currency\'s minor digits; with part items, each category\'s totals (with and without VAT) without its items, and topItemsBySales and topItemsByQuantity, the 10 best-selling items with an item of the same name in several categories added up once. For every item with its VAT, its net and its options, read GET /api/v6/report/sales.
|
|
62767
|
+
* @summary Sales report of the venues and apps, short: totals, categories and best-selling items
|
|
62768
|
+
* @param {Array<number>} businessIds The venues asked about, by business id
|
|
62769
|
+
* @param {TimeSpan} [timeSpan] The period asked for: DAY, WEEK, MONTH, YEAR, or CUSTOM between start and end
|
|
62770
|
+
* @param {string} [start] The first day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62771
|
+
* @param {string} [end] The last day of a CUSTOM period, an ISO 8601 date; required with CUSTOM
|
|
62772
|
+
* @param {string} [timezone] The time zone the period is read in, IANA. Absent: the first venue\'s own (Business.timeZone)
|
|
62773
|
+
* @param {Array<ReportApp>} [apps] The apps to add up, the parameter repeated or a JSON list. Absent: all four
|
|
62774
|
+
* @param {Array<ReportPart>} [parts] The parts to answer, the parameter repeated or a JSON list; only their daily tables are read. Absent: all five
|
|
62775
|
+
* @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
|
|
62776
|
+
* @param {string} [language] Accepted and not read, so a request copied from the portal\'s report works: the report has no text to translate
|
|
62777
|
+
* @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\'s time zone; not later than today. Neither sent: no comparison, and the answer is as before. Sent without compareEnd: refused
|
|
62778
|
+
* @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
|
|
62779
|
+
* @param {boolean} [compareSameTime] With compareStart and compareEnd, true compares up to the same time: while the report\'s last day is still running, both last days, the report\'s and the compared one, are added up only to the last full hour the data has reached, on each venue\'s own clock (today until 14:00 against that day until 14:00), so neither side counts minutes the other does not; earlier days stay whole. Each group whose compared day was cut answers comparison.comparedUntil. Only totals are cut (salesReport\'s and paymentReport.summary\'s totals, totalDiscounts, orderCount, averageOrderValue, the changes and the day\'s dailyBreakdown); the lists (categories, items, VAT rates, payment methods, discounts) of the compared last day stay whole, since the hours hold totals only, not lines per item, payment method, VAT rate or discount. A day without hours yet is compared whole. Absent or false: the comparison is as before
|
|
59383
62780
|
* @param {string} [baseline] One group of the answer every other group is compared with: venue:<id> with breakdown venue, app:<app> with breakdown app, venue:<id>,app:<app> 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\'s answers changesFromBaselineLeftOut instead. Refused when the breakdown does not split on what it names, or it names a venue or app not asked
|
|
59384
62781
|
* @param {*} [options] Override http request option.
|
|
59385
62782
|
* @throws {RequiredError}
|
|
59386
62783
|
* @memberof ReportApi
|
|
59387
62784
|
*/
|
|
59388
|
-
public
|
|
59389
|
-
return ReportApiFp(this.configuration).
|
|
62785
|
+
public getShortSalesReport(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, compareSameTime?: boolean, baseline?: string, options?: AxiosRequestConfig) {
|
|
62786
|
+
return ReportApiFp(this.configuration).getShortSalesReport(businessIds, timeSpan, start, end, timezone, apps, parts, breakdown, language, compareStart, compareEnd, compareSameTime, baseline, options).then((request) => request(this.axios, this.basePath));
|
|
59390
62787
|
}
|
|
59391
62788
|
|
|
59392
62789
|
/**
|