9.00 - 16.00 val.
Gyva (atsijungę)
   

Sąskaitos sukūrimas per API

Pavyzdyje kuriama pirkimo PVM sąskaita su dviem skirtingais eilučių PVM kodais. Naudokite savo veiklos, tiekėjo ir dokumento duomenis.

POSThttps://www.saskaitos.lt/apitype: bill
saskaitos.phpPHP
$config = [    'apiKey'    => 'JUSU_API_RAKTAS',    'companyId' => 1,]; $billParams = [    'type'   => 'bill',    'action' => 'create',    'Bill' => [        'Customer' => [            'ID' => 123,        ],        'Prefix'        => 'SF',        'Number'        => '00000001',        'Date'          => '2026-10-20',        'PayDate'       => '2026-11-03',        'Currency'      => 'EUR',        'PaymentAmount' => '',        'PaymentDate'   => '',        'Recipient'     => '',        'TaxPercentage' => '21',        'TaxCode'       => 'PVM1',        'Type'          => 'buy_with_tax',        'Wrote'         => 'Vardas Pavarde',        'Comment'       => 'API pavyzdys',        'Total'         => '57.74',        'TotalTax'      => '10.61',        'TotalWithTax'  => '68.35',        'Item' => [            'Count'        => [1, 1],            'Name'         => ['Apmokestinama paslauga', 'Neapmokestinama paslauga'],            'SKU'          => ['PASL-1', 'PASL-2'],            'Price'        => ['50.55', '7.19'],            'PriceWithTax' => ['61.16', '7.19'],            'Total'        => ['50.55', '7.19'],            'TotalWithTax' => ['61.16', '7.19'],            'Type'         => ['vnt', 'vnt'],            'Tax'          => ['21', ''],            'NoTax'        => [0, 1],            'TaxCode'      => ['PVM1', 'PVM5'],        ],        'Settings' => ['ReverseVAT' => '0'],        'Test' => '1',    ],]; $respondBill = json_decode(UseCURLSocket(    'https://www.saskaitos.lt/api',    array_merge($config, $billParams)));
POST · formos duomenysJSON atsakymas

Pavyzdyje naudojama UseCURLSocket() funkcija. Jos aprašymas yra pilname PHP API pavyzdyje.

LAUKŲ ŽINYNAS

Laukai, tipai ir galimos reikšmės

Žemiau – šio PHP pavyzdžio parametrai ir paaiškinimas, ką juose perduoti.

stringTekstas, pvz. vardas ar įmonės kodas.
intSkaitinis ID, pavyzdyje sveikasis skaičius.
arraySusijusių laukų arba reikšmių masyvas.

PHP masyvai perduodami POST formos laukais, pvz. Bill[Type]. Užklausos reikšmės perduodamos tekstu, atsakymas grąžinamas JSON.

apiKeystring

Jūsų veiklos API raktas.

Bent 10 simbolių. Naudokite savo veiklos nustatymuose esantį raktą.

'JUSU_API_RAKTAS'Privalomas
companyIdint

Veiklos, kurios vardu atliekate veiksmą, numeris.

Teigiamas veiklos ID, pavyzdyje 1.

1Privalomas
typestring

API duomenų sritis.

Sąskaitoms naudokite 'bill'; dokumento rūšis pasirenkama Bill.Type.

'bill'Privalomas šiame pavyzdyje
actionstring

Veiksmas su dokumentu.

Šiame pavyzdyje 'create'. Kiti šios srities veiksmai: get, update, delete, seria, list.

'create'Pasirinkite veiksmą
Billarray

Sąskaitos duomenų grupė.

PHP asociatyvus masyvas su dokumento parametrais.

[...]Duomenų grupė
Bill.Customerarray

Nuoroda į išsaugotą klientą arba tiekėją.

Perduokite įrašo ID. Naują klientą ar tiekėją galite įrašyti per customer API.

['ID' => 123]Šiame pavyzdyje
Bill.Customer.IDint

Išsaugoto kliento arba tiekėjo ID.

Pirkimo dokumente nurodykite tiekėjo, o pardavimo dokumente kliento ID.

123Nurodykite pavyzdyje
Bill.Prefixstring

Dokumento serijos priešdėlis.

Pirkimui nurodykite tiekėjo dokumento seriją. Pardavimui galite naudoti Seria.Prefix reikšmę.

