Systemy dedykowane

Dedykowany system magazynowo-sprzedażowy dla sieci sklepów odzieżowych - case study

Wdrożenie dedykowanego systemu magazynowo-sprzedażowego, który zastąpił Excele i ręczne przepisywanie stanów - jedno źródło prawdy dla magazynu centralnego i wszystkich punktów sprzedaży, z aplikacją webową, mobilną i desktopową działającą na tym samym API.

Laravel 12ReactReact Native (Expo)ElectronPostgreSQLDocker
Dedykowany system magazynowo-sprzedażowy dla sieci sklepów odzieżowych - case study
3Platformy - web, mobile i desktop w pełnym parytecie
1 APIJedno REST API obsługuje wszystkie aplikacje
100%Operacji punktu sprzedaży objętych systemem
OfflineSprzedaż działa bez internetu, synchronizacja po powrocie sieci

Wyzwanie

Firma odzieżowa prowadząca magazyn centralny i sieć punktów sprzedaży zarządzała towarem w arkuszach kalkulacyjnych i papierowych zestawieniach. Stany magazynowe w punktach rozjeżdżały się ze stanem faktycznym - ten sam towar istniał w Excelu i nie istniał na półce, a nikt nie wiedział, kto i kiedy zmienił stan. Zamówienia towaru z punktów do magazynu chodziły telefonicznie i mailowo, bez kolejki i historii decyzji. Sprzedaż internetowa w PrestaShop była osobnym, ręcznie aktualizowanym światem - każdą zmianę ceny i stanu trzeba było wprowadzić drugi raz. Faktury VAT i etykiety kurierskie wystawiano ręcznie, w oderwaniu od sprzedaży. Każdy pracownik widział wszystko, bo nie było ról ani zakresu danych per punkt, a kierownictwo nie miało żadnego raportu dziennego ani analizy sprzedaży.

Przed i po wdrożeniu

Przed

Excel i papierowe zestawienia

Po

Jedno źródło prawdy dla wszystkich punktów

Przed

Ręczne przepisywanie stanów

Po

Stany schodzą automatycznie przy sprzedaży

Przed

Zamówienia towaru telefonicznie

Po

Obieg punkt -> magazyn ze statusami i historią

Przed

PrestaShop aktualizowany osobno

Po

Automatyczna synchronizacja katalogu i stanów

Przed

Faktury i etykiety wystawiane ręcznie

Po

Faktura VAT i przesyłka InPost z poziomu sprzedaży

Przed

Każdy widzi wszystko

Po

Role hierarchiczne + zakres danych per punkt

Przed

Brak raportów

Po

Raport dzienny, kasa i analityka z wykresami

Przed

Praca tylko przy komputerze

Po

Web, telefon i stanowisko desktopowe - ten sam zakres

Rozwiązanie

Zbudowaliśmy dedykowany system w architekturze Laravel + React, gdzie backend od pierwszego dnia jest czystym REST API. Dzięki temu ta sama logika biznesowa obsługuje aplikację webową, mobilną i desktopową - bez duplikowania kodu i bez rozjazdu zachowań między platformami. Operacje na stanach przechodzą wyłącznie przez lockowany serwis magazynowy (brak oversellu, brak stanu ujemnego), a każda istotna operacja trafia do audit logu i jest odwracalna dzięki soft delete. Model uprawnień projektowaliśmy razem ze schematem bazy: role hierarchiczne (administrator, kierownik magazynu, kierownik punktu, kasjer, obsługa), zakres danych per punkt egzekwowany po stronie serwera i pieniądze liczone wyłącznie na backendzie - ceny, rabaty i VAT nigdy nie pochodzą z aplikacji klienckiej. Aplikacja mobilna i desktopowa działają w trybie offline z kolejką operacji i synchronizacją po odzyskaniu sieci.

Architektura systemu

Warstwa API

Laravel 12 i PostgreSQL - logika biznesowa w serwisach domenowych, lockowane operacje na stanach, soft delete i audit log

