Ten sam fakt gospodarczy jest w każdym systemie zapisany inaczej. Integracja polega w dużej mierze na tłumaczeniu jednego zapisu na drugi.
Pola — który element odpowiada któremu. Słowniki — jak przetłumaczyć wartości, na przykład statusy zamówień. Jednostki i formaty — daty, waluty, separatory, jednostki miary.
Najwięcej cichych błędów siedzi w trzecim poziomie. Data zapisana w innej kolejności, kwota z przecinkiem zamiast kropki, cena brutto wstawiona w pole ceny netto — wszystkie te wartości przechodzą kontrolę poprawności i ujawniają się dopiero przy rozliczeniu.
Od spisu pól po obu stronach z zaznaczeniem, które są wymagane. Pole wymagane u partnera, a nieprowadzone u nas, trzeba czymś uzupełnić — i to jest decyzja do podjęcia przed budową, nie w trakcie. Ten sam spis przydaje się potem przy ustalaniu, co idzie w którą stronę.
Najczęstsze źródło problemów. Każdy system ma własny zestaw i rzadko odpowiadają sobie jeden do jednego. Mapowanie musi rozstrzygnąć, co zrobić ze statusem, który nie ma odpowiednika.
Trudniejszy przypadek to zależność wielu do jednego. Kilka statusów partnera oznacza u nas ten sam stan, więc tłumaczenie w drugą stronę przestaje być jednoznaczne. Wtedy trzeba wskazać, który status jest wysyłany domyślnie.
Mapowanie pól nie ma sensu, dopóki nie wiadomo, który towar u nas odpowiada któremu u partnera. Powiązanie po kodzie kreskowym albo po symbolu obecnym w obu systemach jest trwałe; powiązanie po nazwie rozpada się przy pierwszej korekcie literówki. Jeśli kartoteki są zaniedbane, ich uporządkowanie stanowi osobny etap prac — zwykle dłuższy niż samo napisanie integracji.
Trzeba też zdecydować, co dzieje się z pozycją, której nie da się dopasować: pomijamy ją, tworzymy nową czy zatrzymujemy do sprawdzenia. Automatyczne tworzenie brakujących kartotek jest wygodne i najszybciej zaśmieca bazę duplikatami.
Zawsze się pojawi. Rozwiązania są trzy: wartość domyślna, pominięcie pozycji albo zatrzymanie do decyzji. Wybór zależy od tego, jak istotne jest pole — przy adresie dostawy nie ma miejsca na wartość domyślną.
Niezależnie od wyboru zdarzenie powinno zostawić ślad. Ciche podstawienie wartości domyślnej jest wygodne dziś i staje się źródłem rozbieżności, których po kilku miesiącach nikt nie umie wytłumaczyć.
Zmiana słownika u partnera nie powinna wymagać zmiany programu. Mapowanie zapisane jako dane pozwala je poprawić bez wdrożenia nowej wersji.
To także powód, dla którego mapowanie naturalnie trafia do warstwy pośredniej: jeden zestaw reguł obsługuje wszystkie połączenia, zamiast powielać te same tłumaczenia w każdej integracji z osobna.
Po roku nikt nie pamięta, dlaczego dany status tłumaczy się właśnie tak. Krótki komentarz przy regule oszczędza godzin analizy.
Warto też zapisać, kto rozstrzygnął wątpliwość. Mapowanie jest decyzją handlową ubraną w technikę i najczęściej trzeba do niej wrócić wtedy, gdy zmienia się sposób pracy, a nie oprogramowanie.