Walidacja kodów pocztowych - proste rozwiązanie na duże problemy - Ebmia
Twój Klient sfinalizował zamówienie. Pakujesz je i nadajesz przesyłkę. Nic prostszego, prawda? Niekoniecznie. To, co powinno iść gładko, staje się problemem. Kod pocztowy, podany przez Klienta, nie zgadza się z miejscowością. Nie wiesz, gdzie wysłać paczkę. Bombardujesz Klienta telefonami, sam sprawdzasz. Po jakimś czasie udaje się odkręcić błąd. Sytuacja uratowana. Ale tylko do czasu kolejnej nieścisłości… Te z pozoru małe błędy sporo kosztowały naszego Klienta. Problem trzeba było rozwiązać systemowo, u źródła. Naszą odpowiedzią była API walidująca kody pocztowe.
Efekty naszej pracy
Dzięki współpracy z nami klient zyskał:
Odkręcanie błędów jest droższe niż zapobieganie im. Przekonał się o tym nasz Klient – właściciel sklepu ebmia.pl. Niewielkie, ale powtarzające się perturbacje na ścieżce realizacji zamówienia, stały się poważnym problemem, wydłużającym cały proces zakupu.
W tym przypadku była to niezgodność kodu pocztowego z konkretną miejscowością– taki błąd często popełniali Klienci na etapie składania zamówienia. Co zrobiliśmy, żeby go wyeliminować?
- Zaimplementowaliśmy rozwiązanie – API do walidacji kodów pocztowych, które całkowicie rozwiązuje problem Klient
- API do walidacji kodów pocztowych jest prostym, ale super ważnym modułem; na to zadanie poświęciliśmy kilkanaście godzin – to nieporównywalnie mało w stosunku do tego, jaką oszczędność czasu Klient generuje teraz.
- Wiemy, czego szukać i na co zwracać uwagę – spośród dostępnych na rynku API wybraliśmy takie, które spełnia wszystkie ważne kryteria legalności i aktualności danych, ich formatu, kosztów abonamentowych; brak rzetelnej analizy w tym przypadku jest dość ryzykowny;
- Rozszerzyliśmy API o własną, niezależnie tworzoną bazę danych – to dedykowane rozwiązanie, które generuje oszczędność dla Klienta
- Trzymaliśmy rękę na pulsie – okazało się, że źródłem błędów mogą być też inne elementy – znaki specjalne w nazwach miejscowości; szybko ominęliśmy tę przeszkodę.
Dlaczego klient jest zadowolony ze współpracy?
Korzyści po stronie naszego Klienta są oczywiste. Przede wszystkim wzrosła efektywność i zminimalizowany został czas obsługi zamówień.
Po drugiej stronie mamy Klientów samego sklepu. Ścieżka zamówienia została zabezpieczona przed błędami, które sami nieświadomie popełniali. Teraz proces przebiega bezproblemowo, a to daje większy komfort i zadowolenie z robienia zakupów.
Ten projekt jest przykładem na to, jak w prosty sposób można rozwiązać poważny problem Klienta. Realizacja zajęła nam niewiele czasu – raptem kilkanaście godzin.
Oszczędność czasu, którą zyskał nasz Klienta, jest nieporównywalnie większa.
Główne cele współpracy
Problem, z jakim zmagała się Ebmia jest już znany. Jej Klienci, podczas wypełniania formularza zamówienia, podawali błędny kod pocztowy lub błędną miejscowość – jedne dane nie odpowiadały tym drugim.
Błędy generowały sporo dodatkowej pracy i wydłużały czas realizacji zamówień. Sytuacja była dość poważna, bo zespół naszego Klienta obsługuje około kilkaset zamówień dziennie. Kilka procent z nich obarczonych błędem daje obraz skali problemu.
Ebmia.pl potrzebowała rozwiązania, które skutecznie wyeliminuje te błędy. Naszą odpowiedzią było API do walidacji kodów pocztowych.
Postawiliśmy takiemu API kilka wymagań:
- posiada legalną, aktualną i kompletną bazę danych,
- jest bezpłatne lub z daje możliwość optymalizacji abonamentu tworzenie wewnętrznej bazy danych na podstawie raz wyszukanych rekordów),
- jest łatwe/elastyczne w procesie integracji.
Dlaczego klient wybrał nas jako partnera?
Ebmia.pl zajmuje się sprzedażą automatyki i elementów budowy maszyn. Liczba Klientów sklepu mówi sama za siebie – w tym momencie to aż 100 tysięcy. Taki sukces buduje priorytet wysokiej jakości, doskonała obsługa Klienta, profesjonalna załoga 50 pracowników i oferta sklepu – ponad 350 tysięcy produktów, aż 50 tysięcy z nich dostępnych od ręki.
Naszą współpracę rozpoczęliśmy w lutym 2022 roku. Sklep ebmia.pl potrzebował supportu technicznego i dość głębokich prac naprawczych – o czym można poczytać w tym case’ie. Wspólnie realizujemy różnorodne projekty rozwojowe dla sklepu.
Co zoptymalizowaliśmy?
Moduł do walidacji kodów pocztowych rozwiązuje cały problem z błędami, które nieświadomie popełniali Klienci sklepu. Bazuje na ogólnodostępnym API, które zawiera pełną listę polskich kodów pocztowych i dopasowanych do nich miejscowości, łącznie z tymi najmniejszymi. System wyłapuje błędnie wprowadzone dane – w momencie uzupełniania danych w koszyku, czyli wpisywania kodu pocztowego i miejscowości, API jest odpytywane, czy te dane do siebie pasują. Na podstawie Informacji zwrotnej z API Klient jest przepuszczany dalej lub pojawia się komunikat o niezgodności danych i prośba o ich weryfikację..
Jakie API do walidacji kodów pocztowych braliśmy pod uwagę? Co oferuje rynek?
Research i analiza dostępnych na rynku opcji pokazała, że możemy skorzystać z kilku rozwiązań.
- API Poczty Polskiej – usługa w pełni płatna; dane udostępniane są w pliku pdf; brak licencji na komercyjny użytek – nie ma prawnej możliwości, by tę bazę w jakikolwiek kopiować, czyli stworzyć własną bazę danych w oparciu o raz wyszukane rekordy, a na tym nam zależało;
- API GUS-u – to API z potężną bazą danych, niestety nieuwzględniającą kodów pocztowych; dane pozwalają sprawdzić poprawność wpisywanych adresów – korelacja ulicy i numeru budynku;
- API z darmową bazą kodów pocztowych – choć to rozwiązanie pod względem technicznym było ok, po głębszym rozpoznaniu tematu okazało się, że jego twórcy nielegalnie udostępniali dane; to jedna z pułapek, o której pisaliśmy.
Jaką API wybraliśmy i dlaczego? Co jest kluczowe w ocenie rozwiązania?
Finalnie wybraliśmy Kody pocztowe API. To rozwiązanie spełniało nasze kluczowe założenia. Poza tym ma kilka innych zalet.
- Posiada legalną w kontekście praw własności bazę danych, z zapewnieniem jej poprawności i aktualności.
- Dane można wykorzystać do tworzenia własnej bazy.
- To darmowe rozwiązanie do poziomu 100 rekordów wyszukań dziennie.
- Płatna wersja, abonamentowa, nie jest kosztowna; jeśli limit bezpłatnych rekordów nie wystarcza, można przejść na tę wersję.
- Łatwe do integracji – to API w stylu API REST, jest bardziej elastyczne podczas implementacji.
- Wykorzystuje standardy PrestaShop – Presta w standardzie waliduje jedynie format kodu zgodny z krajem (np. XX-XXX dla Polski), ale na tę walidację możemy nałożyć kolejną warstwę; ułatwia to oddzielny hook do walidacji danych w formularzu z adresem – sprawia, że wpięcie tego API w silnik sklepu jest bardzo subtelne.
- Przesyła dane w przyjaznym, standardowym formacie JSON.
Jak z tego API wyciągnęliśmy jeszcze więcej? Co można zoptymalizować?
Naszym znakiem rozpoznawczym jest to, że zawsze szukamy takich obszarów, które można zoptymalizować. To, co już działa dobrze, może działać jeszcze lepiej, generować oszczędności, być bardziej efektywne, łatwiejsze w użytkowaniu, obsłudze etc.
W tym przypadku priorytetem było tworzenie własnej bazy danych.
Konkretne zapytanie do API – czyli weryfikacja zgodności kodu z miejscowością – jest zapisywane na stałe w bazie. To dedykowane rozwiązanie. Co daje?
- Oszczędzamy rekordy dostępne w abonamencie – wykorzystujemy zasoby API tylko wtedy, kiedy konkretne kod i miasto zostają wpisane po raz pierwszy, czyli tylko podczas pierwszej weryfikacji zgodności.
- Budujemy własną bazę i korzystamy z jej zasobów – jeśli w formularzu zamówienia ponownie pojawią się te same dane, nie ma potrzeby, by korzystać z bazy API; kolejne weryfikacje realizowane są wewnątrz sklepu na podstawie własnej bazy.
- To rozwiązanie w dużym stopniu umożliwia korzystanie z bezpłatnej wersji API, a z czasem uniezależnienie się od niej.
Abonament czy wersja bezpłatna?
Odpowiedź na to pytanie jest prosta, jeśli dobrze wiesz, ile zamówień dziennie spływa do Twojego sklepu. Jeśli nie przekracza ono 100, wersja bezpłatna w zupełności wystarczy. Jeśli zamówień jest znacznie więcej – skorzystaj z opcji abonamentowej.
Możesz również pójść tropem rozwiązania, które my zastosowaliśmy – optymalizować wydatki abonamentowe i budować własną bazę danych. Ale tutaj sprawa robi się trochę bardziej skomplikowana. O czym musisz pamiętać?
- Monitoruj sytuację na bieżąco – na początku własna baza pewnie nie będzie wystarczająca; każde dzienne przekroczenie limitu musi być zapisane, by znać skalę “zjawiska”.
- Reaguj – we właściwym momencie skorzystaj z wersji abonamentowej.
- Zabezpiecz się – wprowadź dodatkowe zabezpieczenia, by brak weryfikacji kodu nie zablokował sprzedaży.
Nie tylko kody pocztowe – inne źródła błędów
Podczas implementacji nowego narzędzia nie da się przewidzieć wszystkiego. Dlatego, szczególnie na początku, trzeba monitorować jego działanie i szybko reagować na ewentualne błędy. A takie pojawiły się na etapie wpisywania niektórych nazw miejscowości. Mowa o nazwach dwuczłonowych, które Klienci wpisywali uznaniowo – jedni ze spacją, inni z pauzą lub półpauzą. Mały błąd, ale system walidował całość jako niepoprawną (pomimo zgodności kodu i miasta). Efekt – nie można sfinalizować zamówienia. Ponieważ monitorowaliśmy sytuację na bieżąco, błąd został szybko naprawiony.
Nie można było przewidzieć, w jakiej formie Klienci będą wpisywać dwuczłonowe nazwy, dlatego pozostawiliśmy im dowolność. To wymagało zmian w wersji porównawczej, “bazowej” każdej z nazw. Znormalizowaliśmy je, czyli usunęliśmy wszystkie znaki specjalne (spacje, pauzy etc.) i wielkie litery. Dzięki temu, niezależnie od formy zapisu nazw miejscowych, system waliduje je jako poprawne.
Nasza rola
Wiele razy podkreślamy, że naszą rola jest doradzanie. Tutaj wybór narzędzia, rzetelna weryfikacja z czym mamy do czynienia, były kluczowe. Druga sprawa, to optymalizacja – jesteśmy w tym dobrzy, zawsze szukamy rozwiązań, dzięki którym coś można zrobić jeszcze lepiej. Nasi Klienci to doceniają.
3 rady dla Ciebie
- Słuchaj swoich Klientów i pracowników – to oni często zwracają uwagę na istotne niedogodności, błędy, których Ty lub Twój support techniczny nie zauważacie i również pod tym kątem optymalizuj działanie sklepu. Dzięki temu oszczędzasz czas, pieniądze i podnosisz zadowolenie Klientów. W tym przypadku to pracownicy zwrócili uwagę na potrzebę wdrożenia walidacji kodów, a Klienci sklepu na problemy z weryfikacją dwuczłonowych nazw miejscowości.
- Małe rozwiązanie programistyczne może znacząco zautomatyzować i przyspieszyć wiele procesów. Nie ignoruj tego – mała rzecz naprawdę może załatwić dużą sprawę, uprościć i usprawnić działanie Tobie, Twoim pracownikom i Klientom. Nie bój się pytać swoich wykonawców, supportu technicznego o takie właśnie rzeczy.
- Jeśli stosujesz rozwiązania, które opierają się na zewnętrznych bazach danych, zachowaj dużą ostrożność. Szukaj pewnych źródeł danych, dobrze je zweryfikuj. Legalne i aktualne źródło to klucz do poprawnego działania modułów, aplikacji etc. Nie opieraj rozwiązań na tym, co w działaniu lub pochodzeniu jest wątpliwie.