Az oldal megtekintéséhez kérjük, engedélyezze a JavaScriptet.

sERPa súgó

A sERPában levő termék adatok, és készletadatok átadása Shoprenter felé (REST) API-n keresztül, amikor a termék törzs, ár, vagy készlet változás történik az adatokban, valamint rendelés (fej+tétel) és a rendelésen levő ügyfél átvétele.

 

Egy adatbázisban több Shoprenter kapcsolat használható. (A rendelésen beérkező StoreName mezőből vizsgálja a program, hogy melyik szerint dolgozzuk fel a rendelést, a paraméterben megadott Webáruház Internet URL mező szerint.)

 

Fontos: A Shoprenter csak GOLD csomag vásárlása esetén alkalmas az általános API kapcsolatra.

https://www.shoprenter.hu/api/doc

https://support.shoprenter.hu/hc/hu/articles/215106158-ShopRenter-API

Webhook https://support.shoprenter.hu/hc/hu/articles/215106408-Automatizmusok

Leírás, algoritmus

A paraméterek a Webáruház paraméter funkcióban adhatók meg, pl. termékek köre, használt ártábla, raktár, vevőrendelés sorozat, amelyre jönnek a vevőrendelések. (ShopRenter típust kell választani)

(Ehhez a típushoz nem szükséges Webáruház kapcsolat szolgáltatás (webservice) telepítése).

 

A requestek maximális száma 3/jelentkezés/üzlet/másodperc. A határérték túllépése 429-es hibakódot eredményez. Ez percenként 180 kérést jelent.

Beüzemelési lépések

API Kapcsolat

A Shoprenter admin felületén:

Beállítások / Integrációk / API beállítások menüpont

Engedélyezni kell a státuszt, kell legyen felhasználó és jelszó, valamint kell legyen API URL, amelyet a sERPa webáruház paraméterben kell megadni (Általános fül).

 

Nagyításhoz kattintson a képre!

- API beállítások a Shoprenter admin felületen -

Nagyításhoz kattintson a képre!

- API státusz beállítása a Shoprenter admin felületen -

 

Nagyításhoz kattintson a képre!

- Paraméterezés a sERPa Webáruház paraméterben -

 

Nem baj, hogy a ShopRenter oldalán az API URL http-vel kezdődik, a sERPában írjuk https:// formában.

 

 

Törzsadatok összekapcsolása

Áfa kulcs

Beállítások\Bolt beállítások\Adó és osztályok

Az itt felvett vagy alapból megkapott kulcsoknak meg kell nézni, szerkesztés gombbal tax_class_id-t (tipikusan: 0 áfa esetén 11; 27 áfa esetén 10 - pirossal bekeretezett mezőben látható)

amelyet a sERPa webáruház paraméterben megadni(További adatok fül – Áfa grid).

Nagyításhoz kattintson a képre!

- Áfa kulcsok a Shoprenter admin felületen -

Nagyításhoz kattintson a képre!

- Áfa kulcsok a sERPa Webáruház paraméterben -

 

Nyelv

Beállítások\Bolt beállítások\ Nyelv beállítások

Az itt felvett vagy alapból megkapott kulcsoknak meg kell nézni, szerkesztés gombbal language_id-t (tipikusan: magyar esetén 1; angol esetén 3 - pirossal bekeretezett mezőben látható)

amelyett a sERPa webáruház paraméterben megadni(További adatok fül –  Nyelv).

Nagyításhoz kattintson a képre!

- Nyelv a Shoprenter admin felületen -

Nagyításhoz kattintson a képre!

- Nyelv a sERPa Webáruház paraméterben -

 

ShopRenter használata esetén a Webáruház frissítés funkció nem szabad használni, nem figyeljük.

Az inicializáláshoz szükséges eljárások futtatása után nincs további teendő (persze, ha minden sikeres és megfelelően működik a kapcsolat).

 

REST napló

A webáruház kapcsolat adatküldés és adatfogadás üzeneteit a sERPában a Rest naplóba naplózzuk.

A naplóbejegyzések típusai "ShopRenter" kezdetűek.

Annak érdekében, hogy a napló ne duzzadjon nagyon nagy méretűre, mindenképp ajánlott beállítani egy időzített törlést erre a naplóra. Ehhez egy Rendszer - Naplók törlése típusú Automatikus üzenet típus felvétele szükséges.

Mivel nem valószínű, hogy a webáruház - sERPa közötti esetleges hibás adatcserét nem vesszük észre 1 hónapon belül, ezért az üzenetben a Visszamenőleges napok száma mezőben 30-60 napot érdemes megadni. Ennyi idő alatt még a legtöbb esetben nem halmozódik fel károsan nagy mennyiségű naplófájl, amely az adatbázis méretét nagyon megnövelné.

 

Meglévő Webáruház összekötése sERPa adatbázissal

Amennyiben van már működő shoprenter webáruházunk, és szeretnék összekapcsolni a sERPa-val, akkor a webáruház felparaméterezése némileg máshogy történik.

A webáruház paramétert azonosan be kell állítani, ahogyan azt amúgy is meg kell tenni, de nem szabad bekacspolni (használható pipa hamis kell legyen).

Ezek előtt vagy után össze kell egyeztetni a Shoprenterben fent lévő termékek, termék kategóriák, kategória tételek (SR-ben egyedi tulajdonság), termékfa (SR-ben Kategória) adatokat. Amennyiben a két helyen ezek megegyeznek, akkor lehet a szinkronizációt elkezdeni.

Első lépésként használhatóra állítjuk a Webáruház paramétert (ne módosítsunk semmit, ami kikerülne a webáruházba,)

Utána három eljárást kell használnunk.

 

1. Futtatni kell a EXEC WEB.ShopRenter2sERPaTermekKategoriaInit @WebaruhazPar_ID=1, @Init=1 eljárást, mely eredményében visszakapjuk azokat a scripteket, melyeket maximum 10-esével futtatva szinkronizáljuk a két rendszer között az adatokat. Fontos, hogy a kategória névnek és tételek nevének egyezni kell a Shoprenterben és a sERPaban.

