@kreiseck/kasseneck-api 0.31.0 → 1.0.0-rc.2

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 (712) hide show
  1. package/CHANGELOG.md +317 -0
  2. package/README.de.md +11 -7
  3. package/README.md +509 -126
  4. package/dist/cjs/client/api.d.ts +7 -6
  5. package/dist/cjs/client/api.js +2 -2
  6. package/dist/cjs/client/aufrufe.d.ts +29 -5
  7. package/dist/cjs/client/aufrufe.js +114 -2
  8. package/dist/cjs/client/auth.d.ts +2 -0
  9. package/dist/cjs/client/auth.js +17 -1
  10. package/dist/cjs/client/cashregisters.d.ts +1 -1
  11. package/dist/cjs/client/cashregisters.js +2 -2
  12. package/dist/cjs/client/errors.d.ts +94 -19
  13. package/dist/cjs/client/errors.js +132 -28
  14. package/dist/cjs/client/fehlercodes.d.ts +9 -0
  15. package/dist/cjs/client/fehlercodes.js +36 -0
  16. package/dist/cjs/client/index.d.ts +5 -5
  17. package/dist/cjs/client/index.js +11 -3
  18. package/dist/cjs/client/receipts.d.ts +131 -124
  19. package/dist/cjs/client/receipts.js +196 -137
  20. package/dist/cjs/client/reports.d.ts +26 -4
  21. package/dist/cjs/client/reports.js +37 -4
  22. package/dist/cjs/client/status.d.ts +3 -3
  23. package/dist/cjs/client/status.js +7 -7
  24. package/dist/cjs/client/transport.d.ts +56 -4
  25. package/dist/cjs/client/transport.js +234 -25
  26. package/dist/cjs/enums/vat-rate.d.ts +2 -2
  27. package/dist/cjs/enums/vat-rate.js +1 -1
  28. package/dist/cjs/index.d.ts +4 -3
  29. package/dist/cjs/index.js +42 -13
  30. package/dist/{esm/rechnung → cjs/invoice}/api.d.ts +18 -17
  31. package/dist/cjs/{rechnung → invoice}/api.js +6 -6
  32. package/dist/{esm/rechnung → cjs/invoice}/auth.d.ts +2 -2
  33. package/dist/cjs/{rechnung → invoice}/auth.js +5 -5
  34. package/dist/{esm/rechnung/rechnen.d.ts → cjs/invoice/calc.d.ts} +27 -27
  35. package/dist/cjs/{rechnung/rechnen.js → invoice/calc.js} +54 -54
  36. package/dist/{esm/rechnung → cjs/invoice}/endpunkte.d.ts +23 -21
  37. package/dist/cjs/{rechnung → invoice}/endpunkte.js +52 -42
  38. package/dist/cjs/invoice/fehler.d.ts +31 -0
  39. package/dist/cjs/invoice/fehler.js +39 -0
  40. package/dist/cjs/invoice/index.d.ts +21 -0
  41. package/dist/cjs/invoice/index.js +86 -0
  42. package/dist/cjs/{rechnung → invoice}/summen.d.ts +12 -12
  43. package/dist/cjs/{rechnung → invoice}/summen.js +14 -14
  44. package/dist/cjs/invoice/texte.d.ts +224 -0
  45. package/dist/cjs/invoice/texte.js +425 -0
  46. package/dist/{esm/rechnung → cjs/invoice}/typen.d.ts +32 -11
  47. package/dist/cjs/{rechnung → invoice}/vertrag.d.ts +97 -71
  48. package/dist/cjs/{rechnung → invoice}/vertrag.js +144 -82
  49. package/dist/cjs/models/cancellation.d.ts +43 -24
  50. package/dist/cjs/models/cancellation.js +94 -46
  51. package/dist/cjs/models/hobex-receipt.d.ts +3 -3
  52. package/dist/cjs/models/hobex-receipt.js +35 -35
  53. package/dist/cjs/models/index.d.ts +6 -5
  54. package/dist/cjs/models/index.js +22 -2
  55. package/dist/cjs/models/payment-errors.d.ts +32 -15
  56. package/dist/cjs/models/payment-errors.js +80 -32
  57. package/dist/cjs/models/receipt-company.d.ts +6 -5
  58. package/dist/cjs/models/receipt-company.js +4 -4
  59. package/dist/cjs/models/receipt-email.d.ts +32 -18
  60. package/dist/cjs/models/receipt-email.js +69 -24
  61. package/dist/cjs/models/receipt-errors.d.ts +39 -0
  62. package/dist/cjs/models/receipt-errors.js +94 -0
  63. package/dist/cjs/models/receipt-item.d.ts +9 -1
  64. package/dist/cjs/models/receipt-item.js +3 -0
  65. package/dist/cjs/models/receipt-summary.d.ts +10 -4
  66. package/dist/cjs/models/receipt-summary.js +10 -4
  67. package/dist/cjs/models/receipt.d.ts +31 -2
  68. package/dist/cjs/models/receipt.js +12 -1
  69. package/dist/cjs/models/voucher.d.ts +7 -6
  70. package/dist/cjs/models/voucher.js +2 -7
  71. package/dist/cjs/partner/ablauf.d.ts +10 -10
  72. package/dist/cjs/partner/ablauf.js +29 -29
  73. package/dist/cjs/partner/api.d.ts +26 -23
  74. package/dist/cjs/partner/api.js +11 -13
  75. package/dist/cjs/partner/auth.d.ts +1 -1
  76. package/dist/cjs/partner/auth.js +2 -2
  77. package/dist/cjs/partner/betrieb.d.ts +7 -7
  78. package/dist/cjs/partner/betrieb.js +10 -10
  79. package/dist/cjs/partner/endpunkte.d.ts +27 -14
  80. package/dist/cjs/partner/endpunkte.js +80 -39
  81. package/dist/cjs/partner/fehler.d.ts +60 -30
  82. package/dist/cjs/partner/fehler.js +99 -43
  83. package/dist/cjs/partner/index.d.ts +13 -12
  84. package/dist/cjs/partner/index.js +35 -22
  85. package/dist/cjs/partner/secret.d.ts +3 -3
  86. package/dist/cjs/partner/secret.js +6 -6
  87. package/dist/cjs/partner/typen.d.ts +129 -71
  88. package/dist/cjs/partner/typen.js +76 -3
  89. package/dist/cjs/partner/webhook-signatur.d.ts +2 -2
  90. package/dist/cjs/partner/webhook-signatur.js +12 -12
  91. package/dist/cjs/partner/webhooks.d.ts +60 -32
  92. package/dist/cjs/partner/webhooks.js +40 -34
  93. package/dist/cjs/payments/hobex.d.ts +11 -3
  94. package/dist/cjs/payments/hobex.js +17 -5
  95. package/dist/cjs/payments/stripe.d.ts +5 -2
  96. package/dist/cjs/payments/stripe.js +10 -5
  97. package/dist/cjs/pos/artikel.d.ts +90 -0
  98. package/dist/cjs/pos/artikel.js +89 -0
  99. package/dist/cjs/pos/client.d.ts +27 -0
  100. package/dist/cjs/pos/client.js +144 -0
  101. package/dist/cjs/pos/drucker.d.ts +86 -0
  102. package/dist/cjs/pos/drucker.js +78 -0
  103. package/dist/cjs/pos/errors.d.ts +36 -0
  104. package/dist/cjs/pos/errors.js +95 -0
  105. package/dist/cjs/pos/index.d.ts +15 -0
  106. package/dist/cjs/pos/index.js +102 -0
  107. package/dist/cjs/pos/settings.d.ts +313 -0
  108. package/dist/cjs/pos/settings.js +376 -0
  109. package/dist/cjs/pos/texte.d.ts +883 -0
  110. package/dist/cjs/pos/texte.js +489 -0
  111. package/dist/cjs/{kasse → pos}/trinkgeld.d.ts +1 -1
  112. package/dist/cjs/{kasse → pos}/trinkgeld.js +2 -2
  113. package/dist/cjs/printing/escpos.d.ts +29 -29
  114. package/dist/cjs/printing/escpos.js +61 -61
  115. package/dist/cjs/printing/index.d.ts +2 -2
  116. package/dist/cjs/printing/index.js +17 -17
  117. package/dist/cjs/printing/qr-groesse.d.ts +38 -38
  118. package/dist/cjs/printing/qr-groesse.js +47 -47
  119. package/dist/cjs/printing/webusb.d.ts +2 -2
  120. package/dist/cjs/printing/webusb.js +4 -4
  121. package/dist/cjs/react/index.d.ts +21 -21
  122. package/dist/cjs/react/index.js +40 -30
  123. package/dist/cjs/receipt/bild.d.ts +4 -4
  124. package/dist/cjs/receipt/bild.js +11 -11
  125. package/dist/cjs/receipt/blatt.d.ts +46 -46
  126. package/dist/cjs/receipt/blatt.js +59 -59
  127. package/dist/cjs/receipt/discount.d.ts +1 -1
  128. package/dist/cjs/receipt/discount.js +8 -8
  129. package/dist/cjs/receipt/due.d.ts +86 -0
  130. package/dist/cjs/receipt/due.js +261 -0
  131. package/dist/cjs/receipt/epos.d.ts +22 -22
  132. package/dist/cjs/receipt/epos.js +45 -45
  133. package/dist/cjs/receipt/grid.d.ts +10 -10
  134. package/dist/cjs/receipt/grid.js +20 -20
  135. package/dist/cjs/receipt/index.d.ts +9 -8
  136. package/dist/cjs/receipt/index.js +26 -23
  137. package/dist/cjs/receipt/layout-escpos.d.ts +24 -24
  138. package/dist/cjs/receipt/layout-escpos.js +49 -49
  139. package/dist/cjs/receipt/layout.d.ts +28 -23
  140. package/dist/cjs/receipt/layout.js +45 -21
  141. package/dist/cjs/receipt/marke-daten.d.ts +8 -8
  142. package/dist/cjs/receipt/marke-daten.js +8 -8
  143. package/dist/cjs/receipt/marke.d.ts +7 -7
  144. package/dist/cjs/receipt/marke.js +10 -10
  145. package/dist/cjs/register/errors.d.ts +61 -0
  146. package/dist/cjs/register/errors.js +112 -0
  147. package/dist/cjs/register/index.d.ts +14 -1
  148. package/dist/cjs/register/index.js +20 -1
  149. package/dist/cjs/register/pairing.d.ts +55 -36
  150. package/dist/cjs/register/pairing.js +33 -29
  151. package/dist/cjs/register/session.d.ts +5 -5
  152. package/dist/cjs/register/session.js +7 -7
  153. package/dist/cjs/stored/draht.d.ts +45 -0
  154. package/dist/cjs/stored/draht.js +220 -0
  155. package/dist/cjs/stored/einstellungen.d.ts +23 -0
  156. package/dist/cjs/stored/einstellungen.js +200 -0
  157. package/dist/cjs/stored/index.d.ts +109 -0
  158. package/dist/cjs/stored/index.js +225 -0
  159. package/dist/cjs/stored/vokabular.d.ts +18 -0
  160. package/dist/cjs/stored/vokabular.js +389 -0
  161. package/dist/cjs/version.d.ts +7 -0
  162. package/dist/cjs/version.js +10 -0
  163. package/dist/cjs/vienna-time.d.ts +1 -1
  164. package/dist/cjs/vienna-time.js +2 -2
  165. package/dist/esm/client/api.d.ts +7 -6
  166. package/dist/esm/client/api.js +4 -4
  167. package/dist/esm/client/aufrufe.d.ts +29 -5
  168. package/dist/esm/client/aufrufe.js +111 -1
  169. package/dist/esm/client/auth.d.ts +2 -0
  170. package/dist/esm/client/auth.js +16 -1
  171. package/dist/esm/client/cashregisters.d.ts +1 -1
  172. package/dist/esm/client/cashregisters.js +2 -2
  173. package/dist/esm/client/errors.d.ts +94 -19
  174. package/dist/esm/client/errors.js +129 -27
  175. package/dist/esm/client/fehlercodes.d.ts +9 -0
  176. package/dist/esm/client/fehlercodes.js +32 -0
  177. package/dist/esm/client/index.d.ts +5 -5
  178. package/dist/esm/client/index.js +5 -5
  179. package/dist/esm/client/receipts.d.ts +131 -124
  180. package/dist/esm/client/receipts.js +195 -140
  181. package/dist/esm/client/reports.d.ts +26 -4
  182. package/dist/esm/client/reports.js +36 -4
  183. package/dist/esm/client/status.d.ts +3 -3
  184. package/dist/esm/client/status.js +7 -7
  185. package/dist/esm/client/transport.d.ts +56 -4
  186. package/dist/esm/client/transport.js +233 -24
  187. package/dist/esm/enums/vat-rate.d.ts +2 -2
  188. package/dist/esm/enums/vat-rate.js +1 -1
  189. package/dist/esm/index.d.ts +4 -3
  190. package/dist/esm/index.js +4 -3
  191. package/dist/{cjs/rechnung → esm/invoice}/api.d.ts +18 -17
  192. package/dist/esm/{rechnung → invoice}/api.js +6 -6
  193. package/dist/{cjs/rechnung → esm/invoice}/auth.d.ts +2 -2
  194. package/dist/esm/{rechnung → invoice}/auth.js +4 -4
  195. package/dist/{cjs/rechnung/rechnen.d.ts → esm/invoice/calc.d.ts} +27 -27
  196. package/dist/esm/{rechnung/rechnen.js → invoice/calc.js} +45 -45
  197. package/dist/{cjs/rechnung → esm/invoice}/endpunkte.d.ts +23 -21
  198. package/dist/esm/{rechnung → invoice}/endpunkte.js +52 -42
  199. package/dist/esm/invoice/fehler.d.ts +31 -0
  200. package/dist/esm/invoice/fehler.js +33 -0
  201. package/dist/esm/invoice/index.d.ts +21 -0
  202. package/dist/esm/invoice/index.js +20 -0
  203. package/dist/esm/{rechnung → invoice}/summen.d.ts +12 -12
  204. package/dist/esm/{rechnung → invoice}/summen.js +12 -12
  205. package/dist/esm/invoice/texte.d.ts +224 -0
  206. package/dist/esm/invoice/texte.js +421 -0
  207. package/dist/{cjs/rechnung → esm/invoice}/typen.d.ts +32 -11
  208. package/dist/esm/{rechnung → invoice}/vertrag.d.ts +97 -71
  209. package/dist/esm/{rechnung → invoice}/vertrag.js +143 -81
  210. package/dist/esm/models/cancellation.d.ts +43 -24
  211. package/dist/esm/models/cancellation.js +90 -45
  212. package/dist/esm/models/hobex-receipt.d.ts +3 -3
  213. package/dist/esm/models/hobex-receipt.js +35 -35
  214. package/dist/esm/models/index.d.ts +6 -5
  215. package/dist/esm/models/index.js +6 -5
  216. package/dist/esm/models/payment-errors.d.ts +32 -15
  217. package/dist/esm/models/payment-errors.js +77 -32
  218. package/dist/esm/models/receipt-company.d.ts +6 -5
  219. package/dist/esm/models/receipt-company.js +4 -4
  220. package/dist/esm/models/receipt-email.d.ts +32 -18
  221. package/dist/esm/models/receipt-email.js +65 -23
  222. package/dist/esm/models/receipt-errors.d.ts +39 -0
  223. package/dist/esm/models/receipt-errors.js +87 -0
  224. package/dist/esm/models/receipt-item.d.ts +9 -1
  225. package/dist/esm/models/receipt-item.js +3 -0
  226. package/dist/esm/models/receipt-summary.d.ts +10 -4
  227. package/dist/esm/models/receipt-summary.js +9 -3
  228. package/dist/esm/models/receipt.d.ts +31 -2
  229. package/dist/esm/models/receipt.js +12 -2
  230. package/dist/esm/models/voucher.d.ts +7 -6
  231. package/dist/esm/models/voucher.js +2 -7
  232. package/dist/esm/partner/ablauf.d.ts +10 -10
  233. package/dist/esm/partner/ablauf.js +27 -27
  234. package/dist/esm/partner/api.d.ts +26 -23
  235. package/dist/esm/partner/api.js +13 -15
  236. package/dist/esm/partner/auth.d.ts +1 -1
  237. package/dist/esm/partner/auth.js +2 -2
  238. package/dist/esm/partner/betrieb.d.ts +7 -7
  239. package/dist/esm/partner/betrieb.js +8 -8
  240. package/dist/esm/partner/endpunkte.d.ts +27 -14
  241. package/dist/esm/partner/endpunkte.js +79 -39
  242. package/dist/esm/partner/fehler.d.ts +60 -30
  243. package/dist/esm/partner/fehler.js +91 -35
  244. package/dist/esm/partner/index.d.ts +13 -12
  245. package/dist/esm/partner/index.js +12 -11
  246. package/dist/esm/partner/secret.d.ts +3 -3
  247. package/dist/esm/partner/secret.js +5 -5
  248. package/dist/esm/partner/typen.d.ts +129 -71
  249. package/dist/esm/partner/typen.js +75 -2
  250. package/dist/esm/partner/webhook-signatur.d.ts +2 -2
  251. package/dist/esm/partner/webhook-signatur.js +12 -12
  252. package/dist/esm/partner/webhooks.d.ts +60 -32
  253. package/dist/esm/partner/webhooks.js +38 -32
  254. package/dist/esm/payments/hobex.d.ts +11 -3
  255. package/dist/esm/payments/hobex.js +18 -6
  256. package/dist/esm/payments/stripe.d.ts +5 -2
  257. package/dist/esm/payments/stripe.js +11 -6
  258. package/dist/esm/pos/artikel.d.ts +90 -0
  259. package/dist/esm/pos/artikel.js +79 -0
  260. package/dist/esm/pos/client.d.ts +27 -0
  261. package/dist/esm/pos/client.js +137 -0
  262. package/dist/esm/pos/drucker.d.ts +86 -0
  263. package/dist/esm/pos/drucker.js +71 -0
  264. package/dist/esm/pos/errors.d.ts +36 -0
  265. package/dist/esm/pos/errors.js +88 -0
  266. package/dist/esm/pos/index.d.ts +15 -0
  267. package/dist/esm/pos/index.js +20 -0
  268. package/dist/esm/pos/settings.d.ts +313 -0
  269. package/dist/esm/pos/settings.js +367 -0
  270. package/dist/esm/pos/texte.d.ts +883 -0
  271. package/dist/esm/pos/texte.js +481 -0
  272. package/dist/esm/{kasse → pos}/trinkgeld.d.ts +1 -1
  273. package/dist/esm/{kasse → pos}/trinkgeld.js +2 -2
  274. package/dist/esm/printing/escpos.d.ts +29 -29
  275. package/dist/esm/printing/escpos.js +56 -56
  276. package/dist/esm/printing/index.d.ts +2 -2
  277. package/dist/esm/printing/index.js +2 -2
  278. package/dist/esm/printing/qr-groesse.d.ts +38 -38
  279. package/dist/esm/printing/qr-groesse.js +42 -42
  280. package/dist/esm/printing/webusb.d.ts +2 -2
  281. package/dist/esm/printing/webusb.js +4 -4
  282. package/dist/esm/react/index.d.ts +21 -21
  283. package/dist/esm/react/index.js +39 -29
  284. package/dist/esm/receipt/bild.d.ts +4 -4
  285. package/dist/esm/receipt/bild.js +11 -11
  286. package/dist/esm/receipt/blatt.d.ts +46 -46
  287. package/dist/esm/receipt/blatt.js +55 -55
  288. package/dist/esm/receipt/discount.d.ts +1 -1
  289. package/dist/esm/receipt/discount.js +7 -7
  290. package/dist/esm/receipt/due.d.ts +86 -0
  291. package/dist/esm/receipt/due.js +257 -0
  292. package/dist/esm/receipt/epos.d.ts +22 -22
  293. package/dist/esm/receipt/epos.js +47 -47
  294. package/dist/esm/receipt/grid.d.ts +10 -10
  295. package/dist/esm/receipt/grid.js +18 -18
  296. package/dist/esm/receipt/index.d.ts +9 -8
  297. package/dist/esm/receipt/index.js +9 -8
  298. package/dist/esm/receipt/layout-escpos.d.ts +24 -24
  299. package/dist/esm/receipt/layout-escpos.js +51 -51
  300. package/dist/esm/receipt/layout.d.ts +28 -23
  301. package/dist/esm/receipt/layout.js +44 -20
  302. package/dist/esm/receipt/marke-daten.d.ts +8 -8
  303. package/dist/esm/receipt/marke-daten.js +7 -7
  304. package/dist/esm/receipt/marke.d.ts +7 -7
  305. package/dist/esm/receipt/marke.js +10 -10
  306. package/dist/esm/register/errors.d.ts +61 -0
  307. package/dist/esm/register/errors.js +104 -0
  308. package/dist/esm/register/index.d.ts +14 -1
  309. package/dist/esm/register/index.js +13 -0
  310. package/dist/esm/register/pairing.d.ts +55 -36
  311. package/dist/esm/register/pairing.js +33 -29
  312. package/dist/esm/register/session.d.ts +5 -5
  313. package/dist/esm/register/session.js +7 -7
  314. package/dist/esm/stored/draht.d.ts +45 -0
  315. package/dist/esm/stored/draht.js +208 -0
  316. package/dist/esm/stored/einstellungen.d.ts +23 -0
  317. package/dist/esm/stored/einstellungen.js +196 -0
  318. package/dist/esm/stored/index.d.ts +109 -0
  319. package/dist/esm/stored/index.js +217 -0
  320. package/dist/esm/stored/vokabular.d.ts +18 -0
  321. package/dist/esm/stored/vokabular.js +386 -0
  322. package/dist/esm/version.d.ts +7 -0
  323. package/dist/esm/version.js +7 -0
  324. package/dist/esm/vienna-time.d.ts +1 -1
  325. package/dist/esm/vienna-time.js +2 -2
  326. package/fixtures/{erwartet/storno-rabatt.lines.json → expected/cancellation-discount.lines.json} +2 -2
  327. package/fixtures/expected/cancellation-discount.sheet32.json +248 -0
  328. package/fixtures/{erwartet/storno-rabatt.blatt48.json → expected/cancellation-discount.sheet48.json} +119 -119
  329. package/fixtures/{erwartet/storno-voll.lines.json → expected/cancellation-full.lines.json} +2 -2
  330. package/fixtures/expected/cancellation-full.sheet32.json +218 -0
  331. package/fixtures/{erwartet/storno-voll.blatt48.json → expected/cancellation-full.sheet48.json} +107 -107
  332. package/fixtures/{erwartet/storno-teil.lines.json → expected/cancellation-partial.lines.json} +2 -2
  333. package/fixtures/expected/cancellation-partial.sheet32.json +206 -0
  334. package/fixtures/{erwartet/storno-teil.blatt48.json → expected/cancellation-partial.sheet48.json} +101 -101
  335. package/fixtures/{erwartet/storno-split-voll.lines.json → expected/cancellation-split-full.lines.json} +2 -2
  336. package/fixtures/expected/cancellation-split-full.sheet32.json +320 -0
  337. package/fixtures/{erwartet/storno-split-voll.blatt48.json → expected/cancellation-split-full.sheet48.json} +158 -158
  338. package/fixtures/{erwartet/storno-split-teil.lines.json → expected/cancellation-split-partial.lines.json} +2 -2
  339. package/fixtures/expected/cancellation-split-partial.sheet32.json +230 -0
  340. package/fixtures/{erwartet/storno-split-teil.blatt48.json → expected/cancellation-split-partial.sheet48.json} +113 -113
  341. package/fixtures/{erwartet/karte-eigener.lines.json → expected/card-custom.lines.json} +1 -1
  342. package/fixtures/expected/card-custom.sheet32.json +158 -0
  343. package/fixtures/{erwartet/karte-eigener.blatt48.json → expected/card-custom.sheet48.json} +80 -80
  344. package/fixtures/{erwartet/karte-gptom-ios.lines.json → expected/card-gptom-ios.lines.json} +1 -1
  345. package/fixtures/expected/card-gptom-ios.sheet32.json +230 -0
  346. package/fixtures/{erwartet/karte-gptom-ios.blatt48.json → expected/card-gptom-ios.sheet48.json} +116 -116
  347. package/fixtures/{erwartet/karte-gptom.lines.json → expected/card-gptom.lines.json} +1 -1
  348. package/fixtures/expected/card-gptom.sheet32.json +230 -0
  349. package/fixtures/{erwartet/karte-gptom.blatt48.json → expected/card-gptom.sheet48.json} +116 -116
  350. package/fixtures/{erwartet/karte-hobex-cloud.lines.json → expected/card-hobex-cloud.lines.json} +1 -1
  351. package/fixtures/expected/card-hobex-cloud.sheet32.json +200 -0
  352. package/fixtures/{erwartet/karte-hobex-cloud.blatt48.json → expected/card-hobex-cloud.sheet48.json} +101 -101
  353. package/fixtures/{erwartet/karte-hobex-hps.lines.json → expected/card-hobex-hps.lines.json} +1 -1
  354. package/fixtures/expected/card-hobex-hps.sheet32.json +224 -0
  355. package/fixtures/{erwartet/karte-hobex-hps.blatt48.json → expected/card-hobex-hps.sheet48.json} +113 -113
  356. package/fixtures/{erwartet/karte-mypos.lines.json → expected/card-mypos.lines.json} +1 -1
  357. package/fixtures/expected/card-mypos.sheet32.json +254 -0
  358. package/fixtures/{erwartet/karte-mypos.blatt48.json → expected/card-mypos.sheet48.json} +122 -122
  359. package/fixtures/{erwartet/karte-stripe-eps.lines.json → expected/card-stripe-eps.lines.json} +1 -1
  360. package/fixtures/expected/card-stripe-eps.sheet32.json +194 -0
  361. package/fixtures/{erwartet/karte-stripe-eps.blatt48.json → expected/card-stripe-eps.sheet48.json} +98 -98
  362. package/fixtures/{erwartet/karte-stripe.lines.json → expected/card-stripe.lines.json} +1 -1
  363. package/fixtures/expected/card-stripe.sheet32.json +212 -0
  364. package/fixtures/{erwartet/karte-stripe.blatt48.json → expected/card-stripe.sheet48.json} +107 -107
  365. package/fixtures/{erwartet/karte-sumup.lines.json → expected/card-sumup.lines.json} +1 -1
  366. package/fixtures/expected/card-sumup.sheet32.json +218 -0
  367. package/fixtures/{erwartet/karte-sumup.blatt48.json → expected/card-sumup.sheet48.json} +104 -104
  368. package/fixtures/{erwartet/rabattzeilen.lines.json → expected/discount-lines.lines.json} +1 -1
  369. package/fixtures/expected/discount-lines.sheet32.json +200 -0
  370. package/fixtures/{erwartet/rabattzeilen.blatt48.json → expected/discount-lines.sheet48.json} +98 -98
  371. package/fixtures/{erwartet/rabatt-chef-trinkgeld.lines.json → expected/discount-owner-tip.lines.json} +1 -1
  372. package/fixtures/expected/discount-owner-tip.sheet32.json +212 -0
  373. package/fixtures/{erwartet/rabatt-chef-trinkgeld.blatt48.json → expected/discount-owner-tip.sheet48.json} +104 -104
  374. package/fixtures/{erwartet/rabatt-einfach.lines.json → expected/discount-simple.lines.json} +1 -1
  375. package/fixtures/expected/discount-simple.sheet32.json +182 -0
  376. package/fixtures/{erwartet/rabatt-einfach.blatt48.json → expected/discount-simple.sheet48.json} +89 -89
  377. package/fixtures/{erwartet/rabatt-trinkgeld.lines.json → expected/discount-tip.lines.json} +1 -1
  378. package/fixtures/expected/discount-tip.sheet32.json +212 -0
  379. package/fixtures/{erwartet/rabatt-trinkgeld.blatt48.json → expected/discount-tip.sheet48.json} +104 -104
  380. package/fixtures/{erwartet/rabatt-wertgutschein.lines.json → expected/discount-value-voucher.lines.json} +1 -1
  381. package/fixtures/expected/discount-value-voucher.sheet32.json +218 -0
  382. package/fixtures/{erwartet/rabatt-wertgutschein.blatt48.json → expected/discount-value-voucher.sheet48.json} +107 -107
  383. package/fixtures/{erwartet/langer-artikelname.lines.json → expected/long-item-name.lines.json} +1 -1
  384. package/fixtures/expected/long-item-name.sheet32.json +176 -0
  385. package/fixtures/{erwartet/langer-artikelname.blatt48.json → expected/long-item-name.sheet48.json} +86 -86
  386. package/fixtures/{erwartet/verkauf-karte.lines.json → expected/sale-card.lines.json} +1 -1
  387. package/fixtures/expected/sale-card.sheet32.json +176 -0
  388. package/fixtures/{erwartet/verkauf-karte.blatt48.json → expected/sale-card.sheet48.json} +86 -86
  389. package/fixtures/{erwartet/verkauf-bar.lines.json → expected/sale-cash.lines.json} +1 -1
  390. package/fixtures/expected/sale-cash.sheet32.json +176 -0
  391. package/fixtures/{erwartet/verkauf-bar.blatt48.json → expected/sale-cash.sheet48.json} +86 -86
  392. package/fixtures/{erwartet/verkauf-kleinunternehmer.lines.json → expected/sale-small-business.lines.json} +1 -1
  393. package/fixtures/expected/sale-small-business.sheet32.json +182 -0
  394. package/fixtures/{erwartet/verkauf-kleinunternehmer.blatt48.json → expected/sale-small-business.sheet48.json} +89 -89
  395. package/fixtures/{erwartet/signaturausfall-verkauf.lines.json → expected/signature-outage-sale.lines.json} +1 -1
  396. package/fixtures/expected/signature-outage-sale.sheet32.json +194 -0
  397. package/fixtures/{erwartet/signaturausfall-verkauf.blatt48.json → expected/signature-outage-sale.sheet48.json} +92 -92
  398. package/fixtures/{erwartet/split-karte-karte-bar.lines.json → expected/split-card-card-cash.lines.json} +1 -1
  399. package/fixtures/expected/split-card-card-cash.sheet32.json +356 -0
  400. package/fixtures/{erwartet/split-karte-karte-bar.blatt48.json → expected/split-card-card-cash.sheet48.json} +170 -170
  401. package/fixtures/{erwartet/split-bar-rueckgeld.lines.json → expected/split-cash-change.lines.json} +1 -1
  402. package/fixtures/expected/split-cash-change.sheet32.json +194 -0
  403. package/fixtures/{erwartet/split-bar-rueckgeld.blatt48.json → expected/split-cash-change.sheet48.json} +92 -92
  404. package/fixtures/{erwartet/split-langer-betrag.lines.json → expected/split-long-amount.lines.json} +1 -1
  405. package/fixtures/expected/split-long-amount.sheet32.json +266 -0
  406. package/fixtures/{erwartet/split-langer-betrag.blatt48.json → expected/split-long-amount.sheet48.json} +131 -131
  407. package/fixtures/{erwartet/split-eine-karte-trinkgeld.lines.json → expected/split-one-card-tip.lines.json} +1 -1
  408. package/fixtures/expected/split-one-card-tip.sheet32.json +242 -0
  409. package/fixtures/{erwartet/split-eine-karte-trinkgeld.blatt48.json → expected/split-one-card-tip.sheet48.json} +113 -113
  410. package/fixtures/{erwartet/split-tischrunde-trinkgeld.lines.json → expected/split-table-round-tip.lines.json} +1 -1
  411. package/fixtures/expected/split-table-round-tip.sheet32.json +470 -0
  412. package/fixtures/{erwartet/split-tischrunde-trinkgeld.blatt48.json → expected/split-table-round-tip.sheet48.json} +218 -218
  413. package/fixtures/{erwartet/split-trinkgeld-karte.lines.json → expected/split-tip-card.lines.json} +1 -1
  414. package/fixtures/expected/split-tip-card.sheet32.json +272 -0
  415. package/fixtures/{erwartet/split-trinkgeld-karte.blatt48.json → expected/split-tip-card.sheet48.json} +128 -128
  416. package/fixtures/{erwartet/split-zwei-karten-gleicher-anbieter.lines.json → expected/split-two-cards-same-provider.lines.json} +1 -1
  417. package/fixtures/expected/split-two-cards-same-provider.sheet32.json +326 -0
  418. package/fixtures/{erwartet/split-zwei-karten-gleicher-anbieter.blatt48.json → expected/split-two-cards-same-provider.sheet48.json} +149 -149
  419. package/fixtures/{erwartet/testkasse-verkauf.lines.json → expected/test-cashregister-sale.lines.json} +3 -3
  420. package/fixtures/expected/test-cashregister-sale.sheet32.json +224 -0
  421. package/fixtures/{erwartet/testkasse-verkauf.blatt48.json → expected/test-cashregister-sale.sheet48.json} +110 -110
  422. package/fixtures/{erwartet/testsignatur-verkauf.lines.json → expected/test-signature-sale.lines.json} +3 -3
  423. package/fixtures/expected/test-signature-sale.sheet32.json +236 -0
  424. package/fixtures/{erwartet/testsignatur-verkauf.blatt48.json → expected/test-signature-sale.sheet48.json} +110 -110
  425. package/fixtures/{erwartet → expected}/training.lines.json +2 -2
  426. package/fixtures/expected/training.sheet32.json +236 -0
  427. package/fixtures/{erwartet/training.blatt48.json → expected/training.sheet48.json} +110 -110
  428. package/fixtures/{erwartet/null-jahr.lines.json → expected/zero-annual.lines.json} +2 -2
  429. package/fixtures/expected/zero-annual.sheet32.json +212 -0
  430. package/fixtures/{erwartet/null-jahr.blatt48.json → expected/zero-annual.sheet48.json} +95 -95
  431. package/fixtures/{erwartet/null-schluss.lines.json → expected/zero-final.lines.json} +2 -2
  432. package/fixtures/expected/zero-final.sheet32.json +206 -0
  433. package/fixtures/{erwartet/null-schluss.blatt48.json → expected/zero-final.sheet48.json} +95 -95
  434. package/fixtures/{erwartet/null-pruef.lines.json → expected/zero-manual.lines.json} +2 -2
  435. package/fixtures/expected/zero-manual.sheet32.json +206 -0
  436. package/fixtures/{erwartet/null-pruef.blatt48.json → expected/zero-manual.sheet48.json} +95 -95
  437. package/fixtures/{erwartet/null-monat.lines.json → expected/zero-monthly.lines.json} +2 -2
  438. package/fixtures/expected/zero-monthly.sheet32.json +206 -0
  439. package/fixtures/{erwartet/null-monat.blatt48.json → expected/zero-monthly.sheet48.json} +95 -95
  440. package/fixtures/{erwartet/null-ausfall.lines.json → expected/zero-outage-end.lines.json} +2 -2
  441. package/fixtures/expected/zero-outage-end.sheet32.json +206 -0
  442. package/fixtures/{erwartet/null-ausfall.blatt48.json → expected/zero-outage-end.sheet48.json} +95 -95
  443. package/fixtures/{erwartet/null-start.lines.json → expected/zero-start.lines.json} +2 -2
  444. package/fixtures/expected/zero-start.sheet32.json +206 -0
  445. package/fixtures/{erwartet/null-start.blatt48.json → expected/zero-start.sheet48.json} +95 -95
  446. package/fixtures/hobex-hps-codes.json +12 -12
  447. package/fixtures/invoice-api-examples/brands-ok.json +8 -0
  448. package/fixtures/{rechnung-api-beispiele/credit-fehler-grund.json → invoice-api-examples/credit-error-reason.json} +6 -6
  449. package/fixtures/{rechnung-api-beispiele → invoice-api-examples}/credit-ok.json +6 -6
  450. package/fixtures/{rechnung-api-beispiele/customer-fehler-uid.json → invoice-api-examples/customer-error-vat-id.json} +4 -4
  451. package/fixtures/invoice-api-examples/customer-get-error-both.json +15 -0
  452. package/fixtures/{rechnung-api-beispiele → invoice-api-examples}/customer-ok.json +4 -4
  453. package/fixtures/{rechnung-api-beispiele/customer-search-fehler-leer.json → invoice-api-examples/customer-search-error-empty.json} +4 -4
  454. package/fixtures/{rechnung-api-beispiele/issue-rabatt.json → invoice-api-examples/issue-discount.json} +6 -6
  455. package/fixtures/{rechnung-api-beispiele/issue-englisch.json → invoice-api-examples/issue-english.json} +7 -7
  456. package/fixtures/{rechnung-api-beispiele/issue-fehler-cent.json → invoice-api-examples/issue-error-cent.json} +6 -6
  457. package/fixtures/{rechnung-api-beispiele/issue-fehler-sprache.json → invoice-api-examples/issue-error-language.json} +5 -5
  458. package/fixtures/{rechnung-api-beispiele/issue-fehler-negativ.json → invoice-api-examples/issue-error-negative.json} +6 -6
  459. package/fixtures/{rechnung-api-beispiele/issue-fehler-zahlungsart.json → invoice-api-examples/issue-error-payment-method.json} +8 -6
  460. package/fixtures/{rechnung-api-beispiele/issue-fehler-preis-beide.json → invoice-api-examples/issue-error-price-both.json} +6 -6
  461. package/fixtures/{rechnung-api-beispiele/issue-fehler-preis-fehlt.json → invoice-api-examples/issue-error-price-missing.json} +6 -6
  462. package/fixtures/{rechnung-api-beispiele/issue-fehler-menge.json → invoice-api-examples/issue-error-quantity.json} +6 -6
  463. package/fixtures/{rechnung-api-beispiele/issue-fehler-satz.json → invoice-api-examples/issue-error-rate.json} +6 -6
  464. package/fixtures/{rechnung-api-beispiele/issue-fehler-einheit.json → invoice-api-examples/issue-error-unit.json} +5 -5
  465. package/fixtures/{rechnung-api-beispiele/issue-fehler-unbekannt.json → invoice-api-examples/issue-error-unknown.json} +6 -6
  466. package/fixtures/{rechnung-api-beispiele/issue-brutto-20.json → invoice-api-examples/issue-gross-20.json} +6 -6
  467. package/fixtures/{rechnung-api-beispiele/issue-mikropreis.json → invoice-api-examples/issue-micro-price.json} +6 -6
  468. package/fixtures/{rechnung-api-beispiele/issue-gemischt.json → invoice-api-examples/issue-mixed.json} +6 -6
  469. package/fixtures/{rechnung-api-beispiele/issue-netto-20.json → invoice-api-examples/issue-net-20.json} +6 -6
  470. package/fixtures/{rechnung-api-beispiele/issue-bezahlt.json → invoice-api-examples/issue-paid.json} +7 -7
  471. package/fixtures/{rechnung-api-beispiele/issue-kleinunternehmer.json → invoice-api-examples/issue-small-business.json} +6 -6
  472. package/fixtures/invoice-api-examples/payment-error-on-site.json +17 -0
  473. package/fixtures/invoice-api-examples/payment-error-without-key.json +16 -0
  474. package/fixtures/invoice-api-examples/payment-recorded-later.json +14 -0
  475. package/fixtures/{rechnung-api-beispiele/setup-status-fehler-feld.json → invoice-api-examples/setup-status-error-field.json} +4 -4
  476. package/fixtures/invoice-api-examples/setup-status-ok.json +8 -0
  477. package/fixtures/{rechnung-api.schema.json → invoice-api.schema.json} +24 -24
  478. package/fixtures/{rechnung-rechnen-zufall.json → invoice-calc-random.json} +828 -828
  479. package/fixtures/{rechnung-rechnen.json → invoice-calc.json} +47 -47
  480. package/fixtures/invoice-texts.json +464 -0
  481. package/fixtures/{rechnung-summen.json → invoice-totals.json} +25 -25
  482. package/fixtures/{position-aus-euro.json → item-from-euro.json} +26 -26
  483. package/fixtures/manifest.json +252 -252
  484. package/fixtures/pos-message-cases.json +32 -0
  485. package/fixtures/pos-settings-defaults.json +149 -0
  486. package/fixtures/{kasse-texte.json → pos-texts.json} +416 -416
  487. package/fixtures/receipt-due-generated.json +1218 -0
  488. package/fixtures/{belege/storno-rabatt.json → receipts/cancellation-discount.json} +3 -3
  489. package/fixtures/{belege/storno-voll.json → receipts/cancellation-full.json} +3 -3
  490. package/fixtures/{belege/storno-teil.json → receipts/cancellation-partial.json} +3 -3
  491. package/fixtures/{belege/storno-split-voll.json → receipts/cancellation-split-full.json} +3 -3
  492. package/fixtures/{belege/storno-split-teil.json → receipts/cancellation-split-partial.json} +3 -3
  493. package/fixtures/{belege/karte-eigener.json → receipts/card-custom.json} +2 -2
  494. package/fixtures/{belege/karte-gptom-ios.json → receipts/card-gptom-ios.json} +2 -2
  495. package/fixtures/{belege/karte-gptom.json → receipts/card-gptom.json} +2 -2
  496. package/fixtures/{belege/karte-hobex-cloud.json → receipts/card-hobex-cloud.json} +2 -2
  497. package/fixtures/{belege/karte-hobex-hps.json → receipts/card-hobex-hps.json} +2 -2
  498. package/fixtures/{belege/karte-mypos.json → receipts/card-mypos.json} +2 -2
  499. package/fixtures/{belege/karte-stripe-eps.json → receipts/card-stripe-eps.json} +2 -2
  500. package/fixtures/{belege/karte-stripe.json → receipts/card-stripe.json} +2 -2
  501. package/fixtures/{belege/karte-sumup.json → receipts/card-sumup.json} +2 -2
  502. package/fixtures/{belege/rabattzeilen.json → receipts/discount-lines.json} +2 -2
  503. package/fixtures/{belege/rabatt-chef-trinkgeld.json → receipts/discount-owner-tip.json} +2 -2
  504. package/fixtures/{belege/rabatt-einfach.json → receipts/discount-simple.json} +2 -2
  505. package/fixtures/{belege/rabatt-trinkgeld.json → receipts/discount-tip.json} +2 -2
  506. package/fixtures/{belege/rabatt-wertgutschein.json → receipts/discount-value-voucher.json} +2 -2
  507. package/fixtures/{belege/langer-artikelname.json → receipts/long-item-name.json} +2 -2
  508. package/fixtures/{belege/verkauf-karte.json → receipts/sale-card.json} +2 -2
  509. package/fixtures/{belege/verkauf-bar.json → receipts/sale-cash.json} +2 -2
  510. package/fixtures/{belege/verkauf-kleinunternehmer.json → receipts/sale-small-business.json} +1 -1
  511. package/fixtures/{belege/signaturausfall-verkauf.json → receipts/signature-outage-sale.json} +2 -2
  512. package/fixtures/{belege/split-karte-karte-bar.json → receipts/split-card-card-cash.json} +2 -2
  513. package/fixtures/{belege/split-bar-rueckgeld.json → receipts/split-cash-change.json} +2 -2
  514. package/fixtures/{belege/split-langer-betrag.json → receipts/split-long-amount.json} +2 -2
  515. package/fixtures/{belege/split-eine-karte-trinkgeld.json → receipts/split-one-card-tip.json} +2 -2
  516. package/fixtures/{belege/split-tischrunde-trinkgeld.json → receipts/split-table-round-tip.json} +2 -2
  517. package/fixtures/{belege/split-trinkgeld-karte.json → receipts/split-tip-card.json} +2 -2
  518. package/fixtures/{belege/split-zwei-karten-gleicher-anbieter.json → receipts/split-two-cards-same-provider.json} +2 -2
  519. package/fixtures/{belege/testsignatur-verkauf.json → receipts/test-cashregister-sale.json} +3 -3
  520. package/fixtures/{belege/testkasse-verkauf.json → receipts/test-signature-sale.json} +3 -3
  521. package/fixtures/{belege → receipts}/training.json +2 -2
  522. package/fixtures/{belege/null-jahr.json → receipts/zero-annual.json} +5 -5
  523. package/fixtures/{belege/null-schluss.json → receipts/zero-final.json} +5 -5
  524. package/fixtures/{belege/null-pruef.json → receipts/zero-manual.json} +5 -5
  525. package/fixtures/{belege/null-monat.json → receipts/zero-monthly.json} +5 -5
  526. package/fixtures/{belege/null-ausfall.json → receipts/zero-outage-end.json} +5 -5
  527. package/fixtures/{belege/null-start.json → receipts/zero-start.json} +5 -5
  528. package/fixtures/renames-1.0.json +1490 -0
  529. package/fixtures/{kasse-settings-standard.json → stored/pos-settings-defaults.json} +7 -7
  530. package/fixtures/surface.json +877 -0
  531. package/fixtures/v3/README.md +125 -0
  532. package/fixtures/v3/antworten/belege.json +4738 -0
  533. package/fixtures/v3/antworten/belegmail.json +154 -0
  534. package/fixtures/v3/antworten/kasse-belege.json +4304 -0
  535. package/fixtures/v3/antworten/kasse.json +12716 -0
  536. package/fixtures/v3/antworten/rechnungen.json +1712 -0
  537. package/fixtures/v3/antworten/storno.json +737 -0
  538. package/fixtures/v3/stored/belege.json +502 -0
  539. package/fixtures/v3/stored/kasse.json +3461 -0
  540. package/fixtures/v3/stored/rechnungen.json +750 -0
  541. package/fixtures/v3/v3-vokabular.json +3375 -0
  542. package/fixtures/v3/zahlbetrag-faelle.json +794 -0
  543. package/package.json +32 -18
  544. package/dist/cjs/kasse/artikel.d.ts +0 -83
  545. package/dist/cjs/kasse/artikel.js +0 -79
  546. package/dist/cjs/kasse/client.d.ts +0 -10
  547. package/dist/cjs/kasse/client.js +0 -38
  548. package/dist/cjs/kasse/drucker.d.ts +0 -59
  549. package/dist/cjs/kasse/drucker.js +0 -50
  550. package/dist/cjs/kasse/index.d.ts +0 -13
  551. package/dist/cjs/kasse/index.js +0 -83
  552. package/dist/cjs/kasse/settings.d.ts +0 -229
  553. package/dist/cjs/kasse/settings.js +0 -172
  554. package/dist/cjs/kasse/texte.d.ts +0 -868
  555. package/dist/cjs/kasse/texte.js +0 -474
  556. package/dist/cjs/rechnung/fehler.d.ts +0 -21
  557. package/dist/cjs/rechnung/fehler.js +0 -44
  558. package/dist/cjs/rechnung/index.d.ts +0 -21
  559. package/dist/cjs/rechnung/index.js +0 -82
  560. package/dist/cjs/rechnung/texte.d.ts +0 -222
  561. package/dist/cjs/rechnung/texte.js +0 -425
  562. package/dist/esm/kasse/artikel.d.ts +0 -83
  563. package/dist/esm/kasse/artikel.js +0 -70
  564. package/dist/esm/kasse/client.d.ts +0 -10
  565. package/dist/esm/kasse/client.js +0 -33
  566. package/dist/esm/kasse/drucker.d.ts +0 -59
  567. package/dist/esm/kasse/drucker.js +0 -45
  568. package/dist/esm/kasse/index.d.ts +0 -13
  569. package/dist/esm/kasse/index.js +0 -18
  570. package/dist/esm/kasse/settings.d.ts +0 -229
  571. package/dist/esm/kasse/settings.js +0 -168
  572. package/dist/esm/kasse/texte.d.ts +0 -868
  573. package/dist/esm/kasse/texte.js +0 -466
  574. package/dist/esm/rechnung/fehler.d.ts +0 -21
  575. package/dist/esm/rechnung/fehler.js +0 -39
  576. package/dist/esm/rechnung/index.d.ts +0 -21
  577. package/dist/esm/rechnung/index.js +0 -20
  578. package/dist/esm/rechnung/texte.d.ts +0 -222
  579. package/dist/esm/rechnung/texte.js +0 -421
  580. package/fixtures/erwartet/karte-eigener.blatt32.json +0 -158
  581. package/fixtures/erwartet/karte-gptom-ios.blatt32.json +0 -230
  582. package/fixtures/erwartet/karte-gptom.blatt32.json +0 -230
  583. package/fixtures/erwartet/karte-hobex-cloud.blatt32.json +0 -200
  584. package/fixtures/erwartet/karte-hobex-hps.blatt32.json +0 -224
  585. package/fixtures/erwartet/karte-mypos.blatt32.json +0 -254
  586. package/fixtures/erwartet/karte-stripe-eps.blatt32.json +0 -194
  587. package/fixtures/erwartet/karte-stripe.blatt32.json +0 -212
  588. package/fixtures/erwartet/karte-sumup.blatt32.json +0 -218
  589. package/fixtures/erwartet/langer-artikelname.blatt32.json +0 -176
  590. package/fixtures/erwartet/null-ausfall.blatt32.json +0 -206
  591. package/fixtures/erwartet/null-jahr.blatt32.json +0 -212
  592. package/fixtures/erwartet/null-monat.blatt32.json +0 -206
  593. package/fixtures/erwartet/null-pruef.blatt32.json +0 -206
  594. package/fixtures/erwartet/null-schluss.blatt32.json +0 -206
  595. package/fixtures/erwartet/null-start.blatt32.json +0 -206
  596. package/fixtures/erwartet/rabatt-chef-trinkgeld.blatt32.json +0 -212
  597. package/fixtures/erwartet/rabatt-einfach.blatt32.json +0 -182
  598. package/fixtures/erwartet/rabatt-trinkgeld.blatt32.json +0 -212
  599. package/fixtures/erwartet/rabatt-wertgutschein.blatt32.json +0 -218
  600. package/fixtures/erwartet/rabattzeilen.blatt32.json +0 -200
  601. package/fixtures/erwartet/signaturausfall-verkauf.blatt32.json +0 -194
  602. package/fixtures/erwartet/split-bar-rueckgeld.blatt32.json +0 -194
  603. package/fixtures/erwartet/split-eine-karte-trinkgeld.blatt32.json +0 -242
  604. package/fixtures/erwartet/split-karte-karte-bar.blatt32.json +0 -356
  605. package/fixtures/erwartet/split-langer-betrag.blatt32.json +0 -266
  606. package/fixtures/erwartet/split-tischrunde-trinkgeld.blatt32.json +0 -470
  607. package/fixtures/erwartet/split-trinkgeld-karte.blatt32.json +0 -272
  608. package/fixtures/erwartet/split-zwei-karten-gleicher-anbieter.blatt32.json +0 -326
  609. package/fixtures/erwartet/storno-rabatt.blatt32.json +0 -248
  610. package/fixtures/erwartet/storno-split-teil.blatt32.json +0 -230
  611. package/fixtures/erwartet/storno-split-voll.blatt32.json +0 -320
  612. package/fixtures/erwartet/storno-teil.blatt32.json +0 -206
  613. package/fixtures/erwartet/storno-voll.blatt32.json +0 -218
  614. package/fixtures/erwartet/testkasse-verkauf.blatt32.json +0 -224
  615. package/fixtures/erwartet/testsignatur-verkauf.blatt32.json +0 -236
  616. package/fixtures/erwartet/training.blatt32.json +0 -236
  617. package/fixtures/erwartet/verkauf-bar.blatt32.json +0 -176
  618. package/fixtures/erwartet/verkauf-karte.blatt32.json +0 -176
  619. package/fixtures/erwartet/verkauf-kleinunternehmer.blatt32.json +0 -182
  620. package/fixtures/kasse-meldungen-faelle.json +0 -32
  621. package/fixtures/oberflaeche.json +0 -558
  622. package/fixtures/rechnung-api-beispiele/brands-ok.json +0 -8
  623. package/fixtures/rechnung-api-beispiele/customer-get-fehler-beide.json +0 -15
  624. package/fixtures/rechnung-api-beispiele/setup-status-ok.json +0 -8
  625. package/fixtures/rechnung-api-beispiele/zahlung-fehler-ohne-schluessel.json +0 -14
  626. package/fixtures/rechnung-api-beispiele/zahlung-fehler-vor-ort.json +0 -15
  627. package/fixtures/rechnung-api-beispiele/zahlung-nachtrag.json +0 -14
  628. package/fixtures/rechnung-texte.json +0 -464
  629. /package/dist/cjs/{rechnung → invoice}/typen.js +0 -0
  630. /package/dist/esm/{rechnung → invoice}/typen.js +0 -0
  631. /package/fixtures/{erwartet/storno-rabatt.grid32.txt → expected/cancellation-discount.grid32.txt} +0 -0
  632. /package/fixtures/{erwartet/storno-rabatt.grid48.txt → expected/cancellation-discount.grid48.txt} +0 -0
  633. /package/fixtures/{erwartet/storno-voll.grid32.txt → expected/cancellation-full.grid32.txt} +0 -0
  634. /package/fixtures/{erwartet/storno-voll.grid48.txt → expected/cancellation-full.grid48.txt} +0 -0
  635. /package/fixtures/{erwartet/storno-teil.grid32.txt → expected/cancellation-partial.grid32.txt} +0 -0
  636. /package/fixtures/{erwartet/storno-teil.grid48.txt → expected/cancellation-partial.grid48.txt} +0 -0
  637. /package/fixtures/{erwartet/storno-split-voll.grid32.txt → expected/cancellation-split-full.grid32.txt} +0 -0
  638. /package/fixtures/{erwartet/storno-split-voll.grid48.txt → expected/cancellation-split-full.grid48.txt} +0 -0
  639. /package/fixtures/{erwartet/storno-split-teil.grid32.txt → expected/cancellation-split-partial.grid32.txt} +0 -0
  640. /package/fixtures/{erwartet/storno-split-teil.grid48.txt → expected/cancellation-split-partial.grid48.txt} +0 -0
  641. /package/fixtures/{erwartet/karte-eigener.grid32.txt → expected/card-custom.grid32.txt} +0 -0
  642. /package/fixtures/{erwartet/karte-eigener.grid48.txt → expected/card-custom.grid48.txt} +0 -0
  643. /package/fixtures/{erwartet/karte-gptom-ios.grid32.txt → expected/card-gptom-ios.grid32.txt} +0 -0
  644. /package/fixtures/{erwartet/karte-gptom-ios.grid48.txt → expected/card-gptom-ios.grid48.txt} +0 -0
  645. /package/fixtures/{erwartet/karte-gptom.grid32.txt → expected/card-gptom.grid32.txt} +0 -0
  646. /package/fixtures/{erwartet/karte-gptom.grid48.txt → expected/card-gptom.grid48.txt} +0 -0
  647. /package/fixtures/{erwartet/karte-hobex-cloud.grid32.txt → expected/card-hobex-cloud.grid32.txt} +0 -0
  648. /package/fixtures/{erwartet/karte-hobex-cloud.grid48.txt → expected/card-hobex-cloud.grid48.txt} +0 -0
  649. /package/fixtures/{erwartet/karte-hobex-hps.grid32.txt → expected/card-hobex-hps.grid32.txt} +0 -0
  650. /package/fixtures/{erwartet/karte-hobex-hps.grid48.txt → expected/card-hobex-hps.grid48.txt} +0 -0
  651. /package/fixtures/{erwartet/karte-mypos.grid32.txt → expected/card-mypos.grid32.txt} +0 -0
  652. /package/fixtures/{erwartet/karte-mypos.grid48.txt → expected/card-mypos.grid48.txt} +0 -0
  653. /package/fixtures/{erwartet/karte-stripe-eps.grid32.txt → expected/card-stripe-eps.grid32.txt} +0 -0
  654. /package/fixtures/{erwartet/karte-stripe-eps.grid48.txt → expected/card-stripe-eps.grid48.txt} +0 -0
  655. /package/fixtures/{erwartet/karte-stripe.grid32.txt → expected/card-stripe.grid32.txt} +0 -0
  656. /package/fixtures/{erwartet/karte-stripe.grid48.txt → expected/card-stripe.grid48.txt} +0 -0
  657. /package/fixtures/{erwartet/karte-sumup.grid32.txt → expected/card-sumup.grid32.txt} +0 -0
  658. /package/fixtures/{erwartet/karte-sumup.grid48.txt → expected/card-sumup.grid48.txt} +0 -0
  659. /package/fixtures/{erwartet/rabattzeilen.grid32.txt → expected/discount-lines.grid32.txt} +0 -0
  660. /package/fixtures/{erwartet/rabattzeilen.grid48.txt → expected/discount-lines.grid48.txt} +0 -0
  661. /package/fixtures/{erwartet/rabatt-chef-trinkgeld.grid32.txt → expected/discount-owner-tip.grid32.txt} +0 -0
  662. /package/fixtures/{erwartet/rabatt-chef-trinkgeld.grid48.txt → expected/discount-owner-tip.grid48.txt} +0 -0
  663. /package/fixtures/{erwartet/rabatt-einfach.grid32.txt → expected/discount-simple.grid32.txt} +0 -0
  664. /package/fixtures/{erwartet/rabatt-einfach.grid48.txt → expected/discount-simple.grid48.txt} +0 -0
  665. /package/fixtures/{erwartet/rabatt-trinkgeld.grid32.txt → expected/discount-tip.grid32.txt} +0 -0
  666. /package/fixtures/{erwartet/rabatt-trinkgeld.grid48.txt → expected/discount-tip.grid48.txt} +0 -0
  667. /package/fixtures/{erwartet/rabatt-wertgutschein.grid32.txt → expected/discount-value-voucher.grid32.txt} +0 -0
  668. /package/fixtures/{erwartet/rabatt-wertgutschein.grid48.txt → expected/discount-value-voucher.grid48.txt} +0 -0
  669. /package/fixtures/{erwartet/logo-probe-hoch.raster32.txt → expected/logo-sample-tall.raster32.txt} +0 -0
  670. /package/fixtures/{erwartet/logo-probe.raster32.txt → expected/logo-sample.raster32.txt} +0 -0
  671. /package/fixtures/{erwartet/langer-artikelname.grid32.txt → expected/long-item-name.grid32.txt} +0 -0
  672. /package/fixtures/{erwartet/langer-artikelname.grid48.txt → expected/long-item-name.grid48.txt} +0 -0
  673. /package/fixtures/{erwartet/verkauf-karte.grid32.txt → expected/sale-card.grid32.txt} +0 -0
  674. /package/fixtures/{erwartet/verkauf-karte.grid48.txt → expected/sale-card.grid48.txt} +0 -0
  675. /package/fixtures/{erwartet/verkauf-bar.grid32.txt → expected/sale-cash.grid32.txt} +0 -0
  676. /package/fixtures/{erwartet/verkauf-bar.grid48.txt → expected/sale-cash.grid48.txt} +0 -0
  677. /package/fixtures/{erwartet/verkauf-kleinunternehmer.grid32.txt → expected/sale-small-business.grid32.txt} +0 -0
  678. /package/fixtures/{erwartet/verkauf-kleinunternehmer.grid48.txt → expected/sale-small-business.grid48.txt} +0 -0
  679. /package/fixtures/{erwartet/signaturausfall-verkauf.grid32.txt → expected/signature-outage-sale.grid32.txt} +0 -0
  680. /package/fixtures/{erwartet/signaturausfall-verkauf.grid48.txt → expected/signature-outage-sale.grid48.txt} +0 -0
  681. /package/fixtures/{erwartet/split-karte-karte-bar.grid32.txt → expected/split-card-card-cash.grid32.txt} +0 -0
  682. /package/fixtures/{erwartet/split-karte-karte-bar.grid48.txt → expected/split-card-card-cash.grid48.txt} +0 -0
  683. /package/fixtures/{erwartet/split-bar-rueckgeld.grid32.txt → expected/split-cash-change.grid32.txt} +0 -0
  684. /package/fixtures/{erwartet/split-bar-rueckgeld.grid48.txt → expected/split-cash-change.grid48.txt} +0 -0
  685. /package/fixtures/{erwartet/split-langer-betrag.grid32.txt → expected/split-long-amount.grid32.txt} +0 -0
  686. /package/fixtures/{erwartet/split-langer-betrag.grid48.txt → expected/split-long-amount.grid48.txt} +0 -0
  687. /package/fixtures/{erwartet/split-eine-karte-trinkgeld.grid32.txt → expected/split-one-card-tip.grid32.txt} +0 -0
  688. /package/fixtures/{erwartet/split-eine-karte-trinkgeld.grid48.txt → expected/split-one-card-tip.grid48.txt} +0 -0
  689. /package/fixtures/{erwartet/split-tischrunde-trinkgeld.grid32.txt → expected/split-table-round-tip.grid32.txt} +0 -0
  690. /package/fixtures/{erwartet/split-tischrunde-trinkgeld.grid48.txt → expected/split-table-round-tip.grid48.txt} +0 -0
  691. /package/fixtures/{erwartet/split-trinkgeld-karte.grid32.txt → expected/split-tip-card.grid32.txt} +0 -0
  692. /package/fixtures/{erwartet/split-trinkgeld-karte.grid48.txt → expected/split-tip-card.grid48.txt} +0 -0
  693. /package/fixtures/{erwartet/split-zwei-karten-gleicher-anbieter.grid32.txt → expected/split-two-cards-same-provider.grid32.txt} +0 -0
  694. /package/fixtures/{erwartet/split-zwei-karten-gleicher-anbieter.grid48.txt → expected/split-two-cards-same-provider.grid48.txt} +0 -0
  695. /package/fixtures/{erwartet/testkasse-verkauf.grid32.txt → expected/test-cashregister-sale.grid32.txt} +0 -0
  696. /package/fixtures/{erwartet/testkasse-verkauf.grid48.txt → expected/test-cashregister-sale.grid48.txt} +0 -0
  697. /package/fixtures/{erwartet/testsignatur-verkauf.grid32.txt → expected/test-signature-sale.grid32.txt} +0 -0
  698. /package/fixtures/{erwartet/testsignatur-verkauf.grid48.txt → expected/test-signature-sale.grid48.txt} +0 -0
  699. /package/fixtures/{erwartet → expected}/training.grid32.txt +0 -0
  700. /package/fixtures/{erwartet → expected}/training.grid48.txt +0 -0
  701. /package/fixtures/{erwartet/null-jahr.grid32.txt → expected/zero-annual.grid32.txt} +0 -0
  702. /package/fixtures/{erwartet/null-jahr.grid48.txt → expected/zero-annual.grid48.txt} +0 -0
  703. /package/fixtures/{erwartet/null-schluss.grid32.txt → expected/zero-final.grid32.txt} +0 -0
  704. /package/fixtures/{erwartet/null-schluss.grid48.txt → expected/zero-final.grid48.txt} +0 -0
  705. /package/fixtures/{erwartet/null-pruef.grid32.txt → expected/zero-manual.grid32.txt} +0 -0
  706. /package/fixtures/{erwartet/null-pruef.grid48.txt → expected/zero-manual.grid48.txt} +0 -0
  707. /package/fixtures/{erwartet/null-monat.grid32.txt → expected/zero-monthly.grid32.txt} +0 -0
  708. /package/fixtures/{erwartet/null-monat.grid48.txt → expected/zero-monthly.grid48.txt} +0 -0
  709. /package/fixtures/{erwartet/null-ausfall.grid32.txt → expected/zero-outage-end.grid32.txt} +0 -0
  710. /package/fixtures/{erwartet/null-ausfall.grid48.txt → expected/zero-outage-end.grid48.txt} +0 -0
  711. /package/fixtures/{erwartet/null-start.grid32.txt → expected/zero-start.grid32.txt} +0 -0
  712. /package/fixtures/{erwartet/null-start.grid48.txt → expected/zero-start.grid48.txt} +0 -0
