Preskoči na glavni sadržaj

Tehnička specifikacija – razmjena podataka web servisima sinkronom obradom

U ovom tekstu opisuje se način povezivanja sustava Primatelja sa sustavom Fine u svrhu komunikacije iz smjera Primatelja prema Fini. Isti je namijenjen svim zainteresiranim stranama koje će sudjelovati u implementaciji rješenja na strani Primatelja.

U ovom se tekstu opisuju sve poruke koje sustavi razmjenjuju, načini razmjene te razine sigurnosti, odnosno zaštite prijenosa.

Podaci će se razmjenjivati korištenjem XML poruka putem web servisa. Ovakvim načinom razmjene podataka nema ovisnosti o tehnologiji koja se koristi na strani Pošiljatelja, ni o tehnologiji na strani Fine kao informacijskog posrednika, a ni na strani proračunskog korisnika kao krajnjeg Primatelja.

Prije puštanja na produkcijski sustav nužna je verifikacija uspješne razmjene podataka na testnim okruženjima Fine i Primatelja.

 

Definicije i skraćenice

SSLSecure Sockets Layer – protokol koji omogućava zaštitu komunikacijskog kanala
PošiljateljPošiljatelj računa na sustavu e-Račun
PrimateljPrimatelj računa na sustavu e-Račun
ERPEnterprise Resource Planning – Poslovni sustav na strani Primatelja
SOAPSimple Object Access Protocol – protokol koji se koristi za razmjenu podataka između dva sustava web servisima

 

Komunikacijski uvjeti

Razmjena podataka u sustavu e-Račun za poslovne korisnike između Primatelja i Fine vrši se putem internetske mreže. Zaštita prijenosnog kanala se radi korištenjem dvosmjernog kriptiranja kanala (2-way ssl) što znači da se pri uspostavljanju sigurne veze klijent predstavlja aplikacijskim certifikatom, a web server poslužiteljskim (SSL) certifikatom.

Da bi se Primatelj mogao uspješno povezati na web servis Fine, potrebno je zadovoljiti sljedeće preduvjete:

  • Primatelj treba zatražiti od Fine certifikat za potrebe potpisivanja SOAP poruka i autentifikacije na sustav. U svrhu testiranja Primatelj treba koristiti demo certifikat, a za potrebe povezivanja na produkcijski sustav, treba koristiti produkcijski certifikat.
  • Primatelj treba prilagoditi svoj ERP sustav za slanje SOAP poruka prema uputi iz ove tehničke specifikacije.

 

Zaštita integriteta

