@kreiseck/kasseneck-api 1.11.0 → 1.12.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.
Files changed (187) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/README.md +2 -1
  3. package/dist/cjs/client/aufrufe.d.ts +4 -4
  4. package/dist/cjs/client/aufrufe.js +15 -0
  5. package/dist/cjs/client/receipts.d.ts +5 -0
  6. package/dist/cjs/client/receipts.js +65 -6
  7. package/dist/cjs/enums/voucher-action.d.ts +2 -0
  8. package/dist/cjs/enums/voucher-action.js +2 -0
  9. package/dist/cjs/enums/voucher-type.d.ts +10 -0
  10. package/dist/cjs/enums/voucher-type.js +10 -0
  11. package/dist/cjs/index.d.ts +3 -3
  12. package/dist/cjs/index.js +9 -3
  13. package/dist/cjs/models/index.d.ts +3 -3
  14. package/dist/cjs/models/index.js +7 -2
  15. package/dist/cjs/models/receipt-errors.d.ts +1 -1
  16. package/dist/cjs/models/receipt-errors.js +2 -0
  17. package/dist/cjs/models/receipt-item.d.ts +11 -3
  18. package/dist/cjs/models/receipt-item.js +22 -1
  19. package/dist/cjs/models/receipt.d.ts +31 -1
  20. package/dist/cjs/models/receipt.js +45 -5
  21. package/dist/cjs/models/voucher.d.ts +57 -4
  22. package/dist/cjs/models/voucher.js +111 -3
  23. package/dist/cjs/partner/fehler.d.ts +1 -1
  24. package/dist/cjs/partner/fehler.js +2 -0
  25. package/dist/cjs/partner/index.d.ts +1 -1
  26. package/dist/cjs/partner/typen.d.ts +7 -1
  27. package/dist/cjs/partner/typen.js +3 -0
  28. package/dist/cjs/pos/client.d.ts +2 -1
  29. package/dist/cjs/pos/client.js +3 -1
  30. package/dist/cjs/pos/gutschein.d.ts +90 -0
  31. package/dist/cjs/pos/gutschein.js +164 -0
  32. package/dist/cjs/pos/index.d.ts +3 -2
  33. package/dist/cjs/pos/index.js +13 -2
  34. package/dist/cjs/pos/settings.d.ts +3 -0
  35. package/dist/cjs/pos/settings.js +12 -10
  36. package/dist/cjs/pos/texte.d.ts +156 -0
  37. package/dist/cjs/pos/texte.js +72 -1
  38. package/dist/cjs/react/index.js +8 -2
  39. package/dist/cjs/receipt/due.d.ts +83 -2
  40. package/dist/cjs/receipt/due.js +202 -36
  41. package/dist/cjs/receipt/grid.js +13 -1
  42. package/dist/cjs/receipt/gutschein-plan.d.ts +104 -0
  43. package/dist/cjs/receipt/gutschein-plan.js +360 -0
  44. package/dist/cjs/receipt/index.d.ts +1 -1
  45. package/dist/cjs/receipt/index.js +3 -0
  46. package/dist/cjs/receipt/layout.js +186 -10
  47. package/dist/cjs/register/pairing.d.ts +21 -1
  48. package/dist/cjs/register/pairing.js +17 -0
  49. package/dist/cjs/stored/bon-layout.d.ts +8 -0
  50. package/dist/cjs/stored/bon-layout.js +23 -0
  51. package/dist/cjs/stored/draht.d.ts +3 -1
  52. package/dist/cjs/stored/draht.js +53 -6
  53. package/dist/cjs/stored/einstellungen.js +2 -1
  54. package/dist/cjs/stored/gutscheine.d.ts +3 -0
  55. package/dist/cjs/stored/gutscheine.js +60 -0
  56. package/dist/cjs/stored/index.js +2 -17
  57. package/dist/cjs/stored/vokabular.d.ts +6 -4
  58. package/dist/cjs/stored/vokabular.js +48 -2
  59. package/dist/cjs/version.d.ts +1 -1
  60. package/dist/cjs/version.js +1 -1
  61. package/dist/esm/client/aufrufe.d.ts +4 -4
  62. package/dist/esm/client/aufrufe.js +15 -0
  63. package/dist/esm/client/receipts.d.ts +5 -0
  64. package/dist/esm/client/receipts.js +66 -8
  65. package/dist/esm/enums/voucher-action.d.ts +2 -0
  66. package/dist/esm/enums/voucher-action.js +2 -0
  67. package/dist/esm/enums/voucher-type.d.ts +10 -0
  68. package/dist/esm/enums/voucher-type.js +10 -0
  69. package/dist/esm/index.d.ts +3 -3
  70. package/dist/esm/index.js +3 -3
  71. package/dist/esm/models/index.d.ts +3 -3
  72. package/dist/esm/models/index.js +3 -3
  73. package/dist/esm/models/receipt-errors.d.ts +1 -1
  74. package/dist/esm/models/receipt-errors.js +2 -0
  75. package/dist/esm/models/receipt-item.d.ts +11 -3
  76. package/dist/esm/models/receipt-item.js +20 -1
  77. package/dist/esm/models/receipt.d.ts +31 -1
  78. package/dist/esm/models/receipt.js +44 -5
  79. package/dist/esm/models/voucher.d.ts +57 -4
  80. package/dist/esm/models/voucher.js +108 -3
  81. package/dist/esm/partner/fehler.d.ts +1 -1
  82. package/dist/esm/partner/fehler.js +2 -0
  83. package/dist/esm/partner/index.d.ts +1 -1
  84. package/dist/esm/partner/typen.d.ts +7 -1
  85. package/dist/esm/partner/typen.js +3 -0
  86. package/dist/esm/pos/client.d.ts +2 -1
  87. package/dist/esm/pos/client.js +3 -1
  88. package/dist/esm/pos/gutschein.d.ts +90 -0
  89. package/dist/esm/pos/gutschein.js +158 -0
  90. package/dist/esm/pos/index.d.ts +3 -2
  91. package/dist/esm/pos/index.js +4 -2
  92. package/dist/esm/pos/settings.d.ts +3 -0
  93. package/dist/esm/pos/settings.js +2 -0
  94. package/dist/esm/pos/texte.d.ts +156 -0
  95. package/dist/esm/pos/texte.js +70 -0
  96. package/dist/esm/react/index.js +8 -2
  97. package/dist/esm/receipt/due.d.ts +83 -2
  98. package/dist/esm/receipt/due.js +198 -34
  99. package/dist/esm/receipt/grid.js +13 -1
  100. package/dist/esm/receipt/gutschein-plan.d.ts +104 -0
  101. package/dist/esm/receipt/gutschein-plan.js +352 -0
  102. package/dist/esm/receipt/index.d.ts +1 -1
  103. package/dist/esm/receipt/index.js +1 -1
  104. package/dist/esm/receipt/layout.js +187 -11
  105. package/dist/esm/register/pairing.d.ts +21 -1
  106. package/dist/esm/register/pairing.js +16 -0
  107. package/dist/esm/stored/bon-layout.d.ts +8 -0
  108. package/dist/esm/stored/bon-layout.js +20 -0
  109. package/dist/esm/stored/draht.d.ts +3 -1
  110. package/dist/esm/stored/draht.js +52 -6
  111. package/dist/esm/stored/einstellungen.js +3 -2
  112. package/dist/esm/stored/gutscheine.d.ts +3 -0
  113. package/dist/esm/stored/gutscheine.js +56 -0
  114. package/dist/esm/stored/index.js +2 -17
  115. package/dist/esm/stored/vokabular.d.ts +6 -4
  116. package/dist/esm/stored/vokabular.js +48 -2
  117. package/dist/esm/version.d.ts +1 -1
  118. package/dist/esm/version.js +1 -1
  119. package/fixtures/expected/voucher-cancellation.grid32.txt +30 -0
  120. package/fixtures/expected/voucher-cancellation.grid48.txt +29 -0
  121. package/fixtures/expected/voucher-cancellation.lines.json +252 -0
  122. package/fixtures/expected/voucher-cancellation.sheet32.json +206 -0
  123. package/fixtures/expected/voucher-cancellation.sheet48.json +200 -0
  124. package/fixtures/expected/voucher-multi-purpose-redeem.grid32.txt +25 -0
  125. package/fixtures/expected/voucher-multi-purpose-redeem.grid48.txt +25 -0
  126. package/fixtures/expected/voucher-multi-purpose-redeem.lines.json +259 -0
  127. package/fixtures/expected/voucher-multi-purpose-redeem.sheet32.json +176 -0
  128. package/fixtures/expected/voucher-multi-purpose-redeem.sheet48.json +176 -0
  129. package/fixtures/expected/voucher-multi-purpose-sale.grid32.txt +24 -0
  130. package/fixtures/expected/voucher-multi-purpose-sale.grid48.txt +23 -0
  131. package/fixtures/expected/voucher-multi-purpose-sale.lines.json +216 -0
  132. package/fixtures/expected/voucher-multi-purpose-sale.sheet32.json +170 -0
  133. package/fixtures/expected/voucher-multi-purpose-sale.sheet48.json +164 -0
  134. package/fixtures/expected/voucher-payout.grid32.txt +23 -0
  135. package/fixtures/expected/voucher-payout.grid48.txt +22 -0
  136. package/fixtures/expected/voucher-payout.lines.json +216 -0
  137. package/fixtures/expected/voucher-payout.sheet32.json +164 -0
  138. package/fixtures/expected/voucher-payout.sheet48.json +158 -0
  139. package/fixtures/expected/voucher-service-redeem.grid32.txt +26 -0
  140. package/fixtures/expected/voucher-service-redeem.grid48.txt +25 -0
  141. package/fixtures/expected/voucher-service-redeem.lines.json +261 -0
  142. package/fixtures/expected/voucher-service-redeem.sheet32.json +182 -0
  143. package/fixtures/expected/voucher-service-redeem.sheet48.json +176 -0
  144. package/fixtures/expected/voucher-single-purpose-redeem-exempt.grid32.txt +30 -0
  145. package/fixtures/expected/voucher-single-purpose-redeem-exempt.grid48.txt +29 -0
  146. package/fixtures/expected/voucher-single-purpose-redeem-exempt.lines.json +331 -0
  147. package/fixtures/expected/voucher-single-purpose-redeem-exempt.sheet32.json +206 -0
  148. package/fixtures/expected/voucher-single-purpose-redeem-exempt.sheet48.json +200 -0
  149. package/fixtures/expected/voucher-single-purpose-redeem.grid32.txt +25 -0
  150. package/fixtures/expected/voucher-single-purpose-redeem.grid48.txt +24 -0
  151. package/fixtures/expected/voucher-single-purpose-redeem.lines.json +246 -0
  152. package/fixtures/expected/voucher-single-purpose-redeem.sheet32.json +176 -0
  153. package/fixtures/expected/voucher-single-purpose-redeem.sheet48.json +170 -0
  154. package/fixtures/expected/voucher-single-purpose-sale.grid32.txt +26 -0
  155. package/fixtures/expected/voucher-single-purpose-sale.grid48.txt +24 -0
  156. package/fixtures/expected/voucher-single-purpose-sale.lines.json +225 -0
  157. package/fixtures/expected/voucher-single-purpose-sale.sheet32.json +182 -0
  158. package/fixtures/expected/voucher-single-purpose-sale.sheet48.json +170 -0
  159. package/fixtures/hobex-hps-codes.json +1 -1
  160. package/fixtures/invoice-api.schema.json +1 -1
  161. package/fixtures/invoice-texts.json +1 -1
  162. package/fixtures/manifest.json +64 -0
  163. package/fixtures/pos-texts.json +170 -1
  164. package/fixtures/receipt-due-generated.json +1 -1
  165. package/fixtures/receipt-due-voucher-generated.json +494 -0
  166. package/fixtures/receipts/voucher-cancellation.json +76 -0
  167. package/fixtures/receipts/voucher-multi-purpose-redeem.json +62 -0
  168. package/fixtures/receipts/voucher-multi-purpose-sale.json +63 -0
  169. package/fixtures/receipts/voucher-payout.json +65 -0
  170. package/fixtures/receipts/voucher-service-redeem.json +82 -0
  171. package/fixtures/receipts/voucher-single-purpose-redeem-exempt.json +86 -0
  172. package/fixtures/receipts/voucher-single-purpose-redeem.json +71 -0
  173. package/fixtures/receipts/voucher-single-purpose-sale.json +88 -0
  174. package/fixtures/surface.json +35 -5
  175. package/fixtures/v3/antworten/belege.json +3405 -3
  176. package/fixtures/v3/antworten/belegmail.json +5 -2
  177. package/fixtures/v3/antworten/kasse-belege.json +3423 -3
  178. package/fixtures/v3/antworten/kasse.json +621 -14
  179. package/fixtures/v3/antworten/lager.json +1 -1
  180. package/fixtures/v3/antworten/rechnungen.json +5 -2
  181. package/fixtures/v3/antworten/storno.json +214 -3
  182. package/fixtures/v3/stored/belege.json +5 -2
  183. package/fixtures/v3/stored/kasse.json +225 -4
  184. package/fixtures/v3/stored/rechnungen.json +5 -2
  185. package/fixtures/v3/v3-vokabular.json +1375 -23
  186. package/fixtures/v3/zahlbetrag-faelle.json +293 -3
  187. package/package.json +4 -1