2. Futtatni kell a EXEC WEB.ShopRenter2sERPaTermekfaInit @WebaruhazPar_ID=1, @Init=1 eljárást, mely eredményáben megtaláljuk azokat a scripteket melyekkel össze tudjuk fésülni a két rendszer adatait. Itt is csak maximum 10 hívást indítsunk egyszerre, mert a Shoprenter több indítás esetén hibára fut.

3. Utolsónak futtassunk a EXEC WEB.ShopRenter2sERPaTermekInit @WebaruhazPar_ID=1, @Init=2 eljárást, ez a Termékeket fésüli össze. Az eredményben szintén sciptek vannak melyeket 10esével szabad lefuttatni.

 
+1. Valamint akciós ár és készletre is futtathatunk.

EXEC WEB.ShopRenter_AkciosAr @Init = 1

EXEC WEB.ShopRenter_Keszlet @Init = 1

 

 

Rendelés elküldése sERPába

Marketing\ Automatizmusok

Itt fel kell venni egy „Webhook” cselekményt, amely azért felel, hogy a webshopból átküldi a sERPa felé a rendelést, amelyhez ASPB2B-t kell telepíteni az IIS-hez, de:

Fontos:

A ShopRenter hitelesítés nélkül hív vissza, ezért a topicon leírttal ellentétben anonymous access engedélyezésével kell telepíteni.

 

A ConnString.inc-ben sql-es hitelesítésű felhasználót (pl ShopRenter) kell megadni, akinek csak a WEB.AdatCsere eljárás futtatására van joga.

létrehozni ezt a felhasználót:

USE master

GO

CREATE LOGIN ShopRenter WITH PASSWORD = 'HasználtErősjelszó1793', CHECK_EXPIRATION = OFF, CHECK_POLICY = OFF

 

ConnSting.inc:

Integrated Security=SSPI; helyett

<%

Dim ConnString

'define the connection string, specify database driver

ConnString="Provider=SQLNCLI11;Data Source=SQL kiszolgáló;Initial Catalog=Adatbázisnév;UID=ShopRenter; Password=HasználtErősjelszó1793;"

%>

 

jogosultságadás a Web.Adatcsere futattásához:

USE Adatbázisnév

GO

GRANT EXECUTE ON WEB.AdatCsere TO ShopRenter

 

Miután lefuttattuk, érdemes lefuttatni az alábbi scriptet, ennek nulla sort kell visszaadni, különben az ownership láncban szakadás van, ami okozhat olyan problémát, hogy a rendelés nem jön be a ShopRenter oldalról.

 

SELECT *

FROM

 sys.schemas s

WHERE

 schema_id BETWEEN 5 AND 16383 AND principal_id <> 1

 AND EXISTS(SELECT 1 FROM sys.tables t WHERE t.schema_id = s.schema_id)

 

 

A paraméterekben az OrderPostURL-ben kell a címet megadni. pl.: https://www.cegnev.hu/bolt/api/ShopRenterOrder

Az URL vége kötelezően /api/ShopRenterOrder

 

sERPa-ból kell létrehozni a webhookot a megfelelő eljárás kézi hívásával:

 

EXEC WEB.ShopRenter_WebHookInit

 

A ShopRenter admin felületén Marketing/Automatizmusok alatt találjuk meg a létrehozott WebHook-ot.

 

Nagyításhoz kattintson a képre!

- Webhook a Shoprenter admin felületen -

Címzett: pl. https://iroda.progen.hu/ShopRenter/api/ShopRenter

Teszt üzenet küldése esetén a hibanaplóba/Web adatcsere naplóba nézzük meg, hogy jött-e valamilyen kérés (hibás eljárás: getOrder), mivel itt csak egy teszt hívás készül, amelyből nem lehet/nem szabad rendelést generálni. (ha már van rendelés akkor az utolsót küldi be újra)

 

Rendelés lekérdezése Shoprentertől

Lehetőség van a paraméterből egy nyomógomb segítségével egy megadott dátumtartományban lekérdezni a rendeléseket, amelyek hivatkozási szám szerint nem szerepelnek a sERPaban azokat importáljuk. A dátumtartomány kezdő dátuma nem lehet régebbi a tárgynapot megelőző 5 napnál.

A lekérdezés és importálás eredményét megmutatjuk egy táblázatban, ezáltal láthatjuk, mely rendeléseket sikerült importálni, illetve megmutatjuk azt is, hogy melyeket nem sikerült abból az okból kifolyólag, hogy korábban már importálva lettek.

 

 

Rendelés módosítása sERPában, változások küldése a Shoprenter felé

Lehetőség van a paraméterben beállítani, hogy rendelések sERPában történő módosítását kiküldjük-e a Shoprenter felé. Ehhez a paraméterben a Rendelések szinkronizálása mező értékét kell igazra állítani.

Ebben az esetben, ha egy olyan rendelést (mely a Shoprenterből érkezett) módosítunk, mentéskor az adott rendelést letöltjük a Shoprenterből ismét, majd a változott adatokkal kiküldjük és ezzel módosul a webáruházban is a rendelés.

Rendelésen módosításkor az alábbi változásokat küldjük ki: új tételek felvétele, tétel törlése, tétel mennyiség, tétel ár módosítás, szállítási mód, fizetési mód (ezek költségeinek) módosítása.

Módosításkor a felhasználónak ellenőrizni kell, hogy a termék ár, vagy mennyiség módosítása miatti végösszeg változás befolyásolja-e a szállítási költséget, amennyiben valamilyen sávos szabályozása van, illetve, hogy a hűségpont rendszer használata esetén módosul-e a vásárló hűségpontja.