@@ -6,49 +6,50 @@
6
6
  */
7
7
  import { type FetchLike } from '../client/transport.js';
8
8
  import type { EInvoiceFormat, InvoiceLanguage } from './vertrag.js';
9
- import type { Brand, CancelInvoiceRequest, CancelResult, CreditNoteRequest, CreditNoteResult, Customer, CustomerInput, CustomerPage, CustomerSearch, InvoiceDetail, InvoiceListQuery, InvoicePage, InvoiceSetupStatus, IssueInvoiceRequest, IssueResult, PreviewResult, RecordPaymentRequest, RecordPaymentResult } from './typen.js';
10
- export interface RechnungApiOptions {
9
+ import type { Brand, CancelInvoiceRequest, CancelResult, CreditNoteRequest, CreditNoteResult, Customer, CustomerInput, CustomerPage, CustomerSearch, InvoiceDetail, InvoiceListQuery, InvoicePage, InvoiceSetupStatus, InvoiceXml, IssueInvoiceRequest, IssueResult, PreviewResult, RecordPaymentRequest, RecordPaymentResult } from './typen.js';
10
+ export interface InvoiceApiOptions {
11
11
  /** `api_key` des Kontos (`kr_live_…` / `kr_test_…`). Gehoert auf einen Server. */
12
12
  apiKey: string;
13
- /** Abweichende Basis-URL; Vorgabe `https://api.kasseneck.at/v1`. */
13
+ /** Abweichende Basis-URL; Vorgabe `https://api.kasseneck.at/v3`. */
14
14
  baseUrl?: string;
15
15
  /** Zeitlimit je Aufruf in Millisekunden. */
16
16
  timeoutMs?: number;
17
17
  /** Eigene `fetch`-Umsetzung (Tests, Proxys). */
18
18
  fetch?: FetchLike;
19
19
  }
20
- export interface RechnungApi {
21
- createCustomer(customer: CustomerInput, optionen?: {
20
+ export interface InvoiceApi {
21
+ createCustomer(customer: CustomerInput, options?: {
22
22
  idempotencyKey?: string;
23
23
  }): Promise<Customer>;
24
- getCustomer(kennung: {
24
+ getCustomer(ref: {
25
25
  customerId: string;
26
26
  } | {
27
27
  externalId: string;
28
28
  }): Promise<Customer>;
29
29
  updateCustomer(customerId: string, patch: Partial<CustomerInput>): Promise<Customer>;
30
- searchCustomers(suche: CustomerSearch): Promise<CustomerPage>;
31
- issueInvoice(anfrage: IssueInvoiceRequest): Promise<IssueResult>;
30
+ searchCustomers(search: CustomerSearch): Promise<CustomerPage>;
31
+ issueInvoice(request: IssueInvoiceRequest): Promise<IssueResult>;
32
32
  /** Probelauf: pruefen und rechnen wie `issueInvoice`, ohne auszustellen. */
33
- previewInvoice(anfrage: IssueInvoiceRequest): Promise<PreviewResult>;
34
- cancelInvoice(anfrage: CancelInvoiceRequest): Promise<CancelResult>;
35
- createCreditNote(anfrage: CreditNoteRequest): Promise<CreditNoteResult>;
36
- getInvoice(kennung: {
33
+ previewInvoice(request: IssueInvoiceRequest): Promise<PreviewResult>;
34
+ cancelInvoice(request: CancelInvoiceRequest): Promise<CancelResult>;
35
+ createCreditNote(request: CreditNoteRequest): Promise<CreditNoteResult>;
36
+ getInvoice(ref: {
37
37
  invoiceId: string;
38
38
  } | {
39
39
  number: string;
40
40
  }): Promise<InvoiceDetail>;
41
- listInvoices(abfrage?: InvoiceListQuery): Promise<InvoicePage>;
41
+ listInvoices(query?: InvoiceListQuery): Promise<InvoicePage>;
42
42
  /** Eine spaeter eingetroffene Zahlung nachtragen; `idempotencyKey` ist Pflicht. */
43
- recordInvoicePayment(anfrage: RecordPaymentRequest): Promise<RecordPaymentResult>;
43
+ recordInvoicePayment(request: RecordPaymentRequest): Promise<RecordPaymentResult>;
44
44
  /** Mit `language` ungleich der Rechnungssprache: gekennzeichnete Uebersetzungskopie. */
45
- getInvoicePdf(invoiceId: string, optionen?: {
45
+ getInvoicePdf(invoiceId: string, options?: {
46
46
  language?: InvoiceLanguage;
47
47
  }): Promise<Uint8Array>;
48
- getInvoiceXml(invoiceId: string, format?: EInvoiceFormat): Promise<string>;
48
+ /** `{ xml, format, filename }` wie gesendet; `filename` ist `invoice-<Nummer>.xml`. */
49
+ getInvoiceXml(invoiceId: string, format?: EInvoiceFormat): Promise<InvoiceXml>;
49
50
  /** Darf dieses Konto ausstellen, und was fehlt noch? Laeuft auch ohne Freigabe. */
50
51
  getInvoiceSetupStatus(): Promise<InvoiceSetupStatus>;
51
52
  /** Die Marken des Kontos; `id` geht als `brandId` in `issueInvoice`. */
52
53
  listBrands(): Promise<Brand[]>;
53
54
  }
54
- export declare function createRechnungApi(optionen: RechnungApiOptions): RechnungApi;
55
+ export declare function createInvoiceApi(options: InvoiceApiOptions): InvoiceApi;
@@ -5,14 +5,14 @@
5
5
  * Funktionen (endpunkte.ts) und bleiben einzeln importierbar.
6
6
  */
7
7
  import { createBinaryTransport, createTransport } from '../client/transport.js';
8
- import { rechnungKeyAuth } from './auth.js';
8
+ import { invoiceKeyAuth } from './auth.js';
9
9
  import { cancelInvoice, createCreditNote, createCustomer, getCustomer, getInvoice, getInvoicePdf, getInvoiceSetupStatus, getInvoiceXml, issueInvoice, listBrands, previewInvoice, listInvoices, recordInvoicePayment, searchCustomers, updateCustomer, } from './endpunkte.js';
10
- export function createRechnungApi(optionen) {
10
+ export function createInvoiceApi(options) {
11
11
  const transportOptionen = {
12
- auth: rechnungKeyAuth({ apiKey: optionen.apiKey }),
13
- baseUrl: optionen.baseUrl,
14
- timeoutMs: optionen.timeoutMs,
15
- fetch: optionen.fetch,
12
+ auth: invoiceKeyAuth({ apiKey: options.apiKey }),
13
+ baseUrl: options.baseUrl,
14
+ timeoutMs: options.timeoutMs,
15
+ fetch: options.fetch,
16
16
  };
17
17
  const rufen = createTransport(transportOptionen);
18
18
  const rufenBinaer = createBinaryTransport(transportOptionen);
@@ -14,8 +14,8 @@
14
14
  * weiterhin aeltere Formen annimmt. Die Meldung nennt nie den Wert, nur seine Art.
15
15
  */
16
16
  import type { KasseneckAuth } from '../client/auth.js';
17
- export interface RechnungKeyAuthOptions {
17
+ export interface InvoiceKeyAuthOptions {
18
18
  /** `api_key` des Kontos, z. B. `kr_live_…` oder `kr_test_…`. */
19
19
  apiKey: string;
20
20
  }
21
- export declare function rechnungKeyAuth(options: RechnungKeyAuthOptions): KasseneckAuth;
21
+ export declare function invoiceKeyAuth(options: InvoiceKeyAuthOptions): KasseneckAuth;
@@ -14,16 +14,16 @@
14
14
  * weiterhin aeltere Formen annimmt. Die Meldung nennt nie den Wert, nur seine Art.
15
15
  */
16
16
  import { KasseneckAuthError } from '../client/errors.js';
17
- export function rechnungKeyAuth(options) {
17
+ export function invoiceKeyAuth(options) {
18
18
  const schluessel = typeof options?.apiKey === 'string' ? options.apiKey.trim() : '';
19
19
  if (!schluessel) {
20
- throw new KasseneckAuthError('rechnungKeyAuth: apiKey fehlt');
20
+ throw new KasseneckAuthError('invoiceKeyAuth: apiKey fehlt');
21
21
  }
22
22
  if (/^pk_(live|test)_/i.test(schluessel)) {
23
- throw new KasseneckAuthError('rechnungKeyAuth: das ist ein Partner-Schluessel (pk_…) — die Rechnungs-API nimmt den api_key des Kontos (kr_…)');
23
+ throw new KasseneckAuthError('invoiceKeyAuth: das ist ein Partner-Schluessel (pk_…); die Rechnungs-API nimmt den api_key des Kontos (kr_…)');
24
24
  }
25
25
  if (/^cb_(live|test)_/i.test(schluessel)) {
26
- throw new KasseneckAuthError('rechnungKeyAuth: das ist ein Kassen-Token (cb_…) — die Rechnungs-API nimmt den api_key des Kontos (kr_…)');
26
+ throw new KasseneckAuthError('invoiceKeyAuth: das ist ein Kassen-Token (cb_…); die Rechnungs-API nimmt den api_key des Kontos (kr_…)');
27
27
  }
28
28
  // Pro Aufruf ein frisches Objekt, wie bei den anderen Anmeldungen.
29
29
  return () => ({
@@ -20,11 +20,11 @@
20
20
  */
21
21
  import type { PriceMode, TaxScheme } from './vertrag.js';
22
22
  /** Hoechster Betrag je Zeile und je Rechnung: 999.999.999,99 €. */
23
- export declare const BETRAG_GRENZE_CENTS = 99999999999;
23
+ export declare const MAX_AMOUNT_CENTS = 99999999999;
24
24
  /** Steuerfaelle, in denen die Rechnung keine Steuer ausweist: jede Zeile zaehlt zu 0 %. */
25
- export declare const STEUERFREIE_FAELLE: readonly TaxScheme[];
25
+ export declare const ZERO_RATED_TAX_SCHEMES: readonly TaxScheme[];
26
26
  /** Eine Position in gespeicherter Form — alle Werte ganzzahlig. */
27
- export interface RechenPosition {
27
+ export interface CalcItem {
28
28
  /** Einzelpreis in Millionstel Euro, 0 … 10¹². */
29
29
  unitPriceMicros: number;
30
30
  /** Menge in Tausendstel; negativ = Abzugszeile, 0 = Textzeile. */
@@ -34,39 +34,39 @@ export interface RechenPosition {
34
34
  /** USt-Satz in Hundertstel-Prozent, 0 … 10000 (ohne Angabe 0). */
35
35
  vatRateBp?: number;
36
36
  }
37
- export interface RechenOptionen {
37
+ export interface CalcOptions {
38
38
  priceMode: PriceMode;
39
39
  /** Ohne Angabe `normal`. */
40
40
  taxScheme?: TaxScheme;
41
41
  }
42
- export interface SatzSumme {
42
+ export interface RateTotal {
43
43
  rateBp: number;
44
44
  netCents: number;
45
45
  vatCents: number;
46
46
  grossCents: number;
47
47
  }
48
- export interface ZeilenBetrag {
48
+ export interface LineAmount {
49
49
  netCents: number;
50
50
  grossCents: number;
51
51
  /** Der Satz, mit dem die Zeile gerechnet wurde (bei steuerfreiem Fall 0). */
52
52
  rateBp: number;
53
53
  }
54
- export interface RechenErgebnis {
54
+ export interface CalcResult {
55
55
  netCents: number;
56
56
  vatCents: number;
57
57
  grossCents: number;
58
58
  /** Absteigend nach `rateBp`. */
59
- byRate: SatzSumme[];
59
+ byRate: RateTotal[];
60
60
  /** Je Position, in der Reihenfolge der Eingabe. */
61
- lines: ZeilenBetrag[];
61
+ lines: LineAmount[];
62
62
  }
63
- export type RechenFehlerCode = 'amount_too_large' | 'kein_ganzzahlwert' | 'ausserhalb';
63
+ export type CalcErrorCode = 'amount_too_large' | 'not_integer' | 'out_of_range';
64
64
  /** Fehler des Kerns — mit Code, Feld und Index, damit die API daraus einen Feldfehler machen kann. */
65
- export declare class RechenFehler extends Error {
66
- readonly code: RechenFehlerCode;
67
- readonly feld?: string;
65
+ export declare class CalcError extends Error {
66
+ readonly code: CalcErrorCode;
67
+ readonly field?: string;
68
68
  readonly index?: number;
69
- constructor(code: RechenFehlerCode, nachricht: string, feld?: string, index?: number);
69
+ constructor(code: CalcErrorCode, message: string, field?: string, index?: number);
70
70
  }
71
71
  /**
72
72
  * `a / b` kaufmaennisch gerundet, halbe Einheit vom Nullpunkt weg; `b` > 0.
@@ -74,16 +74,16 @@ export declare class RechenFehler extends Error {
74
74
  * Ohne Gleitkomma: `(2·|a| + b) / (2·b)` ist genau dann eins groesser, wenn der
75
75
  * Rest mindestens die halbe Einheit betraegt.
76
76
  */
77
- export declare function rund(a: bigint, b: bigint): bigint;
78
- export declare function rechnungRechnen(positionen: readonly RechenPosition[], optionen: RechenOptionen): RechenErgebnis;
79
- export type UmwandlungsGrund = 'kein_zahlwert' | 'nachkommastellen' | 'ausserhalb';
80
- export type Umwandlung = {
77
+ export declare function roundDiv(a: bigint, b: bigint): bigint;
78
+ export declare function calculateInvoice(items: readonly CalcItem[], options: CalcOptions): CalcResult;
79
+ export type ConversionReason = 'not_a_number' | 'too_many_decimals' | 'out_of_range';
80
+ export type ItemConversion = {
81
81
  ok: true;
82
- position: RechenPosition & Record<string, unknown>;
82
+ item: CalcItem & Record<string, unknown>;
83
83
  } | {
84
84
  ok: false;
85
- feld: 'unitPrice' | 'quantity' | 'vatRate' | 'discountPct';
86
- grund: UmwandlungsGrund;
85
+ field: 'unitPrice' | 'quantity' | 'vatRate' | 'discountPct';
86
+ reason: ConversionReason;
87
87
  };
88
88
  /**
89
89
  * Euro-Position → Ganzzahl-Form, verlustfrei oder mit Grund abgelehnt. Die
@@ -98,26 +98,26 @@ export type Umwandlung = {
98
98
  * abgerechnet hat. Ein fehlender Preis dagegen ist NIE 0: sonst wuerde eine
99
99
  * Position, der nur der Preis fehlt, still zur 0-€-Zeile.
100
100
  */
101
- export declare function positionAusEuro(item: Record<string, unknown>): Umwandlung;
101
+ export declare function itemFromEuro(item: Record<string, unknown>): ItemConversion;
102
102
  /**
103
103
  * Anteiliger Preis fuer einen Teilzeitraum (erste Rechnung eines Abos).
104
104
  * War der Ursprungspreis centgenau, bleibt auch der Anteil centgenau — sonst
105
105
  * stuende auf der ersten Rechnung ein Preis mit sechs Stellen, wo bisher zwei
106
106
  * standen.
107
107
  */
108
- export declare function anteiligerPreis(unitPriceMicros: number, monate: number, intervall: number): number;
108
+ export declare function proratedPriceMicros(unitPriceMicros: number, months: number, interval: number): number;
109
109
  /**
110
110
  * Schluessel eines USt-Satzes in den gespeicherten Maps (`creditedCents.byRate`,
111
111
  * `invoice_stats.vatByRate`): der Prozenttext mit Punkt, genau wie
112
112
  * `String(satz)` ihn bisher gebildet hat. NICHT fuer die Anzeige — dafuer gibt
113
- * es `satzText`.
113
+ * es `formatVatRate`.
114
114
  */
115
- export declare function satzSchluessel(rateBp: number): string;
115
+ export declare function vatRateMapKey(rateBp: number): string;
116
116
  /** Ein USt-Satz fuer die Anzeige: oesterreichisch mit Komma, ohne nachlaufende Nullen. */
117
- export declare function satzText(rateBp: number): string;
117
+ export declare function formatVatRate(rateBp: number): string;
118
118
  /**
119
119
  * Ein Einzelpreis fuer die Anzeige: mindestens zwei, hoechstens sechs
120
120
  * Nachkommastellen, Tausenderpunkt, Komma als Trennzeichen — in jeder Sprache
121
121
  * oesterreichisch, wie die Betraege auf dem Blatt.
122
122
  */
123
- export declare function preisText(unitPriceMicros: number): string;
123
+ export declare function formatUnitPrice(unitPriceMicros: number): string;
@@ -21,26 +21,26 @@
21
21
  /** Skala des Zeilenbruchs: 10⁻¹⁷ Cent. */
22
22
  const E = 10n ** 17n;
23
23
  /** Hoechster Betrag je Zeile und je Rechnung: 999.999.999,99 €. */
24
- export const BETRAG_GRENZE_CENTS = 99_999_999_999;
24
+ export const MAX_AMOUNT_CENTS = 99_999_999_999;
25
25
  /** Steuerfaelle, in denen die Rechnung keine Steuer ausweist: jede Zeile zaehlt zu 0 %. */
26
- export const STEUERFREIE_FAELLE = Object.freeze([
26
+ export const ZERO_RATED_TAX_SCHEMES = Object.freeze([
27
27
  'smallBusiness',
28
28
  'reverseCharge',
29
- 'igLieferung',
29
+ 'intraCommunitySupply',
30
30
  'exportThirdCountry',
31
31
  'domesticReverseCharge',
32
32
  'outsideScope',
33
33
  ]);
34
34
  /** Fehler des Kerns — mit Code, Feld und Index, damit die API daraus einen Feldfehler machen kann. */
35
- export class RechenFehler extends Error {
35
+ export class CalcError extends Error {
36
36
  code;
37
- feld;
37
+ field;
38
38
  index;
39
- constructor(code, nachricht, feld, index) {
40
- super(nachricht);
41
- this.name = 'RechenFehler';
39
+ constructor(code, message, field, index) {
40
+ super(message);
41
+ this.name = 'CalcError';
42
42
  this.code = code;
43
- this.feld = feld;
43
+ this.field = field;
44
44
  this.index = index;
45
45
  }
46
46
  }
@@ -50,7 +50,7 @@ export class RechenFehler extends Error {
50
50
  * Ohne Gleitkomma: `(2·|a| + b) / (2·b)` ist genau dann eins groesser, wenn der
51
51
  * Rest mindestens die halbe Einheit betraegt.
52
52
  */
53
- export function rund(a, b) {
53
+ export function roundDiv(a, b) {
54
54
  const negativ = a < 0n;
55
55
  const betrag = negativ ? -a : a;
56
56
  const ganz = (2n * betrag + b) / (2n * b);
@@ -64,11 +64,11 @@ const GRENZEN = {
64
64
  };
65
65
  function ganzzahl(wert, feld, index) {
66
66
  if (typeof wert !== 'number' || !Number.isInteger(wert)) {
67
- throw new RechenFehler('kein_ganzzahlwert', `items[${index}].${feld} muss eine ganze Zahl sein`, feld, index);
67
+ throw new CalcError('not_integer', `items[${index}].${feld} muss eine ganze Zahl sein`, feld, index);
68
68
  }
69
69
  const [min, max] = GRENZEN[feld];
70
70
  if (wert < min || wert > max) {
71
- throw new RechenFehler('ausserhalb', `items[${index}].${feld} liegt ausserhalb von ${min} … ${max}`, feld, index);
71
+ throw new CalcError('out_of_range', `items[${index}].${feld} liegt ausserhalb von ${min} … ${max}`, feld, index);
72
72
  }
73
73
  return wert;
74
74
  }
@@ -84,7 +84,7 @@ function ganzzahl(wert, feld, index) {
84
84
  function verteile(gruppe, feld, faktor, nenner, ziel) {
85
85
  const werte = gruppe.map((z) => {
86
86
  const zaehler = z.L * faktor;
87
- return { z, zaehler, wert: rund(zaehler, nenner) };
87
+ return { z, zaehler, wert: roundDiv(zaehler, nenner) };
88
88
  });
89
89
  let rest = ziel - werte.reduce((s, w) => s + w.wert, 0n);
90
90
  if (rest !== 0n) {
@@ -106,18 +106,18 @@ function verteile(gruppe, feld, faktor, nenner, ziel) {
106
106
  for (const w of werte)
107
107
  w.z[feld] = Number(w.wert);
108
108
  }
109
- export function rechnungRechnen(positionen, optionen) {
110
- const steuerfrei = STEUERFREIE_FAELLE.includes(optionen.taxScheme ?? 'normal');
111
- const bruttoPreise = optionen.priceMode === 'gross' && !steuerfrei;
112
- const grenze = BigInt(BETRAG_GRENZE_CENTS) * E;
113
- const zeilen = positionen.map((p, index) => {
109
+ export function calculateInvoice(items, options) {
110
+ const steuerfrei = ZERO_RATED_TAX_SCHEMES.includes(options.taxScheme ?? 'normal');
111
+ const bruttoPreise = options.priceMode === 'gross' && !steuerfrei;
112
+ const grenze = BigInt(MAX_AMOUNT_CENTS) * E;
113
+ const zeilen = items.map((p, index) => {
114
114
  const preis = BigInt(ganzzahl(p.unitPriceMicros, 'unitPriceMicros', index));
115
115
  const menge = BigInt(ganzzahl(p.quantityMilli, 'quantityMilli', index));
116
116
  const rabatt = BigInt(ganzzahl(p.discountBp ?? 0, 'discountBp', index));
117
117
  const satz = ganzzahl(p.vatRateBp ?? 0, 'vatRateBp', index);
118
118
  const L = preis * menge * (10000n - rabatt) * 1000000n;
119
119
  if ((L < 0n ? -L : L) > grenze) {
120
- throw new RechenFehler('amount_too_large', `items[${index}] uebersteigt ${BETRAG_GRENZE_CENTS} Cent`, 'unitPriceMicros', index);
120
+ throw new CalcError('amount_too_large', `items[${index}] uebersteigt ${MAX_AMOUNT_CENTS} Cent`, 'unitPriceMicros', index);
121
121
  }
122
122
  return { index, rateBp: steuerfrei ? 0 : satz, L, netCents: 0, grossCents: 0 };
123
123
  });
@@ -137,13 +137,13 @@ export function rechnungRechnen(positionen, optionen) {
137
137
  let vatCents;
138
138
  let grossCents;
139
139
  if (bruttoPreise) {
140
- grossCents = rund(S, E);
141
- netCents = rund(grossCents * 10000n, 10000n + r);
140
+ grossCents = roundDiv(S, E);
141
+ netCents = roundDiv(grossCents * 10000n, 10000n + r);
142
142
  vatCents = grossCents - netCents;
143
143
  }
144
144
  else {
145
- netCents = rund(S, E);
146
- vatCents = rund(S * r, E * 10000n);
145
+ netCents = roundDiv(S, E);
146
+ vatCents = roundDiv(S * r, E * 10000n);
147
147
  grossCents = netCents + vatCents;
148
148
  }
149
149
  if (bruttoPreise) {
@@ -171,8 +171,8 @@ export function rechnungRechnen(positionen, optionen) {
171
171
  lines: zeilen.map((z) => ({ netCents: z.netCents, grossCents: z.grossCents, rateBp: z.rateBp })),
172
172
  };
173
173
  for (const feld of ['netCents', 'vatCents', 'grossCents']) {
174
- if (Math.abs(ergebnis[feld]) > BETRAG_GRENZE_CENTS) {
175
- throw new RechenFehler('amount_too_large', `Die Rechnung uebersteigt ${BETRAG_GRENZE_CENTS} Cent (${feld})`);
174
+ if (Math.abs(ergebnis[feld]) > MAX_AMOUNT_CENTS) {
175
+ throw new CalcError('amount_too_large', `Die Rechnung uebersteigt ${MAX_AMOUNT_CENTS} Cent (${feld})`);
176
176
  }
177
177
  }
178
178
  return ergebnis;
@@ -224,47 +224,47 @@ const EURO_FELDER = ['unitPrice', 'quantity', 'vatRate', 'discountPct'];
224
224
  * abgerechnet hat. Ein fehlender Preis dagegen ist NIE 0: sonst wuerde eine
225
225
  * Position, der nur der Preis fehlt, still zur 0-€-Zeile.
226
226
  */
227
- export function positionAusEuro(item) {
227
+ export function itemFromEuro(item) {
228
228
  if (typeof item.unitPriceMicros === 'number') {
229
- return { ok: true, position: item };
229
+ return { ok: true, item: item };
230
230
  }
231
231
  const roh = item.unitPrice;
232
232
  if (typeof roh !== 'number' || !Number.isFinite(roh)) {
233
- return { ok: false, feld: 'unitPrice', grund: 'kein_zahlwert' };
233
+ return { ok: false, field: 'unitPrice', reason: 'not_a_number' };
234
234
  }
235
235
  const micros = ganzAusDezimaltext(Math.abs(roh), 6);
236
236
  if (micros === null)
237
- return { ok: false, feld: 'unitPrice', grund: 'nachkommastellen' };
237
+ return { ok: false, field: 'unitPrice', reason: 'too_many_decimals' };
238
238
  if (micros > GRENZEN.unitPriceMicros[1])
239
- return { ok: false, feld: 'unitPrice', grund: 'ausserhalb' };
239
+ return { ok: false, field: 'unitPrice', reason: 'out_of_range' };
240
240
  const zahl = (feld, stellen, max) => {
241
241
  const w = item[feld];
242
242
  if (w === undefined || w === null)
243
243
  return { ok: true, wert: 0 };
244
244
  if (typeof w !== 'number' || !Number.isFinite(w))
245
- return { ok: false, grund: 'kein_zahlwert' };
245
+ return { ok: false, grund: 'not_a_number' };
246
246
  const ganz = ganzAusDezimaltext(w, stellen);
247
247
  if (ganz === null)
248
- return { ok: false, grund: 'nachkommastellen' };
248
+ return { ok: false, grund: 'too_many_decimals' };
249
249
  if (ganz < (feld === 'quantity' ? -max : 0) || ganz > max)
250
- return { ok: false, grund: 'ausserhalb' };
250
+ return { ok: false, grund: 'out_of_range' };
251
251
  return { ok: true, wert: ganz };
252
252
  };
253
253
  const menge = zahl('quantity', 3, GRENZEN.quantityMilli[1]);
254
254
  if (!menge.ok)
255
- return { ok: false, feld: 'quantity', grund: menge.grund };
255
+ return { ok: false, field: 'quantity', reason: menge.grund };
256
256
  const satz = zahl('vatRate', 2, 10_000);
257
257
  if (!satz.ok)
258
- return { ok: false, feld: 'vatRate', grund: satz.grund };
258
+ return { ok: false, field: 'vatRate', reason: satz.grund };
259
259
  const rabatt = zahl('discountPct', 2, 10_000);
260
260
  if (!rabatt.ok)
261
- return { ok: false, feld: 'discountPct', grund: rabatt.grund };
261
+ return { ok: false, field: 'discountPct', reason: rabatt.grund };
262
262
  const rest = { ...item };
263
263
  for (const feld of EURO_FELDER)
264
264
  delete rest[feld];
265
265
  return {
266
266
  ok: true,
267
- position: {
267
+ item: {
268
268
  ...rest,
269
269
  unitPriceMicros: micros,
270
270
  quantityMilli: roh < 0 ? -menge.wert : menge.wert,
@@ -279,32 +279,32 @@ export function positionAusEuro(item) {
279
279
  * stuende auf der ersten Rechnung ein Preis mit sechs Stellen, wo bisher zwei
280
280
  * standen.
281
281
  */
282
- export function anteiligerPreis(unitPriceMicros, monate, intervall) {
282
+ export function proratedPriceMicros(unitPriceMicros, months, interval) {
283
283
  const micros = BigInt(unitPriceMicros);
284
- const anteil = rund(micros * BigInt(monate), BigInt(intervall));
284
+ const anteil = roundDiv(micros * BigInt(months), BigInt(interval));
285
285
  if (unitPriceMicros % 10_000 !== 0)
286
286
  return Number(anteil);
287
- return Number(rund(anteil, 10000n) * 10000n);
287
+ return Number(roundDiv(anteil, 10000n) * 10000n);
288
288
  }
289
289
  /**
290
290
  * Schluessel eines USt-Satzes in den gespeicherten Maps (`creditedCents.byRate`,
291
291
  * `invoice_stats.vatByRate`): der Prozenttext mit Punkt, genau wie
292
292
  * `String(satz)` ihn bisher gebildet hat. NICHT fuer die Anzeige — dafuer gibt
293
- * es `satzText`.
293
+ * es `formatVatRate`.
294
294
  */
295
- export function satzSchluessel(rateBp) {
295
+ export function vatRateMapKey(rateBp) {
296
296
  return String(rateBp / 100);
297
297
  }
298
298
  /** Ein USt-Satz fuer die Anzeige: oesterreichisch mit Komma, ohne nachlaufende Nullen. */
299
- export function satzText(rateBp) {
300
- return satzSchluessel(rateBp).replace('.', ',');
299
+ export function formatVatRate(rateBp) {
300
+ return vatRateMapKey(rateBp).replace('.', ',');
301
301
  }
302
302
  /**
303
303
  * Ein Einzelpreis fuer die Anzeige: mindestens zwei, hoechstens sechs
304
304
  * Nachkommastellen, Tausenderpunkt, Komma als Trennzeichen — in jeder Sprache
305
305
  * oesterreichisch, wie die Betraege auf dem Blatt.
306
306
  */
307
- export function preisText(unitPriceMicros) {
307
+ export function formatUnitPrice(unitPriceMicros) {
308
308
  const negativ = unitPriceMicros < 0;
309
309
  const betrag = Math.abs(unitPriceMicros);
310
310
  const ganz = Math.trunc(betrag / 1_000_000);
@@ -2,7 +2,7 @@
2
2
  * Die Aufrufe der Rechnungs-API — Kunden, Rechnungen, Gutschriften, Dateien.
3
3
  *
4
4
  * Jede Funktion nimmt den Transport als ersten Parameter und ist einzeln
5
- * importierbar; die Fassade [createRechnungApi] bindet ihn nur einmal.
5
+ * importierbar; die Fassade [createInvoiceApi] bindet ihn nur einmal.
6
6
  *
7
7
  * **Geprueft wird hier nichts Fachliches.** Die Anfrage geht unveraendert an
8
8
  * das Backend, das sie gegen denselben Vertrag prueft (`vertrag.ts`) und einen
@@ -17,19 +17,19 @@
17
17
  * der Aufruf `KasseneckValidationError` mit `scope:'response'`.
18
18
  */
19
19
  import type { InternerBinaerTransport, InternerTransport } from '../client/aufrufe.js';
20
- import type { EInvoiceFormat, InvoiceLanguage } from './vertrag.js';
21
- import type { Brand, CancelInvoiceRequest, CancelResult, CreditNoteRequest, CreditNoteResult, Customer, CustomerInput, CustomerPage, CustomerSearch, InvoiceDetail, InvoiceListQuery, InvoicePage, InvoiceSetupStatus, IssueInvoiceRequest, IssueResult, PreviewResult, RecordPaymentRequest, RecordPaymentResult } from './typen.js';
22
- export declare function createCustomer(rufen: InternerTransport, customer: CustomerInput, optionen?: {
20
+ import { type EInvoiceFormat, type InvoiceLanguage } from './vertrag.js';
21
+ import type { Brand, CancelInvoiceRequest, CancelResult, CreditNoteRequest, CreditNoteResult, Customer, CustomerInput, CustomerPage, CustomerSearch, InvoiceDetail, InvoiceListQuery, InvoicePage, InvoiceSetupStatus, InvoiceXml, IssueInvoiceRequest, IssueResult, PreviewResult, RecordPaymentRequest, RecordPaymentResult } from './typen.js';
22
+ export declare function createCustomer(transport: InternerTransport, customer: CustomerInput, options?: {
23
23
  idempotencyKey?: string;
24
24
  }): Promise<Customer>;
25
- export declare function getCustomer(rufen: InternerTransport, kennung: {
25
+ export declare function getCustomer(transport: InternerTransport, ref: {
26
26
  customerId: string;
27
27
  } | {
28
28
  externalId: string;
29
29
  }): Promise<Customer>;
30
- export declare function updateCustomer(rufen: InternerTransport, customerId: string, patch: Partial<CustomerInput>): Promise<Customer>;
31
- export declare function searchCustomers(rufen: InternerTransport, suche: CustomerSearch): Promise<CustomerPage>;
32
- export declare function issueInvoice(rufen: InternerTransport, anfrage: IssueInvoiceRequest): Promise<IssueResult>;
30
+ export declare function updateCustomer(transport: InternerTransport, customerId: string, patch: Partial<CustomerInput>): Promise<Customer>;
31
+ export declare function searchCustomers(transport: InternerTransport, search: CustomerSearch): Promise<CustomerPage>;
32
+ export declare function issueInvoice(transport: InternerTransport, request: IssueInvoiceRequest): Promise<IssueResult>;
33
33
  /**
34
34
  * Probelauf von `issueInvoice`: dieselbe Anfrage wird geprueft und gerechnet
35
35
  * wie beim Ausstellen, aber nichts festgeschrieben. Die Antwort nennt Summen,
@@ -40,28 +40,28 @@ export declare function issueInvoice(rufen: InternerTransport, anfrage: IssueInv
40
40
  * danach unveraendert ausstellen. Verbindlich ist das Ausstellen — zwischen
41
41
  * Probelauf und Ausstellen kann sich der Kunde oder das Konto aendern.
42
42
  */
43
- export declare function previewInvoice(rufen: InternerTransport, anfrage: IssueInvoiceRequest): Promise<PreviewResult>;
44
- export declare function cancelInvoice(rufen: InternerTransport, anfrage: CancelInvoiceRequest): Promise<CancelResult>;
45
- export declare function createCreditNote(rufen: InternerTransport, anfrage: CreditNoteRequest): Promise<CreditNoteResult>;
46
- export declare function getInvoice(rufen: InternerTransport, kennung: {
43
+ export declare function previewInvoice(transport: InternerTransport, request: IssueInvoiceRequest): Promise<PreviewResult>;
44
+ export declare function cancelInvoice(transport: InternerTransport, request: CancelInvoiceRequest): Promise<CancelResult>;
45
+ export declare function createCreditNote(transport: InternerTransport, request: CreditNoteRequest): Promise<CreditNoteResult>;
46
+ export declare function getInvoice(transport: InternerTransport, ref: {
47
47
  invoiceId: string;
48
48
  } | {
49
49
  number: string;
50
50
  }): Promise<InvoiceDetail>;
51
- export declare function listInvoices(rufen: InternerTransport, abfrage?: InvoiceListQuery): Promise<InvoicePage>;
51
+ export declare function listInvoices(transport: InternerTransport, query?: InvoiceListQuery): Promise<InvoicePage>;
52
52
  /**
53
53
  * Darf dieses Konto ueber die API ausstellen, und was fehlt noch? Laeuft auch
54
54
  * ohne Freigabe und vor der Live-Freischaltung — genau dann braucht man die
55
55
  * Antwort. Vor dem ersten `issueInvoice` aufrufen und `missing` anzeigen.
56
56
  */
57
- export declare function getInvoiceSetupStatus(rufen: InternerTransport): Promise<InvoiceSetupStatus>;
57
+ export declare function getInvoiceSetupStatus(transport: InternerTransport): Promise<InvoiceSetupStatus>;
58
58
  /**
59
59
  * Das PDF der Rechnung (bei Gutschriften: der Gutschrift), mit eingebetteter
60
60
  * Factur-X-Datei. Mit `language` in der anderen Sprache als der Rechnung kommt
61
61
  * eine **Uebersetzungskopie**: dieselbe Nummer, auf jeder Seite als Uebersetzung
62
62
  * gekennzeichnet, ohne eingebettete E-Rechnung — keine eigene Rechnung.
63
63
  */
64
- export declare function getInvoicePdf(rufenBinaer: InternerBinaerTransport, invoiceId: string, optionen?: {
64
+ export declare function getInvoicePdf(binaryTransport: InternerBinaerTransport, invoiceId: string, options?: {
65
65
  language?: InvoiceLanguage;
66
66
  }): Promise<Uint8Array>;
67
67
  /**
@@ -73,12 +73,14 @@ export declare function getInvoicePdf(rufenBinaer: InternerBinaerTransport, invo
73
73
  * zusaetzlich `notice` — eine Barzahlung ist ein Barumsatz und braucht einen
74
74
  * Beleg (§ 132a BAO), den dieser Vermerk nicht ersetzt.
75
75
  */
76
- export declare function recordInvoicePayment(rufen: InternerTransport, anfrage: RecordPaymentRequest): Promise<RecordPaymentResult>;
76
+ export declare function recordInvoicePayment(transport: InternerTransport, request: RecordPaymentRequest): Promise<RecordPaymentResult>;
77
77
  /** Die Marken des Kontos — die Kennung geht als `brandId` in `issueInvoice`. */
78
- export declare function listBrands(rufen: InternerTransport): Promise<Brand[]>;
78
+ export declare function listBrands(transport: InternerTransport): Promise<Brand[]>;
79
79
  /**
80
- * Die E-Rechnung als XML-Text. Sie kommt im gewohnten Umschlag (`data.xml`)
81
- * und nicht als rohe Datei: so bleibt ein fachlicher Fehler
82
- * (`einvoice_incomplete` mit `missing[]`) ein gewoehnlicher Fehler.
80
+ * Die E-Rechnung samt Format und Dateiname, genau wie der Server sie schickt.
81
+ * Sie kommt im gewohnten Umschlag (`data.xml`) und nicht als rohe Datei: so
82
+ * bleibt ein fachlicher Fehler (`einvoice_incomplete` mit `missing[]`) ein
83
+ * gewoehnlicher Fehler. Den Dateinamen nicht selbst bauen, sondern
84
+ * `filename` nehmen (`invoice-<Nummer>.xml`).
83
85
  */
84
- export declare function getInvoiceXml(rufen: InternerTransport, invoiceId: string, format?: EInvoiceFormat): Promise<string>;
86
+ export declare function getInvoiceXml(transport: InternerTransport, invoiceId: string, format?: EInvoiceFormat): Promise<InvoiceXml>;