Kasų ir POS sistemų integravimas

Aprašymas skirtas trečių šalių kasų ir POS integracijai su Rivile GAMA POS sistema.

Integracija susideda iš dviejų dalių:

  • Normatyvinės informacijos nuskaitymas iš Rivile GAMA sistemos;
  • Informacijos suformavimas ir įkėlimas į Rivile GAMA sistemą
    (Rivile GAMA POS modulyje kvitų, pinigų įdėjimo/ išėmimo formavimas, atsiskaitymas pinigais, kreditu ar lojalumo taškais).

Normatyvinės informacijos nuskaitymas iš Rivilė-GAMA sistemos

Naudojami standartiniai Rivile API v2 (REST web servisai). Rivile API v2 (REST web servisų) metodai aprašyti: Metodų sąrašas . Kartu ten pateikiama ir visa informacija apie Rivile GAMA lenteles bei jų paskirtį.

Kiekviena trečioji šalis pati sprendžia, kokią informaciją naudoti bei kokios informacijos turinys yra palaikomas integruojamoje POS ar kasų sistemoje.

Naudojami sąrašai:

  • N07_IMON – Padalinių sąrašas
  • N08_KLIJ – Klientų sąrašas
  • N17_PROD – Prekių bei paslaugų sąrašas
  • N37_PMAT – Prekių bei paslaugų matavimo vienetų sąrašas
  • N40_ABAR – Alternatyvių barkodų sąrašas
  • N19_PGR – Prekių, paslaugų ir klientų grupių sąrašas
  • N26_KOMP – Prekių ir paslaugų komponenčių sąrašas (lydinčios prekės, tara ir kt.)
  • I33_PKAI – Prekių pardavimo kainos padaliniuose (mažmeninės kainos)
  • N32_PABC – Kainynų ABC lentelė
  • N13_AKC – Prekės akcijos (pardavimo kainos ir nuolaidos procentai)

Tiesiogiai iš lentelių informacija nuskaitoma tokia, kokia yra tuo momentu. Norėdami gauti tik pasikeitimų informaciją, naudokite žemiau aprašytus specialius metodus.

Toliau pateikiamos nuorodos į lentelių informacijos nuskaitymo metodus ir struktūros aprašymus bei papildomai išvardinami laukai, kurie turėtų būti aktualiausi ir naudojami integracijoje.

N07_IMON - Padalinių sąrašas

Laukas Tipas Aprašymas
N07_KODAS_IS C(12) Padalinio kodas –UNIKALUS KODAS
N07_PAV C(40) Padalinio pavadinimas
N07_EIL1 C(40) Aprašymo eilutė 1
N07_EIL2 C(40) Aprašymo eilutė 2
N07_EIL3 C(40) Aprašymo eilutė 3
N07_EIL4 C(60) Aprašymo eilutė 4
N07_EIL5 C(60) Aprašymo eilutė 5
N07_EIL6 C(60) Aprašymo eilutė 6
N07_NUTOLES N(1) Padalinio požymis:0-nenutolęs,1-nutolęs (Reikia rinktis padalinius su 0)
N07_PVM_KAIN N(1) Pardavimo kainų požymis:0-be PVM,1-su PVM
N07_POZ_DATE N(1) Terminuotas:0-Ne,1-Taip
N07_BEG_DATE T(8) Pradžios data
N07_END_DATE T(8) Pabaigos data

N08_KLIJ - Klientai

Laukas Tipas Aprašymas
N08_KODAS_KS C(12) Kliento kodas UNIKALUS KODAS
N08_RUSIS N(1) Rūšis:1-pirkėjas,2-tiekėjas,3-pirkėjas/tiekėjas,4-įmonė,5 - kontaktas
N08_PVM_KODAS C(25) Kliento PVM kodas
N08_IM_KODAS C(13) Kliento įmonės kodas
N08_PAV C(150) Kliento pavadinimas
N08_ADR C(150) Adresas
N08_POZ_DATE N(1) Terminuotas0-ne,1-taip
N08_BEG_DATE T(8) Pradžios data
N08_END_DATE T(8) Pabaigos data
N08_TIPAS N(1) Tipas: 1-juridinis,2-fizinis

N17_PROD - Prekių/Paslaugų lentelė

Laukas Tipas Aprašymas
N17_KODAS_PS C(12) Prekės kodas UNIKALUS KODAS
N17_TIPAS N(1) Tipas:1-prekė,2-paslauga
N17_KODAS_US C(12) Pagrindinis matavimo vieneto kodas
N17_PAV C(120) Pavadinimas
N17_KODAS_KS C(12) Tiekėjo kodas
N17_ASSEMBLY N(1) Rūšis: 1-paprasta, 2-komplektuojama, 3-išskaidoma, 4-generavimui, 5-sudėtinė, 6-komplektuojama/išskaidoma, 7-mišri, 8-tara
N17_NUOL_GR C(6) Nuolaidos grupė
N17_GALIOJA N(5) Galiojimo dienos
N17_MOKESTIS N(1) Ar prekė apmokestinama:0-ne,1-taip
N17_TAX N(1) PVM mokestis,1-A,2-B,3-C,4-D
N17_KODAS_KS_G C(12) Prekės gamintojo kodas
N17_KODAS_GS C(12) Grupės kodas
N17_MAX_NUOL N(6,2) Maksimalus nuolaidos procentas parduodant
N17_SK_KODAS N(2) Prekės skyrius kasoje
N17_PASTABOS M(4) Pastabos
N17_POZ_DATE N(1) Terminuota:0-ne,1-taip
N17_BEG_DATE T(8) Termino pradžia
N17_END_DATE T(8) Termino pabaiga

N19_PGR - Grupių lentelė

