Tartalomjegyzék
Vevői rendelés API
Az eVIR rendszer lehetőséget biztosít külső rendszer számára számla készítésére.
Az általános API leírásban szerepelnek az alapok, ezért itt már csak a specifikus részek szerepelnek.
A kommunikáció JSON alapkon zajlik, a követező módon:
https://evir.hu/cegnev/cgi-bin/index.cgi?json={"token":"jMuPFcKJdyKYqMZ7iGiLpxF/32k","dok":"api_rendeles_vevoi",...........}
a JSON adat egy hash, melynek kulcsai az alábbi jelentésekkel bírnak
API hívás paraméterei
| mező | + | tipus/érték | jelentés |
|---|---|---|---|
| token | M | string | a klienst azonosító evir felhasználó tokenje (evir felhasználó jelszavának módosításakor kiíródik) |
| dok | M | „api_rendeles_vevoi” | az api hívást azonosítja |
| muvelet | *1 | „0”, „M1”, „P1”, „M1P2”, „P1M2”, „P1M0” | hogyan jöjjön létre a bizonylat: bizonylat művelet |
| email_cim | string(100) | email cím „valami@example.com” formátumban |
*1Rendelés létrehozásakor hogyan készüljön bizonylat: bizonylat művelet0Csak a bizonylatszámot adja odaM1A bizonylatot email-ben elküldi, és odaadja a bizonylatszámotP1P1M0A bizonylatból PDF-et készít.M1P2P1M2A bizonylatból PDF-et készít és a bizonylatot email-ben el is küldi
Partner adatai
A vevő partner adatai. partner adatok
| mező | + | tipus/érték | jelentés |
|---|---|---|---|
| partner_id | *1 | szám | partner_id |
*1Lehet új partner adatokat megadni vagy meglévő partnerrel dolgozni- Ha a partner már rögzítve van az eVIR-ben, akkor elegendő az azonosítóját, a
partner_id-t megadni. Semmilyen más partner adatot nem kell megadni. - Ha új partnernek készül a rendelés, akkor a
partner_idmezőt ki kell hagyni, és minden egyéb partner adatot megfelelően ki kell tölteni.
| mező | + | tipus/érték | jelentés |
|---|---|---|---|
| partner_tipus | M | „cég” vagy „személy” | |
| partner_nev | M | string(90) | partner neve |
| partner_cim_orszag | M | string(2) | ország kétbetűs kódja, (pontosan 2 karakter) |
| partner_cim_orszag_nev | *1 | string | ország megnevezése. Megegyezik az evir törzsadatai szerinti névvel (maximum 50 karakter) |
| partner_cim_irszam | M | string(10) | irányítószám |
| partner_cim_varos | M | string(40) | |
| partner_cim_cim | M | string(60) | közterület neve. nem bontott cím esetén házszám stb. egyben |
| partner_cim_jelleg | *2 | string(40) | közterület jellege |
| partner_cim_hazszam | *2 | string(20) | házszám |
| partner_cim_epulet | *2 | string(40) | épület |
| partner_cim_lepcsohaz | *2 | string(20) | lépcsőház |
| partner_cim_ajto | *2 | string(20) | ajtó |
| partner_adoszam | C | string(20) | adószám |
| partner_csoport_adoszam | C | string(20) | csoportazonosító szám |
| partner_kozadoszam | C | string(20) | Közösségi adószám |
| partner_third_adoszam | C | string(20) | Közösségen kívüli adószám |
Mkötelezően Meg kell adni (mandatory)*1Amennyiben az ország még nem szerepel az eVIR-ben, akkor kötelező megadni*2Bontott cím esetén a közterület jellege mezőt ki kell tölteni, és minden egyéb cím adatot a megfelelő mezőben kell szerepeltetni.CCsak cég esetén adható meg
Szállítási cím
A szállítási címet NEM kötelező megadni. Ha megadja, akkor a szállítási cím adatait az alábbi módon kell megadni.
| mező | + | tipus/érték | jelentés |
|---|---|---|---|
| szall_nev | M | string(90) | partner neve |
| szall_cim_orszag | M | string(2) | ország kétbetűs kódja, (pontosan 2 karakter) |
| szall_cim_orszag_nev | *1 | string | ország megnevezése. Megegyezik az evir törzsadatai szerinti névvel (maximum 50 karakter) |
| szall_cim_irszam | M | string(10) | irányítószám |
| szall_cim_varos | M | string(40) | |
| szall_cim_cim | M | string(60) | közterület neve. nem bontott cím esetén házszám stb. egyben |
| szall_cim_jelleg | *2 | string(40) | közterület jellege |
| szall_cim_hazszam | *2 | string(20) | házszám |
| szall_cim_epulet | *2 | string(40) | épület |
| szall_cim_lepcsohaz | *2 | string(20) | lépcsőház |
| szall_cim_ajto | *2 | string(20) | ajtó |
Mkötelezően Meg kell adni (mandatory)*1Amennyiben az ország még nem szerepel az eVIR-ben, akkor kötelező megadni*2Bontott cím esetén a közterület jellege mezőt ki kell tölteni, és minden egyéb cím adatot a megfelelő mezőben kell szerepeltetni.
Számlázásiási cím
A számlázási címet NEM kötelező megadni. Ha megadja, akkor a számlázási cím adatait az alábbi módon kell megadni.
| mező | + | tipus/érték | jelentés |
|---|---|---|---|
| szla_nev | M | string(90) | partner neve |
| szla_cim_orszag | M | string(2) | ország kétbetűs kódja, (pontosan 2 karakter) |
| szla_cim_orszag_nev | *1 | string | ország megnevezése. Megegyezik az evir törzsadatai szerinti névvel (maximum 50 karakter) |
| szla_cim_irszam | M | string(10) | irányítószám |
| szla_cim_varos | M | string(40) | |
| szla_cim_cim | M | string(60) | közterület neve. nem bontott cím esetén házszám stb. egyben |
| szla_cim_jelleg | *2 | string(40) | közterület jellege |
| szla_cim_hazszam | *2 | string(20) | házszám |
| szla_cim_epulet | *2 | string(40) | épület |
| szla_cim_lepcsohaz | *2 | string(20) | lépcsőház |
| szla_cim_ajto | *2 | string(20) | ajtó |
Mkötelezően Meg kell adni (mandatory)*1Amennyiben az ország még nem szerepel az eVIR-ben, akkor kötelező megadni*2Bontott cím esetén a közterület jellege mezőt ki kell tölteni, és minden egyéb cím adatot a megfelelő mezőben kell szerepeltetni.
Rendelés általános paraméterei
| mező | + | tipus/érték | jelentés |
|---|---|---|---|
| arkat | *1 | string(20) | árkategória (ha nincs megadva, akkor a partnerhez rendelt, vagy alapértelmezett árkategória lesz) ebből következik a számla pénzneme is |
| penznem | *1 | string(3) | pénznem |
| fizmod | string(20) | fizetési mód, (beállítás szerinti hatással a teljdat, fizhat mezőkre) ha nincs megadva, alapértelmezett lesz) | |
| rend_datum | dátum | rendelés dátuma | |
| szallhat | dátum | szállítási határidő | |
| hivatkozas | string (30) | hivatkozás | |
| megjegyzes | string | Opcionális megjegyzés | |
| nyelv | string | a bizonylat nyelve (ha nincs megadva, HU) | |
| webshop_type | string | webshopot azonosító kód | |
| webshop_id | string | webshopban használt id | |
| tetel_mezok | tomb | tételsorokat tartalmazza. egy tételsor egy hash |
*1Az árkategóriaarkatés pénznempenznemmezők feldolgozásakor:- Ha az árkategória meg van adva, akkor abból számolja ki a pénznemet is
- Ha az árkategória nincs megadva, akkor a pénznem alapján próbál egy árkategóriát meghatározni.
Rendelés tétel mezői
A következő mezők a tetel_mezok tömbön belül többszörösen is megadható hashek adatszerkezete
Részletes dokumentáció: tétel adatok
| mező | + | tipus/érték | jelentés |
|---|---|---|---|
| tetel_tipusa | M *1 | termék raktár szolgáltatás vegosszetgi_engedmeny raktar_cikktorzs | tétel tipusa |
| tetel_forrasraktar | *2 | string | annak a raktárnak a kódja, ahonnan a terméket eladja. szolgáltatás (és előlegszámla) esetén nem kell megadni |
| tetel_cikkszam | M | string | a termék vagy szolgáltatás cikkszáma |
| tetel_menny | M | szám | az eladott mennyiség (pozitív szám) |
| tetel_netto | M | szám | nettó eladási egységár |
| tetel_megj | O | string | tételhez kapcsolódó megjegyzés szöveg (opcionális) |
Mkötelezően Meg kell adni (mandatory)OOpcionális*1tétel tipusa, További részletek: tétel adatok oldalontermék: termék katalógusból (raktárkészlet foglalás nélkül)raktár: termék raktárkészlet foglalássalszolgáltatás: szolgáltatásvegosszegi_engedmeny: rendelés végösszegéből adandó engedmény egy összegbenraktar_cikktorzs: termék raktárkészlet foglalással a lehetőségek szerint
*2tetel_forrasraktar megadásatermékésraktar_cikktorzstételtipus esetén kötelező megadni. Egyébként nincs használatban.
A következő adatokat akkor kell megadni, ha a szolgáltatás cikkszám még nem szerepel a cikktörzsben. termék esetén nem használható
| mező | + | tipus/érték | jelentés |
|---|---|---|---|
| tetel_cikk_rogzites | *3 | „” vagy „szolg_fix” vagy „szolg_gen” | Hogyan kell a cikkszámot rögzíteni |
| tetel_cikk_megnevezes | R | string | a cikk megnevezése |
| tetel_cikk_afa | R | string | az áfakulcsot azonosító szám vagy szöveg |
| tetel_cikk_megys | R | string | Mennyiségi egység |
| tetel_cikk_unit | R | szám | legkisebb mennyiség |
*3tetel_cikk_rogzites ha meg van adva, akkor az 'R' jelű rögzítendő mezőket ki kell tölteniRtetel_cikk_rogzites esetén megadandó adatok.
API hívás visszatérési értéke
Az api hívás paraméterétől, és a működés sikerességétől függően a visszatérési érték az alábbiak lehetnek.
- Sikeres PDF dokumentum
- JSON válaszüzenet
- Egyéb HTTP válaszüzenet
Példa JSON adatok
Minimális példa
Partner törzsadatból, bizonylatot nem nyomtatja, nem küldi email-ben
{
"token":"...",
"dok":"rendeles_api_felvesz",
"muvelet":"0",
"penznem":"HUF",
"partner_id":"4",
"tetel_mezok":[
{
"tetel_tipusa":"termék",
"tetel_menny":"1",
"tetel_netto":"1000",
"tetel_cikkszam":"c1"
}
]
}
Példa válaszüzenet JSON formátumban
[
{
"status":"OK",
"rendelesszam":"RE2021000012",
"message":[
{
"time":"2021.09.27 19:22:31.51",
"message":"Rendelés rögzítve.",
"level":"Info"
},
{
"message":"status=OK",
"level":"SysInfo",
"time":"2021.09.27 19:22:31.58"
},
{
"level":"SysInfo",
"message":"rendelesszam=RE2021000012",
"time":"2021.09.27 19:22:31.58"
}
],
"choice":{
"back":{
"session":{
"proc":"back",
"cid":"cZ9cvPgKHU",
"lid":"zTsqM0LBHU",
"sid":"QKYYSPhvHU"
},
"data":{}
}
},
"framename":"main",
"result":null
}
]
