Direkt · Express · Overnight · ganze Schweiz
Schwarzer VW Tiguan R auf einer Alpenstrasse bei Sonnenuntergang für direkte Kurierfahrten
VW Tiguan R · 320 PS4MOTION · diskret · direkt unterwegs
EXPRESS KURIER · DIREKT · MO–SO
Kurierdienst Schweiz.
Express Kurier. Direkt.
Auch Overnight.

x25pronto Schweiz bringt Ware direkt ans Ziel. Für kleine Ware fährt ein Auto. Für mehr Platz gibt es Transporter oder XL. Direkt, Express und Overnight fahren von Montag bis Sonntag. Freie Zeiten stehen im Kalender.

Direktfahrt Mo–SoOvernight Mo–SoAuto & Transporter bis 1’000 kg
KURIERWISSEN

Vorlage: CSV-Importschema und Python-Skript für Abrufkontingente

Konkretes CSV-Format und ein Python-Beispiel, um Abrufkontingente zu prüfen und sicher in ein ERP hochzuladen. Fokus: einfache Integration in Swiss-IT-Umgebungen.

Kurzantwort

Hier finden Sie ein klares CSV-Importschema und ein praktisches Python-Skript, das Abrufkontingente lokal validiert und per API in Ihr ERP-System oder Ihr internes Backend hochlädt. Das Beispiel prüft Format, Pflichtfelder, Datentypen und einfache Geschäftsregeln, bevor es die Datei sendet. Es eignet sich für Schweizer Logistik- und Beschaffungsprozesse und lässt sich an eigene ERP-Endpunkte anpassen.

Worum es geht

Viele Firmen verwalten Abrufkontingente in Tabellen. Für Automatisierung brauchen Sie ein klares CSV-Format und robuste Prüfungen. Dieses Tutorial zeigt: ein einfaches Sche­ma, Validierungsregeln und ein Python-Skript für Upload via REST. Ziel: weniger Fehler, schnellerer Import in Ihr ERP in Zürich, Basel oder Genf.

Empfohlenes CSV-Importschema

Kopfzeile (Reihenfolge empfohlen): - contract_id: string, Pflicht - sku: string, Pflicht - supplier_id: string, Pflicht - start_date: ISO-8601 (YYYY-MM-DD), Pflicht - end_date: ISO-8601 (YYYY-MM-DD), optional - quantity_total: integer ≥ 0, Pflicht - quantity_available: integer ≥ 0 ≤ quantity_total, Pflicht - location_code: string (optional, z. B. CH-ZIP oder Standort-ID) - notes: optional Speichern Sie als UTF-8 ohne BOM. Dezimaltrennzeichen: Punkt. Datum im ISO-Format für einfache Parsing und länderverträgliche Verarbeitung.

Kernregeln zur Validierung

Prüfen Sie Datei-Grundlagen: UTF-8, Kopfzeile vorhanden, keine leeren Zeilen. Validieren Sie pro Zeile: - Pflichtfelder vorhanden und nicht leer - Datentypen (integer, string, date) - Zahlenbereiche: quantity_total ≥ 0, quantity_available zwischen 0 und quantity_total - Datumslogik: start_date ≤ end_date (wenn end_date gesetzt) - Eindeutigkeit: Kombination contract_id + sku sollte in einer Batch-Datei nicht mehrfach vorkommen Fehlerhafte Zeilen melden, nicht automatisch überschreiben.

Python-Beispiel: Struktur und Verhalten

Das Skript ist bewusst einfach und in drei Teile geteilt: 1) Einlesen und Basis-Parsing mit csv.DictReader 2) Validierung mit klaren Fehlermeldungen pro Zeile 3) Zusammensetzen eines JSON-Payloads und Upload per HTTP POST mit Requests Das Skript gibt bei Validierungsfehlern eine Zusammenfassung aus und sendet nur, wenn alle Zeilen valide sind. Sie können Hooks einbauen, z. B. Vorab-Checks gegen Ihr ERP via API.

Sicherheit, Fehlerbehandlung und Idempotenz

Nutzen Sie HTTPS für Uploads und API-Keys oder OAuth für Authentifizierung. Implementieren Sie Idempotenz-Keys (z. B. batch_id und timestamp) beim POST, damit wiederholte Requests nicht zu doppelten Kontingenten führen. Protokollieren Sie Sendeversuche und Antworten. Bei 4xx-Fehlern prüfen Sie Nutzdaten; bei 5xx-Fehlern planen Sie Retry mit Exponential Backoff.

Anpassung an Ihr ERP in der Schweiz

ERP-Systeme (z. B. Abacus, SAP Business One, Bexio oder ein internes System) verlangen oft leicht andere Feldnamen oder Endpunkte. Passen Sie Header-Namen, Felder und den JSON-Wrapper an. Bauen Sie einen Mapping-Layer: CSV-Feld → internes Feld → API-Feld. Testen Sie zuerst in einer Staging-Umgebung, z. B. einem lokalen Test-Endpoint oder einer Sandbox Ihres Anbieters.

Häufige Fragen

Wie teste ich das Skript lokal bevor ich in Produktion sende?

Führen Sie das Skript gegen eine lokale Mock-API, etwa ein kleines Flask- oder FastAPI-Endpoint, das erwartete JSON prüft. Alternativ nutzen Sie Tools wie Postman oder eine Sandbox Ihres ERP-Anbieters.

Was tun bei fehlenden Pflichtdaten in vielen Zeilen?

Exportieren Sie die fehlerhaften Zeilen in eine separate Datei, ergänzen die fehlenden Werte manuell oder per Skript und führen die Validierung erneut aus. Automatisches Auffüllen ist nur sinnvoll, wenn Regeln zuverlässig sind.

Wie verhindere ich doppelte Uploads derselben Datei?

Generieren Sie eine Batch-ID (z. B. Hash der Datei + Timestamp) und senden diese mit. Ihr ERP kann damit wiederholte Uploads erkennen. Zusätzlich: prüfen Sie auf serverseitige Idempotenz-Logik.

Kann ich mehrere Standorte in einer Datei verwalten?

Ja, verwenden Sie das Feld location_code und dokumentieren die gültigen Standort-IDs. Validieren Sie location_code gegen eine Referenztabelle, um Tippfehler zu vermeiden.

Kurz erklärt: Vorlage: CSV-Importschema und Python-Skript für Abrufkontingente

Die wichtigsten Punkte aus diesem Beitrag. Über die Links gelangen Sie direkt zur Erklärung.

Worum es geht Viele Firmen verwalten Abrufkontingente in Tabellen. Im Beitrag lesen

Empfohlenes CSV-Importschema Datum im ISO-Format für einfache Parsing und länderverträgliche Verarbeitung. Im Beitrag lesen

Kernregeln zur Validierung Prüfen Sie Datei-Grundlagen: UTF-8, Kopfzeile vorhanden, keine leeren Zeilen. Im Beitrag lesen

Python-Beispiel: Struktur und Verhalten Das Skript ist bewusst einfach und in drei Teile geteilt: Im Beitrag lesen

Sicherheit, Fehlerbehandlung und Idempotenz Nutzen Sie HTTPS für Uploads und API-Keys oder OAuth für Authentifizierung. Im Beitrag lesen