Kiedy strona firmowa potrzebuje integracji z systemami

Strona firmowa najczęściej kończy się na formularzu, który wysyła wiadomość na skrzynkę. Ktoś ją czyta, przepisuje dane do arkusza albo do systemu, i dopiero tam zaczyna się właściwa praca.

To działa i przy kilku zgłoszeniach tygodniowo nie ma sensu zmieniać. Poniżej lista sytuacji, w których połączenie strony z innymi systemami zaczyna się zwracać, oraz tych, w których jest wydatkiem bez pokrycia.

Cztery integracje, które najczęściej mają sens

Pobieranie danych firmy po numerze NIP. Zamawiający wpisuje jedną rzecz, a nazwa i adres uzupełniają się z publicznego rejestru (API rejestru REGON prowadzone przez Główny Urząd Statystyczny). Dwie korzyści naraz: mniej pól do wypełnienia, czyli mniej porzuconych zamówień, i dane w takiej postaci, w jakiej są w rejestrze, bez literówek, które potem trzeba prostować na fakturze. To jedna z tańszych integracji, jakie istnieją, i jedna z najbardziej widocznych dla klienta.

Płatność online przy zamówieniu. Sens ma wtedy, gdy dziś wysyłasz dane do przelewu i czekasz, aż ktoś zapłaci. Każdy dzień zwłoki to szansa, że zamawiający się rozmyśli. Przy usługach kupowanych pod wpływem chwili różnica bywa duża, przy zamówieniach uzgadnianych tygodniami żadna.

Przy okazji da się sprawdzić status podatnika w wykazie podatników VAT Ministerstwa Finansów, co przy sprzedaży dla firm bywa potrzebne niezależnie od wygody wypełniania formularza.

Automatyczne wystawienie faktury po opłaceniu. Warto policzyć uczciwie: ile minut zajmuje wystawienie jednej i ile ich jest w miesiącu. Pięć faktur miesięcznie to kwadrans pracy. Pięćdziesiąt, z których każda ma iść tego samego dnia, to już inna rozmowa.

Przekazanie zgłoszenia do systemu obsługi klientów. Sensowne, gdy zgłoszeniami zajmuje się więcej niż jedna osoba albo gdy trzeba wiedzieć, co się z nimi stało. Przy jednej osobie czytającej skrzynkę system obsługi bywa dokładaniem sobie pracy.

Integracja, o której nikt nie pamięta

Jeśli Twoja strona kieruje ludzi do zewnętrznego systemu, w którym dzieje się właściwa transakcja, to z punktu widzenia pomiaru masz dwa różne miejsca, które o sobie nie wiedzą. Strona wie, kto przyszedł. System wie, kto kupił. Nikt nie wie, że to ta sama osoba.

To jest częstszy problem, niż się wydaje: system rezerwacji, panel zapisów, sklep na innym adresie. Skutek jest taki, że nie da się powiedzieć, która reklama albo która podstrona przyniosła pieniądze, więc każda decyzja o budżecie jest zgadywaniem.

Rozwiązanie polega na przekazaniu do tego systemu identyfikatora wizyty i odesłaniu z powrotem informacji, że transakcja doszła do skutku. Dwa szczegóły, które zwykle wychodzą po drodze.

Po pierwsze, przechwytywanie wywołań w cudzym systemie musi obejmować oba sposoby, w jakie strony rozmawiają z serwerem. Nowsze biblioteki używają jednego mechanizmu, starsze i część popularnych narzędzi drugiego. Most, który łapie tylko jeden, działa u połowy odwiedzających i nikt tego nie zauważa, dopóki liczby się nie rozjadą.

Po drugie, trzeba ustalić z dostawcą systemu, co dokładnie znaczy zdarzenie zakupu: opłacone czy rozpoczęte płacenie. To brzmi jak szczegół, a decyduje o tym, czy raport pokazuje sprzedaż, czy chęci.

Jak to zbudować, żeby awaria u kogoś innego nie była Twoją awarią

Jedna zasada, która oszczędza najwięcej kłopotów: zgłoszenie najpierw zapisz u siebie, potem przekazuj dalej.

Jeśli formularz w całości zależy od cudzego systemu, każda jego awaria jest Twoją awarią, a zgłoszenie przepada bez śladu. Zapis lokalny plus ponowienie przy niepowodzeniu sprawia, że najgorsze, co się dzieje przy awarii, to opóźnienie.

To samo dotyczy poczty. Wiadomość z formularza potrafi zniknąć po drodze albo trafić do folderu ze spamem. Jeśli nie ma jej nigdzie poza skrzynką, nie dowiesz się, że ktoś próbował się skontaktować. Kopia zgłoszenia po swojej stronie kosztuje kilkanaście linijek kodu i zamyka ten temat.

