EDIT_I06_KOP

Aprašymas

Pirkimų, pardavimų dokumento kopijavimas ir keitimas.

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_I06_KOP
  • data: perduodami duomenys:
    • I06 - Pardavimo/pirkimo antraštė (i06)

Kopijuojant ar keičiant dokumentą yra privalomi laukai: P_OPER, OLD_I06_KODAS_PO, NEW_I06_OP_TIP ir NEW_I06_DOK_NR.

Tagas Aprašymas
P_OPER 1 - kopijuoti, 2 - keisti. Privalomas
OLD_I06_KODAS_PO Operacijos numeris iš kurio bus daroma kopija arba koregavimas. Privalomas
NEW_I06_OP_TIP Operacijos tipas kaip ir I06_OP_TIP i06. Privalomas
NEW_I06_DOK_NR Dokumento numeris. Privalomas
NEW_I06_OP_DATA Nauja operacijos data kaip ir I06_OP_DATA i06
NEW_I06_DOK_DATA Nauja dokumento data kaip ir I06_DOK_DATA i06
NEW_I07_KODAS_IS Nurodomas visų detalių eilučių padalinys kaip ir I07_KODAS_IS i07
NEW_I07_KODAS_OS Nurodomas visų detalių eilučių objektas kaip ir I07_KODAS_OS i07
NEW_I07_KODAS_OS_C Nurodomas visų detalių eilučių centras kaip ir I07_KODAS_OS_C i07
NEW_I07_SERIJA Nurodomas visų detalių eilučių serija kaip ir I07_SERIJA i07

Jei Rvilės programoje dokumentas yra perkeltas tai jo keisti negalima.

Kai nurodoma bent viena NEW_I07 tago reikšmė, tuomet yra pakeičiami visų detalių eilučių laukai atitinkantis tuos tagus.

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

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

XML request (kopijavimas)
<body>
    <method>EDIT_I06_KOP</method>
    <data>
        <I06>
            <P_OPER>1</P_OPER><!-- 1 - kopijuoti, 2 - keisti -->
            <OLD_I06_KODAS_PO>010000001293</OLD_I06_KODAS_PO>
            <NEW_I06_OP_TIP>1</NEW_I06_OP_TIP>
            <NEW_I06_DOK_NR>D20200409-6</NEW_I06_DOK_NR>
            <NEW_I06_OP_DATA>2020-04-21</NEW_I06_OP_DATA>  
            <NEW_I07_KODAS_IS>02</NEW_I07_KODAS_IS>
            <NEW_I07_KODAS_OS>OBJ01</NEW_I07_KODAS_OS>
            <NEW_I07_KODAS_OS_C>CENT02</NEW_I07_KODAS_OS_C>
            <NEW_I07_SERIJA>ABC123</NEW_I07_SERIJA>
        </I06>    
    </data>