'SF'Serijos duomenys
Bill.Numberstring

Dokumento numeris serijoje.

Pirkimui nurodykite tiekėjo dokumento numerį. Pardavimui galite naudoti Seria.Number reikšmę. Perduokite tekstu, kad išliktų pradžios nuliai.

'00000001'Serijos duomenys
Bill.Datestring

Išrašomo dokumento data.

Formatas YYYY-MM-DD, pvz. 2026-10-20.

'2026-10-20'Privalomas
Bill.PayDatestring

Apmokėjimo termino data.

Naudokite YYYY-MM-DD. Jei perduotas teigiamas Bill.PayInDays, PayDate perskaičiuojama nuo Bill.Date.

'2026-11-03'Papildomas
Bill.Currencystring

Dokumento valiuta.

Pavyzdyje EUR. Naudokite dokumentui reikalingą valiutos kodą.

'EUR'Nurodykite pavyzdyje
Bill.PaymentAmountstring

Nurodyta apmokėta suma.

Neapmokėtam dokumentui pavyzdyje paliekama tuščia; kitais atvejais pateikite skaitinę sumą tekstu.

''Papildomas
Bill.PaymentDatestring

Nurodyta apmokėjimo data.

Neapmokėtam dokumentui palikite tuščią; datai naudokite YYYY-MM-DD.

''Papildomas
Bill.Recipientstring

Dokumento siuntimo gavėjo el. paštas.

Gavėjo el. paštas arba tuščia reikšmė. Vien gavėjo nurodymas nėra išsiuntimo patvirtinimas.

''Papildomas
Bill.TaxPercentagestring

Bendras dokumento PVM procentas.

Skaitinis dokumentui taikomas procentas tekstu, pavyzdyje '21'.

'21'Pagal dokumentą
Bill.TaxCodestring

Dokumento PVM klasifikatoriaus kodas.

Dokumentui taikomas PVM klasifikatoriaus kodas, pavyzdyje PVM1.

'PVM1'Pagal dokumentą
Bill.Typestring

Dokumento rūšis.

Pardavimui naudokite 'bill', pirkimo PVM sąskaitai 'buy_with_tax'. Abiem atvejais viršutinio lygmens type reikšmė yra 'bill'.

'buy_with_tax'Privalomas
Bill.Wrotestring

Dokumentą išrašęs asmuo.

Laisvas tekstas.

'Vardas Pavarde'Papildomas
Bill.Commentstring

Dokumento komentaras.

Laisvas tekstas.

'API pavyzdys'Papildomas
Bill.Totalstring

Bendra dokumento suma be PVM.

Mišraus PVM dokumentui pateikite dokumente nurodytą sumą su dešimtainiu tašku.

'57.74'Pagal dokumentą
Bill.TotalTaxstring

Bendra dokumento PVM suma.

Perduokite dokumente nurodytą PVM sumą. Mišrios PVM1 ir PVM25 sąskaitos pavyzdyje ji apima tiekėjo ir pirkėjo apskaičiuotą PVM, iš viso 948,57 EUR.

'10.61'Pagal dokumentą
Bill.TotalWithTaxstring

Bendra dokumento suma su PVM.

Kai dalį PVM apskaičiuoja pirkėjas, perduokite tiekėjui mokėtiną sumą. PVM1 ir PVM25 pavyzdyje ji yra 5 100,86 EUR.

'68.35'Pagal dokumentą
Bill.Itemarray

Dokumento eilučių duomenys.

Lygiagretūs laukų masyvai, ne masyvas iš atskirų eilutės objektų. Vienodas indeksas visuose masyvuose aprašo tą pačią eilutę.

[...]Duomenų grupė
Bill.Item.Countarray

Eilučių kiekiai.

Kiekių masyvas. Tas pats indeksas visuose eilučių masyvuose reiškia tą pačią prekę ar paslaugą.

[1, 1]Eilučių duomenys
Bill.Item.Namearray

Prekių ar paslaugų pavadinimai.

Prekių ar paslaugų pavadinimų masyvas; pagal jo indeksus perduokite ir kitus eilutės laukus.

['Apmokestinama paslauga', 'Neapmokestinama paslauga']Eilučių duomenys
Bill.Item.SKUarray

Prekių ar paslaugų kodai.

