O projekcie
Sklep internetowy firmy, która jest jednocześnie PRODUCENTEM części asortymentu i IMPORTEREM pozostałej. Z zewnątrz to jeden katalog kosmetyków; pod spodem dwa strumienie wyrobów o różnych obowiązkach, różnej dokumentacji i różnym momencie, w którym wolno je sprzedawać.
Zacznę od rozróżnienia, które w ofertach pada jako opis firmy, a jest w istocie decyzją o architekturze: PRODUCENT I IMPORTER TO DWIE RÓŻNE ROLE PRAWNE WOBEC TEGO SAMEGO KATALOGU. Kosmetyk wprowadzany na rynek europejski musi mieć dokładnie jedną osobę odpowiedzialną. Dla wyrobów własnej produkcji jest nią producent; dla wyrobów sprowadzanych z kraju trzeciego — IMPORTER, czyli ta sama firma, ale w innej roli i z innym zestawem dokumentów do posiadania.
Praktyczny skutek jest taki, że karta produktu nie może być jednym formularzem. Wyrób własny ma recepturę, ocenę bezpieczeństwa zamawianą u rzeczoznawcy i pełną kontrolę nad zmianą składu. Wyrób importowany ma dokumentację, którą trzeba WYDOBYĆ od wytwórcy spoza Unii — i to jest w praktyce najtrudniejsza część całego przedsięwzięcia, bo brak jednego dokumentu blokuje sprzedaż legalnie, a nie tylko formalnie.
Druga rzecz, na której stoi cały sklep: KARTA PRODUKTU NIE MOŻE POWSTAĆ PRZED ZGŁOSZENIEM KOSMETYKU. Zgłoszenie do europejskiego portalu jest warunkiem wprowadzenia do obrotu, więc opublikowana karta wyrobu niezgłoszonego to nie usterka porządkowa — to sprzedaż kosmetyku, którego nie wolno sprzedawać. Publikacja jest tu zatem BRAMKĄ: brak numeru zgłoszenia znaczy, że przycisk publikacji jest nieaktywny, a nie że ktoś powinien pamiętać.
Trzecia rzecz jest tą, która najczęściej rozwala sklepy kosmetyczne od strony prawnej: OŚWIADCZENIA O DZIAŁANIU SĄ REGULOWANE. „Hipoalergiczny”, „przetestowany dermatologicznie”, „redukuje zmarszczki” — każde z nich ma wymagania dowodowe i wspólne kryteria, którym musi odpowiadać. Sklep, w którym marketing wpisuje opis w wolne pole tekstowe, produkuje ryzyko w tempie jednej karty dziennie.
Dlatego oświadczenia są tu SŁOWNIKIEM, nie tekstem. Każda dopuszczona formuła ma w dokumentacji przypisany dowód, a karta produktu może użyć wyłącznie tych, które dla tego wyrobu zostały podparte. Opis marketingowy zostaje — ale twierdzenie o działaniu wstawia się z listy, nie pisze z głowy.
Osobno stoi granica, której nie wolno przekroczyć w żadnym polu: KOSMETYK NIE LECZY. Twierdzenie, że wyrób leczy albo zapobiega chorobie, przenosi go do kategorii produktów leczniczych — z całkiem innym reżimem dopuszczenia. To nie jest kwestia tonu; to przeklasyfikowanie wyrobu zdaniem w opisie. Wzorce zdrowotne są więc blokowane przy zapisie, a nie wychwytywane w korekcie.
Czwarta rzecz, praktyczna i lubiana przez klientów: SKŁAD MUSI BYĆ PRZYPIĘTY DO WERSJI WYROBU. Zmiana receptury zmienia listę składników, może zmienić ocenę bezpieczeństwa i wymaga aktualizacji zgłoszenia. Gdyby skład był polem edytowalnym w karcie, karta i butelka rozjechałyby się w pierwszym miesiącu — a kupujący z alergią czyta właśnie to pole. Lista jest więc pochodną wersji wyrobu, a nie treścią redakcyjną.
Z tego wynika funkcja, która wygląda na wygodę, a jest zgodnością: WYSZUKIWANIE PO ALERGENACH ZAPACHOWYCH. Ustalona lista substancji zapachowych podlega obowiązkowi deklaracji powyżej progów — innych dla wyrobów pozostawianych na skórze i innych dla spłukiwanych. Skoro te dane muszą być w składzie, mają być danymi STRUKTURALNYMI, a nie tekstem: wtedy klient filtruje katalog po tym, czego nie może na sobie mieć.
Karta w sklepie musi też nieść to, co niesie ETYKIETA, bo kupujący w sieci etykiety nie widzi: zawartość nominalną, datę minimalnej trwałości albo okres po otwarciu, funkcję wyrobu, ostrzeżenia, dane osoby odpowiedzialnej i — przy wyrobach sprowadzanych — KRAJ POCHODZENIA. Ten ostatni jest przy imporcie obowiązkowy i jest też tym, o co klienci pytają najczęściej, więc jego brak kosztuje podwójnie.
Partie i terminy to w kosmetykach nie księgowość, tylko sprzedaż: wyrób po dacie minimalnej trwałości nie ma prawa wyjść z magazynu, a numer partii jest tym, po czym prowadzi się wycofanie. Wydawanie idzie więc według najkrótszego terminu, karta nie sprzedaje stanu, którego nie wolno wydać, a przy imporcie partia wiąże się dodatkowo z dokumentacją przywozową.
Na koniec mechanizm, którego brak wychodzi dopiero przy kontroli: ZAŁĄCZNIKI DO ROZPORZĄDZENIA SIĘ ZMIENIAJĄ. Składnik dozwolony dziś bywa ograniczony albo zakazany po kilkunastu miesiącach, czasem z okresem przejściowym na sprzedaż zapasów. Sklep, który tego nie śledzi, dowiaduje się o zmianie od inspekcji. Tutaj zmiana załącznika ZAPALA LISTĘ WYROBÓW, których skład jej dotyczy — z datami przejściowymi, żeby dało się zaplanować wycofanie, a nie gasić pożar.
Problem
Firma sprzedaje kosmetyki własnej produkcji i sprowadzane, a to dwa różne zestawy obowiązków wobec jednego katalogu. Zwykły sklep tego nie widzi: pozwala opublikować kartę wyrobu niezgłoszonego, wpisać dowolne oświadczenie o działaniu w wolne pole, edytować skład niezależnie od receptury i sprzedawać zapas po terminie — a każda z tych czterech rzeczy jest naruszeniem, nie usterką porządkową.
Rozwiązanie
Rola prawna jest polem wyrobu, nie firmy: produkcja i import mają osobne wymagania dokumentacyjne. Publikacja karty jest bramką na zgłoszeniu kosmetyku, oświadczenia są słownikiem powiązanym z dowodem, wzorce zdrowotne blokowane przy zapisie, skład jest pochodną wersji wyrobu, a zmiana załącznika do rozporządzenia zapala listę wyrobów, których dotyczy.
Funkcje
- rola prawna przypisana WYROBOWI: własna produkcja kontra import, osobne wymagania
- publikacja karty zablokowana do momentu zgłoszenia kosmetyku
- oświadczenia o działaniu ze słownika powiązanego z dowodem w dokumentacji
- wzorce zdrowotne blokowane przy zapisie — kosmetyk nie leczy
- skład jako pochodna wersji wyrobu, nie pole redakcyjne w karcie
- alergeny zapachowe jako dane strukturalne, z progami dla wyrobów pozostawianych i spłukiwanych
- karta niesie to, co etykieta: zawartość, trwałość, ostrzeżenia, kraj pochodzenia przy imporcie
- wydawanie po najkrótszym terminie; karta nie sprzedaje stanu, którego nie wolno wydać
- zmiana załącznika do rozporządzenia zapala listę wyrobów wraz z datami przejściowymi
- dokumentacja produktu trzymana przez wymagany okres, osobno dla obu strumieni
Moduły
role-wyrobu
warstwa ról prawnychRozstrzyga, czy dla tego wyrobu firma jest producentem, czy importerem — i co z tego wynika.
- rola jest polem WYROBU, nie firmy; jeden katalog niesie oba strumienie
- wyrób własny: receptura, ocena bezpieczeństwa, pełna kontrola nad zmianą składu
- wyrób sprowadzany: dokumentacja do wydobycia od wytwórcy spoza Unii
- brak wymaganego dokumentu blokuje sprzedaż, a nie tylko oznacza brak w kartotece
- zmiana roli (np. przejście na produkcję własną) jest zdarzeniem, nie edycją pola
zgloszenia-cpnp
bramka publikacjiNie pozwala opublikować karty wyrobu, który nie został zgłoszony.
- numer zgłoszenia jest warunkiem publikacji, nie polem opcjonalnym
- brak numeru czyni przycisk publikacji NIEAKTYWNYM — nie polega na pamięci
- zmiana receptury wymaga aktualizacji zgłoszenia i zdejmuje kartę do czasu potwierdzenia
- zgłoszenie powiązane z konkretną wersją wyrobu, nie z nazwą handlową
- wygaśnięcie albo wycofanie zgłoszenia zdejmuje wyrób ze sprzedaży automatycznie
dokumentacja-produktu
warstwa dokumentówTrzyma dokumentację wyrobu i pilnuje jej kompletności oraz okresu przechowywania.
- ocena bezpieczeństwa podpisana przez rzeczoznawcę jako dokument wymagany
- okres przechowywania liczony od ostatniej partii, nie od daty wgrania dokumentu
- dokumentacja importu prowadzona osobno, bo obowiązki importera są inne
- braki widoczne jako lista, nie jako pusty rekord do przeoczenia
- dostęp do dokumentacji ograniczony; sklep czyta z niej tylko to, co wyświetla
sklad-inci
warstwa składuSkład jako pochodna wersji wyrobu — karta nie może się rozjechać z butelką.
- lista składników pochodzi z wersji receptury, nie z pola redakcyjnego w karcie
- kolejność malejąca wymuszona strukturą danych, nie starannością redaktora
- zmiana receptury tworzy nową wersję i przechodzi przez bramkę zgłoszenia
- kupujący z alergią czyta właśnie to pole — rozjazd karty z butelką jest tu najgroźniejszy
- historia wersji składu zachowana; da się odtworzyć, co było w partii z zamówienia
alergeny
dane strukturalneSubstancje zapachowe podlegające deklaracji jako dane do filtrowania, nie tekst.
- ustalona lista substancji zapachowych z progami deklaracji
- progi OSOBNE dla wyrobów pozostawianych na skórze i spłukiwanych
- klient filtruje katalog po tym, czego nie może na sobie mieć
- dane pochodzą ze składu, więc nie da się ich rozjechać z listą składników
- brak danych o alergenach blokuje publikację, zamiast pokazywać puste filtry
oswiadczenia
słownik twierdzeńTwierdzenia o działaniu ze słownika powiązanego z dowodem, nie z wolnego pola.
- każda dopuszczona formuła ma w dokumentacji przypisany dowód
- karta używa wyłącznie formuł podpartych DLA TEGO wyrobu
- opis marketingowy zostaje wolny; twierdzenie o działaniu wstawia się z listy
- wzorce zdrowotne („leczy”, „zapobiega chorobie”) BLOKOWANE PRZY ZAPISIE
- usunięcie dowodu z dokumentacji zdejmuje formułę z kart, które jej używały
etykieta-w-karcie
warstwa informacji obowiązkowychKarta niesie to, co niesie etykieta — bo kupujący w sieci etykiety nie widzi.
- zawartość nominalna, funkcja wyrobu, ostrzeżenia i dane osoby odpowiedzialnej
- data minimalnej trwałości albo okres po otwarciu, zależnie od wyrobu
- KRAJ POCHODZENIA przy wyrobach sprowadzanych — obowiązkowy i najczęściej pytany
- brak pola obowiązkowego blokuje publikację, nie pojawia się jako puste miejsce
- te same dane zasilają kartę, etykietę do druku i wysyłkę do porównywaczek
partie-i-terminy
warstwa magazynowaPartia i termin decydują o sprzedaży, nie tylko o księgowaniu.
- wydawanie według najkrótszego terminu, nie według miejsca na półce
- karta nie sprzedaje stanu, którego nie wolno wydać
- numer partii jest tym, po czym prowadzi się wycofanie z rynku
- przy imporcie partia wiąże się z dokumentacją przywozową
- zbliżający się termin zapala listę do decyzji, zamiast cicho blokować sprzedaż
zmiany-zalacznikow
warstwa nadzoruŚledzi zmiany w załącznikach i wskazuje wyroby, których dotyczą.
- składnik dozwolony dziś bywa ograniczony albo zakazany po kilkunastu miesiącach
- zmiana załącznika ZAPALA LISTĘ wyrobów, w których ten składnik występuje
- przy liście podane daty przejściowe, żeby dało się zaplanować wycofanie
- bez tego o zmianie dowiadujemy się od inspekcji — najdroższą możliwą drogą
- wyrób objęty zmianą jest oznaczony w panelu, nie tylko w raporcie miesięcznym
sklep
warstwa handlowaCzęść, którą widzi kupujący: katalog, filtry, koszyk i wysyłka.
- filtry po rodzaju skóry, funkcji i alergenach — z danych, nie z tagów wpisywanych ręcznie
- zestawy i warianty pojemności jako osobne wyroby, bo mają osobne zgłoszenia
- próbki i gratisy też są kosmetykami: te same wymagania, ta sama bramka
- wysyłka z ograniczeniami dla wyrobów z alkoholem, gdzie przewoźnik ich stawia
- karta wysyłana do porównywaczek z tych samych danych, co karta w sklepie
Architektura
- Podstawa
- WooCommerce na WordPressie z warstwą zgodności jako osobnym modułem; dane produktowe są źródłem dla karty, etykiety i eksportu
- Rola prawna
- pole WYROBU, nie firmy — jeden katalog niesie strumień własnej produkcji i strumień importu, z osobnymi wymaganiami dokumentacyjnymi
- Bramka publikacji
- brak numeru zgłoszenia kosmetyku czyni publikację niemożliwą technicznie, nie tylko niezalecaną
- Skład
- pochodna wersji receptury z wymuszoną kolejnością malejącą; nieedytowalny z poziomu karty produktu
- Alergeny
- ustalona lista substancji zapachowych z progami osobnymi dla wyrobów pozostawianych i spłukiwanych; dane strukturalne, filtrowalne
- Oświadczenia
- słownik formuł powiązanych z dowodem w dokumentacji; użycie tylko tam, gdzie dowód istnieje dla tego wyrobu
- Granica twarda
- wzorce zdrowotne blokowane przy zapisie — twierdzenie o leczeniu przenosi wyrób do innej kategorii prawnej
- Informacje obowiązkowe
- zawartość, trwałość albo okres po otwarciu, funkcja, ostrzeżenia, osoba odpowiedzialna, a przy imporcie kraj pochodzenia
- Dokumentacja
- ocena bezpieczeństwa podpisana przez rzeczoznawcę; okres przechowywania liczony od ostatniej partii, osobno dla importu
- Partie
- wydawanie po najkrótszym terminie, numer partii jako podstawa wycofania, powiązanie z dokumentacją przywozową
- Nadzór nad zmianami
- zmiana załącznika do rozporządzenia zapala listę wyrobów z tym składnikiem, wraz z datami przejściowymi
- Warianty
- pojemności, zestawy i próbki jako osobne wyroby — każdy ma własne zgłoszenie i własną dokumentację
- Jedno źródło
- karta w sklepie, etykieta do druku i wysyłka do porównywaczek powstają z tych samych danych produktowych
Technologie
- PHP
- WordPress
- WooCommerce
- MySQL
- REST API
- JavaScript
Autor
Mariusz PerzyńskiClient Relations & Operations