Czego nie nazywać integracją

Wpięcie do kodu strony kilku cudzych skryptów, po jednym na każde narzędzie, nie jest integracją. To dokładanie ciężaru, który odwiedzający pobiera przy każdym wejściu, i widać to w pomiarach szybkości.

Prawdziwa integracja dzieje się po stronie serwera, już po wysłaniu formularza, i jest dla odwiedzającego niewidoczna. Jeśli po dodaniu „integracji" strona zaczyna się wolniej otwierać, prawdopodobnie dostałeś to pierwsze.

Kiedy się nie opłaca

Trzy sytuacje, w których odradzam i mówię to przed wyceną.

Zgłoszeń jest kilka tygodniowo. Przepisanie danych z pięciu wiadomości zajmuje kwadrans. Integracja kosztuje kilka tysięcy i wymaga utrzymania, bo systemy po drugiej stronie się zmieniają. Rachunek nie wychodzi i nie warto go naciągać.

Proces po drugiej stronie nie jest ustalony. Jeśli nie wiadomo, kto i kiedy odpowiada na zgłoszenie, automatyczne przekazanie go do systemu niczego nie naprawi. Zgłoszenia będą leżeć w innym miejscu, tyle że szybciej tam trafią.

System po drugiej stronie nie ma sposobu na połączenie i nie zamierza go mieć. Wtedy każda droga na skróty, jak odczytywanie tego, co system pokazuje w przeglądarce, jest krucha i potrafi przestać działać po dowolnej aktualizacji u dostawcy. Czasem tańsza jest zmiana systemu niż jego obchodzenie.

Od czego zacząć

Zanim zapytasz o wycenę, warto mieć jedną rzecz: opisaną drogę zgłoszenia od momentu, w którym ktoś kliknie „wyślij", do momentu, w którym sprawa jest zamknięta. Kto co robi, w jakim systemie, ile to zajmuje.

Na takim opisie widać w pięć minut, gdzie jest miejsce na automat, a gdzie problemem jest sam proces, którego żadna integracja nie naprawi. To pół godziny Twojej pracy, które oszczędza rundę domysłów po obu stronach i zwykle skraca sam projekt.

Najczęstsze pytania

Zależy od liczby dokumentów. Przy kilku fakturach miesięcznie wystawianych ręcznie integracja jest droższa niż problem, który rozwiązuje. Przy kilkudziesięciu, zwłaszcza gdy każda musi trafić do klienta tego samego dnia, zwraca się w kilka miesięcy. Policz minuty na jeden dokument razy liczba dokumentów, zanim zapytasz o cenę.
Klient wpisuje w formularzu numer NIP, a pola z nazwą i adresem uzupełniają się same z publicznego rejestru. Zamawiający wpisuje jedną rzecz zamiast pięciu, a Ty dostajesz dane w formie, w jakiej są w rejestrze, bez literówek. To jedna z tańszych integracji i jedna z tych, które najbardziej widać przy zamówieniu.
Czasem tak, ale to trudniejsza droga. Jeśli system nie udostępnia sposobu na połączenie, zostaje przekazanie danych plikiem, wysyłką na wskazany adres albo odczytem tego, co system pokazuje w przeglądarce. Każde z tych rozwiązań jest mniej trwałe i wymaga uzgodnienia z dostawcą systemu, żeby nie łamać jego warunków.
Prosta, jak przekazanie zgłoszenia z formularza do systemu obsługi klientów, to zwykle jeden do trzech dni. Płatności online z obsługą zwrotów i statusów to tydzień do dwóch. Najwięcej czasu zjada nie kod, tylko czekanie na dostępy i wyjaśnianie przypadków, w których coś idzie inaczej niż w dokumentacji.
Dlatego integrację buduje się tak, żeby awaria po drugiej stronie nie zablokowała Twojej strony. Zgłoszenie ma zostać zapisane u Ciebie i dopiero potem przekazane dalej, z ponowieniem, gdy się nie uda. Jeśli formularz zależy w całości od cudzego systemu, jego awaria jest Twoją awarią.
Powinny być niewidoczne dla odwiedzającego, bo dzieją się po stronie serwera już po wysłaniu formularza. Problem pojawia się wtedy, gdy ktoś wpina cudze skrypty do kodu strony, po jednym na każde narzędzie. Wtedy nie jest to integracja, tylko dokładanie ciężaru, i widać to w pomiarach.

Sprawdzam, co da się połączyć bezpośrednio, a co taniej wychodzi zostawić człowiekowi. Wycena po rozmowie o tym, jak wygląda dziś droga zgłoszenia.

Porozmawiajmy