Zum Hauptinhalt springen

HS-Codes (Zolltarif)

Zweck

HsCode modelliert das Harmonized System (HS) — eine internationale, hierarchische Klassifizierung von Produkten für Zoll, Statistik und Aussenhandel. Pro Code wird code (Roh-Code), formattedCode (mit Punkten/Trennern), name, level (Hierarchie-Tiefe), codeType und der parentCode-Verweis gepflegt.

Die meisten Felder sind disabled (read-only) — der Standard-HsCode-Stamm wird über den Setup-Wizard oder Sync-Job in die Mandanten-DB geladen. Eigene Codes koennen über isStandard = false ergaenzt werden; masterHsCodeId referenziert dann den Eintrag aus dem Master-Stamm, von dem abgeleitet wurde.

Voraussetzungen

- Berechtigung `view:HsCode`. Anlegen ueblicherweise nur für Sync-Jobs (`create:HsCode`). - Sub-Liste `/hscodes/:id/products` für Produkt-Zuordnung benötigt `view:Product`.

Berechtigungen (CASL)

ActionSubjectWirkungKeycloak-Rolle
viewFE_HsCode, HsCodeListe/Detail aufrufbar
create/update/deleteHsCodePflegen (typisch durch System)APP_SPEAMCORE_CREATE/UPDATE/DELETE_HS_CODE
viewProductProdukt-Sub-Liste pro CodeAPP_SPEAMCORE_VIEW_PRODUCT

Schritt-für-Schritt-Anleitung

Code suchen und Produkt zuordnen

  1. HS-Codes (/hscodes) öffnen — DataGrid mit allen Standard-Codes.
  2. Volltextsuche oder Filter auf level einsetzen, um den passenden Code zu finden.
  3. Detail öffnen → Tab Produkte (/hscodes/:id/products) listet alle Produkte, die diesem Code zugeordnet sind.
  4. Zuordnung erfolgt im Produkt-Detail (Feld hsCodeId).

Eigenen Code anlegen

  1. + Neucode, formattedCode, name, level, codeType pflegen.
  2. isStandard = false setzen — masterHsCodeId zeigt auf den abgeleiteten Master-Code.

Listenansicht — hscodes

Toolbar (Detail-Seite)

Schlanke Toolbar oben rechts:

IconAktion (aria-label)CASLWirkung
ZurückgehenZurück zur Liste.
🏠Zur Startseite gehenSpringt auf das Dashboard / /.
⏮/◀/▶/⏭PaginationNavigation durch die gefilterte Liste — Massen-Bearbeitung ohne Liste-Sprung.

Wie auf jeder Detail-Seite verfuegbar — siehe Floating-Quickbar:

  • KAL. (Mini-Kalender)
  • ZEIT (Persoenliche Wochen-Arbeitszeit)
  • ARBEIT (Eigene bevorstehende Aufträge)

Felder und Eingaben

FeldnamePflichtDatentypWirkung beim AusfuellenVoraussetzung
codejaStringRoh-HS-Code (z. B. 841459).
formattedCodejaStringFormatierter Code (z. B. 8414.59).
namejaStringBezeichnung des Codes.
leveljaIntegerHierarchie-Tiefe (Kapitel/Unterkapitel/...).
codeTypejaStringCode-Typ (z. B. HS, KN).
parentCodeneinStringVerweis auf Eltern-Code.
sectionneinStringAbschnitt im Zolltarif.
isStandardja (read-only für Standard)Booleantrue: aus Master-Stamm. false: eigener Code.
masterHsCodeIdneinUUIDBei isStandard = false: Verweis auf Master-Code.

Wiederverwendbare Konzepte

Verknuepfungen zu anderen Modulen

  • ProdukteProduct.hsCodeId referenziert einen Code. Sub-Liste /hscodes/:id/products.

Häufige Fehler und Lösungen

FehlerLösung
Code fehlt im StammStandard-Stamm-Sync laufen lassen oder eigenen Code mit isStandard = false anlegen.
Hierarchie wirkt unvollstaendigparentCode muss zu vorhandenen Codes verweisen.

API/Schnittstellen

MethodeEndpointZweckCASL
GET/api/hs-codesListeview HsCode
POST/api/hs-codesAnlegencreate HsCode
GET/api/hs-codes/:idDetailview HsCode
PATCH/api/hs-codes/:idÄndernupdate HsCode
DELETE/api/hs-codes/:idSoft-Deletedelete HsCode
GET/api/products?filter[hsCodeId]Produkt-Sub-Listeview Product

Versionshinweise

  • 2026-04-30: Initiale Veroeffentlichung.