Tekstų masyvas tais pačiais eilučių indeksais.

['PASL-1', 'PASL-2']Papildomas eilutės laukas
Bill.Item.Pricearray

Vieneto kainos be PVM.

Skaitinių reikšmių tekstų masyvas; pavyzdyje kainos su dešimtainiu tašku. Bendras skaičiavimas naudoja Price × Count, o PVM pridedamas atskirai.

['50.55', '7.19']Eilučių duomenys
Bill.Item.PriceWithTaxarray

Vieneto kainos su PVM.

Tekstų masyvas su dešimtainiu tašku.

['61.16', '7.19']Pagal eilutę
Bill.Item.Totalarray

Eilučių sumos be PVM.

Pateikite kiekvienos eilutės sumą po nuolaidos.

['50.55', '7.19']Pagal eilutę
Bill.Item.TotalWithTaxarray

Eilučių sumos su PVM.

PVM25 eilutės suma apima pirkėjo apskaičiuotą PVM. Neapmokestinamoje eilutėje suma sutampa su Bill.Item.Total.

['61.16', '7.19']Pagal eilutę
Bill.Item.Typearray

Eilučių matavimo vienetai.

Tekstų masyvas, pvz. vnt. Tai nėra dokumento Bill.Type.

['vnt', 'vnt']Eilučių duomenys
Bill.Item.Taxarray

Eilučių PVM procentai.

Nurodykite eilutės tarifą arba palikite tuščią dokumento tarifui taikyti. Neapmokestinamą eilutę pažymėkite lauke Bill.Item.NoTax.

['21', '']Pagal eilutę
Bill.Item.NoTaxarray

Eilučių neapmokestinimo požymiai.

Perduokite 1 eilutei be PVM, o kitoms eilutėms 0.

[0, 1]Pagal eilutę
Bill.Item.TaxCodearray

Eilučių PVM klasifikatorių kodai.

Perduokite kodą tame pačiame indekse kaip Bill.Item.Name, pvz. Bill[Item][TaxCode][1]=PVM5. Tuščia reikšmė palieka eilutę be atskiro kodo. Tarifą, neapmokestinimą ir sumas nurodykite atskiruose laukuose.

['PVM1', 'PVM5']Papildomas eilutės laukas
Bill.Settingsarray

Dokumento nustatymai.

Asociatyvus masyvas. Visos sąskaitos atvirkštinio PVM parinktis perduodama POST lauku Bill[Settings][ReverseVAT].

['ReverseVAT' => '0']Pagal dokumentą
Bill.Settings.ReverseVATstring

Visos sąskaitos atvirkštinio PVM parinktis.

1 įjungia parinktį visai sąskaitai, 0 ją išjungia. Mišriai PVM1 ir PVM25 sąskaitai perduokite 0, o eilučių kodus ir sumas nurodykite Bill.Item laukuose. API mokėtinos sumos pagal šį požymį neperskaičiuoja, todėl ją perduokite lauke Bill.TotalWithTax. Atnaujindami dokumentą parinktį perduokite iš naujo.

'0'Pagal dokumentą
Bill.Teststring

Išsaugomo dokumento žyma.

Pavyzdyje '1'. Įrašo žyma nesustabdo dokumento išsaugojimo ir nėra užklausos imitacija.

'1'Žyma, ne imitacija
ID kitam veiksmui
Bill.IDint

Jau išsaugoto dokumento numeris.

Reikia get, update ir delete veiksmams; kuriant naują dokumentą nesiunčiamas.

123Pagal veiksmą

Pirkimo sąskaita su PVM1 ir PVM25

Pakeiskite pavyzdžio API raktą, veiklos ID, tiekėjo ID ir dokumento rekvizitus savo duomenimis.

