fiskaltrust / fiskaltrust/docs
KBA to docs: general documentation
- Dominant language
- MDX
- Stars
- 0
- Forks
- 0
- Avg merge
- 5d 15h
- Merged PRs (30d)
- 18
Description
Carries the **general-documentation bucket** for the knowledge base migration: every concept from the market exports that is not actually market-specific.
Per the placement rule on #105, a concept that is not market-specific belongs in the general documentation, not in a market chapter — even when it arrived through a single market's export. The export tells you which market an article was *filed under*, not which market it is *about*.
This issue exists so those items live in one place instead of being repeated in every market sub-issue. The market sub-issues (#106, #107, #108) now point here and keep only what is genuinely national.
## Why this is a sub-issue and not part of each market
Around a third of the surviving content is cross-market, and it duplicates heavily: Austria's *endpoint already in use* and Germany's *launcher could not register URL* are the same bug, Austria's plus-addressing article and Germany's are the same article, Austria's decommissioning article and Germany's are the same concept. Written once here, each serves all markets, including the ones whose exports have not been processed yet.
Deduplicating across AT and DE collapsed 30 listed items into the 21 below.
---
## Already done
Merged from the French export in #109. Listed so this issue is a complete picture of the general bucket.
- [x] Component parameters and timeouts — `middleware/configuration.md`
- [x] Connection closed while sending — `troubleshooting/network-troubleshooting.md`
- [x] Quotation marks break the templating JsonParser — `rollout-automation/api-templating.md`
- [x] Postal codes outside AT/DE/FR, and withdrawing an invitation — `operator-onboarding/invitation-process.md`
- [x] Re-login after permission changes, and the HTTP 500 / cannot-act-as-operator case — `getting-started/registration.md`
- [x] Basic receipt check — `troubleshooting/cashbox-failures.md`, cross-linked from `maintenance/proactive-actions.md`
- [x] Read-only access for financial auditors — `maintenance/exports.md`
- [x] Terminal Server and Hyper-V — `middleware/supported-environments.md`
- [x] PosSystem certificates — `poscreators/getting-started/onboarding-posdealers.md`
- [x] Middleware startup failures — new page `troubleshooting/middleware-startup-failures.md`
- [x] Data categories, processing and storage locations — `business-basics/legal-data-protection/data-protection.md`
- [x] Receipt obligation for returns — `middleware-doc/general/receipt-case-definitions`
- [x] SCU not active until a start receipt — `troubleshooting/middleware-startup-failures.md`
- [x] Postman against a cloud CashBox — `poscreators/getting-started/middleware-integration.md`
- [x] On-premise storage and Entity Framework — `middleware-doc/general/operation-modes`
## To do
Grouped by target page, so each group is one sitting's work.
### `troubleshooting/middleware-startup-failures.md`
- [ ] **Endpoint already in use** — the launcher cannot bind a port because another process holds it. Identify it with `netstat -ano`, then either stop it or move the component to another port. *(AT KA-01074, DE KA-01126)*
- [ ] **`System.BadImageFormatException` / `DllNotFoundException: WormAPI`** during automatic package installation — disk space, a virus scanner blocking extraction, or a damaged .NET installation. *(DE KA-01137)*
### `middleware/supported-environments.md`
- [ ] **Windows prerequisites** — the **Visual C++ Redistributable** alongside .NET 4.8. The page names .NET but not the redistributable, and `Type is not resolved for member` is the symptom when it is missing. *(DE KA-01085)*
### `middleware/logging.md`
- [ ] **Debug launcher** — a build of the launcher that produces more detailed logs, and how to swap it in and back out. *(AT KA-01062)*
- [ ] **Memory dump on Windows** — the page already tells readers Support may ask for one, but not how to produce it. *(DE KA-01064)*
### `middleware/cashbox.md`
- [ ] **Where to find the CashBoxId and AccessToken**, and the URL to give the POS software. *(AT KA-01084)*
- [ ] **Deleting or hiding configuration data**. *(DE KA-01160)*
- [ ] **Queue status** — what the states mean. *(DE KA-01125)*
- [ ] **Decommissioning a register** — the closing receipt, and that it **cannot be undone**. The mechanism is general; the tax-office reporting around it is national and stays in the market chapters. *(AT KA-01080, DE KA-01168)*
### `middleware/helper.md`
- [ ] **Chaining a REST helper to a PosApi helper** with the `target_url` and `client_` custom configuration, so a receipt uploads immediately and its digital-receipt link is available at once. *(AT KA-01109)*
### `middleware/launchers/cloudcashbox.md`
- [ ] **Restarting a CloudCashbox** by sending an `Echo` with an empty message. Documented independently in two exports (DE KA-01149, and the tail of FR KA-01003), which is good evidence it is general behaviour. *(DE KA-01149, FR KA-01003)*
- [ ] **Moving from a local Middleware to a CloudCashbox** — JSON only, one CloudCashbox per outlet, unique TerminalID and receipt numbers across the outlet rather than per till, and why an offline-capable POS is a poor fit. *(AT KA-01125)*
### `middleware/launchers/custom-data-center.md`
- [ ] **Bring-your-own-Data-Center diagnostics** — memory dumps, and the `kubectl` / `helm` commands to collect logs from the cluster. *(DE KA-01082, KA-01090)*
### `middleware-doc/general/operation-modes`
- [ ] **Custom storage connection** — extends the *On-premise storage* section added in #109. *(DE KA-01116)*
### `operator-onboarding/invitation-process.md`
- [ ] **CSV import fails on the Windows list separator** — the import needs `;`, and the regional setting decides what Excel writes. Belongs beside the postal-code content already merged. *(DE KA-01097)*
- [ ] **Linking a dealer and an operator when the standard invitation will not work** — the operator is already registered, or is changing dealer. Note the warning that the link should be made from one side only. *(DE KA-01151, AT KA-01093)*
- [ ] **Inviting an operator, and invitation failures** — check against what the page already covers after the French merge; this may reduce to very little. *(AT KA-01095, KA-01099)*
### `getting-started/registration.md`
- [ ] **Plus-addressing** for one person who needs access to several company accounts, and the caveat that acceptance depends on the mail provider. *(AT KA-01106, DE KA-01016)*
- [ ] **Which address order confirmations and invoices are sent to**, and how to change it. *(AT KA-01105)*
### `getting-started/sandbox.md`
- [ ] **What the sandbox is for** — testing invitations, configurations and rollouts safely, given that mail addresses are single-use and cashboxes and queues cannot be deleted once created. *(DE KA-01007)*
### `buy-resell/subscription-management.md`
- [ ] **Ending a subscription** — irreversible, and repurchase is the only way back. *(AT KA-01087)*
- [ ] **Managing subscriptions** — the overview, its filters, and automatic renewal. *(AT KA-01110)*
### `buy-resell/rollout-plans.md`
- [ ] **Buying products through rollout management.** *(AT KA-01107)*
- [ ] **When an order fails** — the order-process phase table (status codes 10–70 and what to verify at each) and the customer-facing error messages: `Not enough entitlements`, `there is already a subscription`, `Shipping has failed`, and the fiskaly `taxNumber must be filled` case. Extracted from an otherwise internal article. *(DE KA-01089, partial)*
- [ ] **Checking your own entitlements** — `Shop → Entitlements → Entitlement history`, so a dealer can verify their position without D365 access. Extracted from an otherwise internal article. *(DE KA-01037, partial)*
### `technical-operations/`
- [ ] **Moving a POS system to new hardware** — back up the service folder, carry the launcher across, restart. General procedure; the caveat that a Swissbit or Deutsche Fiskal Cloud TSE cannot be moved is German and stays in #108. *(DE KA-01029)*
- [ ] **Solving performance problems** — 8,698 chars, the largest general-bucket item; needs reading before a target page is chosen. *(DE KA-01124)*
- [ ] **Displaying old receipts in the portal.** *(DE KA-01166)*
### Receipt and time semantics
- [ ] **The Middleware works in UTC internally**, matching the TSE, so a divergence from the printed receipt is intentional rather than a bug. The behaviour is general; the DSFinV-K justification is German. *(DE KA-01150)*
- [ ] **Negative receipt time.** *(DE KA-01167)*
## Notes
- Nothing here should land in a `_markets/**` partial. If an item turns out to need a national caveat, the caveat goes in the market chapter and the concept stays here.
- Several of these will shrink once read against the current docs — the invitation items in particular, since `invitation-process.md` absorbed the French versions in #109 and is already thorough.
- Germany and Italy each carry their own `on-premise-databases/entity-framework.md`, which now duplicates the general *On-premise storage* section. Folding those in is out of scope for the migration but would fit naturally with the storage item above.
Contributor guide
Research direction
Start by reading the target pages listed in each unchecked group, especially troubleshooting/middleware-startup-failures.md and middleware/cashbox.md, then compare the referenced export items with the current docs. Work through one target-page group at a time; done means the general concepts are documented without duplicating market-specific caveats and the checklist items are completed.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- markdown
- Domain
- documentation
- Issue type
- Documentation
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100