Laukas Tipas Aprašymas
N19_KODAS_GS C(12) Grupės kodas UNIKALUS KODAS
N19_RUSIS N(1) Rūšis:1-prekių,2-paslaugų,3-klientų,4-kodų
N19_PAV C(40) Grupės pavadinimas
N19_LYGIS N(3) Grupės lygis
N19_TEVAS C(12) Aukštesnės grupės kodas
N19_TIPAS N(1) Tipas:1-grupė,2-detali
N19_POZ_DATE N(1) Terminuota:0-ne,1-taip
N19_BEG_DATE T(8) Pradžios data
N19_END_DATE T(8) Pabaigos data

N37_PMAT - Prekių (paslaugų) matavimų lentelė

N37_KODAS_PS C(12) Prekės kodas UNIKALUMAS N37_KODAS_PS+N37_KODAS_US
N37_KODAS_US C(12) Matavimo kodas
N37_BAR_KODAS C(12) Prekės Bar kodas
N37_TRUM_PAV C(16) Trumpas prekės pav. siunčiant į kasas
N37_PAV C(120) Ilgas prekės pavadinimas
N37_KASOS_POZ N(1) Svėrimo požumis:0-ne,1-taip
N37_SVARST_POZ N(1) Siųsti į svarstykles:0-ne,1-taip
N37_SK_SVARST C(4) Svarstyklių skyrius
N37_TAROS_GR C(4) Taros grupė
N37_TAROS_SVORIS N(12) Taros svoris

N40_ABAR - Alternatyvūs bar kodai

Laukas Tipas Aprašymas
N40_BAR_KODAS C(40) Bar kodas UNIKALUS
N40_KODAS_PS C(12) Prekės kodas UNIKALUMAS N37_KODAS_PS+N37_KODAS_US
N40_KODAS_US C(12) Matavimo vienetas

N26_KOMP - Gaminio komplektuojančių komponenčių aprašymas

Laukas Tipas Aprašymas
N26_KODAS_PS C(12) Gaminio kodas UNIKALUMAS N26_KODAS_PS, N26_EIL_NR
N26_EIL_NR N(6) Eilutės numeris
N26_TIPAS N(1) Komponentės tipas:1-prekė,2-kodas
N26_KODAS_PS_K C(12) Komponentės kodas
N26_KODAS_US C(12) Matavimo vienetas
N26_FRAKCIJA N(4) Matavimo vnt. frakcija
N26_KIEKIS N(14) Reikalingas kiekis

Svarbu aprašant prekes, kurios parduodamos kartu (mišrios prekės). Pavyzdžiui, kai prekė parduodama su tara (buteliu).
Kai prekė yra mišri (N17_ASSEMBLY=7), papildoma prekė aprašoma N26_KOMP lentelėje. Papildomos prekės kodas nurodomas lauke N26_KODAS_PS_K, o matavimo vienetas lauke N26_KODAS_US.
Papildomas prekės kiekis paskaičiuojamas N26_KIEKIS/ N26_FRAKCIJA.
Papildomos prekės N26_KODAS_PS_K su mato vienetu N26_KODAS_US bar kodas yra N37 lentelėje.

I33_PKAI - Prekių pardavimo kainos padaliniuose (mažmeninės kainos)

Laukas Tipas Aprašymas
I33_KODAS_PS C(12) Prekės, paslaugos kodas
I33_KODAS_IS C(12) Padalinio kodas
I33_KODAS_US C(12) Matavimo kodas
I33_KAINA N(12,4) Pardavimo kaina
I33_POZ_POS N(1) POS-uose kaina 1-nekoreguojama;2-koreguojama (rankiniu būdu) ;3-kompensuojama;6-Nekeičiama (pvz. TARA)

N32_PABC - Kainynų lentelė

Laukas Tipas Aprašymas
N32_KODAS_PS C(12) Prekės/Paslaugos kodas
N32_KODAS_US C(12) Matavimo vieneto kodas
N32_TIPAS C(1) Kainos tipas A,B,C,...J
N32_G_DATE T(8) Galioja nuo
N32_KAINA1 N(12,4) Kaina 1
N32_KAINA2 N(12,4) Kaina 2 priklausanti nuo kiekio 2
N32_KIEKIS2 N(14) kiekis 2
N32_KAINA3 N(12,4) Kaina 3 priklausanti nuo kiekio 3
N32_KIEKIS3 N(14) Kiekis 3
N32_KAINA4 N(12,4) Kaina 4 priklausanti nuo kiekio 4
N32_KIEKIS4 N(14) Kiekis 4

N13_AKC - Prekės akcijos (pardavimo kainos ir nuolaidos procentai)

Laukas Tipas Aprašymas
N13_KODAS_PS C(12) Prekės kodas
N13_KODAS_US C(12) Mato vnt.
N13_KODAS_IS C(12) Padalinys
N13_EIL_NR N(6) Eilutės nr.
N13_DATE_PR T(8) Akcijos pradžios data
N13_DATE_PB T(8) Akcijos pabaigos data
N13_POZ_KAINA N(1) Kainos parinkimas: 0-ne; 1-taip
N13_KAINA1 N(12,4) Kaina1
N13_KIEKIS2K N(14) Kainos kiekis2
N13_KAINA2 N(12,4) Kaina2
N13_KIEKIS3K N(14) Kainos kiekis3
N13_KAINA3 N(12,4) Kaina3
N13_KIEKIS4K N(14) Kainos kiekis4
N13_KAINA4 N(12,4) Kaina4
N13_POZ_NUOLAIDA N(1) Nuolaidos parinkimas: 0-ne; 1-taip.
N13_NUOLAIDA1 N(6,2) Nuolaida1
N13_KIEKIS2N N(14) Nuolaidos kiekis2
N13_NUOLAIDA2 N(6,2) Nuolaida2
N13_KIEKIS3N N(14) Nuolaidos kiekis3
N13_NUOLAIDA3 N(6,2) Nuolaida3
N13_KIEKIS4N N(14) Nuolaidos kiekis4
N13_NUOLAIDA4 N(6,2) Nuolaida4
Tik koreguotos informacijos nuskaitymas.

