Elektronska trgovina WooCommerce
Poglavje opisuje kako vklopimo izmenjavo podatkov med e-računi in spletno trgovino na platformi WooCommerce.
Podprte so verzije od 2.4. do 3.6, oziroma tudi vse nadaljne verzije, ki bodo še podpirale "Legacy v3" API.
Nastavitve v WooCommerce
Za vklop izmenjave podatkov z WooCommerce je potrebno najprej aktivirati WooCommerce REST API. Kako se to naredi je razvidno na naslednji povezavi:
https://docs.woothemes.com/document/woocommerce-rest-api/ 
Vklop izmenjave podatkov
Ko je aktiviran WooCommerce REST API moramo za izmenjavo podatkov pripraviti naslednje podatke:
- URL naslov trgovine oz. administracijskega vmesnika
- v nastavitvah za API v WooCommerce aplikaciji je potrebno generirati "consumer secret" in "consumer key"
- Consumer secret
- Consumer key
 | Če se uporablja WooCommerce verzije 2.6 ali novejše, je potrebno omogočiti še t.i. "legacy API" oz. API iz prejšnjih verzij WooCommerce. To lahko storimo pod "Nastavitve -> Napredno -> Zastarel API -> Omogoči zastarel API" |
Znotraj e-računov pa določimo skladišče in stroškovno mesto na katerem se bo vodilo poslovanje v elektronski trgovini.
Nastavitve za elektronsko trgovino vnesemo po zgledu spodnjega primera. Levo so podatki iz uporabniškega vmesnika WooCommerce, katere vnesemo v našo spletno aplikacijo, kot prikazuje desna stran:
| | ![]() |
| | Slika 1: Nastavitve za izmenjavo podatkov za WooComerce |
|
 | V kolikor uporabljamo WooCommerce 3.6+ je dovolj, da v polje za URL naslov strežnika vpišemo samo domeno trgovine v obliki https://www.sivalni-stroji.si |
 | Dodatne sinhronizacije, ki so na voljo za platformo WooCommerce in WooCommerce 3.6+Za uporabnike, ki imajo sinhronizacijo aktivirano za spletno platformo WooCommerce je poleg standardne sinhronizacije na voljo tudi takojšnja sinhronizacija stanja zaloge iz programa e-racuni v spletno trgovino in uvoz šifranta artiklov iz spletne trgovine v program e-racuni.com. Za platformo WooCommerce 3.6+ pa dodatno še izvoz šifranta artiklov iz programa e-racuni v spletno trgovino. Ko smo vnesli nastavitve sinhronizacije in smo sinhronizacijo aktivirali bodo te dodatne sinhronizacije na voljo s klikom na gumb, kot kaže slika: | | ![]() | | | Slika 2: Dodatne možnosti sinhronizacije podatkov |
|
Dodatna možnost "Uvozi šifrant artiklov iz spletne trgovine" ponuja še možnost, kjer si lahko obkljukamo ali želimo, da se podatki artikla, ki so trenutno v spletni aplikaciji e-racuni.com prepišejo z uvoženimi podatki iz trgovine (obkljukamo to možnost) ali ne (je ne obkljukamo) 
Dodatna obdelava pri sinhronizaciji s spletno trgovino: "Izvozi artikle" v WooCommerce 3.6+ izvozi vse aktivne artikle pod določenim pogojem. Tisti, ki imajo status "viden v katalogu/trgovini", "artikle dodane v spletno tržnico" ali "vse artikle" tako, da so ti vidni v prodaji na WooCommerce 3.6+: 
Dodatno pa si lahko v tem sklupu označimo avtomatski izvoz artiklov, ki se izvaja pod enakimi pogoji, kot ročna masovna obdelava: 
|
Nastavitve v WooCommerce: vtičnik za prenos davčne številke kupca
Podatki o kupcu (ime, priimek, naslov, mail, tel.) se nam samodejno prenesejo s podaki na naročilu kupca. Medtem, ko je potrebno za prenos davčne številke kupca, v WooCommerce akitivirati vtičnik za prenos. Vsa navodila za dodajanje vtičnika so dosegljiva na naslednji povezavi.
Uvoz naročil preko Webhookov
Po tem ko vklopite izmenjavo podatkov, se naročila v E-račune prenesejo na približno vsako 1 uro. Če želite, da se naročila v E-račune prenesejo takoj, ko so oddana v spletni trgovini, si lahko vključite sinhronizacijo preko webhookov.
- Zgenerirajte Unikatni identifikator "Web Hook URL" v nastavitvah spletne trgovine v E-računih.
- Dodajte webhooka v spletni trgovini. Nastavitve -> API -> Webhooki -> Dodaj webhook. (Slika 5) Uporabite spodnje nastavitve:
- Za ustvarjena naročila (slika 3)
- Naziv: Vpišite poljuben naziv
- Status: Aktivni
- Tema: Naročilo je ustvarjeno
- URL poizvedbe: Zgeneriran "Web Hook URL" iz nastavitev spletne trgovine v E-računih (slika 2)
- Secret: Vrednost se zgenerira avtomatsko in je ni potrebno spreminjati
- Različia API: Legacy API v3 (v primeru, ko imamo nastavljeno, da trgovino poganja WooCommerce) oz. WP REST API integracija v3 (v primeru, ko imamo nastavljeno, da trgovino poganja WooCommerce 3.6+)
- Za posodobljena naročila (slika 4)
- Naziv: Vpišite poljuben naziv
- Status: Aktivni
- Tema: Naročilo je posodobljeno
- URL poizvedbe: Zgeneriran "Web Hook URL" iz nastavitev spletne trgovine v E-računih (slika 2)
- Secret: Vrednost se zgenerira avtomatsko in je ni potrebno spreminjati
- Različia API: Zastarel API v3 (v primeru, ko imamo nastavljeno, da trgovino poganja WooCommerce) oz. WP REST API integracija v3 (v primeru, ko imamo nastavljeno, da trgovino poganja WooCommerce 3.6+)
Ker se ob vklopu webhookov naročila preneseje takoj, se periodična sinhronizacija na 1 uro izklopi. Izvede se le še enkrat na dan (ponoči), da se lahko prenesejo manjkajoča naročila, ki se mogoče niso prenesla zaradi napake pri prenosu preko webhookov. Če webhooki v WooCommercu niso omogočeni, se naročila ne bodo prenašala.
Pri uporabi webhookov se sinhronizirajo tudi statusi. Tako se naročilom ob spremembi statusa v spletni trgovini ta takoj spremeni tudi v E-računih.
| | ![]() |
| | Slika 3: Zgeneriran "Web hook URL" po kliku na gumb "Generiraj" |
|
V kolikor smo v nastavitvah sinhronizacije v programu izbrali, da trgovino poganja WooCommerce:
| | ![]() |
| | Slika 4: Nastavitve za webhook za ustvarjeno naročilo v WooCommerce |
|
| | ![]() |
| | Slika 5: Nastavitve za webhook za posodobljeno naročilo v WoocCommerce |
|
V kolikor smo v nastavitvah sinhronizacije v programu izbrali, da trgovino poganja WooCommerce 3.6+:
| | ![]() |
| | Slika 6: Nastavitve za webhook za ustvarjeno naročilo v WooCommerce 3.6+ |
|
| | ![]() |
| | Slika 7: Nastavitve za webhook za posodobljeno naročilo v WooCommerce 3.6+ |
|
| | ![]() |
| | Slika 8: Primer pravilno nastavljenih webhookov v WooCommerce |
|