Troubleshooting
WooCommerce Pohoda Connector
Spustenie batch konektora zobrazuje error „curl is not recognized“
Problém: Pri spustení batch konektora na strane lokálnej alebo sieťovej Pohody sa zobrazuje command line error „curl is not recognized as an internal or external command“.
Príčina: Vo Windows-e, na ktorom beží lokálna inštancia Pohody alebo ktorý má vzdialený prístup na sieťovú Pohodu, nie je nainštalovaný command line tool cURL. Tento open software tool zabezpečuje prenos dát medzi systémami. V prípade nášho batch konektora ide o zasielanie požiadaviek z Pohody do API e-shopu.
Riešenie: Pre inštaláciu a aktiváciu cURL môžete použiť tento postup https://stackoverflow.com/a/16216825.
Log v plugine vypisuje error „Failed connect to API. Incorrect credentials.“
Problém: Aj keď v konfigurácii batch konektora a e-shop pluginu máte zadané správne a zhodné REST API prihlasovacie údaje (E-shop API prihlasovacie meno, E-shop API heslo), môže nastať situácia, že synchronizácia neprebieha správne a v logoch e-shop pluginu je zapísaný nasledovný error:
REQUEST >>> Success connect to API.
REQUEST >>> ERROR: Failed connect to API. Incorrect credentials.
Príčina: Verifikácia prihlasovacích údajov prichádzajúcich z batch konektora do e-shopu prebieha prostredníctvom Basic HTTP authentication. Príčinou daného problému môže byť, že na web hostingu e-shopu nie je Basic HTTP authentication povolený, alebo je táto metóda overenia prístupu explicitne zablokovaná.
Riešenie: Na web hostingu e-shopu preverte, či Basic HTTP authentication máte povolené. Môže ísť o nastavenie v rámci hostingu alebo o potrebný zápis v súbore .htaccess.
Odoslaná požiadavka z Pohody nedorazí do e-shopu
Problém: Aj keď v konfigurácii batch konektora a e-shop pluginu máte zadané správne a zhodné REST API prihlasovacie údaje (E-shop API prihlasovacie meno, E-shop API heslo), môže nastať situácia, že synchronizácia medzi Pohodou a e-shopom vôbec nefunguje a v logoch e-shop pluginu nie je zapísaný žiadny záznam o prichádzajúcej požiadavke z Pohody.
Príčina: Pokiaľ požiadavka z Pohody nedorazí do e-shopu, pričom ale spustenie batch konektora nevykazuje žiadny error, komunikáciu medzi systémami môže blokovať buď obmedzenie odosielania požiadavky na strane Pohody, alebo obmedzenie prijímania požiadavky na strane e-shopu, resp. web servera.
Riešenie:
1. Na strane Pohody preverte, či spustenie batch konektora neblokuje antivírusový program. Pre istotu v ňom povoľte batch konektor, resp. spúšťacie batch súbory wc.bat a wc-mserver.bat tak, že ich pridáte medzi výnimky a zadefinujete, aby ich antivírusový program ignoroval.
2. Na strane e-shopu preverte nastavenie security pluginu, ktorý máte v e-shope nainštalovaný a aktívny, či je volanie REST API povolené. Ak je povolené, preverte, či spracovanie požiadavky na REST API nie je obmedzené na IP adresy odosielateľa požiadavky. Ak obmedzenie na IP adresy máte z bezpečnostných dôvodov nastavené, do whitelistu IP adries pridajte IP adresu PC alebo servera, z ktorého batch konektor posiela požiadavky do e-shopu.
3. Niektoré web hostingy s predinštalovaným WordPress-om implicitne požadujú aktívnu WP funkcionalitu „Application Passwords (Heslá aplikácií)“ a tým pádom môžu blokovať požiadavky prichádzajúce na REST API. V prípade, že túto funkcionalitu nemáte v e-shope deaktivovanú (napr. cez security plugin), tak pre jeho deaktiváciu môžete použiť plugin Disable Application Passwords, alebo jednoducho pridáte do súboru functions.php v šablóne vášho e-shopu tento filter hook:
add_filter( 'wp_is_application_passwords_available', '__return_false' );
4. V prípade, že nechcete alebo nemôžete v e-shope globálne deaktivovať „Application Passwords (Heslá aplikácií)“, je potrebné vytvoriť WP používateľa pre účely REST API. Funkcia „Application Passwords (Heslá aplikácií)“ Vám vygeneruje heslo, ktoré je potrebné zadať jednak v nastavení nášho pluginu na strane e-shopu ako prihlasovacie API údaje, a jednak v našom Pohoda batch konektore na strane Pohody v súbore wc-config.cmd.
Príklad:
V administrácii e-shopu si vytvorte WP používateľa s ľubovoľnou rolou. Zadajte mu používateľské meno, napr. pohodaapiuser, e-mail môže byť fejkový. Po vytvorení a uložení WP používateľa sa zobrazí časť Heslá aplikácií, kde do poľa Nové meno hesla aplikácie zadajte prihlasovacie meno, v našom príklade pohodaapiuser:
Po kliknutí na tlačidlo Pridať nové heslo aplikácie systém vygeneruje heslo a priradí ho k používateľovi pohodaapiuser:
Prihlasovacie meno používateľa a heslo zadajte v nastavení nášho pluginu ako API prihlasovacie údaje:
Prihlasovacie meno používateľa a heslo zadajte v konfiguračnom súbore wc-config.cmd v našom Pohoda batch konektore:
Pohoda mServer spustený nonstop prestane komunikovať
Problém: Ak pre synchronizáciu medzi e-shopom a Pohodou používate riešenie cez Pohoda mServer, pri jeho nonstop behu môže dochádzať k jeho zaseknutiu, tzn. mServer prestane komunikovať s naším batch konektorom a Pohodou a je potrebné ho reštartovať. Podobný problém môže nastať, ak počítač alebo server s Pohodou sa reštartuje a pozabudne sa na opätovné spustenie Pohoda mServera.
Príčina: Najčastejšou príčinou zaseknutia mServera je jeho nepretržitý chod a aj Stormware ako tvorca Pohody neodporúča, aby mServer bol spustený nonstop.
Riešenie: Náš batch konektor umožňuje nastaviť, aby sa Pohoda mServer aktivoval (spustil) len vtedy, ak ho konektor potrebuje pre spojenie s Pohodou („on demand“). V praxi to znamená, že Pohoda mServer nie je spustený nonstop, ale len v tom momente, kedy dochádza k výmene dát medzi batch konektorom a Pohodou. Pri spustení batch konektora sa mServer zapne, po skončení behu batch konektora sa mServer automaticky vypne. Pre tento spôsob komunikácie stačí v našom batch konektore v konfiguračnom súbore „wc-config.cmd“ zadať do atribútu „pohoda_mserver_name“ názov mServera.
Do e-shopu sa nedoťahujú PDF faktúry z Pohody
Problém: Pri synchronizácii faktúr sa v e-shope zobrazujú čísla faktúr vygenerovaných v Pohode, ale nie je možné ich zobrazovať a ani posielať zákazníkom e-shopu.
Príčina: Aby sa faktúry v e-shope zobrazovali, prípadne aby ich bolo možné automaticky mailom odosielať zákazníkom e-shopu, plugin potrebuje mať definované, ktorú tlačovú zostavu faktúry si má z Pohody dotiahnuť.
Riešenie: V nastavení pluginu v záložke „Faktúry“ zadajte do atribútu „Tlačová zostava faktúr“ hodnotu ID tlačovej zostavy z Pohody, ktorú chcete doťahovať. Hodnotu ID nájdete v Pohode – otvoríte si agendu Faktúry, v hornom menu kliknete na Súbor > Tlačové zostavy, vyberiete tlačovú zostavu a pravým kliknutím myšky si zobrazíte Vlastnosti zostavy, kde uvidíte hodnotu ID zostavy. Štandardné ID zostavy pre vydané faktúry je 190.
Vytvorené faktúry nemajú správny číselný rad
Problém: Vytvorené faktúry z e-shop objednávok nemajú v Pohode správny číselný rad, prípadne z objednávok sa faktúry v Pohode vôbec nevytvárajú.
Príčina: Najčastejšou príčinou problému je nesprávne zadaný prefix číselného radu v plugine. V prípade, že tento prefix v plugine nie je zadaný, resp. je prázdny (záložka „Faktúry“, atribút „Prefix číselného radu faktúr“), Pohoda generuje faktúry podľa základného číselného radu. Ale ak máte v Pohode vytvorený vlastný číselný rad pre faktúry z e-shopu, potrebujete v plugine zadať jeho prefix.
Riešenie: V Pohode si zobrazte zoznam všetkých číselných radov – v hornom menu si otvorte agendu Nastavenie > Zoznamy > Číselné rady. V stĺpci Rad sa zobrazujú prefixy a prefix z daného číselného radu faktúr skopírujte a vložte do pluginu do atribútu „Prefix číselného radu faktúr“.
Vytvorené faktúry nemajú správnu predkontáciu
Problém: Vytvorené faktúry z e-shop objednávok nemajú v Pohode správne priradenú predkontáciu.
Príčina: V nastavení pluginu v záložke „Faktúry“ v atribúte „Predkontácia pre faktúry“ nie je vôbec zadaná hodnota skratky predkontácie, alebo je zadaná nesprávna hodnota.
Riešenie: V Pohode si zobrazte zoznam všetkých predkontácií – v hornom menu si otvorte agendu Účtovníctvo > Predkontácie. V stĺpci Skratka sa zobrazujú skratky predkontácií a skratku z danej predkontácie vydaných faktúr skopírujte a vložte do pluginu do atribútu „Predkontácia pre faktúry“.