EDIT_N17_FULL

Aprašymas

Prekės/paslaugos kortelės sukūrimas (kartu su papildoma informacija)

Specifikacija

Address

POST https://api.manorivile.lt/client/v2

Header
  • ApiKey : Privalomas. Unikalus API raktas išduodamas užsakant paslaugą
  • Content-Type : Privalomas. Kokiu formatu paduodami parametrai ir duomenys (request):
    • application/xml
    • application/json
  • Accept: Neprivalomas. Gražinamo rezultato (response) formatas
    • application/xml(default)
    • application/json (veikia nuo Manorivile-Gateway-1.1.0 versijos)
Body
  • method : EDIT_N17_FULL
  • params :
    • errorAction - klaidos parametras nurodantis koks veiksmas bus atliekamas įvykus klaidai prekės kortelės formavimo metu, kai yra sukuriama prekės kortelė (N17) ir gaunama klaida vykdant veiksmus su papildoma informacija (N26, N37, N40, N27, N47, I33, N32, N13, N87). Parametras gali turėti tris reikšmes: EXIT, CONTINUE, ROLLBACK (default reikšmė). Reikšmė turi būti paduodama dydžiosiomis raidėmis!
    • user - vartotojo vardas (naudojamas dokumentų skaitliukams, parametrams ir kt.), veikia tik rakto prefix'ui įjungus parametrą RGI_USR_EDIT
  • data: perduodami duomenys:
    • N17 - Prekės, paslaugos informacija (N17)
    • N26 - Gaminio komplektuojančių komponenčių aprašymas (N26)
    • N37 - Prekės / paslaugos matavimo vienetai (N37)
    • N40 - Alternatyvūs bar kodai (N40)
    • N27 - Įpakavimų koeficientai (N27)
    • N47 - Minimumai padaliniuose (N47)
    • I33 - Prekės / paslaugos kainos (I33)
    • N32 - Kainynai (N32)
    • N13 - Akcijos (N13)
    • N87 - Klientų prekių kodai (N87)

errorAction reikšmė turi būti paduodama didžiosiomis raidėmis!

errorAction reikšmių aprašymai:

Reikšmė Aprašymas
ROLLBACK (default reikšmė) Įvykus klaidai tolimesnės procedūros nebus vykdamos, bus ištrinama prekės / paslaugos kortelė (N17) ir grąžinama klaida. Klaidos statusas 400
EXIT Įvykus klaidai tolimesnės procedūros nebus vykdamos, bus grąžinama sukurta prekės / paslaugos kortelė (N17) ir klaidų sąrašas. Klaidos statusas 207
CONTINUE Įvykus klaidai procedūros bus vykdamos iki pabaigos, o klaidos dedamos į sąrašą. Grąžinama sukurta prekės / paslaugos kortelė (N17) ir klaidų sąrašas pabaigoje. Klaidos statusas 207

Vienu metu veiksmai atliekami tik su vienu įrašu.

Pirmi 7 ApiKey simboliai (pvz USERABC.JQKPG1d7Pkjxj37ObsgdfEkvfEfvF1oL7h7UMOLo -> USERABC) yra vartotojo vardas Rivile GAMA programoje, kuriuo bus kuriami ar koreguojami įrašai.

pvz application/xml:

<body>
    <method>EDIT_N17_FULL</method>
    <params>
        <errorAction>ROLLBACK</errorAction>
    </params>
    <data>
        <N17>
            <N17_KODAS_PS>PASLX</N17_KODAS_PS>
            <N17_TIPAS>2</N17_TIPAS>
            <N17_PAV>Paslauga X</N17_PAV>
            <N17_KODAS_DS>PR001</N17_KODAS_DS>
            <N17_KODAS_US>KG</N17_KODAS_US>
            <N26>
                <N26_KODAS_PS_K>KOMP1</N26_KODAS_PS_K>
                <N26_KODAS_US>VNT</N26_KODAS_US>
                <N26_KIEKIS>2</N26_KIEKIS>
            </N26>
            <N37>
                <N37_KODAS_US>VNT</N37_KODAS_US>
                <N37_PAV>Paslauga X VNT</N37_PAV>
                <N37_KOEFICI>50</N37_KOEFICI>
            </N37>
            <N40>
                <N40_KODAS_US>KG</N40_KODAS_US>
                <N40_BAR_KODAS>010000010000</N40_BAR_KODAS>
            </N40>
            <N27>
                <N27_KODAS_US>VNT</N27_KODAS_US>
                <N27_KODAS_US_PAK>KG</N27_KODAS_US_PAK>
                <N27_KIEKIS_PAK>50</N27_KIEKIS_PAK>
            </N27>
            <N47>
                <N47_KODAS_US>VNT</N47_KODAS_US>
                <N47_KODAS_IS>01</N47_KODAS_IS>
                <N47_MINIMUMAS>100</N47_MINIMUMAS>
            </N47>
            <I33>
                <I33_KODAS_US>VNT</I33_KODAS_US>
                <I33_KODAS_IS>01</I33_KODAS_IS>
                <I33_KAINA>1.99</I33_KAINA>
            </I33>
            <N32>
                <N32_KODAS_US>KG</N32_KODAS_US>
                <N32_TIPAS>A</N32_TIPAS>
                <N32_KAINA1>1.89</N32_KAINA1>
            </N32>
            <N13>
                <N13_KODAS_US>VNT</N13_KODAS_US>
                <N13_KODAS_IS>01</N13_KODAS_IS>
                <N13_POZ_KAINA>1</N13_POZ_KAINA>
                <N13_KAINA1>1.95</N13_KAINA1>
            </N13>
            <N87>
                <N87_KODAS_US>VNT</N87_KODAS_US>
                <N87_KODAS_KS>121411842</N87_KODAS_KS>
                <N87_KODAS>001</N87_KODAS>
            </N87>
        </N17>
    </data>
</body>

pvz application/json:

{
    "method": "EDIT_N17_FULL",
    "params": {
        "errorAction": "ROLLBACK"
    },
    "data": {
        "N17": {
            "N17_KODAS_PS": "PASLX",
            "N17_TIPAS": "2",
            "N17_PAV": "Paslauga X",
            "N17_KODAS_DS": "PR001",
            "N17_KODAS_US": "KG",
            "N26": {
                "N26_KODAS_PS_K": "KOMP1",
                "N26_KODAS_US": "VNT",
                "N26_KIEKIS": "2"
            },
            "N37": {
                "N37_KODAS_US": "VNT",
                "N37_PAV": "Paslauga X VNT",
                "N37_KOEFICI": "50"
            },
            "N40": {
                "N40_KODAS_US": "KG",
                "N40_BAR_KODAS": "010000010000"
            },
            "N27": {
                "N27_KODAS_US": "VNT",
                "N27_KODAS_US_PAK": "KG",
                "N27_KIEKIS_PAK": "50"
            },
            "N47": {
                "N47_KODAS_US": "VNT",
                "N47_KODAS_IS": "01",
                "N47_MINIMUMAS": "100"
            },
            "I33": {
                "I33_KODAS_US": "VNT",
                "I33_KODAS_IS": "01",
                "I33_KAINA": "1.99"
            },
            "N32": {
                "N32_KODAS_US": "KG",
                "N32_TIPAS": "A",
                "N32_KAINA1": "1.89"
            },
            "N13": {
                "N13_KODAS_US": "VNT",
                "N13_KODAS_IS": "01",
                "N13_POZ_KAINA": "1",
                "N13_KAINA1": "1.95"
            },
            "N87": {
                "N87_KODAS_US": "VNT",
                "N87_KODAS_KS": "121411842",
                "N87_KODAS": "001"
            }
        }
    }
}
Response (status 200 OK)

Grąžinama informacija XML formate tarp tag'ų <RET_DOK>..</RET_DOK>.

pvz:

