Mapping-Datei
Die Mapping-Datei ist eine YAML-Datei, die mit --map übergeben wird. Sie sagt der CLI, welche CSV-Spalten gelesen werden und welche Defaults gelten.
Minimales Mapping
columns:
vatId: "VatId"
defaults:
checkType: standard
columns.vatId ist erforderlich. Der Prüftyp ist ebenfalls erforderlich, entweder in YAML oder auf der Kommandozeile.
Vollständiges Beispiel
columns:
vatId: "VatId"
name: "CompanyName"
street: "Street"
zip: "PostalCode"
city: "City"
customColumns:
customer_number: "CustomerNumber"
cost_center: "CostCenter"
input:
delimiter: ";"
encoding: "utf-8"
hasHeader: true
skipRows: 0
quoteChar: "\""
trimWhitespace: true
output:
delimiter: ";"
encoding: "utf-8"
bom: true
columns:
- row
- customer_number
- vat_id
- vat_id_status
- checked_at
defaults:
checkType: standard
retryDuration: None
pdf: false
sign: false
transliteration: false
notify: false
sendPdfByEmail: false
filter:
skipEmptyVatId: true
folder:
pattern: "*.csv"
minAge: 0
onDuplicate: skip
retry: false
Top-Level Keys
| Key | Typ | Default | Beschreibung |
|---|---|---|---|
columns | Object | leer | API-Validierungsfeld-Mappings. |
customColumns | Object | leer | Lokale Passthrough-Spalten, die in die Ergebnis-CSV kopiert werden. |
input | Object | siehe unten | Optionen für das Einlesen der Eingabe-CSV. |
output | Object | siehe unten | Optionen für das Schreiben der Ergebnis-CSV. |
defaults | Object | siehe unten | Standardoptionen für Prüfung und API. |
filter | Object | siehe unten | Optionen zum Überspringen von Zeilen. |
folder | Object | siehe unten | Folder-Mode-Optionen. |
columns
| Key | Typ | Default | Beschreibung |
|---|---|---|---|
vatId | String | required | Eingabespalte mit der USt-IdNr. |
name | String | nicht gesetzt | Spalte für Unternehmensname. |
street | String | nicht gesetzt | Straßenspalte. |
zip | String | nicht gesetzt | Postleitzahlspalte. |
city | String | nicht gesetzt | Stadtspalte. |
Verwenden Sie Headernamen, wenn die CSV einen Header hat. Verwenden Sie 1-basierte Spaltenindizes, wenn --no-header oder input.hasHeader: false verwendet wird.
customColumns
customColumns ordnet Ergebnis-CSV-Spaltennamen Eingabe-CSV-Spalten zu.
customColumns:
customer_number: "CustomerNumber"
Diese Werte werden in die Ergebnis-CSV kopiert. Sie werden nicht an die API gesendet und beeinflussen Resume-Hashes nicht.
Benutzerdefinierte Ausgabenamen dürfen nicht leer sein und dürfen nicht mit reservierten Ergebnisspalten wie vat_id_status kollidieren.
input
| Key | Typ | Default | Beschreibung |
|---|---|---|---|
delimiter | String | automatisch erkannt | Eingabe-CSV-Trennzeichen. Wenn weder CLI noch YAML es konfigurieren, erkennt die CLI es automatisch. |
encoding | String | utf-8 | Unterstützte Werte: utf-8, windows-1252, iso-8859-1. |
hasHeader | Boolean | true | Ob die CSV eine Headerzeile hat. |
skipRows | Number | 0 | Zeilen, die vor Header oder Datensätzen übersprungen werden. |
quoteChar | Einzelnes Zeichen | " | Quote-Zeichen des CSV-Parsers. |
trimWhitespace | Boolean | true | Whitespace um geparste Felder trimmen. |
output
| Key | Typ | Default | Beschreibung |
|---|---|---|---|
delimiter | String | ; | Ergebnis-CSV-Trennzeichen. |
encoding | String | utf-8 | Unterstützte Werte: utf-8, windows-1252, iso-8859-1. |
bom | Boolean | true | BOM für das Ausgabe-Encoding schreiben. |
columns | List | Standard-Ergebnisspalten | Ergebnis-CSV-Spalten oder Shortcuts auswählen. |
defaults
| Key | Typ | Default | Beschreibung |
|---|---|---|---|
checkType | standard oder qualified | nicht gesetzt | Standardprüftyp. Erforderlich, sofern nicht per CLI-Option gesetzt. |
transliteration | Boolean | false | Transliteration aktivieren. |
pdf | Boolean | false | PDF-Ausgabe anfordern. |
sign | Boolean | false | PDF digital signieren. Erfordert PDF-Ausgabe. |
pdfDir | String | nicht gesetzt | Ordner für gespeicherte PDFs. |
pdfTimestamp | Boolean | false | Zeitstempel zu PDF-Dateinamen hinzufügen. |
companyVatId | String | nicht gesetzt | Eigene USt-IdNr. für die Validierung. |
notify | Boolean | false | Die API bitten, eine Benachrichtigungs-E-Mail zu senden. |
sendPdfByEmail | Boolean | false | Die API bitten, das PDF per E-Mail zu senden. Erfordert PDF-Ausgabe. |
retryDuration | Duration | None | None, OneHour, TwoHours, FourHours, EightHours, TwentyFourHours. |
filter
| Key | Typ | Default | Beschreibung |
|---|---|---|---|
skipEmptyVatId | Boolean | true | Zeilen überspringen, in denen die USt-IdNr. leer ist. |
skipPattern | Regex string | nicht gesetzt | Zeilen überspringen, deren USt-IdNr. dem Regex entspricht. |
Übersprungene Zeilen werden mit Status SKIPPED in die Ergebnis-CSV geschrieben.
folder
| Key | Typ | Default | Beschreibung |
|---|---|---|---|
pattern | Glob | *.csv | Dateien, die aus dem Ordnerstamm ausgewählt werden. |
minAge | Number | 0 | Mindestalter einer Datei in Sekunden vor der Verarbeitung. |
onDuplicate | skip, overwrite, rename | skip | Behandlung doppelter Dateien bei Folder-Mode-Verschiebungen. skip behält das vorhandene Ziel, overwrite ersetzt es, und rename behält beide Dateien mit Zeitstempel. |
retry | Boolean | false | Fehlgeschlagene CSV-Dateien aus error für einen weiteren Versuch zurück in die Inbox verschieben. Wiederholte Dateien starten eine neue Validierungsoperation. |
cleanupDoneAfterDays | Number | nicht gesetzt | Alte Dateien und State-Dateien aus done löschen. |