Norint naudotis tik koreguotos informacijos nuskaitymu, visų pirma startuojama užklausa INIT_TRIGGER.

Metodo aprašymas: INIT_TRIGGER.

Ši užklausa sukuria reikiamą infrastruktūrą pokyčių registravimui.
Užklausa paleidžiama tik vieną kartą (pakartotinis paleidimas sistemai įtakos nedaro).

Užklausa:

<body> 
    <method>INIT_TRIGGER</method> 
</body> 

Užklausą reikia paleisti pakartotinai, jeigu keičiasi jos pačios funkcionalumas, t.y. ji pasipildo naujomis pakyčio lentelėmis.

GET_PROD_BY_BARCODE_TIME – Normatyvinės prekių informacijos korekcijos pagal barkodus

Metodas GET_PROD_BY_BARCODE_TIME grąžina informaciją apie prekę remiantis koregavimo data.
Metodas naudojamas tada, kai reikia gauti tik tą informaciją, kuri pasikeitė nuo tam tikros datos ir laiko. Grąžinama informacija kiekvienam barkodui (pagrindas ne prekė, o prekės barkodas) – gaunamas atsakymas kiekvienam unikaliam barkodui.

Metodo aprašymas : GET_PROD_BY_BARCODE_TIME.

Užklausos pavyzdys:

<body> 
  <method>GET_PROD_BY_BARCODE_TIME</method> 
  <params> 
    <fil></fil> 
    <pagenumber>1</pagenumber> 
    <list>H</list> 
    <lastDate>2020-12-09T10:30:00.000</lastDate> 
    <fields_n17>n17_kodas_ls_1,n17_kodas_ls_2</fields_n17> 
    <fil_pos_padal>1</fil_pos_padal> 
  </params> 
</body> 

Rezultatas:

  • r_date – koregavimo laikas
  • Status – koregavimo būsena: R – Koreguota, D - Ištrinta
<RET_DOK> 
    <PREKE> 
        <Row_number>1</Row_number> 
        <bar_kodas>000000000022</bar_kodas> 
        <kodas_ps>TEST02      </kodas_ps> 
        <kodas_us>DEZ_12      </kodas_us> 
        <r_date>2020-12-09T11:58:51.150</r_date> 
        <Status>R</Status> 
        <N17_PROD> 
            <N17> 
                <tn17_r_Date>2020-12-09T11:58:51.157</tn17_r_Date> 
                <Status>R</Status> 
                <N17_TIPAS>1</N17_TIPAS> 
                <N17_KODAS_US>DEZ_12      </N17_KODAS_US> 
                <N17_PAV>Pavadinimas test 02</N17_PAV> 
                <N17_KODAS_KS></N17_KODAS_KS> 
                <N17_ASSEMBLY>1</N17_ASSEMBLY> 
                <N17_NUOL_GR></N17_NUOL_GR> 
                <N17_GALIOJA>0</N17_GALIOJA> 
                <N17_MOKESTIS>1</N17_MOKESTIS> 
                <N17_TAX>1</N17_TAX> 
                <N17_KODAS_KS_G></N17_KODAS_KS_G> 
                <N17_KODAS_GS></N17_KODAS_GS> 
                <N17_MAX_NUOL>0.00</N17_MAX_NUOL> 
                <N17_SK_KODAS>0</N17_SK_KODAS> 
                <N17_PASTABOS></N17_PASTABOS> 
                <N17_POZ_DATE>0</N17_POZ_DATE> 
                <N17_BEG_DATE>2020-03-18T00:00:00</N17_BEG_DATE> 
                <N17_END_DATE>2020-03-18T00:00:00</N17_END_DATE> 
                <N17_KODAS_KS_LS1></N17_KODAS_KS_LS1> 
                <N17_KODAS_KS_LS2></N17_KODAS_KS_LS2> 
            </N17> 
        </N17_PROD> 
        <N37_PMAT> 
            <N37> 
                <TN37_KODAS_US>DEZ_12      </TN37_KODAS_US> 
                <tn37_r_Date>2020-12-09T11:58:51.170</tn37_r_Date> 
                <Status>R</Status> 
                <N37_BAR_KODAS>000000000022</N37_BAR_KODAS> 
                <N37_TRUM_PAV>Pavadinimas test</N37_TRUM_PAV> 
                <N37_PAV>Pavadinimas test 02</N37_PAV> 
                <N37_KASOS_POZ>0</N37_KASOS_POZ> 
                <N37_SVARST_POZ>0</N37_SVARST_POZ> 
                <N37_SK_SVARST>   </N37_SK_SVARST> 
                <N37_TAROS_GR>   </N37_TAROS_GR> 
                <N37_TAROS_SVORIS>0</N37_TAROS_SVORIS> 
                <N37_FRAKCIJA_A>12</N37_FRAKCIJA_A> 
                <N37_FRAKCIJA>12</N37_FRAKCIJA> 
                <N37_KOEFICI>12</N37_KOEFICI> 
            </N37> 
            ... 
        </N37_PMAT> 
        <I33_PKAI> 
            <I33> 
                <TI33_KODAS_IS>01          </TI33_KODAS_IS> 
                <TI33_KODAS_US>DEZ_12      </TI33_KODAS_US> 
                <tI33_r_Date>2020-12-09T11:58:51.160</tI33_r_Date> 
                <Status>R</Status> 
                <I33_FORMATAS>0</I33_FORMATAS> 
                <I33_POZ>  </I33_POZ> 
                <I33_POZ_POS>1</I33_POZ_POS> 
                <I33_NUOL_GR>     </I33_NUOL_GR> 
                <I33_MAX_NUOL>0.00</I33_MAX_NUOL> 
                <I33_POZ_DATE>0</I33_POZ_DATE> 
                <I33_BEG_DATE>2020-03-19T00:00:00</I33_BEG_DATE> 
                <I33_END_DATE>2020-03-19T00:00:00</I33_END_DATE> 
            </I33> 
            <I33> 
                <TI33_KODAS_IS>02          </TI33_KODAS_IS> 
                <TI33_KODAS_US>DEZ_12      </TI33_KODAS_US> 
                <tI33_r_Date>2020-12-09T10:50:03.000</tI33_r_Date> 
                <Status>D</Status> 
            </I33> 
            ... 
        </I33_PKAI> 
    </PREKE> 
    ... 