Warstwa operacyjna

Aplikacja web (React + TypeScript) - katalog, magazyn, zamówienia towaru, sprzedaż ze skanerem, kasa, dokumenty i raporty

Warstwa mobilna i stanowiska

React Native (Expo) i Electron - pełny parytet z webem, tryb offline z lokalną kolejką operacji, obsługa skanera i drukarki etykiet

Warstwa integracji

PrestaShop, Fakturownia, InPost, GUS/VIES i kursy NBP - z logiem każdego wywołania i testem połączenia w panelu administratora

Proces wdrożenia

1

Fundament operacyjny

Role i uprawnienia, magazyn centralny i magazyny punktów, katalog z wariantami, stany, zamówienia towaru, sprzedaż ze skanowaniem kodów i raport dzienny

2

Rozszerzenia

Import OCR dokumentów, obsługa skaz i reklamacji ze zdjęciami, druk etykiet z kodami kreskowymi, kasa dzienna, waluty wg kursu NBP

3

Integracje

PrestaShop (katalog, ceny, stany, kategorie, rozmiary), Fakturownia (faktury VAT), InPost (przesyłki i etykiety), GUS (dane kontrahenta)

4

Aplikacja mobilna

Skanowanie, stany, odbiór zamówień, zgłoszenia skaz - UI zaprojektowane pod obsługę jedną ręką

5

Pełny parytet mobilny

Sprzedaż, faktury, raporty i tryb offline w aplikacji mobilnej

6

Aplikacja desktopowa

Electron, obsługa sprzętu stanowiska (skaner HID, drukarka etykiet), tryb offline i wymuszona aktualizacja wersji

Wyzwania przed wdrożeniem systemu magazynowo-sprzedażowego

W sieci sklepów odzieżowych koszt braku danych jest natychmiastowy: towar, którego nie ma w systemie, nie sprzedaje się, a towar, który jest w systemie, ale nie na półce, generuje anulowane zamówienia internetowe. Arkusze kalkulacyjne radzą sobie do momentu, w którym punktów jest więcej niż jeden, a asortyment ma warianty rozmiarowe i kolorystyczne - wtedy liczba kombinacji rośnie szybciej niż zdolność do ręcznego ich pilnowania. Drugim progiem jest sprzedaż wielokanałowa. Dopóki sklep internetowy jest utrzymywany osobno, każda operacja wykonywana jest dwa razy - i prędzej czy później jedna z nich zostaje pominięta.

Jak działa dedykowany system do zarządzania magazynem i sprzedażą

Kasjer skanuje kod, dodaje produkt do koszyka, wybiera walutę i formę płatności (również płatność dzielona: gotówka + karta + przelew), wystawia paragon albo fakturę VAT i - jeśli to wysyłka - od razu tworzy przesyłkę InPost z etykietą. Kierownik punktu otwiera i zamyka zmianę kasową, pilnuje bilansu i różnicy, zamawia towar z magazynu centralnego, zgłasza skazy i reklamacje ze zdjęciami. Kierownik magazynu obsługuje kolejkę zamówień z punktów, przyjmuje dostawy, prowadzi katalog i zarządza stanami magazynu centralnego. Administrator konfiguruje integracje, role, punkty i ustawienia obiegu akceptacji, ma wgląd w audit log i logi wywołań integracji. Pełna kontrola nad towarem i sprzedażą bez dzwonienia po punktach.

Zakres wdrożenia i integracje

PrestaShop - synchronizacja produktów, cen, stanów, kategorii i rozmiarów; aplikacja jest źródłem prawdy, sklep internetowy miejscem sprzedaży. Fakturownia - automatyczne faktury VAT, korekty, serie numeracji per punkt. InPost - przesyłki paczkomatowe i kurierskie z etykietą generowaną z poziomu sprzedaży. GUS / VIES - pobieranie i weryfikacja danych kontrahenta po NIP. NBP - kursy walut dla sprzedaży w EUR i USD. Sprzęt stanowiska - skaner kodów kreskowych i drukarka etykiet, konfigurowane per punkt. Każde wywołanie integracji jest logowane, a administrator może przetestować połączenie bezpośrednio z panelu.

