Wróć do projektów
KSeFWMSIntegrationCNCOEM2026

KSeF + etykiety WMS dla podwykonawcy CNC zagranicznego OEM-a - repeat business po KSeF

Klient: producent CNC dla zagranicznego OEM-a, MŚP z mazowieckiego. Najpierw zgłosili się z KSeF na deadline ustawowy. Po stabilnym wdrożeniu wrócili z drugim tematem: etykietami w formacie ich odbiorcy. Dwa odrębne projekty. Wszystko zrobiłem jako warstwę-pomost nad ich istniejącym WMS-em, read-only. Bazy produkcyjnej nie ruszałem. Etykiety przeszły z ręcznego Worda i Zebra Designera na natywny ZPL. Case study publikuję anonimowo: bez nazwy klienta, odbiorcy, schematu bazy i wolumenów. Dyskrecja klienta jest u mnie ważniejsza niż marketing.

Problem

Klient produkuje komponenty CNC dla zagranicznego OEM-a w obróbce metali. Średniej wielkości polski WMS na MS SQL, brak własnego działu IT. W tej jednej bazie żyje cała firma.

Najpierw zgłosili się z KSeF. Deadline ustawowy, ich WMS nie wystawiał ustrukturyzowanych FA(2), a faktur dziennie było tyle, że ręczne wystawianie w portalu MF odpadało z miejsca.

Po stabilnym wdrożeniu KSeF wrócili z drugim tematem. Etykiety. Ich odbiorca wymagał konkretnego formatu Code128 z nadrukiem 80×100 mm i wieloskładnikowym kodem (numer materiału, zlecenie, pozycja). Dotychczas robili je ręcznie w Wordzie i Zebra Designerze. Każda pomyłka groziła reklamacją.

Audyt próbki dokumentów wysyłkowych szybko pokazał, że pola w bazie, które teoretycznie powinny być kluczem identyfikacyjnym, są niewiarygodne. Trzeba było wybrać klucz na nowo.

Warunek brzegowy klienta: bazy produkcyjnej WMS-a nie wolno ruszać. Kropka.

Rozwiązanie

Dwa osobne projekty, w odstępie kilku tygodni. Oba zrobione tak, żeby ich firma działała dalej bez przerw, a ja nie zbliżał się do ich produkcyjnej bazy.

Projekt #1 - KSeF. Najważniejsze dla klienta: faktury idą do urzędu skarbowego automatycznie, jednym kliknięciem. Bez przepisywania, bez ręcznej dłubaniny w portalu MF, bez stresu o deadline. Pod spodem: integracja z API Ministerstwa Finansów (FA-2 + pobieranie UPO), automatyczne mapowanie z ich WMS-a, audit log kto kiedy co wysłał. Wdrożenie przeszło stabilnie, deadline mieli z głowy.

Kilka tygodni później wrócili z drugim tematem.

Projekt #2 - etykiety. Najważniejsze dla klienta: drukują etykiety zgodne z wymaganiami odbiorcy w sekundy, bez ręcznej roboty i bez ryzyka reklamacji. Hala dostała też swoją etykietę produkcyjną - dużą i czytelną z trzech metrów.

Najpierw 8 dni discovery, zanim zacząłem cokolwiek kodować. 3 dni na rozłożenie dokumentacji odbiorcy i rozkodowanie ich kodów kreskowych z fizycznych próbek. 2 dni na audyt rzeczywistych danych w bazie klienta - sprawdzałem, czy to co teoretycznie powinno być w polach, faktycznie tam jest. 1 dzień na uzgodnienie z OEM-em formatu (akceptacja przyszła w 24h). 2 dni na zaprojektowanie szablonów wydruku od zera.

Dopiero wtedy zacząłem pisać aplikację. Lekki most w Symfony nad ich WMS-em, połączenie tylko do odczytu. Dwie etykiety: 80×100 mm wysyłkowa z Code128 wg specyfikacji odbiorcy i 80×20 mm produkcyjna dla hali.

Drukowanie poszło natywnie - mój system wysyła komendy prosto do drukarek Zebra ZD420, ZD421 i ZT-series przez sieć. Bez sterowników Windows, bez Zebra Designera. Aplikacja mówi drukarce co i jak ma wydrukować, drukarka drukuje.

Backup zrobiłem w dwóch warstwach. Snapshot mojej bazy z 24-godzinną retencją jest w cenie wdrożenia. Pełny backup całej bazy WMS klienta to osobna usługa, oferowana otwarcie. Klient sam decyduje, ja niczego nie chowam w cenniku.

Efekty

  • Repeat business: po stabilnym KSeF (projekt #1) klient wrócił z drugim zleceniem na etykiety - sygnał zaufania
  • Wdrożone wcześniej niż założony termin (planowane 14 dni roboczych)
  • Zero reklamacji od OEM-a od momentu wdrożenia - zgodność etykiet ze specyfikacją odbiorcy
  • Czas wystawienia 1 etykiety: z 3-5 min (Word + Zebra Designer) do <10 sekund (natywny ZPL)
  • Czas wystawienia faktury KSeF: ręcznie w portalu MF → 1 klik z poziomu mostu
  • Ryzyko dla bazy WMS klienta: zero - architektura read-only

Co poprawiłem

  • Profesjonalna dyskrecja: case study publikowany w formie zanonimizowanej - nazwa klienta, odbiorcy, schematy bazy i wolumeny biznesowe celowo pominięte. Dyskrecja klienta ma u mnie pierwszeństwo przed marketingiem.
  • Repeat business: dwa odrębne projekty u tego samego klienta - KSeF (deadline ustawowy) najpierw, etykiety (zaufanie zbudowane wdrożeniem KSeF) później
  • Discovery przed kodem: 8 dni audytu (dokumentacja odbiorcy, próbka dokumentów wysyłkowych z bazy WMS, ustalenia formatu Code128) - eliminacja założeń, które rozsypałyby się w pierwszym tygodniu produkcji
  • Bezpieczeństwo: read-only do bazy WMS klienta - zerowe ryzyko uszkodzenia produkcyjnej bazy CNC, klient mógł nas «włączyć i wyłączyć» bez konsekwencji
  • Zgodność: KSeF FA(2) z UPO + etykiety Code128 zgodne ze specyfikacją odbiorcy, zaakceptowane przez OEM-a
  • Profesjonalizacja druku: natywny ZPL na drukarki Zebra (ZD420/ZD421/ZT-series) zamiast Worda i Zebra Designera
  • Backup dwuwarstwowy: snapshot bazy mostu (w cenie) + opcjonalny pełny backup WMS-a jako osobna usługa - transparentny upsell zamiast ukrytych kosztów

Stack

Symfony (PHP)MS SQL (read-only)Zebra ZPL IIZebra ZD420 / ZD421 / ZT-seriesKSeF APIFA(2)Code128Windows Server

Moja rola

Architekt i wdrożeniowiec dwóch następujących po sobie projektów - najpierw KSeF (FA-2, UPO, audit log), potem etykiety (analiza dokumentacji odbiorcy, audyt danych WMS, ustalenia formatu Code128 z OEM-em, szablony ZPL, szkolenie operatorów, aneks DR)

Potrzebujesz czegoś podobnego?

Bezpłatna konsultacja - opowiedz mi o swoim problemie, a powiem Ci jak bym to rozwiązał i ile to może kosztować. Bez zobowiązań.