<RET_DOK> 
GET_PRICES_TIME – Prekių/paslaugų kainų informacijos korekcijos

Metodas GET_PRICE_TIME grąžina informaciją apie prekių ir paslaugų kainų pasikeitimus remiantis koregavimo data.
Metodas naudojamas tada, kai reikia gauti tik tą informaciją, kuri pasikeitė nuo tam tikros datos ir laiko. Grąžinama informacija gali būti pagal prekę ir mato vienetą arba pagal unikalų barkodą.

Metodo aprašymas : GET_PRICES_TIME.

Užklausos pavyzdys:

<body> 
  <method>GET_PRICES_TIME</method> 
  <params> 
    <fil></fil> 
    <pagenumber>1</pagenumber> 
    <listType>B</listType> 
    <lastDate>2021-02-04T16:30:00.000</lastDate> 
  </params> 
</body> 

Rezultatas:

  • r_date – koregavimo laikas
  • Ištrintos kainos nėra matomos
  • Reikia atkreipti dėmesį, kad kainos turi tag-us: kaina, kaina1, kaina2, kaina3, o nuolaidos atitinkamai: nuolaida, nuolaida1, nuolaida2, nuolaida3.
    Akcijos gali įgyti visas keturias reikšmes KAIN_N13 ir NUOL_N13, prekių nuolaidų grupės – NUOL_N31, kainynai – KAIN_N32.
{ 
    "KAINOS": [ 
        { 
            "Row_number": 1, 
            "kodas_ps": "PR001", 
            "kodas_us": "KG", 
            "bar_kodas": "000000000001", 
            "r_date": "2021-05-19T14:20:32.410", 
            "KAIN_N13": { 
                "N13": [ 
                    { 
                        "kodas_is": "", 
                        "kaina": 1.39, 
                        "kaina2": 1.385, 
                        "kiekis2": 2, 
                        "kaina3": 1.5, 
                        "kiekis3": 5, 
                        "kaina4": 1.21, 
                        "kiekis4": 10, 
                        "kain_kodas": 2, 
                        "prioritetas": 1, 
                        "pradzia": "2020-11-01T00:00:00", 
                        "pabaiga": "2021-12-31T23:59:00" 
                    }, 
                    ... 
                ] 
            }, 
            "NUOL_N13": { 
                "N13": [ 
                    { 
                        "kodas_is": "", 
                        "nuolaida": 5, 
                        "nuolaida2": 6, 
                        "kiekis2": 2, 
                        "kain_kodas": 5, 
                        "prioritetas": 1, 
                        "pradzia": "2021-07-01T13:00:00", 
                        "pabaiga": "2021-12-31T16:59:00" 
                    }, 
                    ... 
                ] 
            }, 
            "KAIN_I33": { 
                "I33": [ 
                    { 
                        "kodas_is": "01", 
                        "kaina": 2.1, 
                        "prioritetas": 4 
                    }, 
                    ... 
                ] 
            }, 
            "NUOL_I33": { 
                "I33": { 
                    "kodas_is": "03", 
                    "nuolaida": 6, 
                    "prioritetas": 3 
                } 
            }, 
            "KAIN_N32": { 
                "N32": [ 
                    { 
                        "kaina": 1.26, 
                        "kaina2": 1.25, 
                        "kiekis2": 2000, 
                        "kain_kodas": "A", 
                        "prioritetas": 3, 
                        "pradzia": "2020-12-14T00:00:00" 
                    }, 
                    ... 
                ] 
            } 
        }, 
        ... 
    ] 
} 

Informacijos suformavimas Rivile GAMA sistemoje

Rivile GAMA sistemoje turi būti aprašytas POS įrenginys, kuris dirba nefiskaliniame režime. POS kodas turėtų atitikti fizinio POS numerį. Formuojant operacijas visada reikia nurodyti šio įrenginio kodą. POS aprašomas rankiniu būdu naudojantis Rivile GAMA sistema: POS aprašymas.

Visos POS operacijos registruojamos tokioje struktūroje:

  • I61_POSH – POS operacijos aprašomoji suminė dalis (HEADER)
  • I62_POSD – POS operacijos detalios eilutės (DETAILS)

Įkeliant POS operacijas neatsižvelgiama į prekių likučių kiekius sistemoje, taip pat prekių kiekiai automatiškai nenusirašo. Esant poreikiui rezervuoti per POS parduotus prekių kiekius, reikia Rivile GAMA sistemoje paleisti likučių koregavimo mechanizmą (Rivile GAMA sistemos POS operacijų sąraše mygtukas „Likučių koregavimas“).

Registruotos POS operacijos į pardavimus perkeliamos rankiniu būdu, standartinėmis Rivile GAMA priemonėmis (Rivile GAMA sistemos POS operacijų sąraše mygtukas „Informacijos perkėlimas“)

POS operacijų formavimo metodas ir lentelių struktūra aprašyta : EDIT_I61_FULL.

Pastabos:

  • Registruojant atsiskaitymus kreditu naudojami tik laukai: I61_KODAS_SS_0 ir I61_PINIGAI, I61_KODAS_SS_1 ir I61_PINIGAI1, I61_KODAS_SS_3 ir I61_PINIGAI3.
  • Registruojant atsiskaitymą lojalumu ar dovanų kuponu, galima naudoti I61_KODAS_SS_4 ir I61_PINIGAI4
  • Perduodant kvito numerį naudojamas laukas I61_DOK_NR – jis turi būti unikalus kiekvienam aprašytam POS (I61_KODAS_KK)