</body>
JSON request
{
    "method": "EDIT_I06_KOP",
    "data": {
        "I06": {
            "P_OPER": "1",
            "OLD_I06_KODAS_PO": "010000001293",
            "NEW_I06_OP_TIP": "1",
            "NEW_I06_DOK_NR": "D20200409-6",
            "NEW_I06_OP_DATA": "2020-04-21",
            "NEW_I07_KODAS_IS": "02",
            "NEW_I07_KODAS_OS": "OBJ01",
            "NEW_I07_KODAS_OS_C": "CENT02",
            "NEW_I07_SERIJA": "ABC123"
        }
    }
}
Response (status 200 OK)
XML response
<?xml version='1.0' encoding='UTF-8' ?>
<RET_DOK>
    <I06>
        <I06_KODAS_PO>010R00000038</I06_KODAS_PO>
        <I06_OP_TIP>1</I06_OP_TIP>
        <I06_VAL_POZ>0</I06_VAL_POZ>
        <I06_PVM_TIP>0</I06_PVM_TIP>
        <I06_OP_STORNO>0</I06_OP_STORNO>
        <I06_DOK_NR>D20200409-7</I06_DOK_NR>
        <I06_OP_DATA>2020-04-21T00:00:00</I06_OP_DATA>
        <I06_DOK_DATA>2020-04-21T00:00:00</I06_DOK_DATA>
        <I06_KODAS_MS></I06_KODAS_MS>
        <I06_KODAS_KS>121411842</I06_KODAS_KS>
        <I06_KODAS_SS></I06_KODAS_SS>
        <I06_PAV>UAB "Rivilė"</I06_PAV>
        <I06_ADR>Geležinio Vilko 5-48, Vilnius</I06_ADR>
        <I06_ATSTOVAS></I06_ATSTOVAS>
        <I06_KODAS_VS></I06_KODAS_VS>
        <I06_PAV2>UAB "Rivilė"</I06_PAV2>
        <I06_ADR2>Geležinio Vilko 5-48, Vilnius</I06_ADR2>
        <I06_ADR3></I06_ADR3>
        <I06_KODAS_VL></I06_KODAS_VL>
        <I06_KODAS_XS>PVM</I06_KODAS_XS>
        <I06_KODAS_SS_P></I06_KODAS_SS_P>
        <I06_PASTABOS></I06_PASTABOS>
        <I06_MOK_DOK></I06_MOK_DOK>
        <I06_MOK_SUMA>0.00</I06_MOK_SUMA>
        <I06_KODAS_SS_M></I06_KODAS_SS_M>
        <I06_SUMA_VAL>0.00</I06_SUMA_VAL>
        <I06_SUMA>9.00</I06_SUMA>
        <I06_SUMA_PVM>1.89</I06_SUMA_PVM>
        <I06_KURSAS>0.000000000000000</I06_KURSAS>
        <I06_PERKELTA>1</I06_PERKELTA>
        <I06_ADDUSR>B1NOONQ</I06_ADDUSR>
        <I06_R_DATE>2020-04-21T21:17:49</I06_R_DATE>
        <I06_USERIS>B1NOONQ     </I06_USERIS>
        <I06_KODAS_AU></I06_KODAS_AU>
        <I06_KODAS_SM></I06_KODAS_SM>
        <I06_INTRASTAT>0</I06_INTRASTAT>
        <I06_KODAS_AK></I06_KODAS_AK>
        <I06_SUMA_WK>-10.89</I06_SUMA_WK>
        <I06_VAL_POZ_PVM>0</I06_VAL_POZ_PVM>
        <I06_PVM_VAL>0.00</I06_PVM_VAL>
        <I06_WEB_POZ>0</I06_WEB_POZ>
        <I06_WEB_ATAS></I06_WEB_ATAS>
        <I06_WEB_PERKELTA>1</I06_WEB_PERKELTA>
        <I06_WEB_PERKELTA_I>1</I06_WEB_PERKELTA_I>
        <I06_BUSENA>1</I06_BUSENA>
        <i06_pvm_skol>1</i06_pvm_skol>
    </I06>
</RET_DOK>
Response (status 400)

Klaida paduodant duomenis / SQL sintaksės klaidos / kitos duomenų klaidos

<?xml version='1.0' encoding='UTF-8'?>
<RET_DOK>
    <id>21313695680.1594f9da.1587494227502</id>
    <durationMs>11</durationMs>
    <errorMessage>nepavyko įvykdyti metodo</errorMessage>
    <errors>
        <error>
            <data>&lt;I06>&lt;OLD_I06_KODAS_PO>01000000129&lt;/OLD_I06_KODAS_PO>&lt;NEW_I06_OP_DATA>2020-04-21&lt;/NEW_I06_OP_DATA>&lt;NEW_I07_SERIJA>ABC123&lt;/NEW_I07_SERIJA>&lt;NEW_I06_OP_TIP>1&lt;/NEW_I06_OP_TIP>&lt;NEW_I07_KODAS_IS>02&lt;/NEW_I07_KODAS_IS>&lt;USERIS>M&lt;/USERIS>&lt;NEW_I07_KODAS_OS>OBJ01&lt;/NEW_I07_KODAS_OS>&lt;P_OPER>1&lt;/P_OPER>&lt;NEW_I06_DOK_NR>D20200409-7&lt;/NEW_I06_DOK_NR>&lt;NEW_I07_KODAS_OS_C>CENT02&lt;/NEW_I07_KODAS_OS_C>&lt;/I06></data>
            <dataErrors>
                <dataError>
                    <tag>I07_KODAS_PO</tag>
                    <code>21001</code>
                    <message>Nėra operacijos</message>
                </dataError>
                <dataError>
                    <tag>I06_KODAS_KS</tag>
                    <code>2001</code>
                    <message>Nėra tokio kliento</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 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: uUCz6UD.sKVrjaWRDJAH1c7l4qL2nOoN2K0jARkvuHDdYsss',
      'Content-Type: application/json',
      ]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, '{
    "method": "EDIT_I06_KOP",
    "data": {
        "I06": {
            "P_OPER": "1",
            "OLD_I06_KODAS_PO": "010000001293",
            "NEW_I06_OP_TIP": "1",
            "NEW_I06_DOK_NR": "D20200409-6",
            "NEW_I06_OP_DATA": "2020-04-21",
            "NEW_I07_KODAS_IS": "02",
            "NEW_I07_KODAS_OS": "OBJ01",
            "NEW_I07_KODAS_OS_C": "CENT02",
            "NEW_I07_SERIJA": "ABC123"
        }
    }
}');
$response = curl_exec($ch);
curl_close($ch);