@@ -2,10 +2,10 @@
2
2
  "_hinweis": "Vertrags-Export /v3, erzeugt aus den echten Handlern (npm run vertrag:v3 in functions/ und functions-kasse/). Nicht von Hand pflegen.",
3
3
  "_quelle": {
4
4
  "default": {
5
- "sha256": "439a8bfac209333ab769a4c7133507a1730267eff4021cc9bdcf39d25805b94d",
5
+ "sha256": "016031af787794cf6e72932fd203138b45b7a758510af990475d9f68d35ac556",
6
6
  "head": [],
7
- "inputsSha256": "3b6c5c73af674b969019c273f50068879923cee243dafa490e0c7335107c4e79",
8
- "backendPackage": "@kreiseck/kasseneck-api@0.33.0",
7
+ "inputsSha256": "684e236f4e84e7befba5ebda44021eefc4de50a6f2507cf4de5b456e9a2ed790",
8
+ "backendPackage": "@kreiseck/kasseneck-api@0.33.1",
9
9
  "inputs": [
10
10
  "functions-kasse/test/unit/fixtures/kassen-welt.js",
11
11
  "functions/gemeinsam/api-rand.js",
@@ -19,12 +19,12 @@
19
19
  ]
20
20
  },
21
21
  "kasse": {
22
- "sha256": "6732e8ca04bca3d4bc7574bb382613f966053e239e0c2c53126d99613d79dd18",
22
+ "sha256": "d4cf64a3983e96e272d2934a4e9d0e17752ce772ef817d91836593419a680e1c",
23
23
  "head": [
24
24
  "channel",
25
25
  "note"
26
26
  ],
27
- "inputsSha256": "88ae97429f7c74025f6549ac46a0db291a0407bd070e875cc93c2fc3d3f1d6d3",
27
+ "inputsSha256": "1efd9f548d9b578193c3dbf4aae041f4ffaa1adcaba01a7c5e2df7ba882efa94",
28
28
  "backendPackage": "@kreiseck/kasseneck-api@0.14.0",
29
29
  "inputs": [
30
30
  "functions-kasse/gemeinsam/api-rand.js",
@@ -3458,7 +3458,10 @@
3458
3458
  "drawer": true,
3459
3459
  "discount": true,
3460
3460
  "tipAssign": true,
3461
- "receiptsScope": "all"
3461
+ "receiptsScope": "all",
3462
+ "voucherSell": true,
3463
+ "voucherRedeem": true,
3464
+ "voucherManage": true
3462
3465
  }
3463
3466
  }
3464
3467
  }