Pinigų įdėjimas / išėmimas

Pinigų įdėjimui/išėmimui: I61_TIPAS=2. Kai I61_SUMA>0 - įdėjimas, kai I61_SUMA<0 - išėmimas.

Pinigų įdėjimas:

<body>  
    <method>EDIT_I61_FULL</method>  
    <data>  
            <I61> 
                <I61_KODAS_KK>EEKGHH6</I61_KODAS_KK> 
                <I61_TIPAS>2</I61_TIPAS> 
                <I61_SUMA>20.00</I61_SUMA> 
            </I61>  
    </data>  
</body> 

Pinigų išėmimas:

<body>  
    <method>EDIT_I61_FULL</method>  
    <data>  
            <I61> 
                <I61_KODAS_KK>EEKGHH6</I61_KODAS_KK> 
                <I61_TIPAS>2</I61_TIPAS> 
                <I61_SUMA>-20.00</I61_SUMA> 
            </I61>  
    </data>  
</body> 
Z operacijos registravimas

Z operacijai pinigų suma nėra perduodama. Ši operacija susumuoja grynųjų pinigų sumą už visą darbo su POS laikotarpį ir gautą sumą minusuoja – išima pinigus iš stalčiaus. Po Z operacijos stalčiuje grynųjų pinigų likutis yra lygus 0.

<body>  
    <method>EDIT_I61_FULL</method>  
    <data>  
            <I61> 
                <I61_KODAS_KK>EEKGHH6</I61_KODAS_KK> 
                <I61_TIPAS>4</I61_TIPAS> 
                <I61_DOK_NR>Z-NR001</I61_DOK_NR> 
                <I61_REZERVAS1>-123.55</I61_REZERVAS1> 
            </I61>  
    </data>  
</body>

Pastaba: jei norima, kad pinigų įdėjimai ir išėmimai, taip pat ir Z operacijos registravimas, būtų apskaitomi Didžiojoje knygoje, reikia POS aprašyme nurodyti pinigų įdėjimo (iš kokios sąskaitos) ir išėmimo (į kurią sąskaitą) buhalterines sąskaitas.

Pasiūlymas: Siūloma dokumento numeryje nurodyti Z operacijos fiskale unikalų numerį, o Z operacijos metu išimtą grynųjų pinigų likutį perduoti kaip tekstinę informaciją lauke I61_REZERVAS1.

Kvito sukūrimas. Apmokėjimas

Pavyzdžiai pateikti parenkant minimalų užpildomų detalių eilučių duomenų kiekį.

  1. Parduotos dvi prekės. Atsiskaityta grynais pinigais.
<body> 
    <method>EDIT_I61_FULL</method> 
    <data>  
            <I61> 
            <I61_KODAS_KK>EEKGHH6</I61_KODAS_KK> 
            <I61_DOK_NR>KVITAS123</I61_DOK_NR> 
            <I61_TIPAS>1</I61_TIPAS> 
            <I61_SUMA>50.50</I61_SUMA> 
            <I61_PINIGAI>50.50</I61_PINIGAI> 
            <I61_PINIGAI_GR>50.50</I61_PINIGAI_GR> 
            <I62> 
                <di62_bar_kodas>000000000001</di62_bar_kodas> 
                <kiekis_u>1</kiekis_u> 
            </I62> 
            <I62> 
                <di62_bar_kodas>000000000002</di62_bar_kodas> 
                <kiekis_u>1</kiekis_u> 
            </I62> 
            </I61>  
    </data>  
</body> 
  1. Parduotos dvi prekės. Atsiskaityta kreditu. Kredito kodas 2410-POS.
<body>  
    <method>EDIT_I61_FULL</method>  
    <data>  
            <I61> 
            <I61_KODAS_KK>EEKGHH6</I61_KODAS_KK> 
            <I61_TIPAS>1</I61_TIPAS> 
            <I61_SUMA>50.50</I61_SUMA> 
            <I61_PINIGAI>50.50</I61_PINIGAI> 
            <I61_KODAS_SS_0>2410-POS</I61_KODAS_SS_0> 
            <I62> 
                <di62_bar_kodas>000000000001</di62_bar_kodas> 
                <kiekis_u>1</kiekis_u> 
            </I62> 
            <I62> 
                <di62_bar_kodas>000000000002</di62_bar_kodas> 
                <kiekis_u>1</kiekis_u> 
            </I62> 
            </I61>  
    </data>  
</body> 
  1. Parduotos dvi prekės. Atsiskaityta mišriai trimis būdais: grynais - 10.00€, kreditu 2410-POS - 20.50€, kreditu 274 - 20.00€.
<body>  
    <method>EDIT_I61_FULL</method>  
    <data>  
            <I61> 
            <I61_KODAS_KK>EEKGHH6</I61_KODAS_KK> 
            <I61_DOK_NR>KVITAS123</I61_DOK_NR> 
            <I61_TIPAS>1</I61_TIPAS> 
            <I61_SUMA>50.50</I61_SUMA> 
            <I61_PINIGAI>10.00</I61_PINIGAI> 
            <I61_PINIGAI_GR>10.00</I61_PINIGAI_GR> 
            <I61_PINIGAI1>20.50</I61_PINIGAI1> 
            <I61_KODAS_SS_1>2410-POS </I61_KODAS_SS_1> 
            <I61_PINIGAI3>20.00</I61_PINIGAI3> 
            <I61_KODAS_SS_3>274</I61_KODAS_SS_3> 
            <I62> 
                <di62_bar_kodas>000000000001</di62_bar_kodas> 
                <kiekis_u>1</kiekis_u> 
            </I62> 
            <I62> 
                <di62_bar_kodas>000000000002</di62_bar_kodas> 
                <kiekis_u>1</kiekis_u> 
            </I62> 
            </I61> 
    </data> 