Ha a rendelés válaszaiban elutasítás vagy visszamondást végzünk (Vevő rendelés Válasz fül), akkor a Shoprenterben lemódosítjuk a tétel mennyiségét az éppen aktuális rendelt mennyiségre (mivel a Shoprenterben kevesebb lehetőség van az állapotkezelésre), így a sERPában levő rendelt mennyiség megegyezik majd a weben láthatóval. (Pl. rendeltek 20 db terméket, de egyet visszamondtunk és kettőt elutasítottunk, akkor a webshopban 17 db lesz a mennyiség, így a két rendszerben egyforma mennyiség látható).

A vevő rendelésre automatikusan felvett kupon / kedvezménytermék tételeket, fuvarköltséget, utánvételi díjat stb. a felhasználónak ilyen esetben is kézzel kell módosítania, azt nem módosítjuk a vevő rendelés válasz felvételekor! Hiszen a sERPa nem tudhatja, hogy a vásárló elesik-e esetleg egy 5000 Ft-os kupontól amiatt, hogy 10 db termékből 8-at visszamond.

 

Fontos, hogy a pl. a fizetési mód törzs egyezzen, mert kiküldéskor ha a Shoprenter ismeretlent kap akkor kiüresíti az adatot a Shoprenter felületén.

 

 

Sikeres/Sikertelen fizetés

Lehetőség van a bankkártyás fizetések állapotának nyomon követésére megrendeléskor. A sikeres és sikertelen fizetések eltárolásra kerülnek. A vevő rendelésben az általános lapfülön található, további adat táblázatban mentjük le az éppen aktuális fizetési állapotot. A működéshez szükséges a webáruház paraméterben a kifizetési státuszt fizetési állapotra állítani. A Shoprenter admin, Automatizmusok felületén pedig beállítani a Rendelés állapot váltás webhookot.

 

 

Címzett, pl: https://iroda.progen.hu/ShopRenter/api/ShopRenterOrderStatus

Formátum: XML

Elküldendő adatok:

 

order_storeName

order_innerId

orderHistory_status

order_History_statusText

orderHistory_comment

 

Utánvétel fizetés

Lehetőség van beállítani utánvételt, amit az XML-ben át is ad a ShopRenter a sERPa-nak.

1. A ShopRenter admin oldalán, a Beállítások/Rendelési beállítások/Fizetési módok részen tudjuk beállítani az utánvétel díját, a Fizetési illeték és az Adókulcs mezők töltésével.

 

2. sERPa-ban a Webáruház paraméter/További adatok lapfülén fel kell venni egy utánvétel fizetési módot és a gyűjtőt, a Fizetési módok táblázatban.

a.) Ha még nem szerepel Utánvét vagy Utánvétel nevű fizetési mód a programban, akkor a Fizetési módok funkcióban kell létrehozni.

b.) Gyűjtő: a Webshop fizetési mód azonosítója.ShopRenter admin felületén megtalálható fizetési mód beállításoknál lévő nevet kell pontosan megadni.

 

3. A webáruház paraméterben található egy Utánvétel szolgáltatás nevű táblázat, itt a fizetési módot és egy utánvétel szolgáltatást kell kiválasztani.

a.) A 2-es pontban felvett Utánvétel nevű fizetési módot válasszuk ki.

b.) A Termék funkcióban fel kell venni egy szolgáltatást, Bruttó lista árral és Utánvétel elnevezéssel.

 

Utávétel az XML-ben:

<paymentMethodName>Utánvétel</paymentMethodName>

<paymentNetPrice>0</paymentNetPrice>

<paymentGrossPrice>0</paymentGrossPrice>

 

Akciós árak felküldése külön webáruházanként

A felvett akciós ár csak a telephelyben megadottaknak megfelelő webáruházba szinkronizálódik fel.

1.)A Webáruház paraméter / Általános fülén tölteni kell a Saját adat telephely név mezőt.

2.)Az Akciós ár funkció / Érvényességi kör táblázatban tölteni kell a Saját adat és Telephely mezőket, Termékek táblázatban pedig rögzíteni a termékek akciós árát.

A Webáruház paraméter és az Akciós ár funkcióban a Saját adatnak meg kell egyeznie.

Amennyiben nem adjuk meg a Webáruház paraméter / Általános fül / Saját adat telephely név mezőt és az Akciós ár funkcióban a Saját adat és Telephely mezőket, úgy a felvett Akciós árak, a korábban megszokott módon kerülnek átadásra a webáruháznak.

Ha az Akciós ár funkcióban nincs megadva a saját adat mező, akkor a normál saját adathoz fog tartozni és így kerül felküldésre a webáruházhoz.

Az akciós árak közül csak azokat küldjük fel a webáruházba, ahol az Akciós árban az Ügyfél és az Ügyfélkategória mező üres.

 

Termék kategória és Termékfa szinkronizáció kikapcsolható

A WebaruhazPar táblában alapértelmezetten a TermekfaKuldes és TermekBesorolasKuldes mező értéke is 1, a kikapcsoláshoz át kell állítani 0-ra.

 

UPDATE  WebaruhazPar SET TermekBesorolasKuldes = 0 WHERE WebaruhazPar_ID = 0

 

Hűségpontok kezelése

A Webáruház paraméter/További adatok lapfülén található Hűségpontok mezőben be kell állítani egy szolgáltatást, ami a Termékek funkcióban tudunk előzetesen felvenni Pl. Hűségpontok néven. Külön árat a szolgáltatáshoz nem kell beállítani. Az XML-ben a hűségpontok felhasználásával csökkentett árat küldi a ShopRenter sERPa-nak.

A ShopRenter admin oldalán, a Hűségpont rendszer nevű menüponton tudjuk testre szabni a pontokra vonatkozó egyes beállításokat.

 

Hűségpont számítása = SUM(OrderProduct.price * OrderProduct.taxRate) + order.copunGrossPrice + order.shippingGrossPrice + order.paymentGrossPrice - order.totalGross 
Csak akkor lesz hűségpont, ha az így kapott összeg > 0

 

