Akronim kontrahenta między xSale a ERP synchronizowany jest po niewidocznym w interface „ForeignCode”, co w efekcie powoduje, że:
- jeżeli posiadasz kontrahentów pobranych z ERP (czyli np. używasz ich do B2B) to logika działania zostanie taka sama a synchronizacja jest po wartości pola „Kod”
- jeżeli importowany jest kontrahent ze sklepu (esklep lub marketplace) to przy wysyłaniu go do ERP jest weryfikowany jego kod sprawdzając pewne warunki:
- Kod uznajemy za nieprawidłowy w momencie kiedy:
- Jest pusty
- Ma więcej niż 20 znaków
- Posiada znaki kontrolne (znak nowej linii, znaki specjalne, itp..)
- Zawiera inne znaki niż:
- A-Z
- a-z
- 0-9
- ~`!@#$%^&*()_+={}|[]:”;<>?,/ (czyli np. „.”, „-”, „’” i „ ”)
- Kod uznajemy za nieprawidłowy w momencie kiedy:
- Jeżeli kod zostanie uznany za niepoprawny generowany jest całkowicie nowy kod z którym pojawi się kontrahent w ERP (oraz zapisujemy go w niewidocznych w interface polu „ForeignCode”).
Dodatkowo w momencie kiedy w interface xSale w polu „Kod” zostanie zmieniony kod kontrahenta, „ForeignCode” zostanie „wyzerowany” co w efekcie spowoduje przy następnym wysyłaniu zamówienia ponowne przejście logiki weryfikacji kodu (jest to wyjście awaryjne w przypadku gdy się okaże, że np. my uznajemy jakiś kod za poprawny a ERP go nie przyjmuje).
Dodatkowo w xSale działa mechanizm zabezpieczający przed powielaniem się kontrahentów i poza samym akronimem weryfikuje również pola NIP oraz e-mail. Jeśli nie znajdzie kontrahenta po akronimie ale znajdzie takiego samego np. po NIP to podepnie się pod niego w ERP zamiast zakładać nowego.
Kolejność i sposób wykrywania kontrahenta jest konfigurowalna w kreatorze integracji z ERP.