</body> 

Pastaba: Grynų pinigų sąskaitos kodas nurodytas POS aprašyme ir jo perduoti nereikia. Todėl tag‘o gryniems pinigam nenurodome.

  1. Jei kvitui buvo atspausdinta S/F, tai perduodamas kliento kodas esantis Rivile GAMA sistemoje ir S/F numeris .
<body>  
    <method>EDIT_I61_FULL</method>  
    <data>  
            <I61> 
            <I61_KODAS_KK>EEKGHH6</I61_KODAS_KK> 
            <I61_TIPAS>1</I61_TIPAS> 
            <I61_SUMA>45.45</I61_SUMA> 
            <I61_PINIGAI>45.45</I61_PINIGAI> 
            <I61_PINIGAI_GR>45.45</I61_PINIGAI_GR> 
            <I61_KODAS_KS>123456789012</I61_KODAS_KS> 
            <I61_SASK_NR>AAA0000012345</I61_SASK_NR> 
            <I62> 
                <di62_bar_kodas>000000000001</di62_bar_kodas> 
                <kiekis_u>1</kiekis_u> 
            </I62> 
            <I62> 
                <di62_bar_kodas>000000000002</di62_bar_kodas> 
                <kiekis_u>1</kiekis_u> 
            </I62> 
            </I61>  
    </data>  
</body>
  1. Jei išgryninimo metu išimami pinigai iš stalčiaus (I61_TIPAS=7), reikia nurodyti pinigų sumą grynais pvz.:-50.00 .
<body>  
    <method>EDIT_I61_FULL</method>  
    <data>  
            <I61> 
            <I61_KODAS_KK>EEKGHH6</I61_KODAS_KK> 
            <I61_TIPAS>7</I61_TIPAS> 
            <I61_SUMA>-50.00</I61_SUMA> 
            <I61_PINIGAI_GR>-50.00</I61_PINIGAI_GR> 
          </I61>  
    </data> 
</body>
  1. Anuliuota operacija.

Perduodant I61_TIPAS=3 galima registruoti anuliuotą operaciją. Anuliuotos operacijos visos detalios eilutės registruojamos kaip anuliuotos

<body> 
    <method>EDIT_I61_FULL</method> 
    <data>  
            <I61> 
            <I61_KODAS_KK>EEKGHH6</I61_KODAS_KK> 
            <I61_DOK_NR>KVITAS123</I61_DOK_NR> 
            <I61_TIPAS>3</I61_TIPAS> 
            <I62> 
                <di62_bar_kodas>000000000001</di62_bar_kodas> 
                <kiekis_u>1</kiekis_u> 
            </I62> 
            <I62> 
                <di62_bar_kodas>000000000002</di62_bar_kodas> 
                <kiekis_u>1</kiekis_u> 
            </I62> 
            </I61>  
    </data>  
</body> 
  1. Avanso registravimas.

Avansas registruojamas kaip pinigų įdėjimo operacija nurodant klientą.

<body>  
    <method>EDIT_I61_FULL</method>  
    <data>  
            <I61> 
                <I61_KODAS_KK>EEKGHH6</I61_KODAS_KK> 
                <I61_KODAS_KS>KLIENTAS</I61_KODAS_KS> 
                <I61_TIPAS>2</I61_TIPAS> 
                <I61_SUMA>20.00</I61_SUMA> 
            </I61>  
    </data>  
</body> 

Pastaba: Avanso panaudojimas registruojamas kaip normalus kvitas, tik atsiskaitant nurodoma avanso sąskaita.

Detalios eilutės (parduodamos pozicijos)

Sistemai pateikiant realius duomenis, turėtų būti užpildoma pilna turima informacija, kuri yra integruojamoje POS ar kasų sistemoje:

  • Nurodomas mokamos sumos
  • Prekės barkodai
  • Lydinčių prekių barkodai
  • Nuolaidos procentai ir sumos
  • Prekės kiekis
  • Suma su PVM
  • PVM apmokestinimo požymis
  • PVM mokesčio procentas
  1. Parduodant su nuolaida.
<body>  
    <method>EDIT_I61_FULL</method>  
    <data>  
            <I61> 
            <I61_KODAS_KK>EEKGHH6</I61_KODAS_KK> 
            <I61_TIPAS>1</I61_TIPAS> 
            <I61_SUMA>45.45</I61_SUMA> 
            <I61_PINIGAI>45.45</I61_PINIGAI> 
            <I61_PINIGAI_GR>45.45</I61_PINIGAI_GR> 
            <I62> 
                <di62_bar_kodas>000000000001</di62_bar_kodas> 
                <kiekis_u>1</kiekis_u> 
                <I62_KAINA_SU>50.0000</I62_KAINA_SU> 
                <I62_NUOLAIDA>10.00</I62_NUOLAIDA> 
                <I62_SUMA>45.00</I62_SUMA> 
                <I62_NUOLAIDA_S>5.00</I62_NUOLAIDA_S> 
                <I62_TAX>1</I62_TAX> 
                <I62_MOKESTIS_P>21.00</I62_MOKESTIS_P> 
             </I62> 
            <I62> 
                <di62_bar_kodas>000000000002</di62_bar_kodas> 
                <kiekis_u>1</kiekis_u> 
                <I62_KAINA_SU>0.5000</I62_KAINA_SU> 
                <I62_NUOLAIDA>10.00</I62_NUOLAIDA> 
                <I62_SUMA>0.45</I62_SUMA> 
                <I62_NUOLAIDA_S>0.05</I62_NUOLAIDA_S> 
                <I62_TAX>1</I62_TAX> 
                <I62_MOKESTIS_P>21.00</I62_MOKESTIS_P> 
            </I62> 
            </I61>  
    </data>  