Termék rendelhető állapot bővítése

1. Termékkategória + Tétel:

Ha van az adatbázisban Shoprenter webáruház paraméter (akár használható=0 is), akkor az új verzióra frissítéssel együtt felveszünk az adatbázisba egy új termékkategóriát és négy tételt.

Kategórianév: Shoprenter Rendelhető állapot

Tétel kód/név:

1 / Igen

0 / Nem

3 / Ajánlatkérés

4 / Megrendelem

 

Ha az adatbázisban több Shoprenter paraméter van (akár használható, akár nem), akkor a Kategórianév így nézzen ki: "Shoprenter Olcsodiszkont Rendelhető állapot", ahol az Olcsodiszkont a webáruház paraméter neve.

 

2. Shoprenter webáruház paraméter:

Shoprenter webáruház paraméterben a Termék sáv végére, Státusz kategória + besorolás alá:

Termék kategória legördülő mező: "Rendelhető kategória"

Alatta Rendelhető kategória besorolás, ami csak akkor jelenik meg, ha a Rendelhető kategória nem üres:

- termékkategória kód (Kód)

- termékkategória név (Név)

- rendelhető felsorolt típus (Rendelhető)

 

3. Működés:

Korábbi működés szerint a termék üzenetben az "orderable", azaz a Shoprenterben a "Rendelhető termék" mező értékét a terméktörzsben a "Használható beszerzéskor" mező értéke alapján határoztuk meg. Ha az 1, akkor orderable=1, ha 0, akkor orderable=0. (A Használható eladáskor pipának a Shoprenterben a status, azaz az Állapot mezőre van hatása.)

Ha a webáruház paraméterben a Rendelhető termék kategória ki van töltve ÉS a paraméterben a kategória tételhez hozzá van rendelve a felsoroltból egy érték ÉS az adott termék be van sorolva ennek a kategóriának valamely tételébe, akkor a termékkategória tételek értékétt (0,1,3,4) adjuk át az orderable mezőben, egyébként orderable = Használható beszerzéskor.

Mivel korábban a Termék "Használható beszerzéskor" mező értékétől függött az orderable, ezért ha az adott terméknél fel van véve az itt megjelölt termékkategória, akkor annak értéke írja felül a Használható beszerzéskor mezőből jövő értéket. (Tehát a kategória az erősebb.)

 

A Shoprenter admin felületén a Rendelhető termék mező kerül kitöltésre:

 

A nagyításhoz kattints a képre!

-Shoprenter Admin felület-

- Shoprenter API specifikáció:

https://doc.shoprenter.hu/api/product_extend.html#properties

 

 

Bejövő vevő rendelés - További adat beállítása, módosítása

Beállítás a Webáruház paraméterben:

További adat típus funkcióban fel kell venni egy címkét. A Webáruház paraméter funkció További adatok fülén meg kell adni a Rendelés állapot címke nevű legördülő mezőben ezt a címkét.

Ekkor elérhetővé válik egy új Rendelés állapot táblázat, a következő oszlopokkal:

1.) Fizetési mód - Megadható egy fizetési mód, mint szűrés pl. Készpénz (A vevő rendelésre csak akkor kerül a beállított további adat szöveg, ha a paraméterben beállított fizetési mód lett kiválasztva a webáruházban rendeléskor)

2.) További adat szöveg - Kiválasztható a További adat szöveg funkcióban előzetesen felvett szöveg (Ez a szöveg fog rákerülni a vevő rendelésre)

3.) Kezdő érték - A jelölőnégyzetben bepipálható egy kezdő érték (Ennek hatására a vevő rendelés a beállított szöveggel jön létre)

4.) Külső azonosító - Itt megadható egy Shoprenter rendelés állapot (Így lehet megfeleltetni a további adat szövegeket a webáruházas rendelés állapotokkal. A Shoprenter admin felületről megnézhető az állapot ID. Útvonal: Beállítások / Rendelési beállítások / Rendelés állapotok)

A beállítások hatására a beérkező vevő rendelésen megjelenik a további adat szöveg a Vevő rendelés funkció / Általános lapfül - További adatok nevű táblázatban.

További adat szöveg módosítás küldése a Shoprenternek:

Lehetőség van kézzel módosítani a vevő rendelésen a további adat szövegét, ami elküldésre kerül a Shoprenternek. Ha olyan szöveget adunk meg, ami nincs a webáruház paraméterben megfeltetve, akkor nem kerül kiküldésre.

Termékfalevél és termék-termékfalevél kapcsolat törlése bekerül a Rest naplóba

1. Ha a Termék funkció / Általános/ Termékfa táblázatból törlünk egy termékfalevelet, bejegyzésre kerül a Rest naplóban (Típus: ShopRenter-Termék). A webshopban ezután törlődik az adott kategória, kereséskor nem kapunk találatot.

2. Termékfa funkcióban kivesszük a Használható pipát egy webre szinkronizált termékfalevélből, bejegyzésre kerül a Rest naplóban (Típus: ShopRenter-Termékfa). A webshopban ezután a kategóriára keresve, nem kapunk találatot.

 

sERPa-bol adatok elküldése a webshopba (csak első alkalommal kell ezt megtenni, a felküldési idő sok tényezőtől függően változhat):

3.0.101-es verzió előtt javasoljuk, hogy az eljárásokat @Init = 2-vel hívják meg és az eredményben megkapott oszlopot másolják át egy másik Query-be, majd azt futtassák le.

 

!. Minimum egy termékhez meg kell adni termékbesorolás és kategória meg kell legyen adva a paraméterbe, hogy létre jöjjön a Shoprenter-be.

 

1.EXEC WEB.ShopRenter_TermekKategoria @Init = 1 --(ekkor minden termékkategória kiküldésre kerül, amennyiben a kiküldésre kerülő kategóriatétel leírása nem üres, akkor a tétel neve helyett azt adjuk át a webshopnak)