<RET_DOK>
    <N17>
        <N17_KODAS_PS>PASLX</N17_KODAS_PS>
        <N17_TIPAS>2</N17_TIPAS>
        <N17_KODAS_P1></N17_KODAS_P1>
        <N17_KODAS_P2></N17_KODAS_P2>
        <N17_KODAS_US>KG</N17_KODAS_US>
        <N17_PAV>Paslauga X</N17_PAV>
        <N17_PAVU></N17_PAVU>
        <N17_KODAS_KS></N17_KODAS_KS>
        ...
        <N26_KOMP>
            <N26>
                <N26_KODAS_PS>PASLX</N26_KODAS_PS>
                <N26_EIL_NR>1</N26_EIL_NR>
                <N26_TIPAS>1</N26_TIPAS>
                <N26_KODAS_PS_K>KOMP1</N26_KODAS_PS_K>
                <N26_KODAS_US>VNT</N26_KODAS_US>
                ...
            </N26>
        </N26_KOMP>
        <N37_PMAT>
            <N37>
                <N37_KODAS_PS>PASLX</N37_KODAS_PS>
                <N37_KODAS_US>KG</N37_KODAS_US>
                <N37_BAR_KODAS>000000001537</N37_BAR_KODAS>
                <N37_TRUM_PAV></N37_TRUM_PAV>
                <N37_PAV>Paslauga X</N37_PAV>
                ...
                <N40_ABAR>
                    <N40>
                        <N40_BAR_KODAS>010000010000</N40_BAR_KODAS>
                        <N40_KODAS_PS>PASLX</N40_KODAS_PS>
                        <N40_KODAS_US>KG</N40_KODAS_US>
                        ...
                    </N40>
                </N40_ABAR>
            </N37>
            <N37>
                <N37_KODAS_PS>PASLX</N37_KODAS_PS>
                <N37_KODAS_US>VNT</N37_KODAS_US>
                <N37_BAR_KODAS>000000001538</N37_BAR_KODAS>
                <N37_TRUM_PAV></N37_TRUM_PAV>
                <N37_PAV>Paslauga X VNT</N37_PAV>
                ...
                <N27_PAK>
                    <N27>
                        <N27_KODAS_PS>PASLX</N27_KODAS_PS>
                        <N27_KODAS_US>VNT</N27_KODAS_US>
                        <N27_KODAS_US_PAK>KG</N27_KODAS_US_PAK>
                        <N27_KIEKIS_PAK>50</N27_KIEKIS_PAK>
                        ...
                    </N27>
                </N27_PAK>
            </N37>
        </N37_PMAT>
        <N47_PPAR>
            <N47>
                <N47_KODAS_IS>01</N47_KODAS_IS>
                <N47_KODAS_PS>PASLX</N47_KODAS_PS>
                <N47_KODAS_US>VNT</N47_KODAS_US>
                <N47_FRAKCIJA>1</N47_FRAKCIJA>
                <N47_MINIMUMAS>100</N47_MINIMUMAS>
                <N47_UZSAKYTI>0</N47_UZSAKYTI>
                <N47_MIN_P>5000</N47_MIN_P>
                ...
            </N47>
        </N47_PPAR>
        <I33_PKAI>
            <I33>
                <I33_KODAS_PS>PASLX</I33_KODAS_PS>
                <I33_KODAS_IS>01</I33_KODAS_IS>
                <I33_KODAS_US>VNT</I33_KODAS_US>
                <I33_KAINA>1.9900</I33_KAINA>
                ...
            </I33>
        </I33_PKAI>
        <N32_PABC>
            <N32>
                <N32_KODAS_PS>PASLX</N32_KODAS_PS>
                <N32_KODAS_US>KG</N32_KODAS_US>
                <N32_TIPAS>A</N32_TIPAS>
                <N32_G_DATE>2024-08-01T00:00:00</N32_G_DATE>
                <N32_KAINA1>1.8900</N32_KAINA1>
                ...
            </N32>
        </N32_PABC>
        <N13_AKC>
            <N13>
                <N13_KODAS_PS>PASLX</N13_KODAS_PS>
                <N13_KODAS_US>VNT</N13_KODAS_US>
                <N13_KODAS_IS>01</N13_KODAS_IS>
                <N13_EIL_NR>1</N13_EIL_NR>
                <N13_POZ_KAINA>1</N13_POZ_KAINA>
                <N13_KAINA1>1.9500</N13_KAINA1>
                ...
            </N13>
        </N13_AKC>
        <N87_TPRE>
            <N87>
                <N87_KODAS_PS>PASLX</N87_KODAS_PS>
                <N87_KODAS_US>VNT</N87_KODAS_US>
                <N87_KODAS_KS>121411842</N87_KODAS_KS>
                <N87_KODAS>001</N87_KODAS>
                ...
            </N87>
        </N87_TPRE>
    </N17>
</RET_DOK>
Response (status 207)

207 statusas gaunamas, kai procedūros yra vykdamos perduodant parametrą errorAction su reikšme EXIT arba CONTINUE ir gaunama klaida kažkurioje iš procedūrų, pvz.:

<RET_DOK>
    <N17>
        <N17_KODAS_PS>PASLX</N17_KODAS_PS>
        <N17_TIPAS>2</N17_TIPAS>
        ...
        <N37_PMAT>
            <N37>
                <N37_KODAS_PS>PASLX</N37_KODAS_PS>
                <N37_KODAS_US>KG</N37_KODAS_US>
                <N37_BAR_KODAS>000000001539</N37_BAR_KODAS>
                <N37_TRUM_PAV></N37_TRUM_PAV>
                <N37_PAV>Paslauga X</N37_PAV>
                ...
            </N37>
    </N17>
    <errors>
        <error>
            <data>&lt;N87>&lt;num_row>1&lt;/num_row>&lt;N87_KODAS_US>VNT&lt;/N87_KODAS_US>&lt;N87_KODAS>001&lt;/N87_KODAS>&lt;N87_KODAS_KS>121411842&lt;/N87_KODAS_KS>&lt;/N87></data>
            <dataErrors>
                <dataError>
                    <tag>N87_KODAS_US</tag>
                    <code>7003</code>
                    <message>Nėra tokios prekės ir matavimo vieneto</message>
                </dataError>
            </dataErrors>
        </error>
    </errors>
</RET_DOK>
Response (status 400)

Klaida paduodant duomenis / SQL sintaksės klaidos / kitos DB klaidos

<?xml version='1.0' encoding='UTF-8'?>
<RET_DOK>
    <id/>
    <durationMs>94</durationMs>
    <errorMessage>Nepavyko įvykdyti metodo</errorMessage>
    <document/>
    <errors>
        <error>
            <data>&lt;N17>&lt;num_row>1&lt;/num_row>&lt;N17_KODAS_PS>PASLX&lt;/N17_KODAS_PS>&lt;N17_TIPAS>2&lt;/N17_TIPAS>&lt;N17_KODAS_US>KG&lt;/N17_KODAS_US>&lt;N17_KODAS_DS>PR001&lt;/N17_KODAS_DS>&lt;N17_PAV>PaslaugaX&lt;/N17_PAV>&lt;/N17></data>
            <dataErrors>
                <dataError>
                    <tag>N17_KODAS_PS</tag>
                    <code>5008</code>
                    <message>Tokia prekė/paslauga jau yra</message>
                </dataError>
            </dataErrors>
        </error>
    </errors>
</RET_DOK>
Response (status 401)

Blogai nurodytas adresas / neteisingai nurodytas API raktas / nenurodytas API raktas / pasibaigęs API rakto galiojimas, pvz

<?xml version='1.0' encoding='UTF-8'?>
<RET_DOK>
    <id/>
    <durationMs>0</durationMs>
    <errorMessage>Api key is not valid</errorMessage>
</RET_DOK>
Response (status 502)

Nepaleistas MANO Rivile Gateway arba kitaip sutrikusi jo veikla

<?xml version='1.0' encoding='UTF-8'?>
<RET_DOK>
    <id/>
    <durationMs>0</durationMs>
    <errorMessage>Rivile GAMA database is unavailable. Please check if the gateway is running and is set up correctly.</errorMessage>
</RET_DOK>
Response (status 504)

Laiku nebuvo gautas Rivile API užklausos atsakymas, pavyzdžiui, apkrauta GAMA duomenų bazė

<?xml version='1.0' encoding='UTF-8'?>
<RET_DOK>
    <id/>
    <durationMs>0</durationMs>
    <errorMessage>No response received from client gateway</errorMessage>
</RET_DOK>
Response (status 500)

Bendrinė sistemos klaida, pvz

<?xml version='1.0' encoding='UTF-8'?>
<Map>
    <timestamp>2020-02-05T12:34:26.890+0000</timestamp>
    <status>500</status>
    <error>Internal Server Error</error>
    <message>No message available</message>
    <path>/v2</path>
</Map>

PHP pvz

<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
      'ApiKey: uUCz6Hh.sKVrjWHRDJAH1c7l4qL2kOoN2K0jAWHvuHhdYsYT',
      'Content-Type: application/json',
      ]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $payload);
$response = curl_exec($ch);
curl_close($ch);

Lentelės

N17

Nuoroda į lentelės aprašymą: n17

N26

Nuoroda į lentelės aprašymą: n26

N37

Nuoroda į lentelės aprašymą: n37

N40

Nuoroda į lentelės aprašymą: n40

N27

Nuoroda į lentelės aprašymą: n27

N47

Nuoroda į lentelės aprašymą: n47

I33

Nuoroda į lentelės aprašymą: i33

N32

Nuoroda į lentelės aprašymą: n32

N13

Nuoroda į lentelės aprašymą: n13

N87

Nuoroda į lentelės aprašymą: n87