01O cenie decyduje twój serwer, nigdy przeglądarka
Konfigurator pokazuje sumę, gdy klient wybiera, ale liczba, którą zapisuje się zamówienie, jest wyliczana na serwerze ponownie — wyłącznie z dokonanego wyboru. Suma przysłana przez przeglądarkę jest po prostu ignorowana. Pieniądze trzymane są jako całkowite jednostki podrzędne, więc długie zamówienie nigdy nie rozjedzie się o grosz między fakturą a zamówieniem.
02Wgrane zdjęcia nie są załącznikami biblioteki mediów
Trafiają do katalogu, którego nazwy nie da się odgadnąć, chronionego jednocześnie na cztery sposoby: regułą .htaccess, plikiem web.config dla IIS, plikiem index.php oraz uprawnieniami, które pozwalają czytać je tylko samej witrynie. Plik jest przyjmowany za to, czym są jego bajty, a nie za to, co twierdzi jego nazwa: plik wykonywalny przemianowany na .jpg zostaje odrzucony w drzwiach. Nigdy nie dostają publicznego adresu URL.
03Jedno wyjście — i sprawdza, kto puka
Każde zdjęcie i każdy podgląd wydawane są przez jedną bramę. Twój zespół przechodzi dzięki uprawnieniu do zamówień WooCommerce, klient — dzięki podpisanemu odnośnikowi sprawdzanemu wobec dokładnie tego zamówienia i żadnego innego. Odnośnik zbudowany dla jednego zamówienia nie otworzy pliku innego, a odnośnik zmanipulowany nie otworzy niczego.
04Klient zatwierdza bez zakładania konta
Strona akceptacji otwiera się prosto z e-maila: bez logowania, bez hasła, bez koszyka. Prosić kogoś o rejestrację, zanim zobaczy własny podgląd, to najpewniejszy sposób na utratę tej akceptacji. Odnośnik niesie własne uprawnienie, jest podpisany i wygasa; strona nigdy nie trafia do pamięci podręcznej, więc podgląd jednego klienta nie może zostać pokazany komuś innemu.
05Poprawki aż do „tak”, potem produkcja i żadnych zmian
Przed akceptacją klient może prosić o poprawkę tyle razy, ile trzeba, a każda prośba zostaje zapisana przy zamówieniu. Po akceptacji formularz poprawek znika — a serwer również odrzuca żądanie, nie tylko ekran. Zgodnie z tureckimi przepisami o sprzedaży na odległość towar spersonalizowany nie daje prawa odstąpienia po wykonaniu, więc chwila, w której klient się na to zgadza, jest zapisywana razem z akceptacją.
06Cztery stany zamówienia, które idą tylko naprzód
Modelowanie, oczekiwanie na akceptację, druk, gotowe. To, co po czym może nastąpić, zapisano jako listę przejść dozwolonych, a nie zabronionych: krok, o którym nikt nie pomyślał, jest domyślnie odrzucany, zamiast po cichu dozwolony. Stany to prawdziwe statusy zamówień WooCommerce, więc pojawiają się na liście zamówień, w raportach i w twoich obecnych filtrach.
07Kolejka, która mówi, co jest spóźnione, a nie tylko co jest otwarte
Ekran pracowni układa otwarte zamówienia według czasu oczekiwania i zaznacza na czerwono te, które przekroczyły obiecany termin: zwykle dwadzieścia cztery godziny, sześć przy zamówieniu ekspresowym. Operator wgrywa podgląd z tego samego ekranu, a e-mail do klienta wychodzi tą samą czynnością; nie ma drugiego miejsca, o którego kliknięciu trzeba pamiętać.
08Cztery e-maile wysyłane przez samo WooCommerce
Zamówienie przyjęte, podgląd gotowy, akceptacja zapisana, wysłano. Wszystkie przechodzą przez własny szablon e-mail twojego sklepu, więc wyglądają jak reszta twojej poczty, a nie jak coś doczepionego. Odnośnik akceptacji pojawia się w wiadomości dwa razy — jako przycisk i jako zwykły tekst — bo niektóre programy pocztowe przycisku nie rysują.
09Fotografie nie zostają na zawsze
Codzienne zadanie usuwa wgrane pliki i podglądy zakończonych zamówień po okresie przechowywania, który ustawiasz ty: domyślnie sześćdziesiąt dni. Zamówienie, jego kwota i zapis akceptacji zostają; fotografia klienta nie. Trzymanie zdjęcia dziecka na serwerze sklepu bezterminowo to odpowiedzialność, a nie funkcja.
010Nie walczy z twoją pamięcią podręczną
Konfigurator i strona akceptacji wyłączają dla siebie buforowanie stron — w języku, który jednakowo rozumieją LiteSpeed, WP Rocket i W3 Total Cache — a do tego wysyłają nagłówki no-store. Zbuforowany konfigurator wysyła przeterminowany token i cicho zawodzi; zbuforowana strona akceptacji pokazuje podgląd jednego klienta następnemu odwiedzającemu. Tutaj nie może zdarzyć się ani jedno, ani drugie.