@@ -3504,7 +3507,10 @@
3504
3507
  "drawer": true,
3505
3508
  "discount": true,
3506
3509
  "tipAssign": true,
3507
- "receiptsScope": "all"
3510
+ "receiptsScope": "all",
3511
+ "voucherSell": true,
3512
+ "voucherRedeem": true,
3513
+ "voucherManage": true
3508
3514
  }
3509
3515
  }
3510
3516
  }
@@ -3592,7 +3598,10 @@
3592
3598
  "drawer": false,
3593
3599
  "discount": true,
3594
3600
  "tipAssign": false,
3595
- "receiptsScope": "own"
3601
+ "receiptsScope": "own",
3602
+ "voucherSell": true,
3603
+ "voucherRedeem": true,
3604
+ "voucherManage": false
3596
3605
  }
3597
3606
  }
3598
3607
  }
@@ -3641,7 +3650,10 @@
3641
3650
  "drawer": true,
3642
3651
  "discount": true,
3643
3652
  "tipAssign": true,
3644
- "receiptsScope": "all"
3653
+ "receiptsScope": "all",
3654
+ "voucherSell": true,
3655
+ "voucherRedeem": true,
3656
+ "voucherManage": true
3645
3657
  }
3646
3658
  }
3647
3659
  }
@@ -3992,7 +4004,10 @@
3992
4004
  "drawer": false,
