@kreiseck/kasseneck-api 0.17.0 → 0.19.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 (50) hide show
  1. package/CHANGELOG.md +63 -0
  2. package/README.md +26 -0
  3. package/dist/cjs/client/aufrufe.d.ts +1 -1
  4. package/dist/cjs/client/aufrufe.js +1 -0
  5. package/dist/cjs/payments/hobex-hps/index.d.ts +1 -1
  6. package/dist/cjs/payments/hobex-hps/index.js +3 -1
  7. package/dist/cjs/payments/hobex-hps/payments.d.ts +11 -0
  8. package/dist/cjs/payments/hobex-hps/payments.js +73 -4
  9. package/dist/cjs/payments/hobex-hps/tecs-codes.d.ts +16 -0
  10. package/dist/cjs/payments/hobex-hps/tecs-codes.js +366 -0
  11. package/dist/cjs/payments/hobex-hps/transaction-response.d.ts +56 -8
  12. package/dist/cjs/payments/hobex-hps/transaction-response.js +135 -65
  13. package/dist/cjs/rechnung/api.d.ts +3 -1
  14. package/dist/cjs/rechnung/api.js +1 -0
  15. package/dist/cjs/rechnung/endpunkte.d.ts +11 -1
  16. package/dist/cjs/rechnung/endpunkte.js +22 -0
  17. package/dist/cjs/rechnung/index.d.ts +3 -3
  18. package/dist/cjs/rechnung/index.js +4 -1
  19. package/dist/cjs/rechnung/typen.d.ts +48 -1
  20. package/dist/cjs/rechnung/vertrag.d.ts +24 -2
  21. package/dist/cjs/rechnung/vertrag.js +43 -1
  22. package/dist/esm/client/aufrufe.d.ts +1 -1
  23. package/dist/esm/client/aufrufe.js +1 -0
  24. package/dist/esm/payments/hobex-hps/index.d.ts +1 -1
  25. package/dist/esm/payments/hobex-hps/index.js +1 -1
  26. package/dist/esm/payments/hobex-hps/payments.d.ts +11 -0
  27. package/dist/esm/payments/hobex-hps/payments.js +74 -5
  28. package/dist/esm/payments/hobex-hps/tecs-codes.d.ts +16 -0
  29. package/dist/esm/payments/hobex-hps/tecs-codes.js +363 -0
  30. package/dist/esm/payments/hobex-hps/transaction-response.d.ts +56 -8
  31. package/dist/esm/payments/hobex-hps/transaction-response.js +133 -65
  32. package/dist/esm/rechnung/api.d.ts +3 -1
  33. package/dist/esm/rechnung/api.js +2 -1
  34. package/dist/esm/rechnung/endpunkte.d.ts +11 -1
  35. package/dist/esm/rechnung/endpunkte.js +21 -0
  36. package/dist/esm/rechnung/index.d.ts +3 -3
  37. package/dist/esm/rechnung/index.js +2 -2
  38. package/dist/esm/rechnung/typen.d.ts +48 -1
  39. package/dist/esm/rechnung/vertrag.d.ts +24 -2
  40. package/dist/esm/rechnung/vertrag.js +42 -0
  41. package/fixtures/hobex-hps-codes.json +4075 -52
  42. package/fixtures/kasse-texte.json +1 -1
  43. package/fixtures/oberflaeche.json +16 -3
  44. package/fixtures/rechnung-api-beispiele/issue-bezahlt.json +32 -0
  45. package/fixtures/rechnung-api-beispiele/issue-fehler-zahlungsart.json +26 -0
  46. package/fixtures/rechnung-api-beispiele/zahlung-fehler-ohne-schluessel.json +14 -0
  47. package/fixtures/rechnung-api-beispiele/zahlung-nachtrag.json +14 -0
  48. package/fixtures/rechnung-api.schema.json +82 -2
  49. package/fixtures/rechnung-texte.json +1 -1
  50. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.17.0",
