@kreiseck/kasseneck-api 1.19.0 → 1.21.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +24 -0
- package/README.md +70 -1
- package/dist/cjs/client/api.d.ts +19 -0
- package/dist/cjs/client/api.js +18 -0
- package/dist/cjs/client/aufrufe.d.ts +9 -6
- package/dist/cjs/client/aufrufe.js +29 -2
- package/dist/cjs/client/dep-export.d.ts +242 -0
- package/dist/cjs/client/dep-export.js +337 -0
- package/dist/cjs/client/index.d.ts +2 -1
- package/dist/cjs/client/index.js +21 -2
- package/dist/cjs/client/transport.d.ts +39 -4
- package/dist/cjs/client/transport.js +40 -5
- package/dist/cjs/index.d.ts +1 -1
- package/dist/cjs/index.js +20 -2
- package/dist/cjs/pos/dep.d.ts +10 -0
- package/dist/cjs/pos/dep.js +27 -0
- package/dist/cjs/pos/index.d.ts +1 -0
- package/dist/cjs/pos/index.js +5 -2
- package/dist/cjs/pos/texte.d.ts +109 -0
- package/dist/cjs/pos/texte.js +42 -0
- package/dist/cjs/stored/vokabular.d.ts +1 -1
- package/dist/cjs/stored/vokabular.js +1 -1
- package/dist/cjs/version.d.ts +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/esm/client/api.d.ts +19 -0
- package/dist/esm/client/api.js +19 -1
- package/dist/esm/client/aufrufe.d.ts +9 -6
- package/dist/esm/client/aufrufe.js +29 -2
- package/dist/esm/client/dep-export.d.ts +242 -0
- package/dist/esm/client/dep-export.js +326 -0
- package/dist/esm/client/index.d.ts +2 -1
- package/dist/esm/client/index.js +2 -1
- package/dist/esm/client/transport.d.ts +39 -4
- package/dist/esm/client/transport.js +39 -5
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/pos/dep.d.ts +10 -0
- package/dist/esm/pos/dep.js +24 -0
- package/dist/esm/pos/index.d.ts +1 -0
- package/dist/esm/pos/index.js +2 -0
- package/dist/esm/pos/texte.d.ts +109 -0
- package/dist/esm/pos/texte.js +42 -0
- package/dist/esm/stored/vokabular.d.ts +1 -1
- package/dist/esm/stored/vokabular.js +1 -1
- package/dist/esm/version.d.ts +1 -1
- package/dist/esm/version.js +1 -1
- package/fixtures/dep-folder-cases.json +14 -0
- package/fixtures/hobex-hps-codes.json +1 -1
- package/fixtures/invoice-api.schema.json +1 -1
- package/fixtures/invoice-texts.json +1 -1
- package/fixtures/pos-message-cases.json +9 -0
- package/fixtures/pos-texts.json +127 -1
- package/fixtures/surface.json +23 -3
- package/fixtures/v3/antworten/belege.json +1 -1
- package/fixtures/v3/antworten/belegmail.json +1 -1
- package/fixtures/v3/antworten/berichte.json +1 -1
- package/fixtures/v3/antworten/kasse-belege.json +1 -1
- package/fixtures/v3/antworten/kasse.json +802 -3
- package/fixtures/v3/antworten/lager.json +1 -1
- package/fixtures/v3/antworten/rechnungen.json +1 -1
- package/fixtures/v3/antworten/storno.json +1 -1
- package/fixtures/v3/stored/belege.json +1 -1
- package/fixtures/v3/stored/kasse.json +153 -6
- package/fixtures/v3/stored/rechnungen.json +1 -1
- package/fixtures/v3/v3-vokabular.json +219 -9
- package/fixtures/v3/zahlbetrag-faelle.json +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Prüfung (DEP) bei der Kassennachschau an der Kasse (Spec dep-nachschau, Stufe 2): der Ordner, in den Web-Kasse
|
|
3
|
+
* und Kassen-App DEP, Übergabeprotokoll und Positionen auf den USB-Stick legen. Beide Kassen benennen ihn gleich;
|
|
4
|
+
* die Prüffälle stehen in `fixtures/dep-folder-cases.json` (auch im Dart-Zwilling).
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* `DEP_<Kassen-ID>_<von>_<bis>` (Tage JJJJ-MM-TT, wie der Export sie nennt). Ohne Anfang `DEP_<id>_bis_<bis>`, ohne
|
|
8
|
+
* Ende `DEP_<id>_ab_<von>`, ohne beides `DEP_<id>_alles`. Was ein Stick nicht als Namen nimmt, wird zu `_`.
|
|
9
|
+
*/
|
|
10
|
+
export declare function depFolderName(cashregisterId: string, from?: string | null, to?: string | null): string;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Prüfung (DEP) bei der Kassennachschau an der Kasse (Spec dep-nachschau, Stufe 2): der Ordner, in den Web-Kasse
|
|
4
|
+
* und Kassen-App DEP, Übergabeprotokoll und Positionen auf den USB-Stick legen. Beide Kassen benennen ihn gleich;
|
|
5
|
+
* die Prüffälle stehen in `fixtures/dep-folder-cases.json` (auch im Dart-Zwilling).
|
|
6
|
+
*/
|
|
7
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
+
exports.depFolderName = depFolderName;
|
|
9
|
+
/** Zeichen, die FAT32 und exFAT in Namen nicht erlauben, Steuerzeichen und Leerraum. */
|
|
10
|
+
const UNERLAUBT = /[\\/:*?"<>|\u0000-\u001f\u007f\s]/g;
|
|
11
|
+
const teil = (s) => s.trim().replace(UNERLAUBT, '_');
|
|
12
|
+
/**
|
|
13
|
+
* `DEP_<Kassen-ID>_<von>_<bis>` (Tage JJJJ-MM-TT, wie der Export sie nennt). Ohne Anfang `DEP_<id>_bis_<bis>`, ohne
|
|
14
|
+
* Ende `DEP_<id>_ab_<von>`, ohne beides `DEP_<id>_alles`. Was ein Stick nicht als Namen nimmt, wird zu `_`.
|
|
15
|
+
*/
|
|
16
|
+
function depFolderName(cashregisterId, from, to) {
|
|
17
|
+
const id = teil(String(cashregisterId ?? '')) || 'Kasse';
|
|
18
|
+
const von = typeof from === 'string' && from.trim() ? teil(from) : null;
|
|
19
|
+
const bis = typeof to === 'string' && to.trim() ? teil(to) : null;
|
|
20
|
+
if (von && bis)
|
|
21
|
+
return `DEP_${id}_${von}_${bis}`;
|
|
22
|
+
if (bis)
|
|
23
|
+
return `DEP_${id}_bis_${bis}`;
|
|
24
|
+
if (von)
|
|
25
|
+
return `DEP_${id}_ab_${von}`;
|
|
26
|
+
return `DEP_${id}_alles`;
|
|
27
|
+
}
|
package/dist/cjs/pos/index.d.ts
CHANGED
|
@@ -14,6 +14,7 @@ export { distributeDiscount } from '../receipt/discount.js';
|
|
|
14
14
|
export { cancelScopeOf, receiptsScopeOf, stockViewOf, voucherPermsOf, type VoucherPerms, type RegisterScope, type RegisterUserPerms } from '../register/pairing.js';
|
|
15
15
|
export { type NetworkPrinter, type PrintJob, type PrintJobStatus, PRINT_JOB_STATUSES, type PrintJobSource, PRINT_JOB_SOURCES, isPrintJobFinished, type CreatePrintJobOptions, listMyPrinters, createPrintJob, getPrintJob, } from './drucker.js';
|
|
16
16
|
export { listMyTipRecipients } from './trinkgeld.js';
|
|
17
|
+
export { depFolderName } from './dep.js';
|
|
17
18
|
export { STOCK_LOCATION_TYPES, type StockLocationType, type StockLocation, type StockLocationAddress, type StockLevel, type StockValue, type StockList, type ListMyStockOptions, type SetMyCashregisterStockLocationOptions, type CashregisterStockLocation, listMyStockLocations, listMyStock, setMyCashregisterStockLocation, } from './lager.js';
|
|
18
19
|
export { type ListMyStocktakesOptions, type ListMyStocktakeItemsOptions, type ListMyStocktakeCountsOptions, type RecordMyStocktakeCountOptions, type VoidMyStocktakeCountOptions, listMyStocktakes, listMyStocktakeItems, listMyStocktakeCounts, recordMyStocktakeCount, voidMyStocktakeCount, parseQuantityMilli, } from './inventur.js';
|
|
19
20
|
export type { Stocktake, StocktakeItem, StocktakeCount, StocktakeCountResult, StocktakeItemPage, StocktakeCountPage, StocktakeActor, StocktakeProgress, StocktakeReview, StocktakeRecount, StocktakeScope, } from '../inventory/typen.js';
|
package/dist/cjs/pos/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.quantityRuleForUnit = exports.QUANTITY_RULES = exports.listMyArticles = exports.listMyArticleGroups = exports.fromPosArticlePayload = exports.fromArticleGroupPayload = exports.DONE_SCREEN_SECONDS = exports.WATERMARK_SCALE = exports.LOGO_SCALE = exports.WATERMARK_STRENGTH = exports.WATERMARK_SIDE = exports.DISCOUNT = exports.AUTO_LOGOUT_MINUTES = exports.TILE_STYLE = exports.SETTINGS_FONT_SIZE = exports.LOGO_SIZE = exports.QR_MODE = exports.DRAWER_AUTO_OPEN = exports.CUT = exports.CODE_PAGE = exports.PAPER_SIZE = exports.TERMINAL_TYPE = exports.TERMINAL_VIA = exports.PRINTER_TYPE = exports.TILE_HEIGHT = exports.CATEGORY_POSITION = exports.LAYOUT = exports.RECEIPT_OUTPUT = exports.CARD_PROVIDER = exports.CHECKOUT_MODE = exports.TIP_MODE = exports.QUANTITY = exports.WATERMARK = exports.FONT_SIZE = exports.THEME = exports.posShortcutConflict = exports.POS_SHORTCUT_SHARED_PAIRS = exports.posSettingsChanges = exports.unknownPosSettingValues = exports.sanitizePosSettings = exports.mergePosSettings = exports.POS_DEVICE_VALUES = exports.POS_BUSINESS_VALUES = exports.posTipKeptByDefault = exports.POS_BUSINESS_OPTIONAL_FIELDS = exports.POS_DEVICE_OPTIONAL_FIELDS = exports.POS_DEVICE_DEFAULTS = exports.POS_BUSINESS_DEFAULTS = exports.POS_SHORTCUT_DEFAULTS = exports.POS_SHORTCUT_ACTIONS = void 0;
|
|
4
|
-
exports.
|
|
5
|
-
exports.receiptOutputLabel = exports.RETURN_DISPOSITION_LABELS = exports.labelText = exports.LABELS = exports.voucherErrorMessage = exports.VOUCHER_ERROR_MESSAGES = exports.cancellationPaymentErrorMessage = exports.CANCELLATION_PAYMENT_ERROR_MESSAGES = exports.receiptEmailErrorMessage = exports.RECEIPT_EMAIL_ERROR_MESSAGES = exports.messageAppliesTo = exports.messageText = exports.messageOutcome = exports.findErrorRule = exports.CALLS_WITH_EFFECT = exports.ERROR_OUTCOME_RULES = exports.ERROR_CODE_RULES = exports.ERROR_RULES = exports.MESSAGES = exports.isReturnDisposition = exports.RETURN_DISPOSITIONS = exports.RECEIPT_OUTPUT_RESULTS = exports.RECEIPT_OUTPUT_KINDS = exports.cashMovementLayout = exports.shiftReceiptLayout = exports.AFTER_COUNT_TYPES = exports.SHIFT_RECEIPT_KINDS = exports.MANUAL_OPENING_REASONS = exports.OPENING_REASONS = exports.CASH_LOCATIONS = exports.MANUAL_MOVEMENT_TYPES = exports.MOVEMENT_TYPES = exports.EUR_DENOMINATIONS = exports.durationText = exports.shiftTipLines = exports.newIdempotencyKey = exports.parseCentsAllowZero = exports.sumDenominations = void 0;
|
|
4
|
+
exports.getMyShiftReport = exports.logMyDrawerOpenings = exports.recordMyCashMovement = exports.openMyShift = exports.getMyDrawerState = exports.VOUCHER_TYPE_VALIDITY_PATTERNS = exports.VOUCHER_AMOUNT_MODES = exports.VOUCHER_TYPE_KINDS = exports.VOUCHER_PAYOUTS = exports.posVoucherSettingsFromWire = exports.VOUCHER_SETTINGS_DEFAULTS = exports.reprintVoucherLabel = exports.checkVoucher = exports.VOUCHER_STATUSES = exports.VOUCHER_KINDS = exports.parseQuantityMilli = exports.voidMyStocktakeCount = exports.recordMyStocktakeCount = exports.listMyStocktakeCounts = exports.listMyStocktakeItems = exports.listMyStocktakes = exports.setMyCashregisterStockLocation = exports.listMyStock = exports.listMyStockLocations = exports.STOCK_LOCATION_TYPES = exports.depFolderName = exports.listMyTipRecipients = exports.getPrintJob = exports.createPrintJob = exports.listMyPrinters = exports.isPrintJobFinished = exports.PRINT_JOB_SOURCES = exports.PRINT_JOB_STATUSES = exports.voucherPermsOf = exports.stockViewOf = exports.receiptsScopeOf = exports.cancelScopeOf = exports.distributeDiscount = exports.posFieldErrors = exports.isPosError = exports.posErrorCode = exports.isPosErrorCode = exports.POS_ERROR_CODES = exports.posSettingsFromWire = exports.setMyPosLogo = exports.setMyRegisterDeviceSettings = exports.setMyPosSettings = exports.getPosSettings = exports.allowedQuantity = exports.quantityDefaults = void 0;
|
|
5
|
+
exports.receiptOutputLabel = exports.RETURN_DISPOSITION_LABELS = exports.labelText = exports.LABELS = exports.voucherErrorMessage = exports.VOUCHER_ERROR_MESSAGES = exports.cancellationPaymentErrorMessage = exports.CANCELLATION_PAYMENT_ERROR_MESSAGES = exports.receiptEmailErrorMessage = exports.RECEIPT_EMAIL_ERROR_MESSAGES = exports.messageAppliesTo = exports.messageText = exports.messageOutcome = exports.findErrorRule = exports.CALLS_WITH_EFFECT = exports.ERROR_OUTCOME_RULES = exports.ERROR_CODE_RULES = exports.ERROR_RULES = exports.MESSAGES = exports.isReturnDisposition = exports.RETURN_DISPOSITIONS = exports.RECEIPT_OUTPUT_RESULTS = exports.RECEIPT_OUTPUT_KINDS = exports.cashMovementLayout = exports.shiftReceiptLayout = exports.AFTER_COUNT_TYPES = exports.SHIFT_RECEIPT_KINDS = exports.MANUAL_OPENING_REASONS = exports.OPENING_REASONS = exports.CASH_LOCATIONS = exports.MANUAL_MOVEMENT_TYPES = exports.MOVEMENT_TYPES = exports.EUR_DENOMINATIONS = exports.durationText = exports.shiftTipLines = exports.newIdempotencyKey = exports.parseCentsAllowZero = exports.sumDenominations = exports.closeMyShift = void 0;
|
|
6
6
|
/**
|
|
7
7
|
* Kachel-Kasse: Einstellungen, Artikelgruppen/Artikel fuer Kacheln,
|
|
8
8
|
* Rabattverteilung, Drucker, Trinkgeld-Empfaenger, Lager (Standorte, Bestand,
|
|
@@ -96,6 +96,9 @@ Object.defineProperty(exports, "createPrintJob", { enumerable: true, get: functi
|
|
|
96
96
|
Object.defineProperty(exports, "getPrintJob", { enumerable: true, get: function () { return drucker_js_1.getPrintJob; } });
|
|
97
97
|
var trinkgeld_js_1 = require("./trinkgeld.js");
|
|
98
98
|
Object.defineProperty(exports, "listMyTipRecipients", { enumerable: true, get: function () { return trinkgeld_js_1.listMyTipRecipients; } });
|
|
99
|
+
// Prüfung (DEP) an der Kasse: Ordner auf dem USB-Stick (gleich in Web-Kasse und Kassen-App).
|
|
100
|
+
var dep_js_1 = require("./dep.js");
|
|
101
|
+
Object.defineProperty(exports, "depFolderName", { enumerable: true, get: function () { return dep_js_1.depFolderName; } });
|
|
99
102
|
var lager_js_1 = require("./lager.js");
|
|
100
103
|
Object.defineProperty(exports, "STOCK_LOCATION_TYPES", { enumerable: true, get: function () { return lager_js_1.STOCK_LOCATION_TYPES; } });
|
|
101
104
|
Object.defineProperty(exports, "listMyStockLocations", { enumerable: true, get: function () { return lager_js_1.listMyStockLocations; } });
|
package/dist/cjs/pos/texte.d.ts
CHANGED
|
@@ -802,6 +802,47 @@ declare const MELDUNGEN_ROH: {
|
|
|
802
802
|
readonly text: "Es fehlen {amount} bis zum Wechselgeld von {total}.";
|
|
803
803
|
readonly placeholders: readonly ["amount", "total"];
|
|
804
804
|
};
|
|
805
|
+
readonly 'dep.manager_only': {
|
|
806
|
+
readonly text: "Den Export für die Prüfung macht der Chef. Ist er nicht da, darf die Behörde bis zu zwei Werktage warten.";
|
|
807
|
+
};
|
|
808
|
+
readonly 'dep.offline': {
|
|
809
|
+
readonly text: "Ohne Internet ist kein Export möglich. Die Behörde muss dann bis zu zwei Werktage warten; der Export geht später hier oder unter mein.kasseneck.at.";
|
|
810
|
+
};
|
|
811
|
+
readonly 'dep.creating': {
|
|
812
|
+
readonly text: "Wird erstellt …";
|
|
813
|
+
};
|
|
814
|
+
readonly 'dep.running': {
|
|
815
|
+
readonly text: "Für diese Kasse läuft schon ein Export. Bitte kurz warten, er wird gleich fertig.";
|
|
816
|
+
};
|
|
817
|
+
readonly 'dep.failed': {
|
|
818
|
+
readonly text: "Der Export ist fehlgeschlagen. Bitte erneut erstellen.";
|
|
819
|
+
};
|
|
820
|
+
readonly 'dep.too_many_exports': {
|
|
821
|
+
readonly text: "Heute sind an diesem Konto keine weiteren Exporte möglich – morgen geht es wieder. Ein schon erstellter Export bleibt nutzbar.";
|
|
822
|
+
};
|
|
823
|
+
readonly 'dep.period_invalid': {
|
|
824
|
+
readonly text: "Bitte einen gültigen Zeitraum wählen: „Von“ nicht in der Zukunft, „Bis“ nicht vor „Von“.";
|
|
825
|
+
};
|
|
826
|
+
readonly 'dep.usb_hint': {
|
|
827
|
+
readonly text: "USB-Stick anstecken (FAT32 oder exFAT). Der Prüfer behält den Stick.";
|
|
828
|
+
};
|
|
829
|
+
readonly 'dep.saved': {
|
|
830
|
+
readonly text: "Gespeichert im Ordner {folder}.";
|
|
831
|
+
readonly placeholders: readonly ["folder"];
|
|
832
|
+
};
|
|
833
|
+
readonly 'dep.save_failed': {
|
|
834
|
+
readonly text: "Speichern hat nicht geklappt. Bitte den Stick prüfen und erneut speichern.";
|
|
835
|
+
};
|
|
836
|
+
readonly 'dep.zip_fallback': {
|
|
837
|
+
readonly text: "Dieser Browser kann keinen Ordner wählen – der Export kommt als ZIP-Datei in den Download-Ordner.";
|
|
838
|
+
readonly only: readonly ["web"];
|
|
839
|
+
};
|
|
840
|
+
readonly 'dep.code_once': {
|
|
841
|
+
readonly text: "Code und QR-Code gibt es nur auf diesem Bildschirm. Wer zurückgeht, erstellt beim nächsten Mal einen neuen Link.";
|
|
842
|
+
};
|
|
843
|
+
readonly 'dep.revoked': {
|
|
844
|
+
readonly text: "Der Link ist widerrufen.";
|
|
845
|
+
};
|
|
805
846
|
readonly 'app.not_in_browser': {
|
|
806
847
|
readonly text: "Die Kassen-App läuft nicht im Browser – dafür gibt es kasse.kasseneck.at.";
|
|
807
848
|
readonly only: readonly ["app"];
|
|
@@ -935,6 +976,18 @@ export declare const ERROR_CODE_RULES: readonly [{
|
|
|
935
976
|
readonly kind: "api";
|
|
936
977
|
readonly codes: readonly ["drawer_inactive"];
|
|
937
978
|
readonly key: "drawer.inactive";
|
|
979
|
+
}, {
|
|
980
|
+
readonly kind: "api";
|
|
981
|
+
readonly codes: readonly ["manager_only"];
|
|
982
|
+
readonly key: "dep.manager_only";
|
|
983
|
+
}, {
|
|
984
|
+
readonly kind: "api";
|
|
985
|
+
readonly codes: readonly ["export_running"];
|
|
986
|
+
readonly key: "dep.running";
|
|
987
|
+
}, {
|
|
988
|
+
readonly kind: "api";
|
|
989
|
+
readonly codes: readonly ["too_many_exports"];
|
|
990
|
+
readonly key: "dep.too_many_exports";
|
|
938
991
|
}];
|
|
939
992
|
/**
|
|
940
993
|
* Regeln je Ausgang, nach den Code-Regeln und vor der Regel der Art: eine
|
|
@@ -1848,6 +1901,9 @@ declare const BESCHRIFTUNGEN_ROH: {
|
|
|
1848
1901
|
readonly 'nav.stocktake': {
|
|
1849
1902
|
readonly text: "Inventur";
|
|
1850
1903
|
};
|
|
1904
|
+
readonly 'nav.dep': {
|
|
1905
|
+
readonly text: "Prüfung (DEP)";
|
|
1906
|
+
};
|
|
1851
1907
|
readonly 'nav.settings': {
|
|
1852
1908
|
readonly text: "Einstellungen";
|
|
1853
1909
|
};
|
|
@@ -2133,6 +2189,59 @@ declare const BESCHRIFTUNGEN_ROH: {
|
|
|
2133
2189
|
readonly 'receipt.output_failed': {
|
|
2134
2190
|
readonly text: "fehlgeschlagen";
|
|
2135
2191
|
};
|
|
2192
|
+
readonly 'dep.title': {
|
|
2193
|
+
readonly text: "Prüfung (DEP)";
|
|
2194
|
+
};
|
|
2195
|
+
readonly 'dep.period': {
|
|
2196
|
+
readonly text: "Zeitraum";
|
|
2197
|
+
};
|
|
2198
|
+
readonly 'dep.period_all': {
|
|
2199
|
+
readonly text: "Alles seit Inbetriebnahme";
|
|
2200
|
+
};
|
|
2201
|
+
readonly 'dep.period_year': {
|
|
2202
|
+
readonly text: "Ein Jahr";
|
|
2203
|
+
};
|
|
2204
|
+
readonly 'dep.period_quarter': {
|
|
2205
|
+
readonly text: "Ein Quartal";
|
|
2206
|
+
};
|
|
2207
|
+
readonly 'dep.period_custom': {
|
|
2208
|
+
readonly text: "Eigener Zeitraum";
|
|
2209
|
+
};
|
|
2210
|
+
readonly 'dep.from': {
|
|
2211
|
+
readonly text: "Von";
|
|
2212
|
+
};
|
|
2213
|
+
readonly 'dep.to': {
|
|
2214
|
+
readonly text: "Bis";
|
|
2215
|
+
};
|
|
2216
|
+
readonly 'dep.create': {
|
|
2217
|
+
readonly text: "Export erstellen";
|
|
2218
|
+
};
|
|
2219
|
+
readonly 'dep.receipts': {
|
|
2220
|
+
readonly text: "{count} Belege";
|
|
2221
|
+
readonly placeholders: readonly ["count"];
|
|
2222
|
+
};
|
|
2223
|
+
readonly 'dep.save_usb': {
|
|
2224
|
+
readonly text: "Auf USB-Stick speichern";
|
|
2225
|
+
};
|
|
2226
|
+
readonly 'dep.handover_link': {
|
|
2227
|
+
readonly text: "Link für den Prüfer";
|
|
2228
|
+
};
|
|
2229
|
+
readonly 'dep.code': {
|
|
2230
|
+
readonly text: "Code";
|
|
2231
|
+
};
|
|
2232
|
+
readonly 'dep.valid_until': {
|
|
2233
|
+
readonly text: "gültig bis {date}";
|
|
2234
|
+
readonly placeholders: readonly ["date"];
|
|
2235
|
+
};
|
|
2236
|
+
readonly 'dep.revoke': {
|
|
2237
|
+
readonly text: "Widerrufen";
|
|
2238
|
+
};
|
|
2239
|
+
readonly 'dep.checksum': {
|
|
2240
|
+
readonly text: "Prüfsumme (SHA-256)";
|
|
2241
|
+
};
|
|
2242
|
+
readonly 'dep.new_export': {
|
|
2243
|
+
readonly text: "Neuer Export";
|
|
2244
|
+
};
|
|
2136
2245
|
};
|
|
2137
2246
|
export type LabelKey = keyof typeof BESCHRIFTUNGEN_ROH;
|
|
2138
2247
|
export declare const LABELS: Record<LabelKey, TextEntry>;
|
package/dist/cjs/pos/texte.js
CHANGED
|
@@ -397,6 +397,22 @@ const MELDUNGEN_ROH = {
|
|
|
397
397
|
// Wechselgeld der Lade (1.11.0): beim Öffnen der Schicht liegt weniger in der Lade als eingestellt.
|
|
398
398
|
// `{amount}` was fehlt, `{total}` das eingestellte Wechselgeld, beide samt Euro-Zeichen.
|
|
399
399
|
'shift.change_float_missing': { text: 'Es fehlen {amount} bis zum Wechselgeld von {total}.', placeholders: ['amount', 'total'] },
|
|
400
|
+
// --- Prüfung (DEP) bei der Kassennachschau ---------------------------------
|
|
401
|
+
// Nur der Chef exportiert (Inhaber oder Recht „Einstellungen“); ein Kassier
|
|
402
|
+
// sieht nur den Hinweis. Ohne Internet gilt die Frist von zwei Werktagen.
|
|
403
|
+
'dep.manager_only': { text: 'Den Export für die Prüfung macht der Chef. Ist er nicht da, darf die Behörde bis zu zwei Werktage warten.' },
|
|
404
|
+
'dep.offline': { text: 'Ohne Internet ist kein Export möglich. Die Behörde muss dann bis zu zwei Werktage warten; der Export geht später hier oder unter mein.kasseneck.at.' },
|
|
405
|
+
'dep.creating': { text: 'Wird erstellt …' },
|
|
406
|
+
'dep.running': { text: 'Für diese Kasse läuft schon ein Export. Bitte kurz warten, er wird gleich fertig.' },
|
|
407
|
+
'dep.failed': { text: 'Der Export ist fehlgeschlagen. Bitte erneut erstellen.' },
|
|
408
|
+
'dep.too_many_exports': { text: 'Heute sind an diesem Konto keine weiteren Exporte möglich – morgen geht es wieder. Ein schon erstellter Export bleibt nutzbar.' },
|
|
409
|
+
'dep.period_invalid': { text: 'Bitte einen gültigen Zeitraum wählen: „Von“ nicht in der Zukunft, „Bis“ nicht vor „Von“.' },
|
|
410
|
+
'dep.usb_hint': { text: 'USB-Stick anstecken (FAT32 oder exFAT). Der Prüfer behält den Stick.' },
|
|
411
|
+
'dep.saved': { text: 'Gespeichert im Ordner {folder}.', placeholders: ['folder'] },
|
|
412
|
+
'dep.save_failed': { text: 'Speichern hat nicht geklappt. Bitte den Stick prüfen und erneut speichern.' },
|
|
413
|
+
'dep.zip_fallback': { text: 'Dieser Browser kann keinen Ordner wählen – der Export kommt als ZIP-Datei in den Download-Ordner.', only: ['web'] },
|
|
414
|
+
'dep.code_once': { text: 'Code und QR-Code gibt es nur auf diesem Bildschirm. Wer zurückgeht, erstellt beim nächsten Mal einen neuen Link.' },
|
|
415
|
+
'dep.revoked': { text: 'Der Link ist widerrufen.' },
|
|
400
416
|
// --- Nur App -------------------------------------------------------------
|
|
401
417
|
'app.not_in_browser': { text: 'Die Kassen-App läuft nicht im Browser – dafür gibt es kasse.kasseneck.at.', only: ['app'] },
|
|
402
418
|
'app.open_in_browser': { text: 'Bitte im Browser öffnen: {target}', placeholders: ['target'], only: ['app'] },
|
|
@@ -467,6 +483,13 @@ exports.ERROR_CODE_RULES = [
|
|
|
467
483
|
{ kind: 'api', codes: ['invalid_amount'], key: 'amount.invalid' },
|
|
468
484
|
{ kind: 'api', codes: ['drawer_not_found'], key: 'drawer.not_found' },
|
|
469
485
|
{ kind: 'api', codes: ['drawer_inactive'], key: 'drawer.inactive' },
|
|
486
|
+
// Prüfung (DEP, 1.21.0): nur der Chef; die Tagesgrenze und ein laufender
|
|
487
|
+
// Export sagen, was zu tun ist. Der Server hat nichts angelegt. Bewusst
|
|
488
|
+
// ohne export_failed (kommt auch von Zahlungswegen mit unklarem Ausgang)
|
|
489
|
+
// und ohne too_many_links (der Satz des Backends nennt die Grenze).
|
|
490
|
+
{ kind: 'api', codes: ['manager_only'], key: 'dep.manager_only' },
|
|
491
|
+
{ kind: 'api', codes: ['export_running'], key: 'dep.running' },
|
|
492
|
+
{ kind: 'api', codes: ['too_many_exports'], key: 'dep.too_many_exports' },
|
|
470
493
|
];
|
|
471
494
|
/**
|
|
472
495
|
* Regeln je Ausgang, nach den Code-Regeln und vor der Regel der Art: eine
|
|
@@ -945,6 +968,7 @@ const BESCHRIFTUNGEN_ROH = {
|
|
|
945
968
|
'nav.vouchers': { text: 'Gutscheine' },
|
|
946
969
|
'nav.open_drawer': { text: 'Kassenlade öffnen' },
|
|
947
970
|
'nav.stocktake': { text: 'Inventur' },
|
|
971
|
+
'nav.dep': { text: 'Prüfung (DEP)' },
|
|
948
972
|
'nav.settings': { text: 'Einstellungen' },
|
|
949
973
|
'nav.settings_locked': { text: 'nur mit Chef-Anmeldung' },
|
|
950
974
|
'nav.logout': { text: 'Abmelden' },
|
|
@@ -1046,6 +1070,24 @@ const BESCHRIFTUNGEN_ROH = {
|
|
|
1046
1070
|
'receipt.output_pdf_shared': { text: 'PDF geteilt' },
|
|
1047
1071
|
'receipt.output_opened': { text: 'Link geöffnet ({count}×)', placeholders: ['count'] },
|
|
1048
1072
|
'receipt.output_failed': { text: 'fehlgeschlagen' },
|
|
1073
|
+
// --- Prüfung (DEP) bei der Kassennachschau -----------------------------------
|
|
1074
|
+
'dep.title': { text: 'Prüfung (DEP)' },
|
|
1075
|
+
'dep.period': { text: 'Zeitraum' },
|
|
1076
|
+
'dep.period_all': { text: 'Alles seit Inbetriebnahme' },
|
|
1077
|
+
'dep.period_year': { text: 'Ein Jahr' },
|
|
1078
|
+
'dep.period_quarter': { text: 'Ein Quartal' },
|
|
1079
|
+
'dep.period_custom': { text: 'Eigener Zeitraum' },
|
|
1080
|
+
'dep.from': { text: 'Von' },
|
|
1081
|
+
'dep.to': { text: 'Bis' },
|
|
1082
|
+
'dep.create': { text: 'Export erstellen' },
|
|
1083
|
+
'dep.receipts': { text: '{count} Belege', placeholders: ['count'] },
|
|
1084
|
+
'dep.save_usb': { text: 'Auf USB-Stick speichern' },
|
|
1085
|
+
'dep.handover_link': { text: 'Link für den Prüfer' },
|
|
1086
|
+
'dep.code': { text: 'Code' },
|
|
1087
|
+
'dep.valid_until': { text: 'gültig bis {date}', placeholders: ['date'] },
|
|
1088
|
+
'dep.revoke': { text: 'Widerrufen' },
|
|
1089
|
+
'dep.checksum': { text: 'Prüfsumme (SHA-256)' },
|
|
1090
|
+
'dep.new_export': { text: 'Neuer Export' },
|
|
1049
1091
|
};
|
|
1050
1092
|
exports.LABELS = BESCHRIFTUNGEN_ROH;
|
|
1051
1093
|
/**
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/** Fingerabdruck des Vertrags-Exports, aus dem diese Datei stammt (`_quelle.sha256`). */
|
|
2
|
-
export declare const VOKABULAR_QUELLE = "
|
|
2
|
+
export declare const VOKABULAR_QUELLE = "ff400b73f31d963cb2051ca8b7a06cef0bf126483b528320e2a503a6035a7c59";
|
|
3
3
|
/** Schema-Notation des Vertrags: Blatt 'aussen': 'innen', Objekt { __: 'innen', ... }, Liste [ { __: 'innen', ... } ]. */
|
|
4
4
|
export type SchemaEintrag = string | SchemaObjekt | readonly [SchemaObjekt];
|
|
5
5
|
export interface SchemaObjekt {
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
5
|
exports.KATALOGE = exports.ARTIKEL_FELDER = exports.SCHEMAS = exports.VOKABULAR_QUELLE = void 0;
|
|
6
6
|
/** Fingerabdruck des Vertrags-Exports, aus dem diese Datei stammt (`_quelle.sha256`). */
|
|
7
|
-
exports.VOKABULAR_QUELLE = "
|
|
7
|
+
exports.VOKABULAR_QUELLE = "ff400b73f31d963cb2051ca8b7a06cef0bf126483b528320e2a503a6035a7c59";
|
|
8
8
|
/** Schema je Endpunkt (aussen -> innen) und Wertverweise auf die Kataloge. */
|
|
9
9
|
exports.SCHEMAS = {
|
|
10
10
|
"getReceipt": {
|
package/dist/cjs/version.d.ts
CHANGED
package/dist/cjs/version.js
CHANGED
package/dist/esm/client/api.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ import { type HobexPayOptions, type HobexRefundOptions } from '../payments/hobex
|
|
|
4
4
|
import { type TransportOptions } from './transport.js';
|
|
5
5
|
import { type CashregisterReportPeriod, type ReportV2, type ReportV2Options } from './reports.js';
|
|
6
6
|
import { type CashboxStatus, type SignatureStatus } from './status.js';
|
|
7
|
+
import { type CreateDepExportOptions, type CreateDepExportResult, type DepExport, type DepExportFile, type DepHandoverLink, type GetDepExportFileOptions, type RevokedDepHandoverLink, type WaitForDepExportOptions } from './dep-export.js';
|
|
7
8
|
import { type ListedReceipt, type ListReceiptsOptions, type ListReceiptsPage, type ListReceiptsView } from './list-receipts.js';
|
|
8
9
|
import { type SendReceiptEmailOptions, type SendReceiptEmailResult, type LogReceiptOutputsOptions, type LogReceiptOutputsResult, type ListMyReceiptsOptions, type ReceiptList, type ReceiptWithCompany, type SellReceiptOptions, type CancelReceiptOptions, type CancelReceiptResult } from './receipts.js';
|
|
9
10
|
/**
|
|
@@ -61,6 +62,24 @@ export interface KasseneckApi {
|
|
|
61
62
|
listReceipts<V extends ListReceiptsView = 'summary'>(options: ListReceiptsOptions<V>): Promise<ListReceiptsPage<V>>;
|
|
62
63
|
/** Alle Belege eines Tages oder Zeitraums, Seite fuer Seite geholt (hoechstens 100 Seiten). */
|
|
63
64
|
listAllReceipts<V extends ListReceiptsView = 'summary'>(options: ListReceiptsOptions<V>): AsyncGenerator<ListedReceipt<V>, void, undefined>;
|
|
65
|
+
/** DEP-Export fuer die Kassennachschau einstellen (`createDepExport`, nur /v3); antwortet sofort, der Export laeuft im Hintergrund. */
|
|
66
|
+
createDepExport(options?: CreateDepExportOptions): Promise<CreateDepExportResult>;
|
|
67
|
+
/** Zustand, Kennzahlen, Befund und Pruefer-Links eines Exports (`getDepExport`). */
|
|
68
|
+
getDepExport(options: {
|
|
69
|
+
exportId: string;
|
|
70
|
+
}): Promise<DepExport>;
|
|
71
|
+
/** Wartet, bis der Export fertig ist (Abfrage 2 s, x1,5, hoechstens 15 s; Vorgabe 10 Minuten). */
|
|
72
|
+
waitForDepExport(options: WaitForDepExportOptions): Promise<DepExport>;
|
|
73
|
+
/** Eine Datei des Exports (dep, protocol, items, zip) laden und gegen die SHA-256-Summe pruefen. */
|
|
74
|
+
getDepExportFile(options: GetDepExportFileOptions): Promise<DepExportFile>;
|
|
75
|
+
/** Pruefer-Link (Adresse und 6-stelliger Code, 14 Tage) zu einem fertigen Export. */
|
|
76
|
+
createDepHandoverLink(options: {
|
|
77
|
+
exportId: string;
|
|
78
|
+
}): Promise<DepHandoverLink>;
|
|
79
|
+
/** Pruefer-Link der eigenen Kasse widerrufen. */
|
|
80
|
+
revokeDepHandoverLink(options: {
|
|
81
|
+
linkId: string;
|
|
82
|
+
}): Promise<RevokedDepHandoverLink>;
|
|
64
83
|
/** Kassenbericht als PDF (v2): abgeschlossener Monat, Tag oder Zeitraum (Endpunkt `getCashregisterReport`). */
|
|
65
84
|
getCashregisterReport(options: CashregisterReportPeriod): Promise<Uint8Array>;
|
|
66
85
|
/** @deprecated Since 1.10.0: use getCashregisterReport. Tagesbericht als PDF (Kalendertag nach Wiener Zeit). */
|
package/dist/esm/client/api.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { createStripeLink, stripeCaptureIntent, } from '../payments/stripe.js';
|
|
2
2
|
import { hobexPay, hobexRefund } from '../payments/hobex.js';
|
|
3
|
-
import { createTransport, createBinaryTransport } from './transport.js';
|
|
3
|
+
import { createTransport, createBinaryTransport, createFileOrDataTransport } from './transport.js';
|
|
4
4
|
import { downloadDailyReport, downloadMonthlyReport, getCashregisterReport, getReportV2 } from './reports.js';
|
|
5
5
|
import { getCashboxStatus, getSignatureStatus } from './status.js';
|
|
6
|
+
import { createDepExport, createDepHandoverLink, getDepExport, getDepExportFile, revokeDepHandoverLink, waitForDepExport, } from './dep-export.js';
|
|
6
7
|
import { listAllReceipts, listReceipts } from './list-receipts.js';
|
|
7
8
|
import { sellReceipt, sellReceiptWithCompany, cancelReceipt, zeroReceipt, getReceipt, getReceiptWithCompany, generateFullReceiptId, getFirstReceiptDate, listMyReceipts, sendReceiptEmail, logReceiptOutputs, } from './receipts.js';
|
|
8
9
|
import { listMyCashregisters } from './cashregisters.js';
|
|
@@ -12,6 +13,17 @@ export function createKasseneckApi(options) {
|
|
|
12
13
|
// Zweiter Einstiegspunkt fuer die PDF-Downloads; dieselben Optionen,
|
|
13
14
|
// dieselbe Anmeldung — nur die Antwort wird als Bytes gelesen.
|
|
14
15
|
const rufenBinaer = createBinaryTransport(options);
|
|
16
|
+
// Fuer Dateien beliebiger Art (DEP-Export): Datei oder Lese-Link.
|
|
17
|
+
const rufenDatei = createFileOrDataTransport(options);
|
|
18
|
+
// Das globale fetch erst beim Folgen eines Lese-Links holen: ohne Link braucht es niemand.
|
|
19
|
+
const holen = (url, init) => {
|
|
20
|
+
if (options.fetch)
|
|
21
|
+
return options.fetch(url, init);
|
|
22
|
+
const umgebung = globalThis;
|
|
23
|
+
if (typeof umgebung.fetch !== 'function')
|
|
24
|
+
throw new Error('getDepExportFile: kein globales fetch vorhanden');
|
|
25
|
+
return umgebung.fetch(url, init);
|
|
26
|
+
};
|
|
15
27
|
return {
|
|
16
28
|
sellReceipt: (o) => sellReceipt(rufen, o),
|
|
17
29
|
sellReceiptWithCompany: (o) => sellReceiptWithCompany(rufen, o),
|
|
@@ -28,6 +40,12 @@ export function createKasseneckApi(options) {
|
|
|
28
40
|
getReportV2: (o) => getReportV2(rufen, o),
|
|
29
41
|
listReceipts: (o) => listReceipts(rufen, o),
|
|
30
42
|
listAllReceipts: (o) => listAllReceipts(rufen, o),
|
|
43
|
+
createDepExport: (o) => createDepExport(rufen, o),
|
|
44
|
+
getDepExport: (o) => getDepExport(rufen, o),
|
|
45
|
+
waitForDepExport: (o) => waitForDepExport(rufen, o),
|
|
46
|
+
getDepExportFile: (o) => getDepExportFile(rufenDatei, holen, o),
|
|
47
|
+
createDepHandoverLink: (o) => createDepHandoverLink(rufen, o),
|
|
48
|
+
revokeDepHandoverLink: (o) => revokeDepHandoverLink(rufen, o),
|
|
31
49
|
getCashregisterReport: (options) => getCashregisterReport(rufenBinaer, options),
|
|
32
50
|
downloadDailyReport: (date) => downloadDailyReport(rufenBinaer, date),
|
|
33
51
|
downloadMonthlyReport: (reportMonth) => downloadMonthlyReport(rufenBinaer, reportMonth),
|
|
@@ -12,8 +12,8 @@
|
|
|
12
12
|
* weiterhin jeden `string`: wer einen Aufruf braucht, den dieses Paket nicht
|
|
13
13
|
* umhuellt, muss ihn weiterhin absetzen koennen.
|
|
14
14
|
*/
|
|
15
|
-
import type { PdfOrData, TransportBodyFields, TransportCallOptions } from './transport.js';
|
|
16
|
-
export declare const ALL_CALLS: readonly ["activateCashregister", "cancelInvoice", "cancelReceipt", "createCreditNote", "createCustomer", "createCustomerCashregister", "createPartnerCustomer", "checkPartnerCustomerEmail", "createPartnerWebhook", "createPaymentLinkStripe", "createPrintJob", "createReceipt", "deletePartnerWebhook", "downloadDailyReport", "downloadReport", "endRegisterSession", "financeWebService", "generateFullReceiptId", "getCashregisterReport", "getCustomer", "getCustomerCredentials", "getCustomerSignatureStatus", "getFirstReceiptDate", "getInvoice", "getInvoicePdf", "getInvoiceSetupStatus", "getInvoiceXml", "getKasseSettings", "getPartnerCustomer", "getPartnerInfo", "getPrintJob", "getReceipt", "getReportV2", "hobexPayApi", "hobexRefundApi", "issueInvoice", "listCustomerCashregisters", "listInvoices", "listBrands", "listMyArticleGroups", "listMyArticles", "listMyCashregisters", "listMyPrinters", "listMyReceipts", "listMyStock", "listMyStockLocations", "listMyTipRecipients", "listPartnerCustomers", "listPartnerWebhookDeliveries", "listPartnerWebhooks", "listReceipts", "listRegisterUsersForDevice", "listRegisterSessionsForDevice", "pairRegisterDevice", "recordInvoicePayment", "registerPinLogin", "registerUserLogin", "renewRegisterSession", "reportCustomerContract", "requestCustomerSignature", "searchCustomers", "sendPartnerCustomerFonLink", "sendPartnerWebhookTest", "sendReceiptEmail", "setMyCashregisterStockLocation", "setMyKasseLogo", "setMyKasseSettings", "setMyRegisterDeviceSettings", "stripeCaptureIntent", "unpairRegisterDevice", "rotatePartnerWebhookSecret", "updateCustomer", "updatePartnerWebhook", "getArticle", "listArticles", "lookupArticleByCode", "listLocations", "getStock", "listStock", "listStockMovements", "createWebhook", "updateWebhook", "deleteWebhook", "listWebhooks", "sendWebhookTest", "rotateWebhookSecret", "listWebhookDeliveries", "createArticle", "updateArticle", "deactivateArticle", "receiveGoods", "transferStock", "recordStockLoss", "changeStockCondition", "reverseStockMovement", "createReservation", "extendReservation", "releaseReservation", "getReservation", "listReservations", "createVariantGroup", "updateVariantGroup", "getVariantGroup", "listVariantGroups", "addVariant", "createStocktake", "listStocktakes", "getStocktake", "listStocktakeItems", "recordStocktakeCount", "voidStocktakeCount", "listStocktakeCounts", "reviewStocktake", "recountStocktake", "closeStocktake", "cancelStocktake", "getStocktakePdf", "orderSignatureCard", "getSignatureCardOrder", "listMyStocktakes", "listMyStocktakeItems", "listMyStocktakeCounts", "recordMyStocktakeCount", "voidMyStocktakeCount", "checkVoucher", "reprintVoucherLabel", "getMyDrawerState", "openMyShift", "recordMyCashMovement", "logMyDrawerOpenings", "getMyShiftReport", "closeMyShift", "logReceiptOutputs"];
|
|
15
|
+
import type { FileOrData, FileOrDataCallOptions, PdfOrData, TransportBodyFields, TransportCallOptions } from './transport.js';
|
|
16
|
+
export declare const ALL_CALLS: readonly ["activateCashregister", "cancelInvoice", "cancelReceipt", "createCreditNote", "createCustomer", "createCustomerCashregister", "createDepExport", "createDepHandoverLink", "createPartnerCustomer", "checkPartnerCustomerEmail", "createPartnerWebhook", "createPaymentLinkStripe", "createPrintJob", "createReceipt", "deletePartnerWebhook", "downloadDailyReport", "downloadReport", "endRegisterSession", "financeWebService", "generateFullReceiptId", "getCashregisterReport", "getCustomer", "getCustomerCredentials", "getCustomerSignatureStatus", "getDepExport", "getDepExportFile", "getFirstReceiptDate", "getInvoice", "getInvoicePdf", "getInvoiceSetupStatus", "getInvoiceXml", "getKasseSettings", "getPartnerCustomer", "getPartnerInfo", "getPrintJob", "getReceipt", "getReportV2", "hobexPayApi", "hobexRefundApi", "issueInvoice", "listCustomerCashregisters", "listInvoices", "listBrands", "listMyArticleGroups", "listMyArticles", "listMyCashregisters", "listMyPrinters", "listMyReceipts", "listMyStock", "listMyStockLocations", "listMyTipRecipients", "listPartnerCustomers", "listPartnerWebhookDeliveries", "listPartnerWebhooks", "listReceipts", "listRegisterUsersForDevice", "listRegisterSessionsForDevice", "pairRegisterDevice", "recordInvoicePayment", "registerPinLogin", "registerUserLogin", "renewRegisterSession", "reportCustomerContract", "requestCustomerSignature", "revokeDepHandoverLink", "searchCustomers", "sendPartnerCustomerFonLink", "sendPartnerWebhookTest", "sendReceiptEmail", "setMyCashregisterStockLocation", "setMyKasseLogo", "setMyKasseSettings", "setMyRegisterDeviceSettings", "stripeCaptureIntent", "unpairRegisterDevice", "rotatePartnerWebhookSecret", "updateCustomer", "updatePartnerWebhook", "getArticle", "listArticles", "lookupArticleByCode", "listLocations", "getStock", "listStock", "listStockMovements", "createWebhook", "updateWebhook", "deleteWebhook", "listWebhooks", "sendWebhookTest", "rotateWebhookSecret", "listWebhookDeliveries", "createArticle", "updateArticle", "deactivateArticle", "receiveGoods", "transferStock", "recordStockLoss", "changeStockCondition", "reverseStockMovement", "createReservation", "extendReservation", "releaseReservation", "getReservation", "listReservations", "createVariantGroup", "updateVariantGroup", "getVariantGroup", "listVariantGroups", "addVariant", "createStocktake", "listStocktakes", "getStocktake", "listStocktakeItems", "recordStocktakeCount", "voidStocktakeCount", "listStocktakeCounts", "reviewStocktake", "recountStocktake", "closeStocktake", "cancelStocktake", "getStocktakePdf", "orderSignatureCard", "getSignatureCardOrder", "listMyStocktakes", "listMyStocktakeItems", "listMyStocktakeCounts", "recordMyStocktakeCount", "voidMyStocktakeCount", "checkVoucher", "reprintVoucherLabel", "getMyDrawerState", "openMyShift", "recordMyCashMovement", "logMyDrawerOpenings", "getMyShiftReport", "closeMyShift", "logReceiptOutputs"];
|
|
17
17
|
export type ApiCall = typeof ALL_CALLS[number];
|
|
18
18
|
/**
|
|
19
19
|
* Die oeffentlichen Endpunkte unter `/v3` (`https://api.kasseneck.at/v3/<name>`),
|
|
@@ -21,14 +21,15 @@ export type ApiCall = typeof ALL_CALLS[number];
|
|
|
21
21
|
* (`fixtures/v3/v3-vokabular.json`, `endpoints.public`, umbenannt nach
|
|
22
22
|
* `names`). Ein Test haelt beide Listen deckungsgleich.
|
|
23
23
|
*/
|
|
24
|
-
export declare const PUBLIC_CALLS: readonly ["createReceipt", "getReceipt", "cancelReceipt", "sendReceiptEmail", "generateFullReceiptId", "downloadReceipt", "getFirstReceiptDate", "getReportV2", "downloadReport", "downloadDailyReport", "getCashregisterReport", "createPaymentLinkStripe", "stripeCaptureIntent", "hobexPayApi", "hobexRefundApi", "hobexGetStatus", "financeWebService", "listMyTipRecipients", "getPartnerInfo", "createPartnerCustomer", "checkPartnerCustomerEmail", "listPartnerCustomers", "getPartnerCustomer", "sendPartnerCustomerFonLink", "createPartnerWebhook", "updatePartnerWebhook", "deletePartnerWebhook", "listPartnerWebhooks", "sendPartnerWebhookTest", "rotatePartnerWebhookSecret", "listPartnerWebhookDeliveries", "requestCustomerSignature", "getCustomerSignatureStatus", "createCustomerCashregister", "activateCashregister", "listCustomerCashregisters", "getCustomerCredentials", "reportCustomerContract", "getPartnerBilling", "getPartnerBillingMonth", "createCustomer", "getCustomer", "updateCustomer", "searchCustomers", "issueInvoice", "cancelInvoice", "createCreditNote", "getInvoice", "listInvoices", "getInvoicePdf", "getInvoiceXml", "getInvoiceSetupStatus", "listBrands", "recordInvoicePayment", "createInvoiceItem", "updateInvoiceItem", "withdrawInvoiceItem", "getInvoiceItem", "listInvoiceItems", "setCustomerMandate", "revokeCustomerMandate", "getArticle", "listArticles", "lookupArticleByCode", "listLocations", "getStock", "listStock", "listStockMovements", "createWebhook", "updateWebhook", "deleteWebhook", "listWebhooks", "sendWebhookTest", "rotateWebhookSecret", "listWebhookDeliveries", "createArticle", "updateArticle", "deactivateArticle", "receiveGoods", "transferStock", "recordStockLoss", "changeStockCondition", "reverseStockMovement", "createReservation", "extendReservation", "releaseReservation", "getReservation", "listReservations", "createVariantGroup", "updateVariantGroup", "getVariantGroup", "listVariantGroups", "addVariant", "createStocktake", "listStocktakes", "getStocktake", "listStocktakeItems", "recordStocktakeCount", "voidStocktakeCount", "listStocktakeCounts", "reviewStocktake", "recountStocktake", "closeStocktake", "cancelStocktake", "getStocktakePdf", "orderSignatureCard", "getSignatureCardOrder", "listReceipts"];
|
|
24
|
+
export declare const PUBLIC_CALLS: readonly ["createReceipt", "getReceipt", "cancelReceipt", "sendReceiptEmail", "generateFullReceiptId", "downloadReceipt", "getFirstReceiptDate", "getReportV2", "downloadReport", "downloadDailyReport", "getCashregisterReport", "createPaymentLinkStripe", "stripeCaptureIntent", "hobexPayApi", "hobexRefundApi", "hobexGetStatus", "financeWebService", "listMyTipRecipients", "getPartnerInfo", "createPartnerCustomer", "checkPartnerCustomerEmail", "listPartnerCustomers", "getPartnerCustomer", "sendPartnerCustomerFonLink", "createPartnerWebhook", "updatePartnerWebhook", "deletePartnerWebhook", "listPartnerWebhooks", "sendPartnerWebhookTest", "rotatePartnerWebhookSecret", "listPartnerWebhookDeliveries", "requestCustomerSignature", "getCustomerSignatureStatus", "createCustomerCashregister", "activateCashregister", "listCustomerCashregisters", "getCustomerCredentials", "reportCustomerContract", "getPartnerBilling", "getPartnerBillingMonth", "createCustomer", "getCustomer", "updateCustomer", "searchCustomers", "issueInvoice", "cancelInvoice", "createCreditNote", "getInvoice", "listInvoices", "getInvoicePdf", "getInvoiceXml", "getInvoiceSetupStatus", "listBrands", "recordInvoicePayment", "createInvoiceItem", "updateInvoiceItem", "withdrawInvoiceItem", "getInvoiceItem", "listInvoiceItems", "setCustomerMandate", "revokeCustomerMandate", "getArticle", "listArticles", "lookupArticleByCode", "listLocations", "getStock", "listStock", "listStockMovements", "createWebhook", "updateWebhook", "deleteWebhook", "listWebhooks", "sendWebhookTest", "rotateWebhookSecret", "listWebhookDeliveries", "createArticle", "updateArticle", "deactivateArticle", "receiveGoods", "transferStock", "recordStockLoss", "changeStockCondition", "reverseStockMovement", "createReservation", "extendReservation", "releaseReservation", "getReservation", "listReservations", "createVariantGroup", "updateVariantGroup", "getVariantGroup", "listVariantGroups", "addVariant", "createStocktake", "listStocktakes", "getStocktake", "listStocktakeItems", "recordStocktakeCount", "voidStocktakeCount", "listStocktakeCounts", "reviewStocktake", "recountStocktake", "closeStocktake", "cancelStocktake", "getStocktakePdf", "orderSignatureCard", "getSignatureCardOrder", "listReceipts", "createDepExport", "getDepExport", "getDepExportFile", "createDepHandoverLink", "revokeDepHandoverLink"];
|
|
25
25
|
/**
|
|
26
26
|
* Die Endpunkte des Kassenwegs (`https://kasse.kasseneck.at/api/v3/<name>`,
|
|
27
27
|
* Web-Kasse: gleicher Ursprung `/api/v3`), in der Reihenfolge von
|
|
28
|
-
* `endpoints.register`.
|
|
29
|
-
* sie trotzdem ueber diesen Weg (ein Dialekt
|
|
28
|
+
* `endpoints.register`. Elf davon sind zugleich oeffentlich (sechs Beleg-Aufrufe und
|
|
29
|
+
* die fuenf DEP-Aufrufe); die Kasse ruft sie trotzdem ueber diesen Weg (ein Dialekt
|
|
30
|
+
* je Client, Nachtrag §5.2).
|
|
30
31
|
*/
|
|
31
|
-
export declare const POS_CALLS: readonly ["pairRegisterDevice", "listRegisterUsersForDevice", "listRegisterSessionsForDevice", "registerUserLogin", "registerPinLogin", "renewRegisterSession", "endRegisterSession", "unpairRegisterDevice", "listMyCashregisters", "listMyReceipts", "getReceipt", "createReceipt", "generateFullReceiptId", "cancelReceipt", "sendReceiptEmail", "listMyArticleGroups", "listMyArticles", "getKasseSettings", "setMyKasseSettings", "setMyKasseLogo", "setMyRegisterDeviceSettings", "listMyPrinters", "createPrintJob", "getPrintJob", "listMyTipRecipients", "listMyStockLocations", "listMyStock", "setMyCashregisterStockLocation", "listMyStocktakes", "listMyStocktakeItems", "listMyStocktakeCounts", "recordMyStocktakeCount", "voidMyStocktakeCount", "checkVoucher", "reprintVoucherLabel", "getMyDrawerState", "openMyShift", "recordMyCashMovement", "logMyDrawerOpenings", "getMyShiftReport", "closeMyShift", "logReceiptOutputs"];
|
|
32
|
+
export declare const POS_CALLS: readonly ["pairRegisterDevice", "listRegisterUsersForDevice", "listRegisterSessionsForDevice", "registerUserLogin", "registerPinLogin", "renewRegisterSession", "endRegisterSession", "unpairRegisterDevice", "listMyCashregisters", "listMyReceipts", "getReceipt", "createReceipt", "generateFullReceiptId", "cancelReceipt", "sendReceiptEmail", "listMyArticleGroups", "listMyArticles", "getKasseSettings", "setMyKasseSettings", "setMyKasseLogo", "setMyRegisterDeviceSettings", "listMyPrinters", "createPrintJob", "getPrintJob", "listMyTipRecipients", "listMyStockLocations", "listMyStock", "setMyCashregisterStockLocation", "listMyStocktakes", "listMyStocktakeItems", "listMyStocktakeCounts", "recordMyStocktakeCount", "voidMyStocktakeCount", "checkVoucher", "reprintVoucherLabel", "getMyDrawerState", "openMyShift", "recordMyCashMovement", "logMyDrawerOpenings", "getMyShiftReport", "closeMyShift", "logReceiptOutputs", "createDepExport", "getDepExport", "getDepExportFile", "createDepHandoverLink", "revokeDepHandoverLink"];
|
|
32
33
|
export type PublicCall = typeof PUBLIC_CALLS[number];
|
|
33
34
|
export type PosCall = typeof POS_CALLS[number];
|
|
34
35
|
/**
|
|
@@ -99,3 +100,5 @@ export type InternerTransport = <T = unknown>(functionName: ApiCall, params?: Re
|
|
|
99
100
|
export type InternerBinaerTransport = (functionName: ApiCall, params?: Record<string, unknown>) => Promise<Uint8Array>;
|
|
100
101
|
/** Wie `createPdfOrDataTransport` (transport.ts), nur mit bekanntem Aufrufnamen. */
|
|
101
102
|
export type InternerPdfOderDatenTransport = (functionName: ApiCall, params?: Record<string, unknown>) => Promise<PdfOrData>;
|
|
103
|
+
/** Wie `createFileOrDataTransport` (transport.ts), nur mit bekanntem Aufrufnamen. */
|
|
104
|
+
export type InternerDateiOderDatenTransport = (functionName: ApiCall, params?: Record<string, unknown>, options?: FileOrDataCallOptions) => Promise<FileOrData>;
|
|
@@ -5,6 +5,8 @@ export const ALL_CALLS = [
|
|
|
5
5
|
'createCreditNote',
|
|
6
6
|
'createCustomer',
|
|
7
7
|
'createCustomerCashregister',
|
|
8
|
+
'createDepExport',
|
|
9
|
+
'createDepHandoverLink',
|
|
8
10
|
'createPartnerCustomer',
|
|
9
11
|
'checkPartnerCustomerEmail',
|
|
10
12
|
'createPartnerWebhook',
|
|
@@ -21,6 +23,8 @@ export const ALL_CALLS = [
|
|
|
21
23
|
'getCustomer',
|
|
22
24
|
'getCustomerCredentials',
|
|
23
25
|
'getCustomerSignatureStatus',
|
|
26
|
+
'getDepExport',
|
|
27
|
+
'getDepExportFile',
|
|
24
28
|
'getFirstReceiptDate',
|
|
25
29
|
'getInvoice',
|
|
26
30
|
'getInvoicePdf',
|
|
@@ -59,6 +63,7 @@ export const ALL_CALLS = [
|
|
|
59
63
|
'renewRegisterSession',
|
|
60
64
|
'reportCustomerContract',
|
|
61
65
|
'requestCustomerSignature',
|
|
66
|
+
'revokeDepHandoverLink',
|
|
62
67
|
'searchCustomers',
|
|
63
68
|
'sendPartnerCustomerFonLink',
|
|
64
69
|
'sendPartnerWebhookTest',
|
|
@@ -265,12 +270,19 @@ export const PUBLIC_CALLS = [
|
|
|
265
270
|
'getSignatureCardOrder',
|
|
266
271
|
// Belege einer Kasse auflisten, nur unter /v3 (Nachfolger von getReportV2 fuer Listen).
|
|
267
272
|
'listReceipts',
|
|
273
|
+
// DEP-Export fuer die Kassennachschau (Kassen-Token), nur unter /v3.
|
|
274
|
+
'createDepExport',
|
|
275
|
+
'getDepExport',
|
|
276
|
+
'getDepExportFile',
|
|
277
|
+
'createDepHandoverLink',
|
|
278
|
+
'revokeDepHandoverLink',
|
|
268
279
|
];
|
|
269
280
|
/**
|
|
270
281
|
* Die Endpunkte des Kassenwegs (`https://kasse.kasseneck.at/api/v3/<name>`,
|
|
271
282
|
* Web-Kasse: gleicher Ursprung `/api/v3`), in der Reihenfolge von
|
|
272
|
-
* `endpoints.register`.
|
|
273
|
-
* sie trotzdem ueber diesen Weg (ein Dialekt
|
|
283
|
+
* `endpoints.register`. Elf davon sind zugleich oeffentlich (sechs Beleg-Aufrufe und
|
|
284
|
+
* die fuenf DEP-Aufrufe); die Kasse ruft sie trotzdem ueber diesen Weg (ein Dialekt
|
|
285
|
+
* je Client, Nachtrag §5.2).
|
|
274
286
|
*/
|
|
275
287
|
export const POS_CALLS = [
|
|
276
288
|
'pairRegisterDevice',
|
|
@@ -320,6 +332,12 @@ export const POS_CALLS = [
|
|
|
320
332
|
'closeMyShift',
|
|
321
333
|
// Ausgaben eines Belegs melden: nur ueber den Kassenweg.
|
|
322
334
|
'logReceiptOutputs',
|
|
335
|
+
// DEP fuer die Kassennachschau (Stufe 2): zugleich oeffentlich; an der Kasse nur fuer den Chef (manager_only).
|
|
336
|
+
'createDepExport',
|
|
337
|
+
'getDepExport',
|
|
338
|
+
'getDepExportFile',
|
|
339
|
+
'createDepHandoverLink',
|
|
340
|
+
'revokeDepHandoverLink',
|
|
323
341
|
];
|
|
324
342
|
/**
|
|
325
343
|
* Die Aufrufe **mit Wirkung**, alphabetisch: sie legen etwas an, aendern oder
|
|
@@ -449,6 +467,15 @@ export const CALLS_WITHOUT_EFFECT = Object.freeze({
|
|
|
449
467
|
getCustomer: 'read',
|
|
450
468
|
getCustomerCredentials: 'read',
|
|
451
469
|
getCustomerSignatureStatus: 'read',
|
|
470
|
+
// DEP-Export: ein verlorener Ausgang ist harmlos wiederholbar. createDepExport ist mit requestId idempotent, ohne nur
|
|
471
|
+
// doppelt (Grenze 20 je Tag, keine Buchung). createDepHandoverLink erzeugt bei Wiederholung einen zweiten Link (der
|
|
472
|
+
// alte steht in getDepExport().handoverLinks und ist widerrufbar; Preis hoechstens too_many_links). revokeDepHandoverLink
|
|
473
|
+
// ist idempotent.
|
|
474
|
+
createDepExport: 'repeatable',
|
|
475
|
+
createDepHandoverLink: 'repeatable',
|
|
476
|
+
revokeDepHandoverLink: 'repeatable',
|
|
477
|
+
getDepExport: 'read',
|
|
478
|
+
getDepExportFile: 'read',
|
|
452
479
|
getFirstReceiptDate: 'read',
|
|
453
480
|
getInvoice: 'read',
|
|
454
481
|
getInvoiceItem: 'read',
|