3993
4005
  "discount": true,
3994
4006
  "tipAssign": false,
3995
- "receiptsScope": "own"
4007
+ "receiptsScope": "own",
4008
+ "voucherSell": true,
4009
+ "voucherRedeem": true,
4010
+ "voucherManage": false
3996
4011
  }
3997
4012
  }
3998
4013
  }
@@ -4088,7 +4103,10 @@
4088
4103
  "drawer": true,
4089
4104
  "discount": true,
4090
4105
  "tipAssign": true,
4091
- "receiptsScope": "all"
4106
+ "receiptsScope": "all",
4107
+ "voucherSell": true,
4108
+ "voucherRedeem": true,
4109
+ "voucherManage": true
4092
4110
  }
4093
4111
  }
4094
4112
  }
@@ -4127,7 +4145,10 @@
4127
4145
  "drawer": false,
4128
4146
  "discount": true,
4129
4147
  "tipAssign": false,
4130
- "receiptsScope": "own"
4148
+ "receiptsScope": "own",
4149
+ "voucherSell": true,
4150
+ "voucherRedeem": true,
4151
+ "voucherManage": false
4131
4152
  }
4132
4153
  }
4133
4154
  }
@@ -4181,7 +4202,10 @@
4181
4202
  "drawer": false,
4182
4203
  "discount": true,
4183
4204
  "tipAssign": false,
4184
- "receiptsScope": "own"
4205
+ "receiptsScope": "own",
4206
+ "voucherSell": true,
4207
+ "voucherRedeem": true,
4208
+ "voucherManage": false
4185
4209
  }
4186
4210
  }
4187
4211
  }
@@ -4224,7 +4248,10 @@
4224
4248
  "drawer": false,
4225
4249
  "discount": true,
4226
4250
  "tipAssign": false,
4227
- "receiptsScope": "own"
4251
+ "receiptsScope": "own",
4252
+ "voucherSell": true,
4253
+ "voucherRedeem": true,
4254
+ "voucherManage": false
4228
4255
  }
4229
4256
  }
4230
4257
  }
@@ -10515,6 +10542,11 @@
10515
10542
  "terminalVia": "direct",
10516
10543
  "terminalType": "none",
10517
10544
  "shortcutHints": true
10545
+ },
10546
+ "vouchers": {
10547
+ "sale": false,
10548
+ "valueVoucherType": null,
10549
+ "vatRateBp": null
10518
10550
  }
10519
10551
  }
10520
10552
  }
@@ -10681,6 +10713,11 @@
10681
10713
  "terminalVia": "direct",
10682
10714
  "terminalType": "none",
10683
10715
  "shortcutHints": true
10716
+ },
10717
+ "vouchers": {
10718
+ "sale": false,
10719
+ "valueVoucherType": null,
10720
+ "vatRateBp": null
10684
10721
  }
10685
10722
  }
10686
10723
  }
@@ -10885,6 +10922,11 @@
10885
10922
  "terminalVia": "direct",
10886
10923
  "terminalType": "none",
10887
10924
  "shortcutHints": true
10925
+ },
10926
+ "vouchers": {
10927
+ "sale": false,
10928
+ "valueVoucherType": null,
10929
+ "vatRateBp": null
10888
10930
  }
10889
10931
  }
10890
10932
  }
@@ -11051,6 +11093,11 @@
11051
11093
  "terminalVia": "direct",