saskaitos-pvm25.phpPHP
$request = [    'apiKey'    => 'JUSU_API_RAKTAS',    'companyId' => 1,    'type'      => 'bill',    'action'    => 'create',    'Bill' => [        'Type'          => 'buy_with_tax',        'Customer'      => ['ID' => 123],        'Prefix'        => 'PVZ',        'Number'        => '00000002',        'Date'          => '2026-09-03',        'Currency'      => 'EUR',        'TaxPercentage' => '21',        'TaxCode'       => 'PVM1',        'Total'         => '4517.08',        'TotalTax'      => '948.57',        'TotalWithTax'  => '5100.86',        'Settings'      => ['ReverseVAT' => '0'],        'Item' => [            'Name'         => ['PVM1 prekių grupė', 'PVM25 prekių grupė'],            'Count'        => [1, 1],            'Type'         => ['vnt', 'vnt'],            'Price'        => ['2779.99', '1737.09'],            'PriceWithTax' => ['3363.77', '2101.88'],            'Total'        => ['2779.99', '1737.09'],            'TotalWithTax' => ['3363.77', '2101.88'],            'Tax'          => ['21', '21'],            'TaxCode'      => ['PVM1', 'PVM25'],            'NoTax'        => [0, 0],        ],    ],]; $ch = curl_init('https://www.saskaitos.lt/api');curl_setopt_array($ch, [    CURLOPT_POST           => true,    CURLOPT_POSTFIELDS     => http_build_query($request),    CURLOPT_HTTPHEADER     => ['Content-Type: application/x-www-form-urlencoded'],    CURLOPT_RETURNTRANSFER => true,]);echo curl_exec($ch);
POST · formos duomenysJSON atsakymas

Atvirkštinis PVM sudaro 364,79 EUR. PVM25 eilutėje perduokite Bill.Item.Total[1] = 1737.09 ir Bill.Item.TotalWithTax[1] = 2101.88. Šių sumų skirtumas yra į i.SAF eksportuojamas PVM. Tam pačiam indeksui perduokite TaxCode = PVM25, Tax = 21 ir NoTax = 0.

Tiekėjui mokėtiną 5 100,86 EUR sumą perduokite lauke Bill.TotalWithTax kaip 5100.86. Ją sudaro 4 517,08 EUR suma be PVM ir 583,78 EUR PVM1 eilutės PVM. Lauke Bill.TotalTax atskirai perduokite 948.57, abiejų eilučių PVM sumą. Bill.Settings.ReverseVAT = 0 išjungia visos sąskaitos atvirkštinio PVM parinktį.

Galimos action reikšmės

createSukurti dokumentą

Perduokite kliento arba tiekėjo, numeracijos ir dokumento eilučių duomenis.

getGauti dokumentą

Nurodykite Bill.ID.

updateAtnaujinti dokumentą

Nurodykite Bill.ID ir visus išsaugomus dokumento duomenis, įskaitant Bill.Item.TaxCode reikšmes. Nepateikti laukai gali būti išvalyti, o eilutės pakeistos.

deleteIštrinti dokumentą

Nurodykite Bill.ID.

Dokumentų tipai: bill (sąskaita faktūra), pre (išankstinė), credit_bill (kreditinė), buy (pirkimo), buy_with_tax (pirkimo PVM sąskaita), offer (pasiūlymas), confirmation (užsakymo patvirtinimas), act_of_works (priėmimo–perdavimo aktas), act_of_done (darbų atlikimo aktas), template (šablonas).

Pardavimo dokumento seriją ir numerį gaukite Serijų skiltyje. Visų Bill.Item masyvų vienodi indeksai aprašo tą pačią eilutę; jų ilgiai turi sutapti. Kainos pateikiamos be PVM, su dešimtainiu tašku. Test laukas nėra užklausos imitacija.

Atsakyme eilučių kodai ir neapmokestinimo požymiai pateikiami Bill.Item.TaxCode ir Bill.Item.NoTax masyvuose. Sąrašo atsakyme šiuos laukus rasite kiekvieno Bills masyvo dokumento Item objekte.

Atsakyme Bill.Settings.ReverseVAT grąžinamas kaip skaičius 0 arba 1. Dokumento sumos pateikiamos Bill.Total, Bill.TotalTax ir Bill.TotalWithTax laukuose. Eilučių PriceWithTax, Total ir TotalWithTax API atsakyme atskirai negrąžinami, jų bazę ir PVM galima patikrinti i.SAF DocumentTotals grupėse.

Sąskaita klientui greičiau ir tvarkingiau

Prisijungę galite panaudoti įmonės rekvizitus, išsaugoti klientą ir išsiųsti dokumentą iš tos pačios vietos.

Paruošimas Rekvizitai Šablonas
Siuntimas PDF El. paštas
Valdymas Būsena Istorija
Išrašyti dabar