Sikeres feltöltés esetén a kategóriák itt jelennek meg:

 

sERPa Termék típus törlése esetén a kapcsolat megszakad, nem szabad törölni a webfelületről!

Nagyításhoz kattintson a képre!

- Feltöltött Termékkategóriák (termékek feltöltése enélkül nem fog sikerülni) -

2.EXEC WEB.ShopRenter_Termekfa @Init = 1 --(ekkor a teljes termékfa struktúra kiküldésre kerül)

Képet csak akkor törlünk kint a weboldalon, ha a sERPa webáruház paraméterben a TemekKep = 1 vagy 2 és termék képe törölve lett.

tehát @init = 1 esetén nem törülünk semmit, semmikor.

 

Sikeres feltöltés esetén a termékfa levelei itt jelennek meg:

Nagyításhoz kattintson a képre!

- Feltöltött Termékfa struktúra (termékek feltölése enélkül nem fog sikerülni) -

3.EXEC WEB.ShopRenter_Termek @Init = 1 --(minden terméket kiküld egymás után, amennyiben a paraméterben meg van adva, akkor utána lefut a WEB.ShopRenter_TovabbiTermekHivatkozas, mely a kiegészítő és/vagy kapcsolódó termék információkat adja át a webáruháznak.)

4.EXEC WEB.ShopRenter_AkciosAr @Init = 1 --(Termékekhez felveszi az akciós árakat)

5.EXEC WEB.ShopRenter_Keszlet @Init = 1 --(Termékekhez felveszi a paraméterben megadott raktár készletét)

 

Új termék első feltöltésekor a készlet adatok is átadásra kerülnek, ha a feltöltés előtt a termék már létezett és rendelkezett készlettel.

 

6. DRS visszaváltási díjak felküldése és összekapcsolás az italtermékekkel

A kezdeti adatküldést ezeknél az információknál is van lehetőség scripttel elindítani, ami felküldi az összes visszaváltási díj terméket (Product Addon) és utána a már felküldött italtermékekhez kapcsolatot alakít ki (Product Addon Product Relation).

EXEC web.ShopRenter_ProductAddonRelation @Debug = 1, @Init = 2

 

 

Algoritmus, mező megfeleltetés

 

A következő irányok (Resources) kerülnek megvalósításra:

Termék adatok

Termék adatok átadása sERPa-ból, termék felvétel, módosítás, esetén, fordítással. Termék törlés nem kerül átküldésre. Termékfa és termékbesorolások amelyek a webáruház paraméterben meg vannak adva, valamint ügyfélfüggetlen akciós ár.

 

Termék törlés nincs, ha paraméterben megadott besorolásból kivesszük a terméket, attól még nem kerül le a webáruházból, csak a szinkronja kerül "kikapcsolásra". Ha nem akarjuk, hogy a termék megjelenjen akkor a Használható eladáskor legyen hamis, ekkor nem lesz látható a webáruházba. (admin felületen továbbra is ott van)

 

Készlet feltöltés: Új termék első feltöltésekor a készlet adatok is átadásra kerülnek, amennyiben a feltöltés előtt a termék már létezett és rendelkezett készlettel.

Resources

Termék: Product, Product Class, Product Description, Product Related Product, Product Special

Termékkategória: Product Class, Product Class Attribute Relations, List Attribute, List Attribute Widget, List Attribute Value, List Attribute Value Description, Attribute Widget Description

Adatcsere iránya

sERPa> ShopRenter

Adatcsere kezdeményezője

sERPa

Kezelő indítja el / Automatikusan történik

Automatikus

Automatikus esetben mi az az esemény, ami elindítja?

Termék FMT

Mezők megfeleltetése

Mező típus és hossz nem ismert.

Product - Mezők megfeleltetése

Srsz.

Interface mező név

Mezőtíp /Köt/ Mhossz

sERPa mező

Algoritmus

Shoprenter API információ

 

id

 

 

 

 

 

sku

K

Termek.Kod

 

 

 

modelNumber

 

TermekIdegenAzonosito.Kod

Paraméterben megadott azonosító típushoz tartozó idegen azonosító kódját adjuk át.

 

 

gtin

 

TermekIdegenAzonositoVonalkod.Vonalkod

TermekIdegenAzonosito.TermekIdegenAzonosito_ID = TermekIdegenAzonositoVonalkod.TermekIdegenAzonosito_ID

 

 

orderable

 

1

Használható beszerzéskor = 1 esetén Rendelhető, egyébként Nem rendelhető

Admin felület / Adatok fül / Rendelhető termék

1 - Igen

0 - Nem

3 - Ajánlatkérés

4 - Megrendelem

 

price

 

B2BA.Ar

Ártábla nettó ár

 

 

stock1

 

B2BAK.

Paraméterben megadott raktár szabad készlete. Alábontás és rhely szűrés nélkül.

Ha több van megadva akkor SUM

 

 

stock2

 

 

Paraméterben megadott raktár szabad készlete. Alábontás és rhely szűrés nélkül.

Ha több van megadva akkor SUM

 

 

stock3

 

 

Paraméterben megadott raktár szabad készlete. Alábontás és rhely szűrés nélkül.

Ha több van megadva akkor SUM

 

 

stock4

 

 

Paraméterben megadott raktár szabad készlete. Alábontás és rhely szűrés nélkül.

Ha több van megadva akkor SUM

 

 

mainPicture

 

TermekKep.Kep

Termék honlap nagy képe, sorrend szerint első

 

 

imageAlt

 

TermekKep.Nev

Termék honlap nagy neve, sorrend szerint első

 

 

taxClass

 

 

Mai napon érvényes áfa kulcsa

 

 

status

 

 

Használható eladáskor = 1 esetén Engedélyezett

Használható eladáskor = 0 esetén Letiltott

Használható eladáskor = 0 ÉS Használható beszerzéskor = 0 esetén Kifutott

