Dokumentacijav1
Gidai

Sąskaitos faktūros

Sąskaitos faktūros modelis, sąskaitų tipai, numeracija ir serijos, kūrimo ir atnaujinimo užklausos bei PDF atsisiuntimas.

Sąskaita faktūra F-sąskaita sistemoje – tai užbaigtas, sunumeruotas dokumentas, kurį jūsų verslas (pardavėjas) išrašo pirkėjui, su viena ar daugiau eilučių (products) ir neprivalomais mokėjimo būdais. API mato tik užbaigtas sąskaitas; programėlėje sukurti juodraščiai čia nematomi.

Galiniai taškai

Sąskaitų tipai

typePVMNaudojimas
regular_invoiceneStandartinė sąskaita ne PVM mokėtojui
vat_invoicetaipPVM sąskaita faktūra
preliminary_invoiceneIšankstinė sąskaita
preliminary_vat_invoicetaipIšankstinė sąskaita su PVM
credit_invoiceneKreditinė sąskaita
credit_vat_invoicetaipKreditinė sąskaita su PVM

PVM tipams kiekvienoje eilutėje privalomas vat_percentage ir pardavėjo PVM kodas. Kai pardavėju naudojate savo profilį, PVM kodas imamas iš profilio.

Serijos ir numeracija

Kiekviena sąskaita priklauso serijai – trumpam kodui, tokiam kaip SF, – ir turi numerį, unikalų toje jūsų verslo serijoje.

  • Kurdami nenurodykite invoice_number, ir API priskirs kitą serijos numerį. Dar neegzistuojanti serija pradedama nuo 1.
  • Nurodykite invoice_number aiškiai, kai numeraciją valdote patys. Jis privalo būti unikalus serijoje. Užpildyta nuliais ("007") ir neužpildyta ("7") formos lyginamos tiksliai taip, kaip išsiųstos, todėl vienoje serijoje naudokite vieną formą.
  • Atnaujindami visada siųskite dabartinį invoice_number. Atnaujinimas be jo priskiria naują numerį iš serijos skaitiklio.
  • Atsakymuose numeris grąžinamas užpildytas nuliais iki trijų skaitmenų ("7" grąžinamas kaip "007").

Sukurkite sąskaitą faktūrą

Trumpiausia naudinga užklausa pardavėju naudoja jūsų profilį, o kainas nurodo eilutėse:

curl -X POST https://app.fsaskaita.lt/api/invoices \
  -H "Authorization: Bearer $FSASKAITA_TOKEN" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d @- <<'JSON'
{
  "type": "vat_invoice",
  "invoice_date": "2026-09-08",
  "pay_until_date": "2026-09-22",
  "series": "SF",
  "currency": "EUR",
  "language": "lt",
  "use_default_seller_info": true,
  "buyer": {
    "type": "company",
    "company_name": "Pirkėjas, UAB",
    "company_code": "300000001",
    "vat_code": "LT100000000011",
    "address": "Konstitucijos pr. 7, Vilnius",
    "email": "[email protected]"
  },
  "products": [
    { "name": "Konsultacija", "units": "val.", "quantity": 2, "price": 50, "vat_percentage": 21 }
  ],
  "payment_options": [
    { "type": "bank", "bank_name": "Swedbank", "bank_account": "LT12 7300 0100 0000 0001", "swift_bic_code": "HABALT22" }
  ]
}
JSON

Pagrindinės taisyklės:

  • buyer.type yra company arba individual. Įmonėms reikia company_name; fiziniams asmenims naudojami first_name ir last_name. Nesiųskite įmonės laukų fiziniam asmeniui ar asmens vardų įmonei.
  • Kiekvienai eilutei reikia name, units, quantity ir lygiai vieno iš price (vieneto kaina be PVM), total (eilutės suma be PVM) arba total_incl_vat. Kitus serveris apskaičiuoja pats.
  • payment_options įrašai yra arba type: "bank" su bank_account ir bank_name (bei neprivalomais routing_or_sort_number, swift_bic_code), arba type: "other" su fields sąrašu iš { "label", "value" } porų.
  • payment_status kuriant pagal nutylėjimą yra not_paid, o atnaujinant nenurodytas paliekamas nepakeistas. Nustatykite "paid", kad pažymėtumėte sąskaitą apmokėta.
  • language (lt, en, es, de, fr) nustato PDF kalbą. Pagal nutylėjimą lt.
  • notes – laisvas tekstas iki 255 simbolių, spausdinamas sąskaitoje.