Efekty biznesowe po wdrożeniu

Eliminacja podwójnego wprowadzania danych zdjęła z pracowników godziny pracy tygodniowo i usunęła całą klasę błędów wynikających z przepisywania. Stany są spójne między punktami, magazynem centralnym i sklepem internetowym, bo zmienia je jeden mechanizm. Dokumenty sprzedażowe powstają w tym samym kroku co sprzedaż, więc nie ma zaległości na koniec dnia. Kierownictwo dostało raport dzienny i analitykę (trend sprzedaży, dni tygodnia, top produkty) zamiast zbierania danych na żądanie.

Dlaczego firma wybrała dedykowane oprogramowanie zamiast gotowego systemu

Klient wybrał dedykowany system z trzech powodów. Specyfika procesu - obieg towaru między magazynem centralnym a punktami, skazy, reklamacje B2B i przyjęcia dostaw działają u tego klienta inaczej niż w gotowych ERP; dopasowanie systemu do procesu było tańsze niż dopasowanie firmy do systemu. Jedno API, trzy aplikacje - gotowe rozwiązania rzadko dają spójny parytet weba, mobile i stanowiska desktopowego z trybem offline. Pełna kontrola nad rozwojem - kolejne etapy powstają w tempie klienta, bez czekania na roadmapę dostawcy i bez opłat za użytkownika.

Rezultaty

  • Jedno źródło prawdy o stanach dla magazynu centralnego, wszystkich punktów i sklepu internetowego
  • Eliminacja podwójnego wprowadzania danych i całej klasy błędów z przepisywania
  • Sprzedaż i dokumenty (paragon, faktura VAT, etykieta przesyłki) w jednym kroku
  • Pełna kontrola dostępu - role hierarchiczne i zakres danych per punkt sprzedaży
  • Praca bez przerw także przy utracie internetu dzięki trybowi offline
  • Raport dzienny, rozliczenie kasy i analityka sprzedaży dostępne od ręki
  • Odwracalność i rozliczalność operacji - soft delete oraz audit log

Funkcjonalności

  • Katalog produktów z wariantami, atrybutami, cechami i kodami kreskowymi
  • Magazyn centralny i magazyny punktów - korekty, transfery, przyjęcia dostaw
  • Zamówienia towaru w obiegu punkt -> magazyn lub zakup od producenta
  • Sprzedaż ze skanerem: koszyk, paragony, płatność dzielona, waluty PLN/EUR/USD
  • Faktury VAT (Fakturownia + lookup GUS) i przesyłki InPost z etykietą
  • Kasa dzienna per punkt - otwarcie, zamknięcie, wpłaty i wypłaty, bilans i różnica
  • Skazy i reklamacje B2B ze zdjęciami i kolejką akceptacji
  • Import OCR - dodanie produktów lub zamówienia ze zdjęcia dokumentu
  • Druk etykiet z kodami kreskowymi (drukarka konfigurowana per punkt)
  • Raport dzienny i analityka z wykresami
  • Integracje z PrestaShop, Fakturownią, InPost i GUS z logiem wywołań
  • Aplikacja mobilna i desktopowa z trybem offline i synchronizacją
  • Pełna dwujęzyczność interfejsu i komunikatów API (PL/EN), gotowa na kolejne języki

Stack technologiczny

Laravel 12ReactReact Native (Expo)ElectronPostgreSQLDocker

Potrzebujesz podobnego rozwiązania?

Jeśli Twoja firma prowadzi magazyn i sprzedaż w wielu punktach, a dane nadal żyją w arkuszach - opowiedz nam o swoim procesie. Zaprojektujemy system pod niego, a nie odwrotnie.

Skontaktuj się z nami