fiskaltrust / fiskaltrust/docs

KBA to docs: Austria

Open
#107 0 comments 0 reactions 0 assignees View on GitHub
category-docs category-technical-debt market-at
Dominant language
MDX
Stars
0
Forks
0
Avg merge
5d 15h
Merged PRs (30d)
18

Description

Analysis of the export is complete. Results below. Content work has not started.

## The export

| | `dbo.kbarticle` | `dbo.knowledgearticle` |
|---|---|---|
| Rows / unique articles | 131 / 131 | 249 / **115** |
| Created | 2016–2019, frozen | 2018–2026, active |
| Numbering | `KBA-01019-C4S0X9` (suffixed) | KA-01000…01133 |

One parsing note for whoever picks this up: **the AT CSV is not laid out like FR and DE.** AT matches the `SELECT` column list exactly (`articlepublicnumber` at index 71), while FR and DE are shifted by −2 (index 69). Detect the offset by locating the column that holds the `KA-` values rather than hard-coding it.

**246 articles reviewed.**

## What FR already did for AT

The France pass (#106, PR #109) put a set of market-neutral pages in place, and a good number of AT articles are the same content in German. These need **no new page** — only the Austrian tab of an existing one, or nothing at all:

| AT article | Already covered by |
|---|---|
| KA-01067 postal codes | `invitation-process.md` — identical text to the FR article, already merged |
| KA-01059 Ergebnisse der Belegprüfung | `cashbox-failures.md#basic-receipt-check` — plus AT documents a **reset** function and a **hide-column** setting that the FR article lacked; both are worth adding to the shared page |
| KA-01097 Anmeldung Benutzer Fehler 500 | `registration.md#error-500-at-login-or-a-posoperator-cannot-be-selected` |
| KA-01056 Middleware fails to start (Mono/`$TMPDIR`) | `middleware-startup-failures.md#components-are-not-extracted` — byte-identical to the FR article |
| KA-01027 WinHTTP proxy at boot | `middleware-startup-failures.md#proxy-auto-detection-at-boot` |
| KA-01014 SQLite database | `middleware-startup-failures.md#the-database-is-malformed` |
| KA-01028 Timeouts | `configuration.md#timeouts` |
| KA-01029 offline ↔ online | `configuration.md` |
| KA-01021 EF + SQL | needs an AT equivalent of the FR `operation-modes.md` section |
| KA-01006 Terminal Server / Hyper-V | `supported-environments.md` — AT adds that with a SignaturCard the USB port must be reachable from a machine on the network |
| KA-01074 Launcher error: endpoint already in use | new section for `middleware-startup-failures.md` (`netstat -ano | findstr :`) — market-neutral, benefits all three |

## The legacy set: drop all 131, harvest one

`dbo.kbarticle` is a 2016–2019 working scratchpad, and everything of substance was migrated into `knowledgearticle` in 2018. Verified pairs include Linux compatibility (→ KA-01002), Windows XP (→ KA-01003), WSDL (→ KA-01004), scales (→ KA-01005), Terminal Server (→ KA-01006), UStG vs BAO/RKSV (→ KA-01007), SQLite (→ KA-01014), failure scenarios (KBA-01102, 12,067 chars → KA-01018, 12,027 chars), EF/SQL (→ KA-01021), timeouts (→ KA-01028), WinHTTP proxy (→ KA-01027).

What remains is not documentation:

- **Internal meeting minutes** — KBA-01110, 01113, 01114, 01117 ("Internes Support Meeting 24.2.2017", staff names, open action items).
- **Unfinished business-case drafts** — KBA-01040 to 01075, business cases #28 to #63, all Draft, many under 200 characters, several under 50. Only #17–#27 were ever finished, and those are KA-01032–01040.
- **Marketing collateral** — KBA-01024 (folder PDF), 01026 (workshop presentation, 47 chars), 01083 (WKO presentation).
- **Internal admin** — KBA-01104 (role misassignment, marked `intern`), 01112 (`INTERN - Anlegen eines neuen Mitarbeiters`).

- [ ] **Harvest KBA-01097** — *Sicherungskonzept: Backup der Registrierkassen-Daten nach RKSV*. Three backup tiers (local chained DB, near-real-time RKSV-DEP/E131-DEP cloud upload, revision-proof E-Tresor at A-Trust) mapped to §§ 131/132 BAO. No KA equivalent, and `technical-operations/maintenance/backup-restore.md` is its natural home.

## `knowledgearticle`: disposition

### Discard (≈45)

**Empty (4):** KA-01058, 01061, 01070, 01077.

### 📌 Flagged for an internal knowledge base — not discarded

Held pending a decision on which fiskaltrust repository carries this, and in what form. **Do not delete these from the export.** They describe work inside Dynamics 365 — quotes, price lists, credit limits, repair products, entitlement corrections, case handling — so they do not belong in public documentation, but they are real institutional knowledge that disappears with the KB.

| Article | Subject |
|---|---|
| KA-01057 | Identifying who placed an order, via the D365 timeline |
| KA-01065 | *How to create a KBA* — self-referential, but records the authoring conventions |
| KA-01071 | A-Trust personalisation tool: internal support procedure |
| KA-01076 | Billing according to contract, and subscription renewal |
| KA-01078 | Support case management: queue triage, qualification, SLA |
| KA-01083 | A-Trust smartcard and reader ordering (supplier, stock levels) |
| KA-01085 | Cancellation handling for operators |
| KA-01088 | FinanzOnline *technischer Fehler* — BMF hotline escalation |
| KA-01091 | DEP7/E131 export without a subscription — includes pricing and a quote template |
| KA-01094 | Operator invoiced directly by fiskaltrust |
| KA-01096 | Connecting an operator to a dealer on the operator's behalf |
| KA-01100 | Invoice creation — two full D365 quote walkthroughs |
| KA-01101 | Converting a queue item into a case |
| KA-01102 | Reissuing an invoice with a corrected address |
| KA-01103 | Determining an operator's products |
| KA-01104 | Cashbox setup for one named enterprise customer |
| KA-01113 | Handling operator enquiries, and which accounts fiskaltrust serves directly |
| KA-01115 | GlobalPayment invoicing — contains a SharePoint contract link |
| KA-01119 | Why a KBA title displays incorrectly in the portal |
| KA-01121 | Payment method for automatic renewal invoices |
| KA-01126 | An order combining old FON products with rollout-management products |
| KA-01128 | Invoice for a PayPal payment |
| KA-01133 | Product differences |

⚠️ **KA-01129** (*Error messages during card personalization*, 7,624 chars) needs splitting rather than parking. It is a genuinely good troubleshooting matrix for A-Trust and ft.Card personalisation, but it carries a block marked **"DO NOT GIVE THIS TO PARTNERS/CUSTOMERS!"** with AustriaCard emergency contacts and a 24/7 number, plus source-code references (`atrustViewModel.cs:879`, commit hashes). The error tables are publishable once those are stripped: **merge after redaction**, with the redacted remainder going to the internal KB.

**Obsolete platform material (≈13):** KA-01003 (Windows XP), 01004 (WSDL for Delphi), 01008 (Discarded), 01011 (v0 REST with 2016 PayPal sandbox credentials), 01012 (cashbox creation with 2016 console dumps), 01013 (portal registration), 01019 (firewall, with traffic-manager IP tables that are almost certainly stale), 01031 (Windows 7/XP message size), 01069 (New Products 2023).

### Merge — general documentation → tracked in #110

12 Austrian articles turned out to carry concepts that are not Austrian, so they have moved to **#110**, which carries the general-documentation bucket for all markets. Several of them are the same concept as a German article and have been deduplicated there.

Moved: KA-01062, KA-01074, KA-01080, KA-01084, KA-01087, KA-01093, KA-01095, KA-01099, KA-01105, KA-01106, KA-01107, KA-01109, KA-01110, KA-01125.

Nothing here needs an Austrian tab. If one of them turns out to need a national caveat, the caveat comes back to this issue and the concept stays in #110.

### Merge — Austria-specific, no equivalent in the repo

**A-Trust, smartcards and SCUs** — the largest and most valuable cluster, and the repo has nothing on it:
- [ ] KA-01023 — SCU cannot find the A-Trust smartcard
- [ ] KA-01025 — local Middleware cannot reach the USB card reader
- [ ] KA-01055 — smartcards with expired certificates keep working (RKSV art. 15)
- [ ] KA-01072 — installing the ft.Personalization tool
- [ ] KA-01073 — SCU in failure mode, "no reader number found"
- [ ] KA-01086 — switching from a local to an online signature unit
- [ ] KA-01092 — *"Sicherheitseinrichtung ausgefallen"* on the receipt
- [ ] KA-01111 — replacing a signature card, via the portal's SCU-Tausch workflow
- [ ] KA-01116 — certificate expiry, and the **July 2027 end of technical approval for old signature cards**
- [ ] KA-01120 — identifying which signature unit is in use, by decomposing the DEP7 signature
- [ ] KA-01124 — downloading the certificate of an RK-Online or HSM
- [ ] KA-01129 — personalisation error matrix (after redaction, see above)
- [ ] KA-01132 — SCU package download error at Middleware start

**FinanzOnline** — likewise absent from the repo:
- [ ] KA-01016 — why the portal sends notification emails, the escalation intervals, and how to switch them off
- [ ] KA-01026 — FinanzOnline credentials entered incorrectly
- [ ] KA-01030 — FinanzOnline registration of the online SCU
- [ ] KA-01066 — creating and entering the FinanzOnline **web service user** (not the normal login — the single most common mistake)
- [ ] KA-01098, KA-01114 — registering a register/SCU manually, and where to find the AES key and its check value
- [ ] KA-01118 — a notification failed: reading the error and what to do
- [ ] KA-01131 — setting up FinanzOnline notifications through fiskaltrust

**RKSV compliance and legal** — `_markets/at/overview/legal-data-protection/*` should be checked for the same "details in progress" stubs France had:
- [ ] KA-01010 — consequences of running a non-compliant register: **Finanzordnungswidrigkeit up to €5,000, repeatable**, plus estimation of the tax base. The Austrian counterpart of the French €7,500 penalty already merged into `_compliance.mdx`.
- [ ] KA-01015 — receipts are mandatory for cancellations and negative amounts (one line, same as FR)
- [ ] KA-01007 — invoice under UStG vs receipt under BAO and RKSV, with a full comparison table of mandatory fields. Substantial reference material; belongs in the AT PosCreator docs.
- [ ] KA-01017 — mobile data capture outside the business premises (§ 7 BarUV 2015)
- [ ] KA-01018 — failure scenarios: SCU failure, security-mechanism failure, register failure, with the `ftState` bits, the 48-hour rule and late-recording mode. Maps onto the existing AT `failure-scenario` material.
- [ ] KA-01108 — what an RKSV tax audit actually involves. Reads as an auditor-facing counterpart to the FR auditor section now in `exports.md`.
- [ ] KA-01005 — scales and registers (Kassenwaage)

**Exports:**
- [ ] KA-01081 — accessing DEP7 and E131 exports, and the subscription that gates them
- [ ] KA-01082 — downloading the start, monthly and annual receipt
- [ ] KA-01130 — DEP7 export unavailable / POSArchiv missing on the queue

**Portal and operations:**
- [ ] KA-01079 — renaming, restructuring or taking over a company
- [ ] KA-01112 — ⏰ **4.9 % VAT rate from 1 July 2026**: `ftChargeItemCase` `0x4154000000000004` (v0) / `0x4154200000000004` (v2), booked in *Betrag-Satz-Besonders*. **Time-critical and forward-looking — this one should not wait for the rest of the migration.**
- [ ] KA-01123 — link collection for new PosCreators; check it against the current docs structure, then drop it in favour of the real navigation

### FAQ — covered by the docs, worth surfacing as questions
KA-01127 (deploying a cashbox for a location) · KA-01067 (postal codes — already merged from the French export) · KA-01123 (link collection, once checked against the current navigation)

### Process workflows, deferred
KA-01018 (failure scenarios) · KA-01086 (local → online SCU) · KA-01111 (card replacement) · KA-01125 (local → CloudCashbox) · KA-01079 (company restructuring) · KA-01080 (decommissioning)

## Open items needing a human

1. ✅ **KA-01112, the 4.9 % VAT rate from 1 July 2026** — **with the AT team.** The article is conditional on the law passing (*"Vorbehaltlich eines Gesetzesbeschlusses"*); the AT team confirms the status and the resulting guidance.
2. **KA-01116, July 2027** — end of technical approval for old signature cards. Confirm the date before publishing it.
3. **KA-01010, the €5,000 Finanzordnungswidrigkeit** and the €7,500 / €15,000 turnover thresholds — 2018 vintage.
4. **KA-01055** lists tested SCU package versions from 2017–2019. Publish the behaviour, drop the version list.
5. **KA-01019** firewall hosts and traffic-manager IP ranges are from 2018 and conflict in style with the current `network-requirements.md`. The repo wins; check whether any AT-only host is missing from it.
6. **KA-01129** — confirm the redaction boundary before any of it is published.

Contributor guide

Open the contributing guide

Research direction

Start with the disposition tables and the existing Austrian paths under _markets/at/overview/legal-data-protection/, plus technical-operations/maintenance/backup-restore.md. Review the listed knowledge articles against the current docs and issue #110, then separate public documentation from internal material and deferred decisions. Done means each actionable article has a documented destination or an explicit human decision.

Written by the indexing model from the issue text.

Assessment

Domain
content, documentation
Issue type
Documentation
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.