</body> 

Pastaba: I61_POSH nurodomos mokėtinos sumos pritaikius visas nuolaidas.

  1. Prekės identifikavimui vietoje barkodo galima alternatyviai naudoti ir prekės kodą bei matavimo vienetą.
<body> 
    <method>EDIT_I61_FULL</method>  
    <data>  
            <I61> 
            <I61_KODAS_KK>EEKGHH6</I61_KODAS_KK> 
            <I61_TIPAS>1</I61_TIPAS> 
            <I61_SUMA>45.45</I61_SUMA> 
            <I61_PINIGAI>45.45</I61_PINIGAI> 
            <I61_PINIGAI_GR>45.45</I61_PINIGAI_GR> 
            <I62> 
                <I62_KODAS_PS>TEST01</I62_KODAS_PS> 
                <I62_KODAS_US_A>DEZ</I62_KODAS_US_A> 
                <kiekis_u>1</kiekis_u> 
                <I62_KAINA_SU>50.0000</I62_KAINA_SU> 
                <I62_NUOLAIDA>10.00</I62_NUOLAIDA> 
                <I62_SUMA>45.00</I62_SUMA> 
                <I62_NUOLAIDA_S>5.00</I62_NUOLAIDA_S> 
                <I62_TAX>1</I62_TAX> 
                <I62_MOKESTIS_P>21.00</I62_MOKESTIS_P> 
             </I62> 
            <I62> 
                <I62_KODAS_PS>TEST01</I62_KODAS_PS> 
                <I62_KODAS_US_A>VNT</I62_KODAS_US_A> 
                <kiekis_u>1</kiekis_u> 
                <I62_KAINA_SU>0.5000</I62_KAINA_SU> 
                <I62_NUOLAIDA>10.00</I62_NUOLAIDA> 
                <I62_SUMA>0.45</I62_SUMA> 
                <I62_NUOLAIDA_S>0.05</I62_NUOLAIDA_S> 
                <I62_TAX>1</I62_TAX> 
                <I62_MOKESTIS_P>21.00</I62_MOKESTIS_P> 
            </I62> 
            </I61>  
    </data>  
</body> 
  1. Naudojant ir taikant lojalumo sistemą bei atsiskaitant lojalumo taškais, lojalumo taškų kaupimas bei nurašymas realizuojamas POS ar kasų sistemoje, o į Rivile GAMA perduodama tik pinigų suma, kuri dengiama lojalumo sukauptais pinigais.

Pavyzdžiui, dalis kvito apmokama grynais (48.00€) ir dalis lojalumu (2.00€), nurodant lojalumo buhalterinę sąskaitą (I61_KODAS_SS_4).

<body>  
    <method>EDIT_I61_FULL</method>  
    <data>  
            <I61> 
            <I61_KODAS_KK>EEKGHH6</I61_KODAS_KK> 
            <I61_TIPAS>1</I61_TIPAS> 
            <I61_SUMA>50</I61_SUMA> 
            <I61_PINIGAI>48.00</I61_PINIGAI> 
            <I61_PINIGAI_GR>48.00</I61_PINIGAI_GR> 
            <I61_PINIGAI4>2.00</I61_PINIGAI4> 
            <I61_KODAS_SS_4>274</I61_KODAS_SS_4> 
            <I62> 
                <I62_KODAS_PS>TEST01</I62_KODAS_PS> 
                <I62_KODAS_US_A>DEZ</I62_KODAS_US_A> 
                <kiekis_u>1</kiekis_u> 
                <I62_KAINA_SU>50.0000</I62_KAINA_SU> 
                <I62_SUMA>50.00</I62_SUMA> 
                <I62_TAX>1</I62_TAX> 
                <I62_MOKESTIS_P>21.00</I62_MOKESTIS_P> 
             </I62> 
            </I61>  
    </data>  
</body> 

Pastaba: lojalumo naudojamą buhalterinę sąskaitą galima nurodyti ir prie POS aprašymo, tada nereikės perdavinėti su kiekviena operacija.

  1. Prekės su tara pardavimas:
<body> 
    <method>EDIT_I61_FULL</method> 
    <data> 
            <I61> 
            <I61_KODAS_KK>XW3CDDV</I61_KODAS_KK> 
            <I61_TIPAS>1</I61_TIPAS> 
            <I61_SUMA>1.92</I61_SUMA> 
            <I61_PINIGAI>1.92</I61_PINIGAI> 
            <I61_PINIGAI_GR>1.92</I61_PINIGAI_GR> 
            <I62> 
                    <I62_KODAS_PS>ALUS</I62_KODAS_PS> 
                    <I62_KODAS_US_A>VNT</I62_KODAS_US_A> 
                    <kiekis_u>1</kiekis_u> 
                    <I62_KAINA_SU>1.8200</I62_KAINA_SU> 
                    <I62_SUMA>1.82</I62_SUMA> 
                    <I62_TAX>1</I62_TAX> 
                    <I62_MOKESTIS_P>21.00</I62_MOKESTIS_P> 
            </I62> 
            <I62> 
                    <I62_KODAS_PS>TARA</I62_KODAS_PS> 
                    <I62_KODAS_US_A>VNT</I62_KODAS_US_A> 
                    <kiekis_u>1</kiekis_u> 
                    <I62_KAINA_SU>0.1000</I62_KAINA_SU> 
                    <I62_SUMA>0.10</I62_SUMA> 
            </I62> 
            </I61> 
    </data> 
</body> 
  1. Prekės grąžinimas.