Admin felület / Adatok fül / Állapot

1 = Engedélyezett

0 = Letiltott

2 = Kifutott

 

Product Class - Mezők megfeleltetése

Srsz.

Interface mező név

Mezőtíp /Köt/ Mhossz

sERPa mező

Algoritmus

Shoprenter API információ

 

id

 

 

 

 

 

name

 

Termek.Nev

 

 

 

description

 

TermekLeiras Leiras

Magyar leírás.

 

 

Product Description - Mezők megfeleltetése

Srsz.

Interface mező név

Mezőtíp /Köt/ Mhossz

sERPa mező

Algoritmus

Shoprenter API információ

 

id

 

 

 

 

 

shortDescription

 

Termek.Nev

 

 

 

description

 

TermekLeiras Leiras

<>magyar leírás.

 

 

language

 

 

Nyelv

 

 

shortDescription

 

TermekLeiras RovidLeiras

 

 

 

Product Special - Mezők megfeleltetése

Srsz.

Interface mező név

Mezőtíp /Köt/ Mhossz

sERPa mező

Algoritmus

Shoprenter API információ

 

id

 

AkciosAr_ID

Meg kell nézni, hogy az Ugyfel_ID NULL kell legyen

 

 

price

 

Ar

Akciós ár, ahol nincs ügyfél, és nagyobb mint a mai nap

 

 

dateFrom

 

DatumTol

akció kezdete

 

 

dateTo

 

DatumIg

akció vége

 

 

customerGroup

 

-

 

 

 

Attribute Description, Attribute Widget Description - Mezők megfeleltetése*

Srsz.

Interface mező név

Mezőtíp /Köt/ Mhossz

sERPa mező

Algoritmus

Shoprenter API információ

 

id

 

 

 

 

 

name

 

Kategoria.Nev

kategória név

 

 

language

 

Nyelvfüggően

 

 

List Attribute Value Description - Mezők megfeleltetése*

Srsz.

Interface mező név

Mezőtíp /Köt/ Mhossz

sERPa mező

Algoritmus

Shoprenter API információ

 

id

 

 

 

 

 

name

 

KategoriaTetel.Nev

kategória tétel név

 

 

language

 

 

Nyelvfüggően

 

*A kategória és tétel átküldéshez több resources is használva van, az termék és kategória összekapcsolásához.

productImages - Mezők megfeleltetése

Srsz.

Interface mező név

Mezőtíp /Köt/ Mhossz

sERPa mező

Algoritmus

Shoprenter API információ

 

id

 

 

 

 

 

imagePath

 

TermekKep.FajlNev

 

 

 

sortOrder

 

TermekKep.Sorrend

 

 

 

product

 

Termek.Termek_ID ?

 

 

 

DRS visszaváltási díj kezelés a Shoprenter interfészen:

Webáruház interfészek visszaváltási díj kezelése

 

Rendelés

A webshopban leadott rendelések(és ügyféladat) átkerülnek a sERPába.

Resources:

Order

Adatcsere iránya

ShopRenter > sERPa

Adatcsere kezdeményezője

ShopRenter(Webhook), fel kell venni

Kezelő indítja el / Automatikusan történik

Automatikus

Automatikus esetben mi az az esemény, ami elindítja?

-

Mezők megfeleltetése

Mező típus és hossz nem ismert.

Srsz.

Interface mező név

Mezőtíp /Köt/ Mhossz

sERPa mező

Algoritmus

Shoprenter API információ

 

innerId

 

 

 

 

 

storeName

 

WebaruhazPar.WebaruhazURL -ből a...// és .api közötti szó

Több webáruház paraméter esetén ez alapján azonosítja a program, hogy melyik paramétert kell használni

 

 

firstname

 

 

 

 

 

lastname

 

 

 

 

 

phone

 

 

 

 

 

fax

 

 

 

 

 

email

 

 

 

 

 

shippingCompany

 

 

 

 

 

shippingFirstname

 

 

 

 

 

shippingLastname

 

 

 

 

 

shippingAddress1

 

 

 

 

 

shippingAddress2

 

 

 

 

 

shippingCity

 

 

 

 

 

shippingCountryName

 

 

 

 

 

shippingPostcode

 

 

 

 

 

shippingMethodName

VARCHAR(150)

fuvardíj neve
 
ha tartalmazza a csomagpont nevét a "<br />" karakterek utána(PPP és MPL esetén) akkor azt csomagpontnak tekintjük.

Ami a <br /> előtt van az fuvardíjnak, ami utána van az csomagpont.

 

 

 

shippingNetPrice

 

bruttó díj, ha nincs megadva akkor paraméter szerint

megj: Amennyiben a webshopból kapott fuvardíjat felül akarjuk bírálni, akkor használjuk a pipát, de ha azt akarjuk, hogy a webshopból érkező adat legyen az erősebb akkor ennek a pipát, nemre kell állítani, hasonlóan a Ártípus = Rögzített esetén, amikor azt az árat akarjuk látni a rendelésen ami a webshopból érkezik.

 

 

shippingGrossPrice

 

 

 

 

 

shippingCountryIsoCode2

 

Ügyfél / Telephely országa

ld. Ország kezelés

The ISO 3166-1 alpha-2 code of the destination country of the order.

 

shippingCountryIsoCode3

 

N/A

nem használjuk

The ISO 3166-1 alpha-3 code of the destination country of the order

 

paymentCountryIsoCode2

 

Ügyfél országa

ld. Ország kezelés

The ISO 3166-1 alpha-2 code of the country associated with the billing address of the order.

 

paymentCountryIsoCode3

 

N/A

nem használjuk

The ISO 3166-1 alpha-3 code of the country associated with the billing address of the order.

 

paymentCompany

 

hosszúnév1

 

 

 

Taxnumber

paymentTaxnumber

 

adószám
dokumentáció szerint itt nem kerül átadásra, de ha igen akkor ezt is figyelembe veszzük.

 

 

 