2
+ "version": "0.19.0",
3
3
  "meldungen": {
4
4
  "netz.keine_verbindung": {
5
5
  "text": "Keine Verbindung zum Server. Bitte die Internetverbindung prüfen und erneut versuchen."
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.17.0",
2
+ "version": "0.19.0",
3
3
  "aufrufe": [
4
4
  "activateCashregister",
5
5
  "cancelInvoice",
@@ -50,6 +50,7 @@
50
50
  "listRegisterUsersForDevice",
51
51
  "listRegisterSessionsForDevice",
52
52
  "pairRegisterDevice",
53
+ "recordInvoicePayment",
53
54
  "registerPinLogin",
54
55
  "registerUserLogin",
55
56
  "renewRegisterSession",
@@ -401,7 +402,9 @@
401
402
  "invoice_api_not_enabled",
402
403
  "invoice_setup_incomplete",
403
404
  "language_not_allowed",
404
- "brand_not_found"
405
+ "brand_not_found",
406
+ "not_payable",
407
+ "payment_exceeds_invoice"
405
408
  ],
406
409
  "invoiceLanguages": [
407
410
  "de",
@@ -414,6 +417,15 @@
414
417
  "open",
415
418
  "overdue"
416
419
  ],
420
+ "invoiceNoticeCodes": [
421
+ "cash_receipt_required"
422
+ ],
423
+ "invoicePaymentMethods": [
424
+ "transfer",
425
+ "card",
426
+ "online",
427
+ "cash"
428
+ ],
417
429
  "invoiceSetupRequirements": [
418
430
  "module_active",
419
431
  "api_enabled",
@@ -492,7 +504,8 @@
492
504
  "getInvoicePdf",
493
505
  "getInvoiceXml",
494
506
  "getInvoiceSetupStatus",
495
- "listBrands"
507
+ "listBrands",
508
+ "recordInvoicePayment"
496
509
  ],
497
510
  "taxSchemes": [
498
511
  "normal",
@@ -0,0 +1,32 @@
1
+ {
2
+ "aufruf": "issueInvoice",
3
+ "beschreibung": "Shop kassiert per Karte, Rechnung entsteht bezahlt",
4
+ "anfrage": {
5
+ "idempotencyKey": "bsp-bezahlt",
6
+ "customerId": "kunde_beispiel",
7
+ "taxScheme": "normal",
8
+ "priceMode": "net",
9
+ "serviceStart": "2026-09-16",
10
+ "items": [
11
+ {
12
+ "description": "Beratung",
13
+ "quantity": 2,
14
+ "unitPriceCents": 5000,
15
+ "vatRate": 20,
16
+ "unit": "hour"
17
+ }
18
+ ],
19
+ "payment": {
20
+ "method": "card",
21
+ "reference": "pi_3QbeispielXYZ"
22
+ }
23
+ },
24
+ "erwartet": {
25
+ "ok": true,
26
+ "totals": {
27
+ "netCents": 10000,
28
+ "vatCents": 2000,
29
+ "grossCents": 12000
30
+ }
31
+ }
32
+ }
@@ -0,0 +1,26 @@
1
+ {
2
+ "aufruf": "issueInvoice",
3
+ "beschreibung": "Unbekannte Zahlungsart",
4
+ "anfrage": {
5
+ "idempotencyKey": "bsp-zahlungsart",
6
+ "taxScheme": "normal",
7
+ "priceMode": "net",
8
+ "serviceStart": "2026-09-16",
9
+ "items": [
10
+ {
11
+ "description": "Beratung",
12
+ "quantity": 1,
13
+ "unitPriceCents": 5000,
14
+ "vatRate": 20
15
+ }
16
+ ],
17
+ "payment": {
18
+ "method": "bitcoin"
19
+ }
20
+ },
21
+ "erwartet": {
22
+ "ok": false,
23
+ "code": "validation",
24
+ "fields": ["payment.method"]
25
+ }
26
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "aufruf": "recordInvoicePayment",
3
+ "beschreibung": "Ohne Idempotenz-Schluessel — eine Wiederholung wuerde zweimal buchen",
4
+ "anfrage": {
5
+ "invoiceId": "rechnung_beispiel",
6
+ "method": "transfer",
7
+ "amountCents": 12000
8
+ },
9
+ "erwartet": {
10
+ "ok": false,
11
+ "code": "validation",
12
+ "fields": ["idempotencyKey"]
13
+ }
14
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "aufruf": "recordInvoicePayment",
3
+ "beschreibung": "Ueberweisung trifft spaeter ein",
4
+ "anfrage": {
5
+ "idempotencyKey": "bsp-zahlung-1",
6
+ "invoiceId": "rechnung_beispiel",
7
+ "method": "transfer",
8
+ "amountCents": 12000,
9
+ "paidAt": "2026-09-20"
10
+ },
11
+ "erwartet": {
12
+ "ok": true
13
+ }
14
+ }
@@ -2,7 +2,7 @@
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
3
  "title": "Kasseneck Rechnungs-API",
4
4
  "version": 1,
5
- "paket": "0.17.0",
5
+ "paket": "0.19.0",
6
6
  "aufrufe": {
7
7
  "createCustomer": {
8
8
  "anfrage": {
@@ -464,6 +464,38 @@
464
464
  "type": "string",
465
465
  "minLength": 1,
466
466
  "maxLength": 128
467
+ },
468
+ "payment": {
469
+ "type": "object",
470
+ "properties": {
471
+ "method": {
472
+ "enum": [
473
+ "transfer",
474
+ "card",
475
+ "online",
476
+ "cash"
477
+ ]
478
+ },
479
+ "amountCents": {
480
+ "type": "integer",
481
+ "minimum": 1,
482
+ "maximum": 100000000
483
+ },
484
+ "paidAt": {
485
+ "type": "string",
486
+ "minLength": 10,
487
+ "maxLength": 10,
488
+ "format": "date"
489
+ },
490
+ "reference": {
491
+ "type": "string",
492
+ "maxLength": 100
493
+ }
494
+ },
495
+ "required": [
496
+ "method"
497
+ ],
498
+ "additionalProperties": false
467
499
  }
468
500
  },
469
501
  "required": [
@@ -784,6 +816,52 @@
784
816
  "properties": {},
785
817
  "additionalProperties": false
786
818
  }
819
+ },
820
+ "recordInvoicePayment": {
821
+ "anfrage": {
822
+ "type": "object",
823
+ "properties": {
824
+ "idempotencyKey": {
825
+ "type": "string",
826
+ "minLength": 1,
827
+ "maxLength": 120
828
+ },
829
+ "invoiceId": {
830
+ "type": "string",
831
+ "minLength": 1,
832
+ "maxLength": 128
833
+ },
834
+ "method": {
835
+ "enum": [
836
+ "transfer",
837
+ "card",
838
+ "online",
839
+ "cash"
840
+ ]
841
+ },
842
+ "amountCents": {
843
+ "type": "integer",
844
+ "minimum": 1,
845
+ "maximum": 100000000
846
+ },
847
+ "paidAt": {
848
+ "type": "string",
849
+ "minLength": 10,
850
+ "maxLength": 10,
851
+ "format": "date"
852
+ },
853
+ "reference": {
854
+ "type": "string",
855
+ "maxLength": 100
856
+ }
857
+ },
858
+ "required": [
859
+ "idempotencyKey",
860
+ "invoiceId",
861
+ "method"
862
+ ],
863
+ "additionalProperties": false
864
+ }
787
865
  }
788
866
  },
789
867
  "codes": [
@@ -805,7 +883,9 @@
805
883
  "invoice_api_not_enabled",
806
884
  "invoice_setup_incomplete",
807
885
  "language_not_allowed",
808
- "brand_not_found"
886
+ "brand_not_found",
887
+ "not_payable",
888
+ "payment_exceeds_invoice"
809
889
  ],
810
890
  "gruende": [
811
891
  "cancellation",
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.17.0",
2
+ "version": "0.19.0",
3
3
  "sprachen": [
4
4
  "de",
5
5
  "en"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kreiseck/kasseneck-api",
3
- "version": "0.17.0",
3
+ "version": "0.19.0",
4
4
  "description": "RKSV-Registrierkasse fuer JavaScript und TypeScript: signierte Belege, Storno, Kartenzahlung, Bondruck. Austrian fiscal cash register (RKSV) API client.",
5
5
  "license": "Apache-2.0",
6
6
  "author": "Kreiseck",