<body> 
    <method>EDIT_I61_FULL</method> 
    <data> 
            <I61> 
            <I61_KODAS_KK>XW3CDDV</I61_KODAS_KK> 
            <I61_TIPAS>5</I61_TIPAS> 
            <I61_SUMA>50</I61_SUMA> 
            <I61_PINIGAI>50.00</I61_PINIGAI> 
            <I61_PINIGAI_GR>50.00</I61_PINIGAI_GR> 
            <I62> 
                <I62_KODAS_PS>PR001</I62_KODAS_PS> 
                <I62_KODAS_US_A>KG</I62_KODAS_US_A> 
                <kiekis_u>1</kiekis_u> 
                <I62_KAINA_SU>50.0000</I62_KAINA_SU> 
                <I62_SUMA>50.00</I62_SUMA> 
                <I62_TAX>1</I62_TAX> 
                <I62_MOKESTIS_P>21.00</I62_MOKESTIS_P> 
             </I62> 
            </I61> 
    </data> 
</body> 
  1. Taros supirkimas.
<body> 
    <method>EDIT_I61_FULL</method> 
    <data> 
            <I61> 
            <I61_KODAS_KK>XW3CDDV</I61_KODAS_KK> 
            <I61_TIPAS>6</I61_TIPAS> 
            <I61_SUMA>0.20</I61_SUMA> 
            <I61_PINIGAI>0.20</I61_PINIGAI> 
            <I61_PINIGAI_GR>0.20</I61_PINIGAI_GR> 
            <I62> 
                    <I62_KODAS_PS>TARA</I62_KODAS_PS> 
                    <I62_KODAS_US_A>VNT</I62_KODAS_US_A> 
                    <kiekis_u>2</kiekis_u> 
                    <I62_KAINA_SU>0.10</I62_KAINA_SU> 
                    <I62_SUMA>0.20</I62_SUMA> 
            </I62> 
            </I61> 
    </data> 
</body>
  1. Anuliuota kvito detali eilutė.
<body> 
    <method>EDIT_I61_FULL</method> 
    <data> 
            <I61> 
            <I61_KODAS_KK>XW3CDDV</I61_KODAS_KK> 
            <I61_TIPAS>1</I61_TIPAS> 
            <I61_SUMA>1.82</I61_SUMA> 
            <I61_PINIGAI>1.82</I61_PINIGAI> 
            <I61_PINIGAI_GR>1.82</I61_PINIGAI_GR> 
            <I62> 
                    <I62_KODAS_PS>ALUS</I62_KODAS_PS> 
                    <I62_KODAS_US_A>VNT</I62_KODAS_US_A> 
                    <kiekis_u>1</kiekis_u> 
                    <I62_KAINA_SU>1.8200</I62_KAINA_SU> 
                    <I62_SUMA>1.82</I62_SUMA> 
                    <I62_TAX>1</I62_TAX> 
                    <I62_MOKESTIS_P>21.00</I62_MOKESTIS_P> 
                    <Anuliuota>1</Anuliuota> 
            </I62> 
            <I62> 
                    <I62_KODAS_PS>ALUS</I62_KODAS_PS> 
                    <I62_KODAS_US_A>VNT</I62_KODAS_US_A> 
                    <kiekis_u>1</kiekis_u> 
                    <I62_KAINA_SU>1.8200</I62_KAINA_SU> 
                    <I62_SUMA>1.82</I62_SUMA> 
                    <I62_TAX>1</I62_TAX> 
                    <I62_MOKESTIS_P>21.00</I62_MOKESTIS_P> 
            </I62> 
            </I61> 
    </data> 
</body> 
  1. Sąskaitos faktūros priskyrimas kvitui (kvito koregavimas).

Nurodomas kvito numeris (I61_DOK_NR), kuriam kuriama sąskaita faktūra.

<body> 
    <method>EDIT_I61_OPT</method> 
    <data> 
            <I61> 
            <I61_KODAS_KK>XW3CDDV</I61_KODAS_KK> 
            <I61_DOK_NR>1258_156982</I61_DOK_NR> 
            <I61_KODAS_KS>12345678901</I61_KODAS_KS> 
            <I61_SASK_NR>SF-0001</I61_SASK_NR> 
            </I61> 
    </data> 
</body> 

Bendros pastabos

  1. Importo eilės tvarka turi būti griežtai chronologiška, t.y. siunčiame pinigų įdėjimus, išėmimus, kvitus, anuliavimus ir užbaigiame Z operacijomis. Tik užbaigę vieną Z operaciją pradedame siųsti kitos Z operacijos informaciją.

  2. Mokėjimo grynaisiais sąskaita Rivile GAMA POS aprašyme turi sutapti su perduodama grynųjų sąskaita kvite! Keičiant grynųjų pinigų sąskaitą, tai reikia atlikti tiek trečiųjų šalių POS, tiek Rivile GAMA POS aprašyme.

POS aprašymas Rivile GAMA sistemoje

POS aprašymui vadovautis informacija : POS aprašymas.

Aprašomas POS kvitų skaitliukas:

raso_3

POS operacijų formavimui per web service užpildomi parametrai:

raso_1

Pastaba: Mokėjimo grynaisiais sąskaita POS aprašyme turi sutapti su perduodama grynųjų sąskaita kvite! Keičiant grynųjų pinigų sąskaitą, tai reikia atlikti tiek trečiųjų šalių POS, tiek Rivile GAMA POS aprašyme.

raso_2

Galimybė rezervuoti likučius kvito sukūrimo metu valdoma per Rivile GAMA įrenginių parametrą:

raso_5

Pasirinkus režimą "Leisti pardavinėti į minusą" kvito įkėlimo metu iškart rezervuojami jame esantys prekių kiekiai (jeigu yra prekių likutis).

Jeigu įkeliant kvitą likučio nėra, galima paleisti "Likučių apdorojimas", kuris patikrina ar atsirado trūkstami prekių kiekiai ir jie rezervuojami.

Servisas -> POS sistema -> POS operacijos -> Likučių koregavimas

raso_4

Norint, kad nurašymas vyktų pastoviai, nustatomas proceso dažnumas ir paleidžiamas ciklas.