1.eMAG kapcsolatfelvétel és regisztrációk.
2.A Kiegészítő modulok telepítése / eltávolítása segítségével telepíteni kell az eMAG modult. Ezzel bekerülnek az adatbázisba a modul működéséhez szükséges tárolt eljárások és táblák.
3.IIS beállítása, ehhez szükséges fájlok : eMAG.zip
4.A B2B partner funkcióban az eMAG Marketplace szolgáltatás beállítása.
a.A Szolgáltatás menüpontban az eMAG-ot kell kiválasztani.
b.Szolgáltató legördülő listából a Külső rendszert.
c.Azonosító és Jelszó mezőbe, az eMAG marketplace regisztrációkor megadott e-mail címet és a hozzá tartozó jelszót kell beírni.
5.Az eMAG Paraméter beállítása.
a.A funkciónak nincs baloldali menüsávja, mert csak egy eMAG paraméter lehet egy adatbázisban.
b.A 4. pontban felvett B2BPartnert kell megadni, így azon keresztül történik a kommunikáció a két oldal között.
c.A További paraméter beállításokat a Folyamat leírásokban fejtjük ki.
Fontos!
Az eMAG oldalon engedélyezni kell a küldő szerver IP címét az eMAG felé. Ha nem kerül beállításra az Emag napló-ban ilyen üzenet kerül generálásra: product_offer/save NULL {"isError":true,"messages":["ERROR: Invalid vendor ip [1.1.1.1]"],"results":[]} POST
Termék kezelése, kiküldése
1.Kiküldendő termékhalmaz meghatározása:
a)A paraméterben megadjuk a Termék kategóriát és tételt, melybe sorolt termékeket szeretnénk kiküldeni az eMAG Markplace-re.
2. Brand termékkategória mező a paraméterben: Ahol lehetőség van meghatározni a gyártót vagy forgalmazót. A mező megadása kötelező, enélkül nem kerül felküldésre a termék.
3. Termékfa szűrés mező a paraméterben: Segítségével tudjuk az eMAG kategóriákkal összefésülni a sERPa termékfát /eMAG kategória = eMAG-nál a termékfa/. A mező megadása kötelező.
a)A Termék funkcióban az Általános lapfül Termékfa táblázatában, szintén fel kell venni az eMAG Termékfát. Példa: eMAG/Notebook, eMAG/Asztali számítógép, eMAG/Operációs rendszerek
4. Termékleírás: A termék funkció leírás lapfülén ki kell választani a leírás nyelvét és be kell rögzíteni a rövid és hosszú leírást.
5. Az Eladási ár beállítása szintén kötelező a paraméterben, mivel ezen az áron kerül ki a termék az eMAG Marketplace-re.
a)Minimum és Maximum eladási ár mező: Akkor szükséges megadni, ha egyébként eltér a sima eladási ártól. Ha nincs megadva, akkor az eladási árban megadottak kerülnek minden esetben a két mezőbe.
b)A Termék funkció Eladási ár lapfülén található Ár táblázatban szintén fel kell venni az Eladási, Minimum és Maximum árat.
6. Kép felvétele a termékhez. A Termék funkció Kép lapfülén fel kell tölteni egy jó minőségű képet a termékről, illetve pipálni a holnap nagy jelölőnégyzetet, mivel csak akkor kerül kiküldésre a Marketplace-re.
a)Termék esetén: A termékhez az eMAG által adott ID-t tesszük el mint termék idegen azonosító.
8. Raktárak beállítása az eMAG paraméterben. Fel kell venni egy vagy több raktárat, hogy a kiküldendő termékekhez, szállítólevélen megadva készletet tudjunk rögzíteni.
9. A termék kiküldés addig nem megy végbe, amig a Termék funkcióban nem adjuk meg a termékhez tartozó szabályos, egyedi EAN 13 kódot, a További adatok lapfül Vonalkód táblázatában. Minden termékhez egy egyedi EAN kód tartozik, amit az eMAG Marketplace is figyel.
10. Termék kép URL megadása a paraméterben.
Előzetesen az IIS-ben kell létrehozni a termékkép URL-t, ezt követően tudjuk beállítani a paraméternél. Az termék első feltöltése után, a megadott elérési útra fogja letölteni az interfész a termékképeket és cacheből kezeli.
példa termékkép URL
https://valami.cegnev.hu/ --hostnév
eMAGTeszt/ --virtual folder ez lehet bármi, amit az IIS-ben megad
image/ --ezt fixen várjuk
11. Az eMAG categories és az eMAG characteristics funkciókban kötelezően ki kell tölteni azokat a kategóriákat, amik mellett pipát találunk a kötelező oszlopban. A karakterisztikákhoz tartozó tételek közül pedig, azokat kell felvenni, amiket ki akarunk választani a termékeknél.
eMAG - Categories funkció
eMAG - Characteristics funkció
a)A Termék funkcióban az Általános lapfül Besorolás táblázatában ki tudjuk választani a korábban felvet kategóriát és a hozzá tartozó karakterisztikákat is.
Rendelések kezelése
0. Paraméter kitöltése
1. A rendelések feldolgozásához létre kell hozni egy callback URL-t , melyet az eMAG számára kell biztosítani, mert erre az URL-re küldik majd az értesítést az új rendelésről. Az URL-t a termékkép URL-hez hasonlóan IIS-en keresztül éri el az eMAG a sERPa adatbázist.
a.Példa URL:
i.https://valami.cegnev.hu/ --hostnév
ii.eMAGTeszt/ --virtual folder ez lehet bármi, amit az IIS-ben megad
iii.order/ --ezt fixen várjuk
2. A rendelésekről kapott értesítésben egy rendelés id szerepel.
a.Az sql szerver a rendelést az ID alapján lekérdezi ( https://marketplace.emag.hu/api-3/order/read ) és a kapott választ az eMAG.RendelesNaplo táblába teszi el. Ezzel egyidőben az eMAG felé jelezzük, hogy átvettük a rendelést ( https://marketplace.emag.hu/api-3/order/acknowledge ).
b.Aszinkron működünk így a rendelést később dolgozzuk fel, időben ez másodpercek. A cél, hogy a naplóban meglegyen a kapott rendelés JSON így probléma esetén onnan újra feldolgozható, vagy a hiba kereshető.
Ügyfél feldolgozása
1. Az Ügyfelet az idegen azonosítóban eltárolt hash alapján keressük, ebben a hashben tároljuk el a vásárló
Nevét (magánszemély esetén a billing_name, cég esetén a company mező),
telefonszámát (billing_phone),
cím adatai (billing_city, billing_street, billing_postal_code),
cég esetén adószám (code)
Új Ügyfelet csak akkor veszünk fel, ha idegen azonosító alapján nem találjuk meg.
2. Új telephelyet veszünk fel, ha az idegen azonosító alapján az ügyfelet megtaláltuk, de a szállítási cím (shipping_*) adatok eltérnek meglévőtől.
Az ügyfél kód generálása a Kódprefixben megadott szöveggel kezdjük, így kódismétlést kerülhetjük el.
Fizetési módok
Az eMAG 3 féle fizetési módot határoz meg. Bank transfer, COD(cash-on-delivery), Online-payment a paraméterben ezeknek az azonosítóját lehet megadni, csak 1,2,3 engedélyezett értékekkel.
Ezekhez a paraméterben tetszőleges fizetési módjainkat kapcsolhatjuk hozzá, az alábbi módon:
- sERPa fizetési mód (bal) - eMAG fizetési mód "id" (jobb oldal) -
Fuvardíj / szállítási mód
A fuvardíjak esetében az eMAG két típust határoz meg, "courier" - ez a házhozszállítás, és "pickup" - csomagpontra szállítás. csomagpont egyelőre nincs kezelve, az eMAG csomagpont esetén egy azonosítóban adja át, hogy mely csomagponton lehet a rendelést átvenni (locker_id), ide a Sameday partnerük viszik el. aERPa-ban ilyenkor csak egy locker_id-t teszünk el a rendelés mellé.
pickup esetén a Rendelés beérkezésekor megnézzük, hogy létezik-e az adott locker_id a Csomagpont táblában, ha nem, felvesszük és a rendelés Csomagpont_ID mezőjébe tesszük el.
courier esetén házhoz szállítást kért a vásárló, ekkor a Marketplace tulajdonosa (az eladó) vállalja a szállítás menetét. Ekkor a rendelés beolvasásakor a rendeléssorozatban megadott fuvardíj kerül a rendelésre, vagy ha az nincs megadva, akkor Szállítás fix összegért típusú fuvardíj kerül a rendelésre, az összeg pedig az eMAG által átadott összeg lesz.
shipping_tax mező értékét eltesszük a fuvar mértékébe.
A szállítási módot a rendelés megjegyzéséhez fűzzük, így ott is elolvasható.
Rendelések állapota / módosítása
1.A rendelések állapotáról a tételek alapján küldünk információt az eMAG felé. Ehhez a sERPa-ban használt Trigger feltételt hozunk létre (felhasználó beavatkozás nélkül generáljuk), mely segítségével a bizonylatváltozások hatására a Temp.TriggerFeltetel_RendelesAllapot táblába bekerülő sorok alapján a rendelések új állapotát küldjük el az eMAGnak.
2.Jelenleg Fejléc szinten a rendelés státuszát, tétel szinten pedig a tétel státuszát, mennyiségét küldjük ki. (2022.04.26. v4.0.127.)
3.Rendelés állapotokat az alábbi algoritmusok szerint állítjuk:
a.Amennyiben a Rendelt + Visszaigazolt + Diszponalt + Teljesitett = 0 És Visszamondott + Elutasitott > 0 akkor a kiküldött rendelés status 0 (Canceled értéket jelent) ekkor a felületen Eladói elállás állapotba kerül a rendelés. Erre a rendelés jóváhagyása utáni 48 órában van lehetőség.
b.Rendelt + Visszaigazolt + Diszponalt = 0 És V.Teljesitett > 0, a küldött status 4 (Finalized értéket jelent) Ez a rendelés befejezett állapotát jelenti
c.Visszaigazolt+V.Diszponalt > 0 a küldött status 3 -- Prepared
d.Egyéb esetben 2 (In progress, alapértelmezetten ebbe az állapotba kerül a rendelés, amikor elkezdjük feldolgozni a rendelést.)
A rendelés állapot mátrix, itt láthatjuk, hogy mely rendelés aktuális állapotból, mely állapotokba léphetünk át, illetve milyen időbeli megkötéssel.:
|
Új státusz |
|||||
Aktuális státsuz |
1 - New |
2 - In progress |
3 – Prepared |
4 - Finalized |
0 - Canceled |
5 - Returned |
1 - New |
No |
Yes by ACK only |
No |
No |
No |
No |
2 - In progress |
No |
Yes |
Yes |
Yes |
Yes |
No |
3 - Prepared |
No |
No |
Yes |
Yes |
Yes |
No |
4 - Finalized |
No |
No |
Yes in 48h max |
Yes |
Yes in 48h max |
Yes in RT* + 5 days max |
0 - Canceled |
No |
Yes in 48h max |
Yes in 48h max |
Yes in 48h max |
Yes |
No |
5 - Returned |
No |
No |
No |
No |
No |
No |
Kupon
1. Ha van megadva kupon a Paraméter funkcióban, akkor a rendelésre új tételként felvételre kerülnek a vouchers tömbben szereplő összegek.
Az itt beállított kupon lesz az a cikk vagy szolgáltatás.
Minden ilyen kupon tétel megjegyzésébe eltesszük a voucher_name kulcs értékét. (ami lényegében a kupon neve). Zárójelben a voucher_id azonosító is bekerül.
pl. tétel megjegyzésbe kerül: Vásárlási utalvány beváltás: xxxx-xxxx-xxxx-1312 (306036630)
2. Ha nincs megadva kupon a paraméterben, akkor a vouchers tömbben szereplő kuponok a rendelés megjegyzésébe kerülnek.pl.
Kuponok:
Vásárlási utalvány beváltás: xxxx-xxxx-xxxx-1312(306036630): -1500 HUF
Vásárlási utalvány beváltás: xxxx-xxxx-xxxx-5077(306095524): -108 HUF
Vásárlási utalvány beváltás: xxxx-xxxx-xxxx-4396(306098992): -662 HUF
Ebben szállítási díj kedvezmény:-1690 HUF
Napló
Hiba esetén a HibaNaplo, Emag.Naplo és az Emag.RendelesNaplo táblákba kerül bejegyzés.
Ajánlott beállítani egy Rendszer - Naplók törlése automatikus üzenet a régi napló bejegyzések törlésére, mivel idővel már nincs rá szükség, és az adatbázis méretét is feleslegesen növeli.
A napló és rendelés napló megtekintéséhez két funkciót használhatunk:
Legtöbbször előforduló esetek:
•order/acknowledge
•vat/read
•product_offer/save
•order/read
•order/save
•product_offer/read
•category/read