paymentFirstname

 

hosszúnév2

 

 

 

paymentLastname

 

hosszúnév3

 

 

 

paymentAddress1

 

 

 

 

 

paymentAddress2

 

 

 

 

 

paymentCity

 

 

 

 

 

paymentCountryName

 

 

 

 

 

paymentPostcode

 

 

 

 

 

paymentMethodName

 

Fizetési mód, ha nem találjuk akkor a megjegyzésbe kerül szövegesen.

 

 

 

paymentNetPrice

 

 

 

 

 

paymentGrossPrice

 

 

 

 

 

comment

 

 

 

 

 

total

 

 

 

 

 

totalGross

 

 

 

 

 

currency

 

 

 

 

 

couponCode

 

AruforgBizTetel.TermekKod

 

 

 

couponGrossPrice

 

AruForgBizTetel.NettoErtek

 

 

Rendelés állapot

A webshopban leadott rendelések állapotának megváltozása sERPa oldalon.

Resources:

Order

Adatcsere iránya

sERPa > ShopRenter

Adatcsere kezdeményezője

sERPa

Kezelő indítja el / Automatikusan történik

Automatikus

Automatikus esetben mi az az esemény, ami elindítja?

Rendelés olyan jellegű megváltozása, ami megfelel a paraméterben felvett rendelésállapotoknak. (pl egy tétele diszponálásra kerül, akkor megváltozik az állapota, amennyiben paraméterben ez az állapotváltozás típus fel van véve, akkor küldünk egy üzenetet a shoprenter felé)

 

A paraméterben meghatározott 4 állapothoz lehet a képen látható azonosítót (order_status_id) megadni. A sERPa-ban kezelt állapotokat a Rendelés állapot táblázat leírásában olvashatjuk részletesen.

Csak olyan rendelésről küldünk ki Állapotot, amelynek a sorozata szerepel a paraméterben és a Hivatkozási száma érvényes, ezzel biztosítva, hogy csak olyan rendelés állapotát küldjük ki, amelyek a Shoprenterben vettek fel és küldtek be a sERPa-ba.

 

Nagyításhoz kattintson a képre!

- Rendelés állapot azonosítója a Shoprenter admin felületen -

 

Szabályok

Ügyfél

Webáruházas ügyfél felvételkor/módosításkor, ha van megadva adószám (Taxnumber) akkor a ügyfél típusát Cégre állítjuk, ha nincs akkor magánszemély.

Hivatkozási szám: Kód prefix+innerId előnullázva.

Ügyfél kód: Kód prefix + 9 számjegy előnullázva (első ilyen Ügyfél kódja pl SR000000001)

Ügyfél név: shippingCompany+shippingFirstname+shippingLastname

Ügyfél dolgozó: firstname+lastname

Ügyfél dolgozó elérhetőség: phone, e-mail (amennyiben megváltozik az elérhetőség, új dolgozót veszünk fel (lehetséges azonos nevű dolgozó))

Ügyfél telephely: (minden olyan esetben létrejön új telephely, amikor a shipping adatok eltérnek egy már létező telephely adataitól!)

oshippingCompany,

oamennyiben shippingCompany üres , akkor shippingFirstname+shippingLastname

Magánszemély elérhetőség: phone, e-mail (magánszemélyként felvett ügyfélnél, ha csak az elérhetőség változik meg, akkor nem új ügyfelet veszünk fel, hanem az elérhetőséget módosítjuk. Új Ügyfélként akkor vesszük fel, ha a helyadatok eltérnek a meglévőtől.)

Adószám kezelés:

oKötőjelek eltávolítása után, amennyiben 11 számjegyű adószámot kapunk, akkor magyar adószámmal, belföldi vevőként mentjük az Ügyfelet.

oAmennyiben a fenti feltételnek nem felel meg, és az első két karaktere betű (ország kód), akkor az alapján külföldi vevőként vesszük fel, és az adószám az EU-Adószám mezőbe kerül mentésre, illetve az EU tag pipa igaz lesz.

oTovábbi esetben, amikor fenti egyikének se felel meg, akkor Külföldi adószám mezőbe tesszük a kapott adatot (de 20 karakter felett csonkítjuk azt), Külföldi vevőként vesszük fel és az EU tag pipa hamis lesz.

Ha a Szállítási cím ugyanaz, mint a számlázási, akkor is generálunk az ügyfélnek telephelyet. (Ha ugyanaz az ügyfél egymás után kétszer rendel más-más szállítási címre, akkor nem kerül felülírásra a címe az ügyféltörzsben. Így egységesebb a struktúra, még ha duplán is van az adat.)

 

Az ügyfél azonosítására és az új ügyfél felvételére hatással van a Webáruház paraméterben a További adatok / Ügyfél azonosítás mező állása.

 

Ország kezelés

oHa a rendelés üzenetben a címadatoknál megkapjuk az ország ISO2 kódját (order_shippingCountryIsoCode2 és order_paymentCountryIsoCode2), akkor aszerint azonosítjuk be az országot a sERPa Ország törzsében és azt vesszük fel az ügyfélhez.

oHa nem kapunk ilyen mezőt vagy üres, akkor vizsgáljuk az országnév mezőket. Ha a paymentCountryName, shippingCountryName nem "Magyarország", akkor az Ország törzsben magyar név szerint keressük az országot. Ha megtaláljuk, akkor a felvételre kerülő ügyfél országába a beazonosított ország kerül.

oHa a paymentCountryName, shippingCountryName "Magyarország", akkor a felvételre kerülő ügyfél országa üresen marad, mert a sERPa működésben ez Magyarországot jelent.

 

Fuvardíj

Fuvardíj a shippingMethodName mezőből kerül ki. (ha nincs akkor felvételre kerül)

A fuvardíj összege a kézzel letöltött rendelések esetén nem a shippingGrossPrice mezőből kerül a rendelése (nem adják át ilyenkor), hanem a kapott xmlből az orderTotal részből nézzük ki, aminél a típus 'SHIPPING'.

 

 

 