11052
11094
  "terminalType": "none",
11053
11095
  "shortcutHints": true
11096
+ },
11097
+ "vouchers": {
11098
+ "sale": false,
11099
+ "valueVoucherType": null,
11100
+ "vatRateBp": null
11054
11101
  }
11055
11102
  }
11056
11103
  }
@@ -11217,6 +11264,11 @@
11217
11264
  "terminalVia": "direct",
11218
11265
  "terminalType": "none",
11219
11266
  "shortcutHints": true
11267
+ },
11268
+ "vouchers": {
11269
+ "sale": false,
11270
+ "valueVoucherType": null,
11271
+ "vatRateBp": null
11220
11272
  }
11221
11273
  }
11222
11274
  }
@@ -16952,6 +17004,561 @@
16952
17004
  }
16953
17005
  ]
16954
17006
  },
17007
+ "checkVoucher": {
17008
+ "codebase": "default",
17009
+ "cases": [
17010
+ {
17011
+ "case": "without_token",
17012
+ "method": "POST",
17013
+ "caller": "none",
17014
+ "params": {
17015
+ "code": "B1KK5EQ57DHP",
17016
+ "cashregisterId": "KASSE1"
17017
+ },
17018
+ "httpStatus": 200,
17019
+ "headers": {
17020
+ "Kasseneck-Api-Version": "v3",
17021
+ "Access-Control-Expose-Headers": "Kasseneck-Api-Version"
17022
+ },
17023
+ "response": {
17024
+ "status": "error",
17025
+ "message": "Ungültiger Request: Authorization key erwartet.",
17026
+ "data": {
17027
+ "code": "unauthorized"
17028
+ },
17029
+ "code": "unauthorized"
17030
+ }
17031
+ },
17032
+ {
17033
+ "case": "code_missing",
17034
+ "method": "POST",
17035
+ "caller": "register_user_manager",
17036
+ "params": {
17037
+ "cashregisterId": "KASSE1"
17038
+ },
17039
+ "httpStatus": 200,
17040
+ "headers": {
17041
+ "Kasseneck-Api-Version": "v3",
17042
+ "Access-Control-Expose-Headers": "Kasseneck-Api-Version"
17043
+ },
17044
+ "response": {
17045
+ "status": "error",
17046
+ "message": "Ungültige Daten: Nicht alle erforderlichen Parameter wurden übergeben oder Typen stimmen nicht überein: code",
17047
+ "data": {
17048
+ "code": "validation",
17049
+ "errors": [
17050
+ {
17051
+ "field": "code",
17052
+ "message": "Pflichtfeld fehlt."
17053
+ }
17054
+ ]
17055
+ },
17056
+ "code": "validation"
17057
+ }
17058
+ },
17059
+ {
17060
+ "case": "check_digit_wrong",
17061
+ "method": "POST",
17062
+ "caller": "register_user_cashier",
17063
+ "params": {
17064
+ "code": "B1KK5EQ57DH0",
17065
+ "cashregisterId": "KASSE1"
17066
+ },
17067
+ "httpStatus": 200,
17068
+ "headers": {
17069
+ "Kasseneck-Api-Version": "v3",
17070
+ "Access-Control-Expose-Headers": "Kasseneck-Api-Version"
17071
+ },
17072
+ "response": {
17073
+ "status": "error",
17074
+ "message": "Der Gutscheincode ist ungültig.",
17075
+ "data": {
17076
+ "code": "voucher_invalid_code"
17077
+ },
17078
+ "code": "voucher_invalid_code"
17079
+ }
17080
+ },
17081
+ {
17082
+ "case": "unknown",
17083
+ "method": "POST",
17084
+ "caller": "register_user_cashier",
17085
+ "params": {
17086
+ "code": "B1KK5EQ57DKJ",
17087
+ "cashregisterId": "KASSE1"
17088
+ },
17089
+ "httpStatus": 200,
17090
+ "headers": {
17091
+ "Kasseneck-Api-Version": "v3",
17092
+ "Access-Control-Expose-Headers": "Kasseneck-Api-Version"
17093
+ },
17094
+ "response": {
17095
+ "status": "error",
17096
+ "message": "Diesen Gutschein gibt es nicht.",
17097
+ "data": {
17098
+ "code": "voucher_not_found"
17099
+ },
17100
+ "code": "voucher_not_found"
17101
+ }
17102
+ },
17103
+ {
17104
+ "case": "success_cashier",
17105
+ "method": "POST",
17106
+ "caller": "register_user_cashier",
17107
+ "params": {
17108
+ "code": "b1kk-5eq5-7dhp",
17109
+ "cashregisterId": "KASSE1"
17110
+ },
17111
+ "httpStatus": 200,
17112
+ "headers": {
17113
+ "Kasseneck-Api-Version": "v3",
17114
+ "Access-Control-Expose-Headers": "Kasseneck-Api-Version"
17115
+ },
17116
+ "response": {
17117
+ "status": "success",
17118
+ "message": "",
17119
+ "data": {
17120
+ "type": "multi_purpose",
17121
+ "status": "active",
17122
+ "balanceCents": 3200,
17123
+ "faceValueCents": 5000,
17124
+ "validity": {
17125
+ "pattern": "1+3",
17126
+ "redeemableUntil": "2027-09-20",
17127
+ "refundableUntil": "2030-09-20",
17128
+ "validUntil": null
17129
+ },
17130
+ "codeSuffix": "7DHP"
17131
+ }
17132
+ }
17133
+ },
17134
+ {
17135
+ "case": "success_service",
17136
+ "method": "POST",
17137
+ "caller": "register_user_manager",
17138
+ "params": {
17139
+ "code": "B1KK5EQ57DJG",
17140
+ "cashregisterId": "KASSE1"
17141
+ },
17142
+ "httpStatus": 200,
17143
+ "headers": {
17144
+ "Kasseneck-Api-Version": "v3",
17145
+ "Access-Control-Expose-Headers": "Kasseneck-Api-Version"
17146
+ },
17147
+ "response": {
17148
+ "status": "success",
17149
+ "message": "",
17150
+ "data": {
17151
+ "type": "service",
17152
+ "status": "active",
17153
+ "faceValueCents": 10500,
17154
+ "quantity": 3,
17155
+ "remainingQuantity": 2,
17156
+ "vatRateBp": 2000,
17157
+ "article": {
17158
+ "id": "art_mani",
17159
+ "name": "Manikuere",
17160
+ "vatRateBp": 2000,
17161
+ "priceCents": 3500
17162
+ },
17163
+ "validity": {
17164
+ "pattern": "unlimited",
17165
+ "redeemableUntil": null,
17166
+ "refundableUntil": null,
17167
+ "validUntil": null
17168
+ },
17169
+ "codeSuffix": "7DJG"
17170
+ }
17171
+ }
17172
+ },
17173
+ {
17174
+ "case": "success_exempt",
17175
+ "method": "POST",
17176
+ "caller": "register_user_manager",
17177
+ "params": {
17178
+ "code": "B1KK5EQ57DMW",
17179
+ "cashregisterId": "KASSE1"
17180
+ },
17181
+ "httpStatus": 200,
17182
+ "headers": {
17183
+ "Kasseneck-Api-Version": "v3",
17184
+ "Access-Control-Expose-Headers": "Kasseneck-Api-Version"
17185
+ },
17186
+ "response": {
17187
+ "status": "success",
17188
+ "message": "",
17189
+ "data": {
17190
+ "type": "single_purpose",
17191
+ "status": "active",
17192
+ "balanceCents": 4000,
17193
+ "faceValueCents": 4000,
17194
+ "vatRateBp": 0,
17195
+ "validity": {
17196
+ "pattern": "unlimited",
17197
+ "redeemableUntil": null,
17198
+ "refundableUntil": null,
17199
+ "validUntil": null
17200
+ },
17201
+ "codeSuffix": "7DMW",
17202
+ "exempt": true
17203
+ }
17204
+ }
17205
+ },
17206
+ {
17207
+ "case": "success_device",
17208
+ "method": "POST",
17209
+ "caller": "device_api_key",
17210
+ "params": {
17211
+ "code": "B1KK5EQ57DHP"
17212
+ },
17213
+ "httpStatus": 200,
17214
+ "headers": {
17215
+ "Kasseneck-Api-Version": "v3",
17216
+ "Access-Control-Expose-Headers": "Kasseneck-Api-Version"
17217
+ },
17218
+ "response": {
17219
+ "status": "success",
17220
+ "message": "",
17221
+ "data": {
17222
+ "type": "multi_purpose",
17223
+ "status": "active",
17224
+ "balanceCents": 3200,
17225
+ "faceValueCents": 5000,
17226
+ "validity": {
17227
+ "pattern": "1+3",
17228
+ "redeemableUntil": "2027-09-20",
17229
+ "refundableUntil": "2030-09-20",
17230
+ "validUntil": null
17231
+ },
17232
+ "codeSuffix": "7DHP"
17233
+ }
17234
+ }
17235
+ },
17236
+ {
17237
+ "case": "preflight_options",
17238
+ "method": "OPTIONS",
17239
+ "caller": "other",
17240
+ "params": {
17241
+ "$body": {}
17242
+ },
17243
+ "httpStatus": 200,
17244
+ "headers": {
17245
+ "Kasseneck-Api-Version": "v3",
17246
+ "Access-Control-Expose-Headers": "Kasseneck-Api-Version"
17247
+ },
17248
+ "response": {
17249
+ "status": "error",
17250
+ "message": "Bitte verwenden Sie eine POST-Anfrage",
17251
+ "data": {
17252
+ "code": "method_not_allowed"
17253
+ },
17254
+ "code": "method_not_allowed"
17255
+ }
17256
+ }
17257
+ ]
17258
+ },
17259
+ "reprintVoucherLabel": {
17260
+ "codebase": "default",
17261
+ "cases": [
17262
+ {
17263
+ "case": "without_token",
17264
+ "method": "POST",
17265
+ "caller": "none",
17266
+ "params": {
17267
+ "id": "gmz1",
17268
+ "cashregisterId": "KASSE1"
17269
+ },
17270
+ "httpStatus": 200,
17271
+ "headers": {
17272
+ "Kasseneck-Api-Version": "v3",
17273
+ "Access-Control-Expose-Headers": "Kasseneck-Api-Version"
17274
+ },
17275
+ "response": {
17276
+ "status": "error",
17277
+ "message": "Ungültiger Request: Authorization key erwartet.",
17278
+ "data": {
17279
+ "code": "unauthorized"
17280
+ },
17281
+ "code": "unauthorized"
17282
+ }
17283
+ },
17284
+ {
17285
+ "case": "id_missing",
17286
+ "method": "POST",
17287
+ "caller": "register_user_manager",
17288
+ "params": {
17289
+ "cashregisterId": "KASSE1"
17290
+ },
17291
+ "httpStatus": 200,
17292
+ "headers": {
17293
+ "Kasseneck-Api-Version": "v3",
17294
+ "Access-Control-Expose-Headers": "Kasseneck-Api-Version"
17295
+ },
17296
+ "response": {
17297
+ "status": "error",
17298
+ "message": "Ungültige Daten: Nicht alle erforderlichen Parameter wurden übergeben oder Typen stimmen nicht überein: id",
17299
+ "data": {
17300
+ "code": "validation",
17301
+ "errors": [
17302
+ {
17303
+ "field": "id",
17304
+ "message": "Pflichtfeld fehlt."
17305
+ }
17306
+ ]
17307
+ },
17308
+ "code": "validation"
17309
+ }
17310
+ },
17311
+ {
17312
+ "case": "cashier_without_permission",
17313
+ "method": "POST",
17314
+ "caller": "register_user_cashier",
17315
+ "params": {
17316
+ "id": "gmz1",
17317
+ "cashregisterId": "KASSE1"
17318
+ },
17319
+ "httpStatus": 200,
17320
+ "headers": {
17321
+ "Kasseneck-Api-Version": "v3",
17322
+ "Access-Control-Expose-Headers": "Kasseneck-Api-Version"
17323
+ },
17324
+ "response": {
17325
+ "status": "error",
17326
+ "message": "Dafür fehlt die Berechtigung.",
17327
+ "data": {
17328
+ "code": "not_permitted"
17329
+ },
17330
+ "code": "not_permitted"
17331
+ }
17332
+ },
17333
+ {
17334
+ "case": "unknown",
17335
+ "method": "POST",
17336
+ "caller": "register_user_manager",
17337
+ "params": {
17338
+ "id": "gxx9",
17339
+ "cashregisterId": "KASSE1"
17340
+ },
17341
+ "httpStatus": 200,
17342
+ "headers": {
17343
+ "Kasseneck-Api-Version": "v3",
17344
+ "Access-Control-Expose-Headers": "Kasseneck-Api-Version"
17345
+ },
17346
+ "response": {
17347
+ "status": "error",
17348
+ "message": "Diesen Gutschein gibt es nicht.",
17349
+ "data": {
17350
+ "code": "voucher_not_found"
17351
+ },
17352
+ "code": "voucher_not_found"
17353
+ }
17354
+ },
17355
+ {
17356
+ "case": "cancelled",
17357
+ "method": "POST",
17358
+ "caller": "register_user_manager",
17359
+ "params": {
17360
+ "id": "gmz1",
17361
+ "cashregisterId": "KASSE1"
17362
+ },
17363
+ "httpStatus": 200,
17364
+ "headers": {
17365
+ "Kasseneck-Api-Version": "v3",
17366
+ "Access-Control-Expose-Headers": "Kasseneck-Api-Version"
17367
+ },
17368
+ "response": {
17369
+ "status": "error",
17370
+ "message": "Der Gutschein wurde storniert.",
17371
+ "data": {
17372
+ "code": "voucher_cancelled"
17373
+ },
17374
+ "code": "voucher_cancelled"
17375
+ }
17376
+ },
17377
+ {
17378
+ "case": "success_manager",
17379
+ "method": "POST",
17380
+ "caller": "register_user_manager",
17381
+ "params": {
17382
+ "id": "gmz1",
17383
+ "cashregisterId": "KASSE1"
17384
+ },
17385
+ "httpStatus": 200,
17386
+ "headers": {
17387
+ "Kasseneck-Api-Version": "v3",
17388
+ "Access-Control-Expose-Headers": "Kasseneck-Api-Version"
17389
+ },
17390
+ "response": {
17391
+ "status": "success",
17392
+ "message": "",
17393
+ "data": {
17394
+ "code": "B1KK-5EQ5-7DHP",
17395
+ "voucher": {
17396
+ "id": "gmz1",
17397
+ "status": "active",
17398
+ "code": "····-····-7DHP",
17399
+ "type": "multi_purpose",
17400
+ "codeSuffix": "7DHP",
17401
+ "faceValueCents": 5000,
17402
+ "balanceCents": 3200,
17403
+ "vatRateBp": null,
17404
+ "smallBusiness": false,
17405
+ "salePaymentMethod": "cash",
17406
+ "validity": {
17407
+ "pattern": "1+3",
17408
+ "redeemableUntil": "2027-09-20",
17409
+ "refundableUntil": "2030-09-20",
17410
+ "validUntil": null
17411
+ },
17412
+ "issue": {
17413
+ "receiptId": "KASSE1-ID-9",
17414
+ "fullReceiptId": null,
17415
+ "cashregisterId": "KASSE1",
17416
+ "at": 1790323200000,
17417
+ "day": "2026-09-20"
17418
+ },
17419
+ "print": {
17420
+ "count": 1,
17421
+ "lastAt": 1790409600000
17422
+ },
17423
+ "createdAt": 1790323200000,
17424
+ "updatedAt": 1790409600000
17425
+ }
17426
+ }
17427
+ }
17428
+ },
17429
+ {
17430
+ "case": "success_service",
17431
+ "method": "POST",
17432
+ "caller": "register_user_manager",
17433
+ "params": {
17434
+ "id": "gls1",
17435
+ "cashregisterId": "KASSE1"
17436
+ },
17437
+ "httpStatus": 200,
17438
+ "headers": {
17439
+ "Kasseneck-Api-Version": "v3",
17440
+ "Access-Control-Expose-Headers": "Kasseneck-Api-Version"
17441
+ },
17442
+ "response": {
17443
+ "status": "success",
17444
+ "message": "",
17445
+ "data": {
17446
+ "code": "B1KK-5EQ5-7DJG",
17447
+ "voucher": {
17448
+ "id": "gls1",
17449
+ "status": "active",
17450
+ "code": "····-····-7DJG",
17451
+ "type": "service",
17452
+ "codeSuffix": "7DJG",
17453
+ "faceValueCents": 10500,
17454
+ "vatRateBp": 2000,
17455
+ "article": {
17456
+ "id": "art_mani",
17457
+ "name": "Manikuere",
17458
+ "vatRateBp": 2000,
17459
+ "priceCents": 3500
17460
+ },
17461
+ "quantity": 3,
17462
+ "remainingQuantity": 2,
17463
+ "smallBusiness": false,
17464
+ "salePaymentMethod": "cash",
17465
+ "validity": {
17466
+ "pattern": "unlimited",
17467
+ "redeemableUntil": null,
17468
+ "refundableUntil": null,
17469
+ "validUntil": null
17470
+ },
17471
+ "issue": {
17472
+ "receiptId": "KASSE1-ID-8",
17473
+ "fullReceiptId": null,
17474
+ "cashregisterId": "KASSE1",
17475
+ "at": 1790323200000,
17476
+ "day": "2026-09-20"
17477
+ },
17478
+ "print": {
17479
+ "count": 1,
17480
+ "lastAt": 1790409600000
17481
+ },
17482
+ "createdAt": 1790323200000,
17483
+ "updatedAt": 1790409600000
17484
+ }
17485
+ }
17486
+ }
17487
+ },
17488
+ {
17489
+ "case": "success_device",
17490
+ "method": "POST",
17491
+ "caller": "device_api_key",
17492
+ "params": {
17493
+ "id": "gmz1"
17494
+ },
17495
+ "httpStatus": 200,
17496
+ "headers": {
17497
+ "Kasseneck-Api-Version": "v3",
17498
+ "Access-Control-Expose-Headers": "Kasseneck-Api-Version"
17499
+ },
17500
+ "response": {
17501
+ "status": "success",
17502
+ "message": "",
17503
+ "data": {
17504
+ "code": "B1KK-5EQ5-7DHP",
17505
+ "voucher": {
17506
+ "id": "gmz1",
17507
+ "status": "active",
17508
+ "code": "····-····-7DHP",
17509
+ "type": "multi_purpose",
17510
+ "codeSuffix": "7DHP",
17511
+ "faceValueCents": 5000,
17512
+ "balanceCents": 3200,
17513
+ "vatRateBp": null,
17514
+ "smallBusiness": false,
17515
+ "salePaymentMethod": "cash",
17516
+ "validity": {
17517
+ "pattern": "1+3",
17518
+ "redeemableUntil": "2027-09-20",
17519
+ "refundableUntil": "2030-09-20",
17520
+ "validUntil": null
17521
+ },
17522
+ "issue": {
17523
+ "receiptId": "KASSE1-ID-9",
17524
+ "fullReceiptId": null,
17525
+ "cashregisterId": "KASSE1",
17526
+ "at": 1790323200000,
17527
+ "day": "2026-09-20"
17528
+ },
17529
+ "print": {
17530
+ "count": 1,
17531
+ "lastAt": 1790409600000
17532
+ },
17533
+ "createdAt": 1790323200000,
17534
+ "updatedAt": 1790409600000
17535
+ }
17536
+ }
17537
+ }
17538
+ },
17539
+ {
17540
+ "case": "preflight_options",
17541
+ "method": "OPTIONS",
17542
+ "caller": "other",
17543
+ "params": {
17544
+ "$body": {}
17545
+ },
17546
+ "httpStatus": 200,
17547
+ "headers": {
17548
+ "Kasseneck-Api-Version": "v3",
17549
+ "Access-Control-Expose-Headers": "Kasseneck-Api-Version"
17550
+ },
17551
+ "response": {
17552
+ "status": "error",
17553
+ "message": "Bitte verwenden Sie eine POST-Anfrage",
17554
+ "data": {
17555
+ "code": "method_not_allowed"
17556
+ },
17557
+ "code": "method_not_allowed"
17558
+ }
17559
+ }
17560
+ ]
17561
+ },
16955
17562
  "getMyDrawerState": {
16956
17563
  "codebase": "kasse",
16957
17564
  "cases": [