Savo pardavėjo bloko pateikimas

Nustatykite use_default_seller_info į false (arba nenurodykite) ir siųskite seller. Privalomi pardavėjo laukai priklauso nuo to, kaip registruotas jūsų verslas: įmonės siunčia company_name ir company_code; individuali veikla siunčia first_name, last_name ir individual_activity_id. PVM tipams papildomai privalomas seller.vat_code. seller.custom_fields priima papildomas { "label", "value" } poras, spausdinamas po pardavėjo duomenimis.

Atsakymas

{
  "data": {
    "id": "6f1e9d2a-0b3c-4e5f-8a9b-1c2d3e4f5a6b",
    "business_id": "9c1f7b2e-3a6d-4d5e-9f0a-2b7c8d9e0f11",
    "invoice_type": "vat_invoice",
    "series": "SF",
    "invoice_number": "007",
    "invoice_date": "2026-09-08",
    "pay_until_date": "2026-09-22",
    "language": "lt",
    "subtotal": 100,
    "vat": 21,
    "total_incl_vat": 121,
    "currency": "EUR",
    "payment_status": "not_paid",
    "notes": null,
    "share_link": "https://app.fsaskaita.lt/invoice/share/…",
    "seller": { "business_type": "small_partnership", "company_name": "Pavyzdys, MB", "…": "…", "custom_fields": [] },
    "buyer": { "type": "company", "company_name": "Pirkėjas, UAB", "…": "…" },
    "items": [
      { "id": "…", "name": "Konsultacija", "price": 50, "vat_percentage": 21, "quantity": 2, "units": "val." }
    ],
    "payment_options": [
      { "type": "bank", "bank_account": "LT12 7300 0100 0000 0001", "bank_name": "Swedbank", "routing_or_sort_number": null, "swift_bic_code": "HABALT22", "fields": [] }
    ],
    "created_at": 1757318400,
    "updated_at": 1757318400
  }
}

share_link – viešas puslapis, kuriame pirkėjas gali peržiūrėti ir atsisiųsti sąskaitą neprisijungęs. items[].price yra vieneto kaina be PVM; eilučių sumos negrąžinamos.

Atnaujinkite sąskaitą faktūrą

PUT /invoices/{id} priima tokį patį turinį kaip kūrimas ir pakeičia visas sąskaitos dalis: eilutes, mokėjimo būdus ir pardavėjo bloką. Pirmiausia nuskaitykite sąskaitą, pakeiskite reikiamus laukus ir išsiųskite visą dokumentą atgal kartu su jo invoice_number. Pakeitus series, sąskaita perkeliama į kitą seriją ir iš naujo sinchronizuojami abiejų serijų skaitikliai.

Atsisiųskite PDF

curl -L https://app.fsaskaita.lt/api/invoices/$ID/download \
  -H "Authorization: Bearer $FSASKAITA_TOKEN" \
  -H "Accept: application/json" \
  -o invoice.pdf

Atsakymas yra application/pdf su Content-Disposition: attachment failo pavadinimu, sudarytu iš tipo pavadinimo, serijos ir numerio. Jei PDF dar neparengtas, atsisiuntimas jo laukia iki maždaug 20 sekundžių. Content-Length antraštės nėra, todėl skaitykite turinį srautu, o ne iš anksto rezervuokite atmintį.

Ko tikėtis: šalutiniai efektai

  • Kūrimas arba atnaujinimas išsiunčia invoice.created arba invoice.updated webhook pranešimą. Šalinimas išsiunčia invoice.deleted.
  • Pirkėjas išsaugomas jūsų klientų sąraše programėlėje.
  • API prieigai reikalingas Premium planas.
F-sąskaita / DevelopersKas naujo

Šiame puslapyje