Rendelés szállítási határidők

A felvett rendelésen a tételekben a kért és az ajánlott szállítási határidő paraméterezhető. Ha a webáruházunkhoz nem állítunk be szabályt, akkor az alábbi alapértelmezett értékeket használjuk:

Kért szállítási határidő: rendelés felvétel napja +1 nap (naptári nap).

Ajánlott szállítási határidő: rendelés felvétel napja

Ha ezt szeretnénk megváltoztatni, az alábbi lépéseket kell megtennünk.

A szállítási határidők kiinduló értékei legtöbbször attól függnek, hogy a rendelést milyen módon fogjuk kiszolgálni. Ha a vásárló bejön érte a boltba személyesen átvenni, akár már aznap szeretnénk kiszolgálni, ha van raktáron a termék. Ha saját magunk szállítjuk, 2 nap lehet, ha futárszolgálattal szállítjuk majd, akár 3 nappal is kalkulálhatunk. Épp ezért a határidő eltolás értékét fuvardíj kategória tételenként lehet testre szabni.

1.Például készítünk egy Fuvardíj kategóriát "Szállítási határidő eltolás" néven. Állítsuk egyedi típusúra, hogy egy tételt csak egyszer lehessen majd használni.

2.Felveszünk három fuvardíj kategória tételt hozzá: bolti átvét, saját szállítás, futárszolgálat.

3.A Webáruház paraméterben az adott webáruháznál a További adatok fülön a Szállítási határidő eltolás fuvardíj kategória mezőben megadjuk a "Szállítási határidő eltolás" fuvardíj kategóriát.

4.Az alatta megjelenő Szállítási határidő eltolás táblázatban pedig felvesszük az előbb létrehozott 3 fuvardíj kategória tételt és megadjuk hozzájuk a nap eltolásokat. A bolti átvét tételhez 0 napot mindkét határidő típushoz, a saját szállítás tételhez 2-2 napot, a futárszolgálat tétel mellé pedig 3-3 napot írunk.

5.Végül a Fuvardíj paraméterben az általunk használt fuvardíjakat besoroljuk az új kategória három tételével. Például a személyes átvételhez felvesszük a "bolti átvét" tételt, a saját házhoz szállítás paraméterhez a "saját szállítás", az összes futárszolgálat paraméterhez (GLS, MPL, PPP stb.) pedig a "futárszolgálat" kategória tételt.

6.Így ha a webáruházból beérkezik egy rendelés, amelyhez a GLS futárszolgálat paraméter fog tartozni, annál a rendelésnél a kért és az ajánlott szállítási határidő 3 nappal a rendelés rögzítése utáni lesz. Viszont ha a vevő személyes átvételt kért, akkor a rendelés tételein a kért és az ajánlott szállítási határidő a rendelés rögzítésével azonos nap lesz.

 

Fizetési mód

Fizetési módok: Shoprenter > sERPa megfeleltetés: paraméter szerint.

 

Kuponkezelés

Kuponok feldolgozása a rendelés XML <couponCode></couponCode> mező meglétekor történik

oA Terméktörzsben keressük a <couponCode>TRIAL2020</couponCode> mezőjében lévő adatot Termék kódként, ha megtaláljuk, akkor az a szolgáltatás kerül a rendelésre. Ezt szinkron esetén ne használjuk, mert akkor azok a kupon termékek is ki kell kerüljenek a Shoprenterbe.

oAmennyiben a Törzsben nem találjuk meg a kód alapján, a Paraméterben a Kupon mezőben megadott termék kerül felvételre

oAmennyiben a fenti két feltétel sem teljesül (nem találjuk Termék törzsben és a Kupon mező sincs kitöltve), akkor a megjegyzésbe tesszük hozzáfűzve az egyébként oda kerülő szöveghez. "Kuponkód : TIRAL2020 Összeg : -1270 (Bruttó). Így kézzel utólag tudják a rendelést magát módosítani.

oA kupon ára minden esetben a <couponGrossPrice>-1270</couponGrossPrice> mezőből kerül ki, ezt a visszaszámoljuk 27%-os áfával, mert számlázáskor a kupon mezőjének értékét, így a példa szerinti 1270 Ft bekerül a rendelésbe 1000 Ft ként, de számlázáskor bruttósítva felkerül az 1270 Ft helyesen.

o0 (nulla) értékű kupon vagy ár nélküli esetén is 0-t értünk (értelmezzük ISNULL()), és így kerül rá a rendelés tételére.

 

Kupon kezelés a Shoprenter felületén:

 

- Nagyításhoz kattintson a képre! -

- Kupon beállítás a Shoprenter felületen -

 

Kapcsolódó és Kiegészítő termék:

Az EXEC WEB.ShopRenter_TovabbiTermekHivatkozas Tárolt eljárás hívásával kézzel küldhetjük ki a már inicializált termékekhez tartozó kiegészítő és kapcsolódó termék információkat. Olyan Kapcsolódó/Kiegészítő termék információt nem küldünk, ahol a másik Termék nem használható eladáskor, vagy nincs besorolva abba a kategóriába, melybe sorolt termékeket kiküldünk a webre.Kétirányú kapcsolat esetén mindkét termék megváltozik, így mindkettőre kiküldésre kerül a változás.

- Nagyításhoz kattintson a képre! -

- sERPa felületen kapcsolódó és kiegészítő termékek -

- Nagyításhoz kattintson a képre! -

- Shoprenter admin felületén a kiegészítő és kapcsolódó termékek -

Hibaüzenetek

Érvénytelen felhasználó!

Több mint 1 használható azonos Webáruház internet URL című webáruház paraméter van felvéve.

A rendelés sorozat mező nincs kitöltve a paraméterben!

A kód prefix mező nincs kitöltve a paraméterben!

A kiszolgáló raktár kitöltése kötelező!