Zaštita integriteta ostvaruje se digitalnim potpisivanjem SOAP poruke Fininim certifikatom. Standard koji se koristi za izvedbu potpisa SOAP poruke je WS-Security (https://www.oasis-open.org/standards#wssv1.0).

Za potrebe testiranja, Primatelj dobavlja Finin DEMO certifikat, a za produkciju produkcijski certifikat. U testnoj okolini nije dozvoljeno slanje SOAP poruka potpisanih produkcijskim certifikatom, ni obrnuto.

 

Koncept razmjene podataka

Sustav Primatelja ovisno o operaciji koju želi izvršiti prema web servisu Fine šalje poruku po standardiziranoj XML shemi. U odgovoru web servisa Finin sustav sinkrono šalje rezultat obrade ili grešku ukoliko bilo što nije u redu.

Odgovorne poruke sadrže "MessageAck" element gdje se nalaze osnovni podaci o odgovoru web servisa. Ukoliko je SOAP poruka u skladu s definicijom web servisa (WSDL), tada se u elementu AckStatus pojavljuje odgovor ACCEPTED. Ukoliko SOAP poruka nije u skladu s definicijom, tada se u odgovoru pojavljuje MSG_NOT_VALID. Vrijednost SYSTEM_ERROR pokazuje da je došlo do većih problema u sustavu Fine (npr. runtime exception). U slučaju SYSTEM_ERROR tada je defaultna vrijednost AckStatusCode "99".

Primatelj ima na raspolaganju sljedeće metode:

  • EchoBuyer
    • EchoBuyerMsg
EchoBuyerMsg.jpg
  • getB2BIncomingInvoiceList
    • GetB2BIncomingInvoiceListMsg
GetB2BIncomingInvoiceListMsg.jpg
  • getB2BIncomingInvoice
    • GetB2BIncomingInvoiceMsg
GetB2BIncomingInvoiceMsg.jpg
  • GetB2BOutgoingInvoiceList
    • GetB2BOutgoingInvoiceListMsg
GetB2BOutgoingInvoiceListMsg.jpg
  • GetB2BOutgoingInvoice
    • GetB2BOutgoingInvoiceMsg
GetB2BOutgoingInvoiceMsg.jpg
  • ChangeB2BIncomingInvoiceStatus
    • poruka ChangeB2BIncomingInvoiceStatusMsg
Poruka_ChangeB2BIncomingInvoiceStatusMsg.jpg
  • GetReceiverList
    • poruka GetReceiverListMsg
Poruka_GetReceiverListMsg.jpg

Metoda za provjeru rada web servisa (Echo metoda)

Kako bi se provjerila dostupnost web servisa, na raspolaganju je Echo metoda.

Elementi EchoBuyerMsg poruke

  • HeaderBuyer
    • MessageID - Jedinstveni broj poruke
    • BuyerID - Identifikator kupca (OIB) – (9934:12345678909)
    • AdditionalBuyerID - Dodatni identifikator kupca (poslovne jedinice, npr. HR99:12345 gdje je 12345 šifra poslovne jedinice koja je navedena u registru primatelja)
    • MessageType - Tip poruke: 9999 – echo poruka
    • MessageAttributes – Atribut poruke
  • Data
    • EchoData
      • Echo - Sadržaj teksta

Elementi EchoBuyerAckMsg poruke

  • MessageAck
    • MessageID - Jedinstveni broj poruke
    • MessageAckID - Jedinstveni broj poruke na koju se odnosi odgovor
    • MessageType – 10000 - Odgovor na echo poruku
    • AckStatus - Status odgovora
    • AckStatusCode - Šifra statusa iz sustava
    • AckStatusText - Opis statusa iz sustava
  • EchoData
    • Echo - Sadržaj teksta

 

Metoda za dohvat liste ulaznih računa

Ova se metoda koristi za dohvaćanje liste ulaznih računa. Primatelj za dohvaćanje liste računa koristi filter kojim određuje kriterije po kojima želi dohvatiti račune. Omogućeno je sljedeće filtriranje:

  • po statusu računa,
  • po datumu,
  • po iznosu,
  • po registriranom nazivu pošiljatelja.

Lista računa koja se želi dohvatiti može se filtrirati i upisivanjem ID-eva računa od kojeg i do kojeg se želi napraviti dohvat.

Elementi GetB2BIncomingInvoiceListMsg poruke

  • HeaderBuyer
    • MessageID - Jedinstveni broj poruke
    • BuyerID - OIB kupca (npr. 9934:12345678901)
    • AdditionalBuyerID - Dodatni identifikator kupca (poslovne jedinice, npr. HR99:12345 gdje je 12345 šifra poslovne jedinice koja je navedena u registru primatelja)
    • MessageType - Tip poruke 9101 – promjena statusa ulaznog e-računa
    • MessageAttributes – Atribut poruke
  • Data
    • B2BIncomingInvoiceList
      • DocumentCurrencyCode – true/false ispis valute iznosa računa u odgovornoj poruci (neobavezan element)
      • Filter - Filter za dohvat
        • InvoiceStatus
          • StatusCode - Status u sustavu e-Račun
        • DateRange
          • From - Datum od
          • To - Datum do
        • AmountRange
          • From - Iznos od
          • To - Iznos do
        • TextSearch
          • SearchField - Polje za pretragu (default ALL)
          • SearchValue - Tekst za pretragu (registrirani naziv pošiljatelja)
        • InvoiceIDRange - Raspon za dohvat računa preko Fina InvoiceID
          • From - Invoice ID od (ne uključujući taj ID, veće od)
          • To - Invoice ID do (uključujući taj ID, manje ili jednako do)

Elementi GetB2BIncomingInvoiceListAckMsg poruke

Sinkroni odgovor na poruku za dohvat liste ulaznih računa.

  • MessageAck
    • MessageID - Jedinstveni broj poruke na koju se odnosi odgovor
    • MessageAckID - Jedinstveni broj poruke odgovora
    • MessageType - Tip poruke: 9102 – sinkroni odgovor na - GetB2BIncomingInvoiceListMsg
    • AckStatus - Status odgovora
    • AckStatusCode - Šifra statusa iz sustava
    • AckStatusText - Opis statusa iz sustava
  • B2BIncomingInvoiceList
    • B2BIncomingInvoice - Omotač ulaznog računa
      • DocumentType - Tip dokumenta
        • XMLStandard - Standard XML dokumenta (UBL)
        • SpecificationIdentifier - Prilagodba XML dokumenta (urn:cen.eu:en16931:2017) - fiksno
        • DocumentTypeCode - Tip dokumenta
        • DocumentTypeText - Opis tipa dokumenta
      • InvoiceStatus - Status dokumenta
        • StatusCode - Status u sustavu e-Račun
        • Note - Napomena statusa (npr. razlog odbijanja računa ili djelomičnog plaćanja)
        • PartialAmount - Iznos za djelomično plaćanje
        • DocumentCurrencyCode – Valuta iznosa djelomičnog plaćanja (neobavezan element)
      • SupplierID - Identifikator dobavljača (OIB, npr. 9934:12345678901)
      • AdditionalSupplierID - Dodatni identifikator izdavatelja (poslovne jedinice, npr. HR99:12345 gdje je 12345 šifra poslovne jedinice koja je navedena u registru izdavatelja)
      • SupplierRegistrationName - Naziv pošiljatelja računa u sustavu
      • SupplierCompanyID - MB pošiljatelja računa u sustavu
      • InvoiceID - Identifikator računa u sustavu e-Račun B2B
      • SupplierInvoiceID - Identifikator računa pošiljatelja
      • DataInterchangeMethod - Metoda slanja računa (PKI)
      • InvoiceIssueDate - Datum izdavanja
      • InvoiceDate - Datum računa
      • InvoiceTimestamp - Timestamp računa u sustavu e-Račun B2B
      • InvoicePayableAmount - Iznos računa
      • DocumentCurrencyCode – Valuta računa (neobavezan element)
  • Error
    • ErrorCode - Šifre grešaka odvojene delimiterom
    • ErrorMessage - Opisi grešaka odvojeni delimiterom
    • ErrorText - Dodatni tekst greške

 

Metoda za dohvat ulaznog računa

Ova se metoda koristi za dohvaćanje određenog ulaznog računa. Za dohvat računa, primatelj treba navesti ID računa kojeg želi dohvatiti.

Elementi GetB2BIncomingInvoiceMsg poruke

  • HeaderBuyer - Zaglavlje poruke
    • MessageID - Jedinstveni broj poruke
    • BuyerID - OIB kupca (npr. 9934:12345678901)
    • AdditionalBuyerID - Dodatni identifikator kupca (poslovne jedinice, npr. HR99:12345 gdje je 12345 šifra poslovne jedinice koja je navedena u registru primatelja)
    • MessageType - Tip poruke: 9103 – dohvat ulaznog računa
    • MessageAttributes - Atributi poruke
  • Data - XML s podacima
    • B2BIncomingInvoice - Omotač upita za dohvat ulaznog računa
      • InvoiceID - Identifikator računa u sustavu e-Račun B2B
      • DocumentCurrencyCode – true/false ispis valute iznosa računa u odgovornoj poruci (neobavezan element)

Elementi GetB2BIncomingInvoiceAckMsg poruke

Sinkroni odgovor na poruku za dohvat ulaznog računa.

  • MessageAck
    • MessageID - Jedinstveni broj poruke na koju se odnosi odgovor
    • MessageAckID - Jedinstveni broj poruke odgovora
    • MessageType - Tip poruke: 9104 – sinkroni odgovor na GetB2GIncomingInvoiceMsg
    • AckStatus - Status odgovora
    • AckStatusCode - Šifra statusa iz sustava
    • AckStatusText - Opis statusa iz sustava
  • B2BIncomingInvoice
    • InvoiceID - Identifikator računa u sustavu e-Račun B2B
    • InvoiceTimestamp - Timestamp računa u sustavu e-Račun B2B
    • DocumentType - Tip dokumenta za dohvat
      • XMLStandard - Standard XML dokumenta (UBL)
      • SpecificationIdentifier - Prilagodba XML dokumenta (urn:cen.eu:en16931:2017)- fiksno
      • DocumentTypeCode - Tip dokumenta
      • DocumentTypeText - Opis tipa dokumenta
    • InvoiceStatus - Status dokumenta za dohvat
      • StatusCode - Status u sustavu e-Račun
      • Note - Napomena statusa (npr. razlog odbijanja računa ili djelomičnog plaćanja)
      • PartialAmount - Iznos za djelomično plaćanje
      • DocumentCurrencyCode – Valuta iznosa djelomičnog plaćanja (neobavezan element)
    • DataInterchangeMethod - Metoda slanja računa (PKI)
    • IncomingInvoiceEnvelope - Omotnica ulaznog dokumenta
      • InvoiceEnvelope - Omotač e-računa po UBL shemi
      • CreditNoteEnvelope - Omotač e-odobrenja po UBL shemi
      • PdfDocument - PDF dokumenta (e-računa ili e-odobrenja)
  • Error
    • ErrorCode - Šifre grešaka odvojene delimiterom
    • ErrorMessage - Opisi grešaka odvojeni delimiterom
    • ErrorText - Dodatni tekst greške

 

Metoda za promjenu statusa ulaznog računa

Ova se poruka koristi za promjenu statusa pojedinog ulaznog računa. Za promjenu statusa, Primatelj mora navesti ID računa i podatke o statusu koji želi postaviti.

Nakon ulaska računa u sustav "e-Račun za poslovne korisnike", automatski se postavlja početni status RECEIVED. Primatelj nakon ulaska računa u sustav mora preuzeti račun i potvrditi zaprimanje računa slanjem statusa RECEIVING_CONFIRMED. Tek nakon postavljanja navedenog statusa, moguće je slanje ostalih dostupnih statusa navednih u tablici u 12. poglavlju ovog dokumenta.

Ukoliko primatelj želi odbiti račun zbog toga što je račun poslan na pogrešnu poslovnu jedinicu, kao "StatusCode" postavlja REJECTED, a kao "CodeReason" postavlja šifru "190".

Elementi ChangeB2BIncomingInvoiceStatusMsg poruke

  • HeaderBuyer - Zaglavlje poruke
    • MessageID - Jedinstveni broj poruke
    • BuyerID - OIB kupca (npr. 9934:12345678901)
    • AdditionalBuyerID - Dodatni identifikator kupca (poslovne jedinice, npr. HR99:12345 gdje je 12345 šifra poslovne jedinice koja je navedena u registru primatelja)
    • MessageType - Tip poruke: 107 – promjena statusa ulaznog računa
    • MessageAttributes - Atributi poruke
  • Data - XML s podacima
    • B2BIncomingInvoiceStatus
      • InvoiceID - Identifikator računa u sustavu e-Račun B2B
      • InvoiceStatus - Status u koji se želi napraviti promjena u sustavu e-Račun
        • StatusCode - Status u sustavu e-Račun B2B
        • CodeReason - Šifra razloga („190“ za Pogrešna poslovna jedinica) - opcionalno
        • Note - Napomena statusa (npr. razlog odbijanja računa ili djelomičnog plaćanja)
        • PartialAmount - Iznos za djelomično plaćanje
        • DocumentCurrencyCode – Valuta iznosa djelomičnog plaćanja (neobavezan element)

Elementi ChangeB2BIncomingInvoiceStatusAckMsg poruke

Sinkroni odgovor na poruku za promjenu statusa ulaznog računa.

  • MessageAck
    • MessageID - Jedinstveni broj poruke na koju se odnosi odgovor
    • MessageAckID - Jedinstveni broj poruke odgovora
    • MessageType - Tip poruke: 108 – sinkroni odgovor na ChangeB2BIncomingInvoiceStatusMsg
    • AckStatus - Status odgovora
    • AckStatusCode - Šifra statusa iz sustava
    • AckStatusText - Opis statusa iz sustava
  • Error
    • ErrorCode - Šifra greške odvojene delimiterom
    • ErrorMessage - Opis greške odvojene delimiterom
    • ErrorText - Dodatni tekst greške

 

Metoda za dohvat liste izlaznih računa

Ova se metoda koristi za dohvat liste izlaznih računa. Pošiljatelj za dohvaćanje liste računa koristi filter kojim određuje kriterije po kojima želi dohvatiti račune. Omogućeno je sljedeće filtriranje:

  • po statusu računa,
  • po datumu,
  • po iznosu.

Lista računa koja se želi dohvatiti može se filtrirati i upisivanjem ID-eva računa od kojeg i do kojeg se želi napraviti dohvat.
 

Elementi GetB2BOutgoingInvoiceListMsg poruke

  • HeaderSupplier
    • MessageID - Jedinstveni broj poruke
    • SupplierID - OIB dobavljača (npr. 9934:12345678901)
    • AdditionalSupplierID - Dodatni identifikator izdavatelja (poslovne jedinice, npr. HR99:12345 gdje je 12345 šifra poslovne jedinice koja je navedena u registru izdavatelja)
    • MessageType - Tip poruke 9105 – promjena statusa ulaznog e-računa
    • MessageAttributes – Atribut poruke
  • Data
    • B2BOutgoingInvoiceList
      • DocumentCurrencyCode – true/false ispis valute iznosa računa u odgovornoj poruci (neobavezan element)
      • Filter - Filter za dohvat
        • InvoiceStatus
          • StatusCode - Status u sustavu e-Račun
        • DateRange
          • From - Datum od
          • To - Datum do
        • AmountRange
          • From - Iznos od
          • To - Iznos do
        • InvoiceIDRange - Raspon za dohvat računa preko Fina InvoiceID
          • From - Invoice ID od (ne uključujući taj ID, veće od)
          • To - Invoice ID do (uključujući taj ID, manje ili jednako do)

Elementi GetB2BOutgoingInvoiceListAckMsg poruke

Sinkroni odgovor na poruku za dohvat liste izlaznih računa.

  • MessageAck
    • MessageID - Jedinstveni broj poruke na koju se odnosi odgovor
    • MessageAckID - Jedinstveni broj poruke odgovora
    • MessageType - Tip poruke: 9106 – sinkroni odgovor na GetB2BOutgoingInvoiceListMsg
    • AckStatus - Status odgovora
    • AckStatusCode - Šifra statusa iz sustava
    • AckStatusText - Opis statusa iz sustava
  • B2BOutgoingInvoiceList
    • B2BOutgoingInvoice - Omotač ulaznog računa
      • DocumentType - Tip dokumenta
        • XMLStandard - Standard XML dokumenta (UBL)
        • SpecificationIdentifier - Prilagodba XML dokumenta (urn:cen.eu:en16931:2017) - fiksno
        • DocumentTypeCode - Tip dokumenta
        • DocumentTypeText - Opis tipa dokumenta
      • InvoiceStatus - Status dokumenta
        • StatusCode - Status u sustavu e-Račun
        • Note - Napomena statusa (npr. razlog odbijanja računa ili djelomičnog plaćanja)
        • PartialAmount - Iznos za djelomično plaćanje
        • DocumentCurrencyCode – Valuta iznosa djelomičnog plaćanja (neobavezan element)
      • BuyerID - Identifikator kupca (OIB, npr. 9934:12345678901)
      • AdditionalBuyerID - Dodatni identifikator kupca (poslovne jedinice, npr. HR99:12345 gdje je 12345 šifra poslovne jedinice koja je navedena u registru primatelja)
      • BuyerRegistrationName - Naziv kupca računa u sustavu
      • BuyerCompanyID - MB kupca računa u sustavu
      • InvoiceID - Identifikator računa u sustavu e-RačunB2B
      • SupplierInvoiceID - Identifikator računa pošiljatelja
      • DataInterchangeMethod - Metoda slanja računa (PKI)
      • InvoiceIssueDate - Datum izdavanja
      • InvoiceDate - Datum računa
      • InvoiceTimestamp - Timestamp računa u sustavu e-Račun B2B
      • InvoicePayableAmount - Iznos računa
      • DocumentCurrencyCode – Valuta računa (neobavezan element)
  • Error
    • ErrorCode - Šifre grešaka odvojene delimiterom
    • ErrorMessage - Opisi grešaka odvojeni delimiterom
    • ErrorText - Dodatni tekst greške

 

Metoda za dohvat izlaznog računa

Ova se metoda koristi za dohvaćanje određenog izlaznog računa. Za dohvat računa, pošiljatelj treba navesti ID računa kojeg želi dohvati.

Elementi GetB2BOutgoingInvoiceMsg poruke

  • HeaderSupplier - Zaglavlje poruke
    • MessageID - Jedinstveni broj poruke
    • SupplierID - OIB izdavatelja (npr. 9934:12345678901)
    • AdditionalSupplierID - Dodatni identifikator izdavatelja (poslovne jedinice, npr. HR99:12345 gdje je 12345 šifra poslovne jedinice koja je navedena u registru izdavatelja)
    • MessageType - Tip poruke: 9107 – dohvat ulaznog računa
    • MessageAttributes - Atribut poruke
  • Data - XML s podacima
    • B2BOutgoingInvoice - Omotač upita za dohvat ulaznog računa
      • InvoiceID - Identifikator računa u sustavu e-Račun B2B
      • DocumentCurrencyCode – true/false ispis valute iznosa računa u odgovornoj poruci (neobavezan element)

Elementi GetB2BOutgoingInvoiceAckMsg poruke

Sinkroni odgovor na poruku za dohvat izlaznog računa

  • MessageAck
    • MessageID - Jedinstveni broj poruke na koju se odnosi odgovor
    • MessageAckID - Jedinstveni broj poruke odgovora
    • MessageType - Tip poruke: 9108 – sinkroni odgovor na GetB2BIncomingInvoiceMsg
    • AckStatus - Status odgovora
    • AckStatusCode - Šifra statusa iz sustava
    • AckStatusText - Opis statusa iz sustava
  • B2BOutgoingInvoice
    • InvoiceID - Identifikator računa u sustavu e-Račun B2B
    • InvoiceTimestamp - Timestamp računa u sustavu e-Račun B2B
    • DocumentType - Tip dokumenta za dohvat
      • XMLStandard - Standard XML dokumenta (UBL ili CII)
      • SpecificationIdentifier - Prilagodba XML dokumenta (urn:cen.eu:en16931:2017)- fiksno
      • DocumentTypeCode - Tip dokumenta
      • DocumentTypeText - Opis tipa dokumenta
    • InvoiceStatus - Status dokumenta za dohvat
      • StatusCode - Status u sustavu e-Račun
      • Note - Napomena statusa (npr. razlog odbijanja računa ili djelomičnog plaćanja)
      • PartialAmount - Iznos za djelomično plaćanje
      • DocumentCurrencyCode – Valuta iznosa djelomičnog plaćanja (neobavezan element)
    • DataInterchangeMethod - Metoda slanja računa (PKI)
    • OutgoingInvoiceEnvelope - Omotnica ulaznog dokumenta
      • InvoiceEnvelope - Omotač e-računa po UBL shemi
      • CreditNoteEnvelope - Omotač e-odobrenja po UBL shemi
      • PdfDocument - PDF dokumenta (e-računa ili e-odobrenja)
  • Error
    • ErrorCode - Šifre grešaka odvojene delimiterom
    • ErrorMessage - Opisi grešaka odvojeni delimiterom
    • ErrorText - Dodatni tekst greške

 

Poruka za dohvat registra Primatelja servisa e-Račun

Ova se poruka koristi za dohvat liste Primatelja iz registra sustava "e-Račun za poslovne korisnike".

Filtriranje je moguće prema OIB broju, nazivu poslovnog subjekta ili datumu. Ukoliko se želi dohvatiti kompletni registar, kao vrijednosti polja "SearchField" i "SearchValue" se upisuje "ALL". Ukoliko se pretraživanje radi prema OIB broju, kao vrijednosti polja "SearchField" se upisuje "OIB", a u polje "SearchValue" se upisuje OIB broj s "HR" prefiksom, npr. "HR01234567890". Ukoliko se pretraživanje radi prema nazivu poslovnog subjekta, kao vrijednosti polja "SearchField" se upisuje "NAZIV", a u polje "SearchValue" se upisuje dio i kompletan naziv poslovnog subjekta. Kod pretraživanja prema datumu upisuju se datumi u formatu GGGG-MM-DD.

Kod dohvata kompletnog registra i kod filtriranja prema nazivu i OIB broju, u odgovoru se šalju samo aktivni korisnici. U slučaju filtriranja prema datumu, u odgovoru se šalju aktivni i neaktivni korisnici za navedeno razdoblje.

Elementi GetReceiverListMsg poruke

  • HeaderSupplier - Zaglavlje poruke
    • MessageID - Jedinstveni broj poruke
    • SupplierID - OIB izdavatelja (npr. 9934:12345678901)
    • AdditionalSupplierID - Dodatni identifikator izdavatelja (poslovne jedinice, npr. HR99:12345 gdje je 12345 šifra poslovne jedinice koja je navedena u registru izdavatelja)
    • MessageType – Tip poruke: 50041 – dohvat registra primatelja
    • MessageAttributes - Atribut poruke
  • Data
    • ReceiverList - Dohvat liste primatelja iz registra
      • Filter - Filter za dohvat
        • DateRange
          • From - Datum od
          • To - Datum do
        • TextSearch
          • SearchField - Polje za pretragu ("ALL", "OIB" ili "NAZIV")
          • SearchValue – Vrijednost polja ("ALL" OIB broj ili naziv)

Elementi GetReceiverListAckMsg poruke

  • MessageAck
    • MessageID - Jedinstveni broj poruke na koju se odnosi odgovor
    • MessageAckID - Jedinstveni broj poruke odgovora
    • MessageType - Tip poruke: 50042– sinkroni odgovor na GetReceiverListMsg
    • AckStatus - Status odgovora
    • AckStatusCode - Šifra statusa iz sustava
    • AckStatusText - Opis statusa iz sustava
  • BusinessBranch – podaci o poslovnom subjektu
    • BuyerID - Identifikator organizacijske jedinice (BuyerID)
    • SchemeName - Vrsta sheme organizacijske jedinice (GLN, JUS, RKP,...)
    • ReceiptType - Vrsta dokumenta koje zaprima (1-UBL, 2-UBL EN, 3-CII)
    • BusinessBranchCode - Šifra organizacijske jedinice
    • BusinessBranchName - Naziv organizacijske jedinice
    • PostalAddress – Adresa poslovnog subjekta
      • StreetName - Ulica
      • BuildingNumber - Kućni broj
      • PostalCode - Poštanski broj
      • CityName – Grad
      • Country – Država
      • AddressLine – Adresa u jednoj liniji
    • Activity – Aktivnost
    • Receiver – primatelj
      • RegistrationName - Naziv primatelja računa
      • ISOCode - ISO kod države (HR)
      • CompanyID – OIB
      • PostalAddress – Adresa organizacijske jedinice
        • StreetName - Ulica
        • BuildingNumber - Kućni broj
        • PostalCode - Poštanski broj
        • CityName – Grad
        • Country – Država
        • AddressLine – Adresa u jednoj liniji

 

Šifre statusa računa u razmjeni

Ulazni računi mogu imati sljedeće vrijednosti statusa:

StatusOpis
RECEIVEDZaprimljen. Početni status računa nakon zaprimanja u sustav
RECEIVING_CONFIRMEDPotvrda zaprimanja
APPROVEDOdobren (prihvaćen)
REJECTEDOdbijen
PAYMENT_FULFILLEDPlaćen u potpunosti
PAYMENT_PARTIALLY_FULFILLEDPlaćen djelomično

 

U slučaju odbijanja ili djelomičnog plaćanja nužno je upisivanje razloga odbijanja odnosno djelomičnog plaćanja u element "Note". Također, u slučaju djelomičnog plaćanja nužno je upisivanje iznosa djelomičnog plaćanja u element "PartialAmount".

Tipovi poruka u razmjeni

Slijedi tablica s opisima tipova poruka i odgovornih poruka:

Tip porukeOpisPoruka/metoda
9999Echo porukaEchoBuyerMsg
10000Odgovor na echo porukuEchoBuyerAckMsg
9101Dohvat liste ulaznih računaGetB2BIncomingInvoiceListMsg
9102Odgovor na dohvat liste ulaznih računaGetB2BIncomingInvoiceListAckMsg
9103Dohvat ulaznog računaGetB2BIncomingInvoiceMsg
9104Odgovor na dohvat ulaznog računaGetB2BIncomingInvoiceAckMsg
107Promjena statusa ulaznog računaChangeB2BIncomingInvoiceStatusMsg
108Odgovor na promjenu statusa ulaznog računaChangeB2BIncomingInvoiceStatusAckMsg
9105Dohvat liste izlaznih računaGetB2BOutgoingInvoiceListMsg
9106Odgovor na dohvat liste izlaznih računaGetB2BOutgoingInvoiceListAckMsg
9107Dohvat izlaznog računaGetB2BOutgoingInvoiceMsg
9108Odgovor na dohvat izlaznog računaGetB2BOutgoingInvoiceAckMsg
50041Dohvat registra primateljaGetReceiverListMsg
50042Odgovor na dohvat registra primateljaGetReceiverListAckMsg

 

Šifarnik mogućih grešaka kod slanja poruka

Šifra greškeOpis greškePoruka
E000100Nepostojeći korisnikNepostojeći korisnik ''{DN korisnika}''
E000101Korisnik nema pravaKorisnik ''{ID korisnika}'' nema prava ''{naziv prava}''
E000200Nepostojeći dokumentNe postoji dokument ID={ID dokumenta} primatelja ID={ID narucitelja}
E000201Nije moguća promjena statusa jer se dokument nalazi u nedozvoljenom statusuDokument ID={ID dokumenta} se nalazi u nedozvoljenom statusu ''{opis statusa}''. Nije moguća promjena statusa
E000202Nije moguća promjena statusa za dokumentDokument ID={ID dokumenta} tipa={tip dokumenta (380 račun...)} se ne može mijenjati status.
E000999Ostale greškeGreška: {0}

 

Sheme poruka i definicija web servisa

Sheme poruka i definicija web servisa nalazi se ovdje.

  • Nužni kolačići omogućuju osnovne funkcionalnosti. Bez ovih kolačića, web-stranica ne može pravilno funkcionirati, a isključiti ih možete mijenjanjem postavki u svome web-pregledniku.