POST/v1/einvoices/send

Slanje eRačuna

Pošaljite strukturirani eRačun (B2B ili B2G) kroz FINA infrastrukturu. Mi generiramo UBL XML, potpisujemo, i dostavljamo primatelju.

ℹ️ F2 vs F1

F2 (eRačuni) su za B2B i B2G, šalju se asinkrono kroz FINA-u. F1 (fiskalizacija) je za gotovinske račune, šalje se u realnom vremenu Poreznoj. Ako fakturirate firmama i primate gotovinu/karticu, trebate oba.

Request

POST /v1/einvoices/send
{
  "invoice_number": "ER-2026-0001",
  "issue_date": "2026-01-03",
  "due_date": "2026-01-18",
  
  "seller": {
    "oib": "12345678901",
    "name": "Moja Firma d.o.o.",
    "address": "Ilica 1",
    "city": "Zagreb",
    "postal_code": "10000",
    "country": "HR",
    "iban": "HR1234567890123456789"
  },
  
  "buyer": {
    "oib": "98765432109",
    "name": "Kupac d.o.o.",
    "address": "Vukovarska 2",
    "city": "Split",
    "postal_code": "21000",
    "country": "HR"
  },
  
  "items": [
    {
      "name": "Usluge razvoja softvera",
      "description": "Razvoj web aplikacije - siječanj 2026",
      "quantity": 1,
      "unit": "HUR",
      "unit_price": 5000.00,
      "tax_rate": 25,
      "kpd": "J62.01.11"
    },
    {
      "name": "Hosting i održavanje",
      "quantity": 1,
      "unit": "MON",
      "unit_price": 200.00,
      "tax_rate": 25,
      "kpd": "J63.11.12"
    }
  ],
  
  "payment_reference": "HR00 2026-0001",
  "note": "Hvala na suradnji!",
  
  "metadata": {
    "project_id": "PRJ-123",
    "contract": "UGV-2025-456"
  }
}

Seller objekt (obavezan)

ParametarTipOpis
oibstringVaš OIB
namestringNaziv tvrtke
addressstringUlica i broj
citystringGrad
postal_codestringPoštanski broj
countrystringISO kod države (HR)
ibanstringIBAN za plaćanje

Buyer objekt (obavezan)

Isti format kao seller, bez IBAN-a.

Items (stavke)

ParametarTipOpis
namestringNaziv stavke
descriptionstringDetaljniji opis (opcionalno)
quantitynumberKoličina
unitstringJedinica mjere (UN/ECE kod)
unit_pricenumberCijena bez PDV-a
tax_ratenumberPDV stopa (25, 13, 5, 0)
kpdstringKPD šifra (obavezno!)

Jedinice mjere (UN/ECE)

KodZnačenje
C62Komad (piece)
HURSat (hour)
DAYDan
MONMjesec
KGMKilogram
MTRMetar
LTRLitra

Response

Uspješan odgovor (202 Accepted)

202 Accepted
{
  "id": "einv_xyz789abc123",
  "status": "pending",
  "invoice_number": "ER-2026-0001",
  
  "seller_oib": "12345678901",
  "buyer_oib": "98765432109",
  
  "amounts": {
    "subtotal": 5200.00,
    "tax_25": 1300.00,
    "total": 6500.00,
    "currency": "EUR"
  },
  
  "submitted_at": "2026-01-03T14:30:00Z",
  "estimated_delivery": "2026-01-03T14:35:00Z",
  
  "tracking_url": "https://api.fiskalapi.hr/v1/einvoices/einv_xyz789/track",
  "xml_url": "https://api.fiskalapi.hr/v1/einvoices/einv_xyz789/xml",
  "pdf_url": "https://api.fiskalapi.hr/v1/einvoices/einv_xyz789/pdf"
}

⚠️ Asinkrono slanje

eRačuni se šalju asinkrono. Status pending znači da je račun prihvaćen i čeka dostavu. Koristite webhook ili polling za praćenje statusa.

Statusi eRačuna

StatusZnačenje
pendingČeka slanje FINA-i
submittedPoslano FINA-i, čeka dostavu
deliveredDostavljeno primatelju
acceptedPrimatelj prihvatio
rejectedPrimatelj odbio
failedGreška pri slanju

Webhook eventi

Kada se status promijeni, šaljemo webhook:

Webhook payload
{
  "event": "einvoice.delivered",
  "einvoice_id": "einv_xyz789abc123",
  "status": "delivered",
  "delivered_at": "2026-01-03T14:32:15Z",
  "recipient_system": "FINA eRačun"
}

Dostupni eventi:

  • einvoice.submitted
  • einvoice.delivered
  • einvoice.accepted
  • einvoice.rejected
  • einvoice.failed

Primjer koda

Node.js
const einvoice = await fiskal.einvoices.send({
  invoice_number: 'ER-2026-0001',
  issue_date: '2026-01-03',
  due_date: '2026-01-18',
  
  seller: {
    oib: '12345678901',
    name: 'Moja Firma d.o.o.',
    address: 'Ilica 1',
    city: 'Zagreb',
    postal_code: '10000',
    country: 'HR',
    iban: 'HR1234567890123456789'
  },
  
  buyer: {
    oib: '98765432109',
    name: 'Kupac d.o.o.',
    address: 'Vukovarska 2',
    city: 'Split',
    postal_code: '21000',
    country: 'HR'
  },
  
  items: [{
    name: 'Konzultantske usluge',
    quantity: 10,
    unit: 'HUR',
    unit_price: 100.00,
    tax_rate: 25,
    kpd: 'M70.22.11'
  }]
});

console.log('eRačun ID:', einvoice.id);
console.log('Status:', einvoice.status);
console.log('PDF:', einvoice.pdf_url);

Sljedeći koraci