diff --git a/erpnext/translations/hr.csv b/erpnext/translations/hr.csv
index 43f4010..8f9e935 100644
--- a/erpnext/translations/hr.csv
+++ b/erpnext/translations/hr.csv
@@ -1,2203 +1,2167 @@
- (Half Day),(Pola dana),
- Currently no stock available in any warehouse,Trenutno nema zaliha u skladištu,
- From Date can not be greater than To Date,Datum ne može biti veći od datuma,
- Group Roll No,Br,
- or ,ili,
-" {0} Retain Sample is based on batch, please check Has Batch No to retain sample of item","{0} Zadržavanje uzorka temelji se na seriji, provjerite Ima li serijski broj da zadrži uzorak stavke",
-"""Customer Provided Item"" cannot be Purchase Item also",&quot;Stavka koju je dao korisnik&quot; ne može biti ni stavka za kupnju,
-"""Customer Provided Item"" cannot have Valuation Rate",&quot;Stavka koju je dao korisnik&quot; ne može imati stopu procjene,
-"""Is Fixed Asset"" cannot be unchecked, as Asset record exists against the item","&quot;Is Fixed Asset&quot; ne može biti poništen, jer zapis stavke postoji protiv stavke",
-'Based On' and 'Group By' can not be same,&quot;Temeljeno na&quot; i &quot;Po grupi&quot; ne mogu biti isti,
-'Days Since Last Order' must be greater than or equal to zero,&quot;Dani od zadnjeg naloga&quot; moraju biti veći ili jednaki nuli,
-'Entries' cannot be empty,&quot;Unosi&quot; ne mogu biti prazni,
-'From Date' is required,&quot;Od datuma&quot; je potrebno,
-'From Date' must be after 'To Date',&quot;Od datuma&quot; mora biti nakon &quot;Datum&quot;,
-'Has Serial No' can not be 'Yes' for non-stock item,&quot;Ima serijski broj&quot; ne može biti &quot;Da&quot; za stavku koja nije na zalihama,
-'Opening',&#39;Otvor&#39;,
-'To Case No.' cannot be less than 'From Case No.',&quot;Za slučaj br.&quot; ne može biti manja od &quot;Iz slučaja&quot;,
-'To Date' is required,&quot;Datum&quot; je obavezan,
-'Total',„Ukupna”,
-'Update Stock' can not be checked because items are not delivered via {0},&quot;Ažuriranje zaliha&quot; nije moguće provjeriti jer se stavke ne isporučuju putem {0},
-'Update Stock' cannot be checked for fixed asset sale,&quot;Ažuriranje zaliha&quot; ne može se provjeriti za prodaju fiksne imovine,
+"""Customer Provided Item"" cannot be Purchase Item also",&quot;Kupčev predmet&quot; također ne može biti predmet kupnje,
+"""Customer Provided Item"" cannot have Valuation Rate",&quot;Stavka opskrbljena kupcem&quot; ne može imati stopu vrednovanja,
+"""Is Fixed Asset"" cannot be unchecked, as Asset record exists against the item","""je nepokretna imovina"" se ne može odznačiti, jer postoji zapis o imovini nad navedenom stavkom",
+'Based On' and 'Group By' can not be same,'Temelji se na' i 'Grupiranje po' ne mogu biti isti,
+'Days Since Last Order' must be greater than or equal to zero,'Dani od posljednje narudžbe' mora biti veći ili jednak nuli,
+'Entries' cannot be empty,'Ulazi' ne može biti prazno,
+'From Date' is required,'Od datuma' je potrebno,
+'From Date' must be after 'To Date','Od datuma' mora biti poslije 'Do datuma',
+'Has Serial No' can not be 'Yes' for non-stock item,'Ima serijski broj' ne može biti 'Da' za neskladišne proizvode,
+'Opening',&quot;Otvaranje &#39;,
+'To Case No.' cannot be less than 'From Case No.','Za Predmet br' ne može biti manje od 'Od Predmeta br',
+'To Date' is required,'Do datuma ' je potrebno,
+'Total','Ukupno',
+'Update Stock' can not be checked because items are not delivered via {0},Opcija 'Ažuriraj zalihe' nije dostupna jer stavke nisu dostavljene putem {0},
+'Update Stock' cannot be checked for fixed asset sale,'Ažuriraj zalihe' ne može se provesti na prodaju osnovnog sredstva,
 ) for {0},) za {0},
 1 exact match.,1 točno podudaranje.,
-90-Above,90 Iznad,
-A Customer Group exists with same name please change the Customer name or rename the Customer Group,"Postoji korisnička grupa s istim imenom, promijenite ime klijenta ili promijenite naziv grupe korisnika",
-A Default Service Level Agreement already exists.,Uobičajeni ugovor o razini usluge već postoji.,
-A Lead requires either a person's name or an organization's name,Olovo zahtijeva ili ime osobe ili ime organizacije,
-A customer with the same name already exists,Korisnik s istim nazivom već postoji,
-A question must have more than one options,Pitanje mora imati više od jedne opcije,
-A qustion must have at least one correct options,Pitanje mora imati barem jednu ispravnu opciju,
-A {0} exists between {1} and {2} (,Postoji {0} između {1} i {2} (,
-Abbr can not be blank or space,Abbr ne može biti prazan ili prazan,
-Abbreviation already used for another company,Skraćenica koja se već koristi za drugu tvrtku,
-Abbreviation cannot have more than 5 characters,Skraćenica ne može imati više od 5 znakova,
-Abbreviation is mandatory,Skraćenica je obavezna,
+90-Above,Iznad 90,
+A Customer Group exists with same name please change the Customer name or rename the Customer Group,Postoji grupa kupaca sa istim imenom. Promijenite naziv kupca ili naziv grupe kupaca.,
+A Default Service Level Agreement already exists.,Ugovor o razini usluge već postoji.,
+A Lead requires either a person's name or an organization's name,Voditelj zahtijeva ili ime osobe ili ime organizacije,
+A customer with the same name already exists,Kupac s istim imenom već postoji,
+A question must have more than one options,Pitanje mora imati više opcija,
+A qustion must have at least one correct options,Q qurance mora imati barem jednu ispravnu mogućnost,
+A {0} exists between {1} and {2} (,A {0} postoji između {1} i {2} (,
+Abbr can not be blank or space,Abbr ne može biti prazno ili razmak,
+Abbreviation already used for another company,Naziv već koristi druga tvrtka,
+Abbreviation cannot have more than 5 characters,Kratica ne može imati više od 5 znakova,
+Abbreviation is mandatory,Naziv je obavezan,
 About the Company,O tvrtki,
 About your company,O vašoj tvrtki,
 Above,Iznad,
 Absent,Odsutan,
-Academic Term,Akademski mandat,
-Academic Term: ,Akademski pojam:,
+Academic Term,Akademski pojam,
+Academic Term: ,Akademski naziv:,
 Academic Year,Akademska godina,
 Academic Year: ,Akademska godina:,
-Accepted + Rejected Qty must be equal to Received quantity for Item {0},Prihvaćena + Odbijena količina mora biti jednaka primljenoj količini za stavku {0},
-Accessable Value,Dostupna vrijednost,
+Accepted + Rejected Qty must be equal to Received quantity for Item {0},Količina prihvaćeno + odbijeno mora biti jednaka zaprimljenoj količini proizvoda {0},
+Accessable Value,Pristupačna vrijednost,
 Account,Račun,
 Account Number,Broj računa,
-Account Number {0} already used in account {1},Broj računa {0} je već korišten u računu {1},
-Account Pay Only,Samo plaćanje računa,
+Account Number {0} already used in account {1},Broj računa {0} već se koristi u računu {1},
+Account Pay Only,Račun platiti samo,
 Account Type,Vrsta računa,
 Account Type for {0} must be {1},Vrsta računa za {0} mora biti {1},
-"Account balance already in Credit, you are not allowed to set 'Balance Must Be' as 'Debit'","Stanje na računu već je u Kreditnom računu, ne smijete postaviti &quot;Stanje mora biti&quot; kao &quot;zaduženje&quot;",
-"Account balance already in Debit, you are not allowed to set 'Balance Must Be' as 'Credit'","Stanje na računu već u dugu, nije vam dopušteno postaviti &quot;Stanje mora biti&quot; kao &quot;kredit&quot;",
-Account number for account {0} is not available.<br> Please setup your Chart of Accounts correctly.,Broj računa za račun {0} nije dostupan. <br> Ispravno postavite svoj Kontni plan.,
-Account with child nodes cannot be converted to ledger,Račun s čvorovima za dijete ne može se pretvoriti u knjigu,
-Account with child nodes cannot be set as ledger,Račun s čvorovima za dijete ne može se postaviti kao knjiga,
-Account with existing transaction can not be converted to group.,Račun s postojećom transakcijom ne može se pretvoriti u skupinu.,
+"Account balance already in Credit, you are not allowed to set 'Balance Must Be' as 'Debit'","Stanje računa već u kredit, što se ne smije postaviti 'ravnoteža se mora' kao 'zaduženje """,
+"Account balance already in Debit, you are not allowed to set 'Balance Must Be' as 'Credit'","Stanje računa već u zaduženje, ne smiju postaviti 'ravnoteža se mora' kao 'kreditne'",
+Account number for account {0} is not available.<br> Please setup your Chart of Accounts correctly.,Broj računa za račun {0} nije dostupan. <br> Pravilno postavite svoj računni prikaz.,
+Account with child nodes cannot be converted to ledger,Račun sa podređenim čvorom ne može se pretvoriti u glavnu knjigu,
+Account with child nodes cannot be set as ledger,Račun s djetetom čvorovi se ne može postaviti kao knjiga,
+Account with existing transaction can not be converted to group.,Račun s postojećom transakcijom ne može se pretvoriti u grupu.,
 Account with existing transaction can not be deleted,Račun s postojećom transakcijom ne može se izbrisati,
-Account with existing transaction cannot be converted to ledger,Račun s postojećom transakcijom ne može se pretvoriti u knjigu,
+Account with existing transaction cannot be converted to ledger,Račun s postojećom transakcijom ne može se pretvoriti u glavnu knjigu,
 Account {0} does not belong to company: {1},Račun {0} ne pripada tvrtki: {1},
-Account {0} does not belongs to company {1},Račun {0} ne pripada tvrtki {1},
+Account {0} does not belongs to company {1},Račun {0} ne pripada društvu {1},
 Account {0} does not exist,Račun {0} ne postoji,
 Account {0} does not exists,Račun {0} ne postoji,
-Account {0} does not match with Company {1} in Mode of Account: {2},Račun {0} se ne podudara s tvrtkom {1} u načinu računa: {2},
-Account {0} has been entered multiple times,Račun {0} unesen je više puta,
-Account {0} is added in the child company {1},Račun {0} dodan je u podređenu tvrtku {1},
+Account {0} does not match with Company {1} in Mode of Account: {2},Račun {0} ne odgovara tvrtki {1} u načinu računa: {2},
+Account {0} has been entered multiple times,Račun {0} unesen više puta,
+Account {0} is added in the child company {1},Račun {0} dodaje se u podružnici tvrtke {1},
 Account {0} is frozen,Račun {0} je zamrznut,
 Account {0} is invalid. Account Currency must be {1},Račun {0} je nevažeći. Valuta računa mora biti {1},
-Account {0}: Parent account {1} can not be a ledger,Račun {0}: nadređeni račun {1} ne može biti knjiga,
+Account {0}: Parent account {1} can not be a ledger,Račun {0}: nadređeni račun {1} ne može biti glavna knjiga,
 Account {0}: Parent account {1} does not belong to company: {2},Račun {0}: nadređeni račun {1} ne pripada tvrtki: {2},
 Account {0}: Parent account {1} does not exist,Račun {0}: nadređeni račun {1} ne postoji,
-Account {0}: You can not assign itself as parent account,Račun {0}: Ne možete se dodijeliti kao nadređeni račun,
-Account: {0} can only be updated via Stock Transactions,Račun: {0} može se ažurirati samo putem transakcija dionicama,
-Account: {0} with currency: {1} can not be selected,Račun: {0} s valutom: {1} nije moguće odabrati,
-Accountant,Računovođa,
-Accounting,Računovodstvo,
+Account {0}: You can not assign itself as parent account,Račun {0}: Ne možeš ga dodijeliti kao nadređeni račun,
+Account: {0} can only be updated via Stock Transactions,Račun: {0} može se ažurirati samo preko Stock promet,
+Account: {0} with currency: {1} can not be selected,Račun: {0} s valutom: {1} ne može se odabrati,
+Accountant,Knjigovođa,
+Accounting,Knjigovodstvo,
 Accounting Entry for Asset,Računovodstveni unos za imovinu,
-Accounting Entry for Stock,Računovodstveni unos za dionice,
-Accounting Entry for {0}: {1} can only be made in currency: {2},Računovodstveni unos za {0}: {1} može biti samo u valuti: {2},
-Accounting Ledger,Knjigovodstvena knjiga,
-Accounting entries have already been made in currency {0} for company {1}. Please select a receivable or payable account with currency {0}.,Računovodstveni unosi su već izvršeni u valuti {0} za tvrtku {1}. Odaberite račun potraživanja ili obveze s valutom {0}.,
-Accounting journal entries.,Računovodstveni unosi u dnevnik.,
+Accounting Entry for Stock,Knjiženje na skladištu,
+Accounting Entry for {0}: {1} can only be made in currency: {2},Računovodstvo Ulaz za {0}: {1} može biti samo u valuti: {2},
+Accounting Ledger,Računovodstvo knjiga,
+Accounting journal entries.,Knjigovodstvene temeljnice,
 Accounts,Računi,
-Accounts Payable,Obveze prema dobavljačima,
-Accounts Payable Summary,Sažetak obveza prema računima,
+Accounts Payable,Naplativi računi,
+Accounts Payable Summary,Obveze Sažetak,
 Accounts Receivable,Potraživanja,
-Accounts Receivable Summary,Sažetak potraživanja,
-Accounts table cannot be blank.,Tablica računa ne može biti prazna.,
-Accrual Journal Entry for salaries from {0} to {1},Unos dnevnika obračuna za plaće od {0} do {1},
+Accounts Receivable Summary,Potraživanja Sažetak,
+Accounts table cannot be blank.,Računi stol ne može biti prazno.,
+Accrual Journal Entry for salaries from {0} to {1},Obračunski dnevnik za plaće od {0} do {1},
 Accumulated Depreciation,Akumulirana amortizacija,
-Accumulated Depreciation Amount,Iznos akumulirane amortizacije,
-Accumulated Depreciation as on,Akumulirana amortizacija kao na,
-Accumulated Monthly,Akumulirano Mjesečno,
-Accumulated Values,Akumulirane vrijednosti,
-Accumulated Values in Group Company,Akumulirane vrijednosti u društvu Grupe,
+Accumulated Depreciation Amount,Akumulirana amortizacija iznos,
+Accumulated Depreciation as on,Akumulirana amortizacija na,
+Accumulated Monthly,ukupna mjesečna,
+Accumulated Values,Akumulirani Vrijednosti,
+Accumulated Values in Group Company,Akumulirane vrijednosti u grupi tvrtke,
 Achieved ({}),Postignuto ({}),
-Action,Radnja,
-Action Initialised,Postupak inicijaliziran,
+Action,Akcija,
+Action Initialised,Akcija je pokrenuta,
 Actions,akcije,
 Active,Aktivan,
-Active Leads / Customers,Aktivni vodi / klijenti,
-Activity Cost exists for Employee {0} against Activity Type - {1},Cijena aktivnosti postoji za zaposlenika {0} od vrste aktivnosti - {1},
-Activity Cost per Employee,Trošak aktivnosti po zaposleniku,
-Activity Type,Vrsta aktivnosti,
+Active Leads / Customers,Aktivne ponude / kupce,
+Activity Cost exists for Employee {0} against Activity Type - {1},Aktivnost Trošak postoji zaposlenom {0} protiv tip aktivnosti - {1},
+Activity Cost per Employee,Aktivnost Cijena po zaposlenom,
+Activity Type,Tip aktivnosti,
 Actual Cost,Stvarna cijena,
 Actual Delivery Date,Stvarni datum isporuke,
-Actual Qty,Stvarna količina,
-Actual Qty is mandatory,Stvarna količina je obavezna,
-Actual Qty {0} / Waiting Qty {1},Stvarna količina {0} / količina čekanja {1},
-Actual Qty: Quantity available in the warehouse.,Stvarna količina: količina dostupna u skladištu.,
-Actual qty in stock,Stvarna količina na lageru,
-Actual type tax cannot be included in Item rate in row {0},Porez na stvarnu vrstu ne može biti uključen u brzinu stavke u retku {0},
-Add,Dodati,
+Actual Qty,Stvarna kol,
+Actual Qty is mandatory,Stvarni Količina je obavezno,
+Actual Qty {0} / Waiting Qty {1},Stvarna kol {0} / Na čekanju kol {1},
+Actual Qty: Quantity available in the warehouse.,Stvarna kol: količina dostupna na skladištu.,
+Actual qty in stock,Stvarni kvota na zalihi,
+Actual type tax cannot be included in Item rate in row {0},Stvarni tipa porez ne može biti uključen u stopu stavka u nizu {0},
+Add,Dodaj,
 Add / Edit Prices,Dodaj / uredi cijene,
 Add All Suppliers,Dodaj sve dobavljače,
 Add Comment,Dodaj komentar,
-Add Customers,Dodajte klijente,
-Add Employees,Dodaj zaposlenike,
-Add Item,Dodaj Predmet,
-Add Items,Dodaj stavke,
+Add Customers,Dodaj korisnike,
+Add Employees,Dodavanje zaposlenika,
+Add Item,Dodaj stavku,
+Add Items,Dodaj artikle,
 Add Leads,Dodaj vodi,
 Add Multiple Tasks,Dodaj više zadataka,
-Add Row,Dodaj redak,
-Add Sales Partners,Dodajte prodajne partnere,
+Add Row,Dodaj Row,
+Add Sales Partners,Dodajte partnere za prodaju,
 Add Serial No,Dodaj serijski broj,
 Add Students,Dodaj studente,
-Add Suppliers,Dodaj dobavljače,
-Add Time Slots,Dodajte vremenske utore,
-Add Timesheets,Dodajte timesheets,
-Add Timeslots,Dodaj vremenske točke,
+Add Suppliers,Dodajte dobavljače,
+Add Time Slots,Dodaj vrijeme,
+Add Timesheets,Dodaj timesheets,
+Add Timeslots,Dodaj vremenske brojeve,
 Add Users to Marketplace,Dodajte korisnike na tržište,
 Add a new address,Dodaj novu adresu,
 Add cards or custom sections on homepage,Dodajte kartice ili prilagođene odjeljke na početnu stranicu,
-Add more items or open full form,Dodajte još stavki ili otvorite puni obrazac,
+Add more items or open full form,Dodaj još stavki ili otvoriti puni oblik,
 Add notes,Dodajte bilješke,
-Add the rest of your organization as your users. You can also add invite Customers to your portal by adding them from Contacts,Dodajte ostatak organizacije kao svoje korisnike. Također možete dodati pozovite klijente na svoj portal dodavanjem iz kontakata,
+Add the rest of your organization as your users. You can also add invite Customers to your portal by adding them from Contacts,Dodajte ostatak svoje organizacije kao svoje korisnike. Također možete dodati pozvati kupce da svoj portal dodajući ih iz Kontakata,
 Add to Details,Dodaj u pojedinosti,
-Add/Remove Recipients,Dodavanje / uklanjanje primatelja,
+Add/Remove Recipients,Dodaj / ukloni primatelja,
 Added,dodano,
 Added to details,Dodano detaljima,
 Added {0} users,Dodano je {0} korisnika,
-Additional Salary Component Exists.,Postoji dodatna komponenta plaća.,
+Additional Salary Component Exists.,Postoje dodatne komponente plaće.,
 Address,Adresa,
-Address Line 2,Redak adrese 2,
-Address Name,Naziv adrese,
-Address Title,Naslov adrese,
-Address Type,vrsta adrese,
+Address Line 2,Adresa - linija 2,
+Address Name,adresa Ime,
+Address Title,Naziv adrese,
+Address Type,Tip adrese,
 Administrative Expenses,Administrativni troškovi,
-Administrative Officer,Upravni službenik,
+Administrative Officer,Administrativni službenik,
+Administrator,Upravitelj,
 Admission,ulaz,
-Admission and Enrollment,Prijem i upis,
-Admissions for {0},Prijave za {0},
+Admission and Enrollment,Upis i upis,
+Admissions for {0},Upisi za {0},
 Admit,Priznati,
 Admitted,priznao,
-Advance Amount,Iznos unaprijed,
-Advance Payments,Unaprijedna plaćanja,
-Advance account currency should be same as company currency {0},Valuta računa unaprijed trebala bi biti ista kao i valuta tvrtke {0},
-Advance amount cannot be greater than {0} {1},Iznos unaprijed ne može biti veći od {0} {1},
+Advance Amount,Iznos predujma,
+Advance Payments,Avansima,
+Advance account currency should be same as company currency {0},Valuta unaprijed računa mora biti jednaka valuti tvrtke {0},
+Advance amount cannot be greater than {0} {1},Advance iznos ne može biti veći od {0} {1},
 Advertising,Oglašavanje,
 Aerospace,zračno-kosmički prostor,
 Against,Protiv,
 Against Account,Protiv računa,
-Against Journal Entry {0} does not have any unmatched {1} entry,Protiv unosa dnevnika {0} nema nijedan neusporediv {1} unos,
-Against Journal Entry {0} is already adjusted against some other voucher,Protiv unosa dnevnika {0} već je podešen prema nekom drugom bonu,
-Against Supplier Invoice {0} dated {1},Protiv fakture dobavljača {0} s datumom {1},
-Against Voucher,Protiv bonova,
-Against Voucher Type,Protiv vrste vaučera,
-Age,Dob,
-Age (Days),Dob (Dani),
-Ageing Based On,Starenje na temelju,
-Ageing Range 1,Raspon starenja 1,
-Ageing Range 2,Raspon starenja 2,
-Ageing Range 3,Raspon starenja 3,
+Against Journal Entry {0} does not have any unmatched {1} entry,Protiv Temeljnica {0} nema premca {1} unos,
+Against Journal Entry {0} is already adjusted against some other voucher,Protiv Temeljnica {0} već usklađuje se neki drugi bon,
+Against Supplier Invoice {0} dated {1},Protiv dobavljača Račun {0} datira {1},
+Against Voucher,Protiv Voucheru,
+Against Voucher Type,Protiv voucher vrsti,
+Age,Doba,
+Age (Days),Starost (dani),
+Ageing Based On,Starenje temelju On,
+Ageing Range 1,Starenje Raspon 1,
+Ageing Range 2,Starenje Raspon 2,
+Ageing Range 3,Starenje Raspon 3,
 Agriculture,Poljoprivreda,
 Agriculture (beta),Poljoprivreda (beta),
 Airline,aviokompanija,
 All Accounts,Svi računi,
 All Addresses.,Sve adrese.,
-All Assessment Groups,Sve skupine za procjenu,
-All BOMs,Sve sastavnice,
+All Assessment Groups,Sve grupe za procjenu,
+All BOMs,Svi Sastavnice,
 All Contacts.,Svi kontakti.,
-All Customer Groups,Sve korisničke grupe,
-All Day,Cijeli dan,
+All Customer Groups,Sve grupe kupaca,
+All Day,Svaki dan,
 All Departments,Svi odjeli,
-All Healthcare Service Units,Sve jedinice zdravstvene službe,
-All Item Groups,Sve grupe stavki,
+All Healthcare Service Units,Sve zdravstvene usluge,
+All Item Groups,Sve skupine proizvoda,
 All Jobs,Svi poslovi,
 All Products,Svi proizvodi,
-All Products or Services.,Svi proizvodi ili usluge.,
-All Student Admissions,Sve studentske prijave,
+All Products or Services.,Svi proizvodi i usluge.,
+All Student Admissions,Svi Studentski Upisi,
 All Supplier Groups,Sve grupe dobavljača,
-All Supplier scorecards.,Sve kartice dobavljača.,
+All Supplier scorecards.,Sve ocjene bodova dobavljača.,
 All Territories,Sve teritorije,
 All Warehouses,Svi skladišta,
-All communications including and above this shall be moved into the new Issue,Sva komunikacija koja uključuje i iznad toga bit će premještena u novo izdanje,
-All items have already been invoiced,Sve su stavke već fakturirane,
-All items have already been transferred for this Work Order.,Sve stavke su već prenesene za ovaj radni nalog.,
+All communications including and above this shall be moved into the new Issue,Sve komunikacije uključujući i iznad toga bit će premještene u novi Izdanje,
+All items have already been invoiced,Svi proizvodi su već fakturirani,
+All items have already been transferred for this Work Order.,Sve su stavke već prenesene za ovu radnu narudžbu.,
 All other ITC,Svi ostali ITC,
-All the mandatory Task for employee creation hasn't been done yet.,Sva obavezna zadaća za kreiranje zaposlenika još nije učinjena.,
-All these items have already been invoiced,Sve su te stavke već fakturirane,
-Allocate Payment Amount,Dodijelite iznos plaćanja,
+All the mandatory Task for employee creation hasn't been done yet.,Sve obvezne zadaće za stvaranje zaposlenika još nisu učinjene.,
+All these items have already been invoiced,Svi ovi proizvodi su već fakturirani,
+Allocate Payment Amount,Dodjela iznos otplate,
 Allocated Amount,Dodijeljeni iznos,
-Allocated Leaves,Dodijeljeni listovi,
-Allocating leaves...,Dodjeljivanje listova ...,
+Allocated Leaves,Dodijeljene lišće,
+Allocating leaves...,Dodjeljivanje lišća ...,
 Already record exists for the item {0},Već postoji zapis za stavku {0},
-"Already set default in pos profile {0} for user {1}, kindly disabled default","Već ste postavili default u pos profilu {0} za korisnika {1}, ljubazno onemogućili zadanu postavku",
+"Already set default in pos profile {0} for user {1}, kindly disabled default","Već ste postavili zadani položaj u poziciji {0} za korisnika {1}, zadovoljavajući zadane postavke",
 Alternate Item,Alternativna stavka,
-Alternative item must not be same as item code,Alternativna stavka ne smije biti ista kao i kod stavke,
+Alternative item must not be same as item code,Alternativna stavka ne smije biti jednaka kodu stavke,
 Amount,Iznos,
 Amount After Depreciation,Iznos nakon amortizacije,
 Amount of Integrated Tax,Iznos integriranog poreza,
-Amount of TDS Deducted,Iznos TDS-a odbijen,
+Amount of TDS Deducted,Iznos TDS Deducted,
 Amount should not be less than zero.,Iznos ne smije biti manji od nule.,
-Amount to Bill,Iznos za Bill,
-Amount {0} {1} against {2} {3},Iznos {0} {1} u odnosu na {2} {3},
-Amount {0} {1} deducted against {2},Iznos {0} {1} odbijen od {2},
+Amount to Bill,Iznositi Billa,
+Amount {0} {1} against {2} {3},Iznos {0} {1} od {2} {3},
+Amount {0} {1} deducted against {2},Iznos {0} {1} oduzimaju od {2},
 Amount {0} {1} transferred from {2} to {3},Iznos {0} {1} prenesen iz {2} u {3},
 Amount {0} {1} {2} {3},Iznos {0} {1} {2} {3},
 Amt,Amt,
-"An Item Group exists with same name, please change the item name or rename the item group","Grupa proizvoda postoji s istim imenom, promijenite naziv stavke ili preimenujte grupu stavki",
-An academic term with this 'Academic Year' {0} and 'Term Name' {1} already exists. Please modify these entries and try again.,Akademski pojam s ovom &quot;akademskom godinom&quot; {0} i &quot;Naziv termina&quot; {1} već postoji. Izmijenite te unose i pokušajte ponovno.,
+"An Item Group exists with same name, please change the item name or rename the item group","Stavka Grupa postoji s istim imenom , molimo promijenite ime stavku ili preimenovati stavku grupe",
+An academic term with this 'Academic Year' {0} and 'Term Name' {1} already exists. Please modify these entries and try again.,Akademska termina s ovim &#39;akademske godine&#39; {0} i &quot;Pojam Ime &#39;{1} već postoji. Molimo izmijeniti ove stavke i pokušati ponovno.,
 An error occurred during the update process,Došlo je do pogreške tijekom postupka ažuriranja,
-"An item exists with same name ({0}), please change the item group name or rename the item","Stavka postoji s istim imenom ({0}), promijenite naziv grupe stavki ili preimenujte stavku",
+"An item exists with same name ({0}), please change the item group name or rename the item","Stavka postoji s istim imenom ( {0} ) , molimo promijenite ime stavku grupe ili preimenovati stavku",
 Analyst,Analitičar,
 Analytics,Analitika,
-Annual Billing: {0},Godišnja naplata: {0},
+Annual Billing: {0},Godišnji naplatu: {0},
 Annual Salary,Godišnja plaća,
 Anonymous,anoniman,
-Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Drugi proračunski zapis &quot;{0}&quot; već postoji za {1} &#39;{2}&#39; i račun &#39;{3}&#39; za fiskalnu godinu {4},
-Another Period Closing Entry {0} has been made after {1},Nakon {1} izvršen je drugi unos zatvaranja razdoblja {0},
-Another Sales Person {0} exists with the same Employee id,Druga prodajna osoba {0} postoji s istim ID-om zaposlenika,
+Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Još jedan proračunski zapis &#39;{0}&#39; već postoji za {1} &#39;{2}&#39; i račun &#39;{3}&#39; za fiskalnu godinu {4},
+Another Period Closing Entry {0} has been made after {1},Drugi period Zatvaranje Stupanje {0} je postignut nakon {1},
+Another Sales Person {0} exists with the same Employee id,Još jedna prodaja Osoba {0} postoji s istim ID zaposlenika,
 Antibiotic,Antibiotik,
-Apparel & Accessories,Odjeća i pribor,
+Apparel & Accessories,Odjeća i modni dodaci,
 "Applicable if the company is SpA, SApA or SRL","Primjenjivo ako je tvrtka SpA, SApA ili SRL",
-Applicable if the company is a limited liability company,Primjenjivo ako je društvo društvo s ograničenom odgovornošću,
-Applicable if the company is an Individual or a Proprietorship,Primjenjivo ako je tvrtka pojedinac ili vlasništvo,
+Applicable if the company is a limited liability company,Primjenjivo ako je društvo s ograničenom odgovornošću,
+Applicable if the company is an Individual or a Proprietorship,Primjenjivo ako je tvrtka fizička osoba ili vlasništvo,
 Applicant,podnositelj zahtjeva,
-Applicant Type,Tip podnositelja,
-Application of Funds (Assets),Primjena sredstava (imovine),
-Application period cannot be across two allocation records,Razdoblje primjene ne može biti na dvije zapise o dodjeli,
-Application period cannot be outside leave allocation period,Razdoblje prijave ne može biti izvan razdoblja dodjele dopusta,
+Applicant Type,Vrsta podnositelja zahtjeva,
+Application of Funds (Assets),Primjena sredstava ( aktiva ),
+Application period cannot be across two allocation records,Razdoblje primjene ne može se nalaziti na dva zapisa o dodjeli,
+Application period cannot be outside leave allocation period,Razdoblje prijava ne može biti izvan dopusta raspodjele,
 Applied,primijenjen,
 Apply Now,Primijeni sada,
-Appointment Analytics,Analytics za imenovanje,
-Appointment Confirmation,Potvrda sastanka,
+Appointment Confirmation,Potvrda imenovanja,
 Appointment Duration (mins),Trajanje sastanka (min),
-Appointment Type,Vrsta sastanka,
-Appointment cancelled,Sastanak je otkazan,
-"Appointment cancelled, Please review and cancel the invoice {0}","Sastanak je otkazan, pregledajte i poništite dostavnicu {0}",
-Appointment {0} and Sales Invoice {1} cancelled,Sastanak {0} i dostavnica-faktura {1} otkazana,
-Appointments and Encounters,Sastanci i susreti,
-Appointments and Patient Encounters,Sastanci i susreti s pacijentima,
-Appraisal {0} created for Employee {1} in the given date range,Procjena {0} izrađena za zaposlenika {1} u danom razdoblju,
-Apprentice,Učenik,
-Approval Status must be 'Approved' or 'Rejected',Status odobrenja mora biti &quot;odobren&quot; ili &quot;odbijen&quot;,
+Appointment Type,Vrsta imenovanja,
+Appointment {0} and Sales Invoice {1} cancelled,Imenovanje {0} i prodajna faktura {1} otkazani su,
+Appointments and Encounters,Imenovanja i susreti,
+Appointments and Patient Encounters,Imenovanja i susreta pacijenata,
+Appraisal {0} created for Employee {1} in the given date range,Procjena {0} stvorena za zaposlenika {1} u određenom razdoblju,
+Apprentice,šegrt,
+Approval Status must be 'Approved' or 'Rejected',"Status Odobrenje mora biti ""Odobreno"" ili "" Odbijeno """,
 Approve,Odobriti,
-Approving Role cannot be same as role the rule is Applicable To,Uloga odobravanja ne može biti ista kao uloga za koju se primjenjuje,
-Approving User cannot be same as user the rule is Applicable To,Odobravanje korisnika ne može biti isto kao što je pravilo koje se primjenjuje na,
-"Apps using current key won't be able to access, are you sure?","Aplikacije koje koriste trenutni ključ neće moći pristupiti, jeste li sigurni?",
-Are you sure you want to cancel this appointment?,Jeste li sigurni da želite otkazati taj sastanak?,
+Approving Role cannot be same as role the rule is Applicable To,Odobravanje ulogu ne mogu biti isti kao i ulogepravilo odnosi se na,
+Approving User cannot be same as user the rule is Applicable To,Odobravanje korisnik ne može biti isto kao korisnikapravilo odnosi se na,
+"Apps using current key won't be able to access, are you sure?","Aplikacije pomoću trenutnog ključa neće moći pristupiti, jeste li sigurni?",
+Are you sure you want to cancel this appointment?,Jeste li sigurni da želite otkazati ovaj termin?,
 Arrear,Zaostatak,
 As Examiner,Kao ispitivač,
-As On Date,Kao na datum,
+As On Date,Kao i na datum,
 As Supervisor,Kao supervizor,
-As per rules 42 & 43 of CGST Rules,Prema pravilima 42 i 43 Pravila CGST-a,
-As per section 17(5),Po stavku 17 (5),
-"As per the Buying Settings if Purchase Order Required == 'YES', then for creating Purchase Invoice, user need to create Purchase Order first for item {0}","Prema postavkama za kupnju ako je potrebna narudžbenica == &#39;DA&#39;, tada za izradu fakture kupnje korisnik mora najprije izraditi narudžbenicu za stavku {0}",
-"As per the Buying Settings if Purchase Reciept Required == 'YES', then for creating Purchase Invoice, user need to create Purchase Receipt first for item {0}","Prema postavkama za kupnju ako je potrebna kupnja == &quot;DA&quot;, tada za izradu fakture kupnje korisnik mora najprije izraditi potvrdu o kupnji za stavku {0}",
-As per your assigned Salary Structure you cannot apply for benefits,Prema Vašoj dodijeljenoj strukturi plaća ne možete podnijeti zahtjev za povlastice,
+As per rules 42 & 43 of CGST Rules,Prema pravilima 42 i 43 CGST pravila,
+As per section 17(5),Prema odjeljku 17 (5),
+As per your assigned Salary Structure you cannot apply for benefits,Prema vašoj dodijeljenoj Strukturi plaća ne možete podnijeti zahtjev za naknadu,
 Assessment,procjena,
-Assessment Criteria,Kriteriji ocjenjivanja,
-Assessment Group,Grupa za procjenu,
+Assessment Criteria,Kriteriji za ocjenjivanje,
+Assessment Group,Grupa procjena,
 Assessment Group: ,Grupa za procjenu:,
-Assessment Plan,Plan procjene,
+Assessment Plan,plan Procjena,
 Assessment Plan Name,Naziv plana procjene,
-Assessment Report,Izvješće o ocjeni,
+Assessment Report,Izvješće o procjeni,
 Assessment Reports,Izvješća o procjeni,
-Assessment Result,Rezultat ocjenjivanja,
-Assessment Result record {0} already exists.,Procjena Rezultat zapisa {0} već postoji.,
-Asset,Imovina,
+Assessment Result,Rezultat Procjena,
+Assessment Result record {0} already exists.,Zapis ocjena rezultata {0} već postoji.,
+Asset,Imovina (Aktiva),
 Asset Category,Kategorija imovine,
-Asset Category is mandatory for Fixed Asset item,Kategorija imovine obavezna je za stavku Fiksni materijal,
+Asset Category is mandatory for Fixed Asset item,Asset Kategorija je obvezna za nepokretnu stavke imovine,
 Asset Maintenance,Održavanje imovine,
-Asset Movement,Pokret imovine,
-Asset Movement record {0} created,Zapis pokreta snimljenog materijala {0} je izrađen,
-Asset Name,Naziv naziva,
-Asset Received But Not Billed,"Imovina primljena, ali ne naplaćena",
-Asset Value Adjustment,Prilagodba vrijednosti imovine,
-"Asset cannot be cancelled, as it is already {0}",Sredstvo se ne može otkazati jer je već {0},
-Asset scrapped via Journal Entry {0},Imovina ukinuta putem unosa dnevnika {0},
-"Asset {0} cannot be scrapped, as it is already {1}",Svojstvo {0} ne može biti ukinuto jer je već {1},
-Asset {0} does not belong to company {1},Svojstvo {0} ne pripada tvrtki {1},
-Asset {0} must be submitted,Imovina {0} mora biti poslana,
+Asset Movement,imovina pokret,
+Asset Movement record {0} created,Unos imovine Pokret {0} stvorio,
+Asset Name,Naziv imovinom,
+Asset Received But Not Billed,Imovina primljena ali nije naplaćena,
+Asset Value Adjustment,Podešavanje vrijednosti imovine,
+"Asset cannot be cancelled, as it is already {0}","Imovina se ne može otkazati, jer je već {0}",
+Asset scrapped via Journal Entry {0},Imovine otpisan putem Temeljnica {0},
+"Asset {0} cannot be scrapped, as it is already {1}","Imovina {0} ne može biti otpisan, kao što je već {1}",
+Asset {0} does not belong to company {1},Imovina {0} ne pripada društvu {1},
+Asset {0} must be submitted,Imovina {0} mora biti predana,
 Assets,Imovina,
 Assign,Dodijeliti,
-Assign Salary Structure,Dodijelite strukturu plaća,
-Assign to Employees,Dodijeli zaposlenicima,
-Assigning Structures...,Dodjela struktura ...,
-Associate,Suradnik,
-At least one mode of payment is required for POS invoice.,Za POS račun potrebno je barem jedan način plaćanja.,
-Atleast one item should be entered with negative quantity in return document,"U najmanju ruku, jedna stavka se unosi s negativnom količinom u povratnom dokumentu",
-Atleast one of the Selling or Buying must be selected,"U svakom slučaju, mora se odabrati jedna od prodaja ili kupnja",
-Atleast one warehouse is mandatory,U najmanju ruku jedno skladište je obvezno,
-Attach Logo,Priloži logotip,
-Attachments,Prilozi,
+Assign Salary Structure,Dodijeli Strukturu plaće,
+Assign to Employees,Dodijeliti zaposlenicima,
+Assigning Structures...,Dodjeljivanje struktura ...,
+Associate,pomoćnik,
+At least one mode of payment is required for POS invoice.,potreban je najmanje jedan način plaćanja za POS računa.,
+Atleast one item should be entered with negative quantity in return document,Atleast jedan predmet treba upisati s negativnim količinama u povratnom dokumentu,
+Atleast one of the Selling or Buying must be selected,Barem jedan od prodajete ili kupujete mora biti odabran,
+Atleast one warehouse is mandatory,Atleast jednom skladištu je obavezno,
+Attach Logo,Pričvrstite Logo,
+Attachments,Privitci,
 Attendance,pohađanje,
-Attendance From Date and Attendance To Date is mandatory,Sudjelovanje od datuma i nazočnosti do datuma je obavezno,
-Attendance Record {0} exists against Student {1},Zapis o prisustvu {0} postoji protiv studenta {1},
-Attendance can not be marked for future dates,Sudionici ne mogu biti označeni za buduće datume,
-Attendance date can not be less than employee's joining date,Datum nazočnosti ne može biti manji od datuma pridruživanja zaposlenika,
-Attendance for employee {0} is already marked,Sudjelovanje zaposlenika {0} već je označeno,
-Attendance for employee {0} is already marked for this day,Sudjelovanje zaposlenika {0} već je označeno za ovaj dan,
-Attendance has been marked successfully.,Sudjelovanje je uspješno označeno.,
-Attendance not submitted for {0} as it is a Holiday.,Sudjelovanje nije poslano na {0} jer je to praznik.,
-Attendance not submitted for {0} as {1} on leave.,Sudjelovanje nije poslano na {0} kao {1} na odsustvu.,
-Attribute table is mandatory,Tablica atributa je obavezna,
-Attribute {0} selected multiple times in Attributes Table,Atribut {0} odabran više puta u tablici atributa,
+Attendance From Date and Attendance To Date is mandatory,Gledanost od datuma do datuma je obvezna,
+Attendance Record {0} exists against Student {1},Gledatelja Zapis {0} ne postoji protiv Student {1},
+Attendance can not be marked for future dates,Gledatelji ne može biti označena za budući datum,
+Attendance date can not be less than employee's joining date,Datum Gledatelji ne može biti manja od ulaska datuma zaposlenika,
+Attendance for employee {0} is already marked,Gledatelja za zaposlenika {0} već označen,
+Attendance for employee {0} is already marked for this day,Gledatelja za zaposlenika {0} već označena za ovaj dan,
+Attendance has been marked successfully.,Sudjelovanje je uspješno označen.,
+Attendance not submitted for {0} as it is a Holiday.,Sudjelovanje nije poslano za {0} kao što je blagdan.,
+Attendance not submitted for {0} as {1} on leave.,Sudjelovanje nije poslano za {0} kao {1} na dopustu.,
+Attribute table is mandatory,Osobina stol je obavezno,
+Attribute {0} selected multiple times in Attributes Table,Osobina {0} izabrani više puta u Svojstva tablice,
 Authorized Signatory,Ovlašteni potpisnik,
-Auto Material Requests Generated,Generirani su automatski zahtjevi materijala,
-Auto repeat document updated,Ažuriran je dokument s automatskim ponavljanjem,
-Automotive,automobilski,
+Auto Material Requests Generated,Automatski zahtjev za materijalom odobren,
+Auto repeat document updated,Ažurira se automatski ponavljanje dokumenta,
+Automotive,Automobilska industrija,
 Available,Dostupno,
-Available Leaves,Dostupni listovi,
-Available Qty,Dostupno Kol,
+Available Leaves,Dostupni lišće,
+Available Qty,Dostupno Količina,
 Available Selling,Dostupna prodaja,
-Available for use date is required,Potreban je datum dostupnosti za uporabu,
-Available slots,Dostupna mjesta,
+Available for use date is required,Dostupan je za datum upotrebe,
+Available slots,Dostupni utori,
 Available {0},Dostupno {0},
-Available-for-use Date should be after purchase date,Datum dostupnosti za uporabu trebao bi biti nakon datuma kupnje,
-Average Age,Prosječna dob,
+Available-for-use Date should be after purchase date,Datum dostupan za upotrebu trebao bi biti nakon datuma kupnje,
+Average Age,Prosječna starost,
 Average Rate,Prosječna stopa,
-Avg Daily Outgoing,Prosječno dnevno odlazno,
-Avg. Buying Price List Rate,Prosječni. Cijena kupnje cjenika,
-Avg. Selling Price List Rate,Prosječni. Cijena prodajne cijene,
-Avg. Selling Rate,Prosječni. Stopa prodaje,
+Avg Daily Outgoing,Prosječni dnevni izlaz,
+Avg. Buying Price List Rate,Prosječni. Stopa popisa cjenika,
+Avg. Selling Price List Rate,Prosječni. Prodajni cjenovni popisi,
+Avg. Selling Rate,Prosječna prodajna cijena,
 BOM,BOM,
-BOM #{0}: Raw material cannot be same as main Item,BOM # {0}: sirovina ne može biti ista kao glavna stavka,
 BOM Browser,BOM preglednik,
-BOM No,BOM br,
-BOM Rate,Brzina sastavnice,
-BOM Stock Report,BOM izvješće o zalihama,
-BOM and Manufacturing Quantity are required,Sastavnica i količina proizvodnje su potrebne,
-BOM does not contain any stock item,Sastav ne sadrži nijednu stavku zaliha,
-BOM {0} does not belong to Item {1},BOM {0} ne pripada stavci {1},
-BOM {0} must be active,Sastavnica {0} mora biti aktivna,
-BOM {0} must be submitted,Potrebno je poslati BOM {0},
+BOM No,BOM br.,
+BOM Rate,BOM stopa,
+BOM Stock Report,BOM Stock Report,
+BOM and Manufacturing Quantity are required,BOM i proizvodnja Količina potrebne su,
+BOM does not contain any stock item,BOM ne sadrži bilo koji zaliha stavku,
+BOM {0} does not belong to Item {1},BOM {0} ne pripada Točki {1},
+BOM {0} must be active,BOM {0} mora biti aktivna,
+BOM {0} must be submitted,BOM {0} mora biti podnesen,
 Balance,ravnoteža,
 Balance (Dr - Cr),Stanje (Dr - Cr),
 Balance ({0}),Stanje ({0}),
-Balance Qty,Količina bilance,
-Balance Sheet,Bilanca,
+Balance Qty,Bilanca kol,
+Balance Sheet,Završni račun,
 Balance Value,Vrijednost bilance,
-Balance for Account {0} must always be {1},Stanje za račun {0} mora uvijek biti {1},
+Balance for Account {0} must always be {1},Bilanca računa {0} uvijek mora biti {1},
 Bank,Banka,
-Bank Account,Bankovni račun,
+Bank Account,Žiro račun,
 Bank Accounts,Bankovni računi,
-Bank Draft,Nacrt banke,
-Bank Entries,Bankovni unosi,
-Bank Name,Ime banke,
-Bank Overdraft Account,Račun prekoračenja banaka,
-Bank Reconciliation,Bankovno pomirenje,
-Bank Reconciliation Statement,Izjava o bankovnom usklađivanju,
-Bank Statement,Bankovni izvadak,
+Bank Draft,Bank Nacrt,
+Bank Entries,Bankovni tekstova,
+Bank Name,Naziv banke,
+Bank Overdraft Account,Bank Prekoračenje računa,
+Bank Reconciliation,Banka pomirenje,
+Bank Reconciliation Statement,Izjava banka pomirenja,
+Bank Statement,Izjava banke,
 Bank Statement Settings,Postavke bankovnog izvoda,
-Bank Statement balance as per General Ledger,Bilanca bankovnog računa prema glavnoj knjizi,
+Bank Statement balance as per General Ledger,Banka Izjava stanje po glavnom knjigom,
 Bank account cannot be named as {0},Bankovni račun ne može biti imenovan kao {0},
-Bank/Cash transactions against party or for internal transfer,Banke / Gotovinske transakcije protiv stranke ili za interni prijenos,
+Bank/Cash transactions against party or for internal transfer,Banka / Novac transakcije protiv stranke ili za internog transfera,
 Banking,Bankarstvo,
-Banking and Payments,Bankarstvo i plaćanja,
-Barcode {0} already used in Item {1},Barkod {0} je već korišten u stavci {1},
-Barcode {0} is not a valid {1} code,Barkod {0} nije važeći kôd {1},
+Banking and Payments,Bankarstvo i plaćanje,
+Barcode {0} already used in Item {1},Barkod {0} se već koristi u proizvodu {1},
+Barcode {0} is not a valid {1} code,Barcode {0} nije važeći kôd {1},
 Base,Baza,
 Based On,Na temelju,
 Based On Payment Terms,Na temelju uvjeta plaćanja,
-Basic,"Osnovni, temeljni",
+Basic,Osnovni,
 Batch,serija,
-Batch Entries,Skupni unosi,
-Batch ID is mandatory,ID serije je obavezan,
-Batch Inventory,Inventar serije,
-Batch Name,Naziv serije,
-Batch No,Serijski br,
-Batch number is mandatory for Item {0},Broj serije obavezan je za stavku {0},
-Batch {0} of Item {1} has expired.,Serija {0} stavke {1} je istekla.,
-Batch {0} of Item {1} is disabled.,Paket {0} stavke {1} je onemogućen.,
+Batch Entries,Ulazne serije,
+Batch ID is mandatory,ID serije obvezan je,
+Batch Inventory,Hrpa Inventar,
+Batch Name,Batch Name,
+Batch No,Broj serije,
+Batch number is mandatory for Item {0},Batch broj je obvezna za točku {0},
+Batch {0} of Item {1} has expired.,Hrpa {0} od {1} Stavka je istekla.,
+Batch {0} of Item {1} is disabled.,Šifra {0} stavke {1} onemogućena je.,
 Batch: ,serija:,
 Batches,serije,
 Become a Seller,Postanite prodavač,
 Bill,Račun,
-Bill Date,Datum računa,
-Bill No,Bill No,
-Bill of Materials,Materijal,
-Bill of Materials (BOM),Sastavnica (BOM),
-Billable Hours,Naplativi sati,
+Bill Date,Bill Datum,
+Bill No,Bill Ne,
+Bill of Materials,Bill of Materials,
+Bill of Materials (BOM),Sastavnice (BOM),
+Billable Hours,Sati naplate,
 Billed,naplaćeno,
 Billed Amount,Naplaćeni iznos,
 Billing,Naplata,
 Billing Address,Adresa za naplatu,
-Billing Address is same as Shipping Address,Adresa za naplatu jednaka je adresi dostave,
-Billing Amount,Iznos naplate,
+Billing Address is same as Shipping Address,Adresa za naplatu jednaka je adresi za dostavu,
+Billing Amount,Naplata Iznos,
 Billing Status,Status naplate,
-Billing currency must be equal to either default company's currency or party account currency,Valuta za naplatu mora biti jednaka zadanoj valuti tvrtke ili valuti računa stranke,
-Bills raised by Suppliers.,Računi koje prikupljaju dobavljači.,
-Bills raised to Customers.,Računi podignuti kupcima.,
+Billing currency must be equal to either default company's currency or party account currency,Valuta naplate mora biti jednaka valutnoj valuti ili valuti stranke računa tvrtke,
+Bills raised by Suppliers.,Mjenice podigao dobavljače.,
+Bills raised to Customers.,Mjenice podignuta na kupce.,
 Biotechnology,Biotehnologija,
 Birthday Reminder,Podsjetnik za rođendan,
-Black,Crno,
-Blanket Orders from Costumers.,Narudžbe od kupaca.,
-Block Invoice,Blokiranje računa,
+Black,Crna,
+Blanket Orders from Costumers.,Deke narudžbe kupaca.,
+Block Invoice,Blokirajte fakturu,
 Boms,sastavnice,
-Bonus Payment Date cannot be a past date,Datum plaćanja bonusa ne može biti prošli datum,
-Both Trial Period Start Date and Trial Period End Date must be set,Moraju se postaviti i početni datum probnog razdoblja i datum probnog razdoblja,
+Bonus Payment Date cannot be a past date,Datum plaćanja bonusa ne može biti posljednji datum,
+Both Trial Period Start Date and Trial Period End Date must be set,Moraju biti postavljeni datum početka datuma probnog razdoblja i datum završetka probnog razdoblja,
 Both Warehouse must belong to same Company,Oba skladišta moraju pripadati istoj tvrtki,
 Branch,grana,
 Broadcasting,radiodifuzija,
 Brokerage,posredništvo,
-Browse BOM,Pregledajte BOM,
+Browse BOM,Pretraživanje BOM,
 Budget Against,Proračun protiv,
 Budget List,Popis proračuna,
-Budget Variance Report,Izvješće o odstupanju proračuna,
-Budget cannot be assigned against Group Account {0},Proračun se ne može dodijeliti grupi računa {0},
-"Budget cannot be assigned against {0}, as it's not an Income or Expense account",Proračun se ne može dodijeliti prema {0} jer nije račun prihoda ili rashoda,
+Budget Variance Report,Proračun varijance Prijavi,
+Budget cannot be assigned against Group Account {0},Proračun se ne može dodijeliti protiv grupe nalog {0},
+"Budget cannot be assigned against {0}, as it's not an Income or Expense account","Proračun se ne može dodijeliti protiv {0}, kao što je nije prihod ili rashod račun",
 Buildings,Građevine,
-Bundle items at time of sale.,U paketu stavke u vrijeme prodaje.,
+Bundle items at time of sale.,Hrpa proizvoda u vrijeme prodaje.,
 Business Development Manager,Voditelj razvoja poslovanja,
 Buy,Kupiti,
-Buying,kupovina,
+Buying,Nabava,
 Buying Amount,Iznos kupnje,
-Buying Price List,Kupnja cjenika,
+Buying Price List,Cjenik kupnje,
 Buying Rate,Stopa kupnje,
-"Buying must be checked, if Applicable For is selected as {0}","Kupnja mora biti označena, ako je primjenjivo za odabrano kao {0}",
+"Buying must be checked, if Applicable For is selected as {0}","Nabava mora biti provjerena, ako je primjenjivo za odabrano kao {0}",
 By {0},Do {0},
-Bypass credit check at Sales Order ,Zaobiđite kreditnu provjeru u prodajnom nalogu,
-C-Form records,Zapisi C-Forma,
-C-form is not applicable for Invoice: {0},C-obrazac nije primjenjiv za dostavnicu: {0},
-CEO,direktor tvrtke,
+Bypass credit check at Sales Order ,Zaobilaženje kreditne provjere na prodajnom nalogu,
+C-Form records,C-obrazac zapisi,
+C-form is not applicable for Invoice: {0},C-oblika nije primjenjiv za fakture: {0},
+CEO,CEO,
 CESS Amount,Iznos CESS,
-CGST Amount,CGST Iznos,
+CGST Amount,Iznos CGST,
 CRM,CRM,
-CWIP Account,Račun CWIP,
-Calculated Bank Statement balance,Izračunata bilanca bankovnog računa,
+CWIP Account,CWIP račun,
+Calculated Bank Statement balance,Izračunato banka Izjava stanje,
 Calls,pozivi,
 Campaign,Kampanja,
-Can be approved by {0},Može se odobriti do {0},
-"Can not filter based on Account, if grouped by Account",Nije moguće filtrirati na temelju računa ako je grupiran po računu,
-"Can not filter based on Voucher No, if grouped by Voucher","Nije moguće filtrirati na temelju broja vaučera, ako je grupiran po vaučeru",
-"Can not mark Inpatient Record Discharged, there are Unbilled Invoices {0}","Nije moguće označiti ispražnjenu bolničku evidenciju, postoje fakture koje nisu fakturirane {0}",
-Can only make payment against unbilled {0},Moguće je izvršiti plaćanje samo za neplaćene {0},
-Can refer row only if the charge type is 'On Previous Row Amount' or 'Previous Row Total',Može uputiti redak samo ako je vrsta naplate &quot;Na prethodni iznos retka&quot; ili &quot;Ukupno retka&quot;,
-"Can't change valuation method, as there are transactions against some items which does not have it's own valuation method",Nije moguće promijeniti način procjene jer postoje transakcije s nekim stavkama koje nemaju vlastitu metodu procjene,
-Can't create standard criteria. Please rename the criteria,Nije moguće izraditi standardne kriterije. Preimenujte kriterije,
-Cancel,Otkazati,
-Cancel Material Visit {0} before cancelling this Warranty Claim,Otkazati materijal Posjetite {0} prije poništavanja ovog zahtjeva za jamstvom,
-Cancel Material Visits {0} before cancelling this Maintenance Visit,Poništite posjete materijala {0} prije otkazivanja ove posjete za održavanje,
-Cancel Subscription,Otkaži pretplatu,
-Cancel the journal entry {0} first,Najprije poništite stavku dnevnika {0},
+Can be approved by {0},Može biti odobren od strane {0},
+"Can not filter based on Account, if grouped by Account","Ne možete filtrirati na temelju računa, ako je grupirano po računu",
+"Can not filter based on Voucher No, if grouped by Voucher","Ne možete filtrirati na temelju vaučer No , ako grupirani po vaučer",
+"Can not mark Inpatient Record Discharged, there are Unbilled Invoices {0}","Ne mogu se označiti prazni bolesnički zapis, postoje neplaćene fakture {0}",
+Can only make payment against unbilled {0},Može napraviti samo plaćanje protiv Nenaplaćena {0},
+Can refer row only if the charge type is 'On Previous Row Amount' or 'Previous Row Total',"Može se odnositi red samo akotip zadužen je "" Na prethodni red Iznos 'ili' prethodnog retka Total '",
+"Can't change valuation method, as there are transactions against some items which does not have it's own valuation method",Nije moguće promijeniti način vrednovanja jer postoje transakcije protiv nekih stavki koje nemaju vlastitu metodu vrednovanja,
+Can't create standard criteria. Please rename the criteria,Nije moguće stvoriti standardne kriterije. Preimenujte kriterije,
+Cancel,Otkaži,
+Cancel Material Visit {0} before cancelling this Warranty Claim,Odustani Materijal Posjetite {0} prije otkazivanja ovog jamstva se,
+Cancel Material Visits {0} before cancelling this Maintenance Visit,Odustani Posjeta materijala {0} prije otkazivanja ovog održavanja pohod,
+Cancel Subscription,Odustani od pretplate,
+Cancel the journal entry {0} first,Najprije poništite unos dnevnika {0},
 Canceled,otkazan,
-"Cannot Submit, Employees left to mark attendance","Ne može se poslati, zaposlenici su ostavljeni da obilježe prisutnost",
-Cannot be a fixed asset item as Stock Ledger is created.,Nije moguće postaviti stavku fiksne imovine kao stvorenu knjigu zaliha.,
-Cannot cancel because submitted Stock Entry {0} exists,Otkazivanje nije moguće jer postoji poslani unos zaliha {0},
-Cannot cancel transaction for Completed Work Order.,Nije moguće otkazati transakciju za dovršeni radni nalog.,
-Cannot cancel {0} {1} because Serial No {2} does not belong to the warehouse {3},Nije moguće otkazati {0} {1} jer serijski broj {2} ne pripada skladištu {3},
-Cannot change Attributes after stock transaction. Make a new Item and transfer stock to the new Item,Nije moguće promijeniti atribute nakon transakcije dionica. Napravite novu stavku i prenesite zalihe u novu stavku,
-Cannot change Fiscal Year Start Date and Fiscal Year End Date once the Fiscal Year is saved.,Nije moguće promijeniti datum početka fiskalne godine i datum završetka fiskalne godine nakon spremanja fiskalne godine.,
+"Cannot Submit, Employees left to mark attendance","Nije moguće poslati, zaposlenici ostaju označeni za pohađanje pohađanja",
+Cannot be a fixed asset item as Stock Ledger is created.,Ne može biti fiksna stavka imovine jer je Lozinka stanja stvorena.,
+Cannot cancel because submitted Stock Entry {0} exists,"Ne može se otkazati, jer skladišni ulaz {0} postoji",
+Cannot cancel transaction for Completed Work Order.,Nije moguće otkazati transakciju za dovršenu radnu nalog.,
+Cannot cancel {0} {1} because Serial No {2} does not belong to the warehouse {3},Ne mogu otkazati {0} {1} jer serijski broj {2} ne pripada skladištu {3},
+Cannot change Attributes after stock transaction. Make a new Item and transfer stock to the new Item,Nije moguće promijeniti atribute nakon transakcije zaliha. Napravite novu stavku i prenesite dionicu novoj stavci,
+Cannot change Fiscal Year Start Date and Fiscal Year End Date once the Fiscal Year is saved.,Ne možete promijeniti fiskalnu godinu datum početka i datum završetka fiskalne godine kada Fiskalna godina se sprema.,
 Cannot change Service Stop Date for item in row {0},Nije moguće promijeniti datum zaustavljanja usluge za stavku u retku {0},
-Cannot change Variant properties after stock transaction. You will have to make a new Item to do this.,Nije moguće promijeniti svojstva varijante nakon transakcije dionica. Morat ćete napraviti novu stavku da biste to učinili.,
-"Cannot change company's default currency, because there are existing transactions. Transactions must be cancelled to change the default currency.",Nije moguće promijeniti zadanu valutu tvrtke jer postoje postojeće transakcije. Transakcije moraju biti poništene kako biste promijenili zadanu valutu.,
-Cannot change status as student {0} is linked with student application {1},Nije moguće promijeniti status studenta {0} je povezan sa studentskom prijavom {1},
-Cannot convert Cost Center to ledger as it has child nodes,Nije moguće pretvoriti Centar troška u knjigu jer ima dječje čvorove,
-Cannot covert to Group because Account Type is selected.,Nije moguće preusmjeriti na grupu jer je odabrana vrsta računa.,
-Cannot create Retention Bonus for left Employees,Bonus za zadržavanje za preostale zaposlenike nije moguće izraditi,
-Cannot create a Delivery Trip from Draft documents.,Nije moguće izraditi put isporuke iz skica dokumenata.,
-Cannot deactivate or cancel BOM as it is linked with other BOMs,BOM nije moguće deaktivirati ili otkazati jer je povezana s drugim sastavnicama,
-"Cannot declare as lost, because Quotation has been made.",Nije moguće proglasiti izgubljenim jer je napravljena ponuda.,
-Cannot deduct when category is for 'Valuation' or 'Valuation and Total',Nije moguće odbiti kada je kategorija za &quot;Procjena&quot; ili &quot;Procjena i ukupni iznos&quot;,
-Cannot deduct when category is for 'Valuation' or 'Vaulation and Total',Nije moguće odbiti kada je kategorija za &quot;Procjena&quot; ili &quot;Vaulation and Total&quot;,
-"Cannot delete Serial No {0}, as it is used in stock transactions",Nije moguće izbrisati serijski broj {0} jer se koristi u transakcijama dionicama,
-Cannot enroll more than {0} students for this student group.,Nije moguće upisati više od {0} učenika za ovu studentsku grupu.,
-Cannot find Item with this barcode,Stavka s ovim barkodom nije moguće pronaći,
-Cannot find active Leave Period,Nije moguće pronaći aktivno razdoblje odlaska,
-Cannot produce more Item {0} than Sales Order quantity {1},Nije moguće proizvesti više stavke {0} nego količina narudžbenice {1},
-Cannot promote Employee with status Left,Nije moguće promovirati zaposlenika s statusom lijevo,
-Cannot refer row number greater than or equal to current row number for this Charge type,Ne može se pozvati broj retka veći ili jednak trenutnom broju retka za ovu vrstu naplate,
-Cannot select charge type as 'On Previous Row Amount' or 'On Previous Row Total' for first row,Ne možete odabrati vrstu naplate kao &quot;Na prethodni iznos retka&quot; ili &quot;Na prethodni redak ukupno&quot; za prvi redak,
-Cannot set a received RFQ to No Quote,Nije moguće postaviti primljeni RFQ na No Quote,
-Cannot set as Lost as Sales Order is made.,Ne može se postaviti kao izgubljeno kao izvršen prodajni nalog.,
-Cannot set authorization on basis of Discount for {0},Nije moguće postaviti ovlaštenje na temelju Popusta za {0},
-Cannot set multiple Item Defaults for a company.,Nije moguće postaviti više zadanih postavki stavke za tvrtku.,
-Cannot set quantity less than delivered quantity,Nije moguće postaviti količinu manju od isporučene količine,
-Cannot set quantity less than received quantity,Nije moguće postaviti količinu manju od primljene količine,
-Cannot set the field <b>{0}</b> for copying in variants,Nije moguće postaviti polje <b>{0}</b> za kopiranje u varijantama,
-Cannot transfer Employee with status Left,Zaposlenik ne može prenijeti status Lijevo,
-Cannot {0} {1} {2} without any negative outstanding invoice,Nije moguće {0} {1} {2} bez negativne nepodmirene dostavnice,
-Capital Equipments,Kapitalna oprema,
+Cannot change Variant properties after stock transaction. You will have to make a new Item to do this.,Nije moguće mijenjati svojstva varijanti nakon transakcije zaliha. Morat ćete napraviti novu stavku da to učinite.,
+"Cannot change company's default currency, because there are existing transactions. Transactions must be cancelled to change the default currency.","Ne mogu promijeniti tvrtke zadanu valutu , jer postoje neki poslovi . Transakcije mora biti otkazana promijeniti zadanu valutu .",
+Cannot change status as student {0} is linked with student application {1},Ne može se promijeniti status studenta {0} je povezan sa studentskom primjene {1},
+Cannot convert Cost Center to ledger as it has child nodes,"Ne može se pretvoriti troška za knjigu , kao da ima djece čvorova",
+Cannot covert to Group because Account Type is selected.,Ne može se tajno u grupu jer je izabrana vrsta računa.,
+Cannot create Retention Bonus for left Employees,Ne može se stvoriti bonus zadržavanja za lijeve zaposlenike,
+Cannot create a Delivery Trip from Draft documents.,Ne mogu stvoriti putovanje dostave iz nacrta dokumenata.,
+Cannot deactivate or cancel BOM as it is linked with other BOMs,Ne može deaktivirati ili otkazati BOM kao što je povezano s drugim sastavnicama,
+"Cannot declare as lost, because Quotation has been made.","Ne može se proglasiti izgubljenim, jer je ponuda napravljena.",
+Cannot deduct when category is for 'Valuation' or 'Valuation and Total',"Ne mogu odbiti kada kategorija je "" vrednovanje "" ili "" Vrednovanje i Total '",
+Cannot deduct when category is for 'Valuation' or 'Vaulation and Total',Ne mogu odbiti kada je kategorija za &quot;vrednovanje&quot; ili &quot;Vaulation i ukupni &#39;,
+"Cannot delete Serial No {0}, as it is used in stock transactions","Ne možete izbrisati Serijski broj {0}, kao što se koristi na lageru transakcija",
+Cannot enroll more than {0} students for this student group.,Ne može se prijaviti više od {0} studenata za ovaj grupe studenata.,
+Cannot find Item with this barcode,Stavka nije moguće pronaći s ovim barkodom,
+Cannot find active Leave Period,Nije moguće pronaći aktivno razdoblje odmora,
+Cannot produce more Item {0} than Sales Order quantity {1},Ne može proizvesti više predmeta {0} od prodajnog naloga količina {1},
+Cannot promote Employee with status Left,Ne mogu promovirati zaposlenika sa statusom lijevo,
+Cannot refer row number greater than or equal to current row number for this Charge type,Ne mogu se odnositi broj retka veći ili jednak trenutnom broju red za ovu vrstu Charge,
+Cannot select charge type as 'On Previous Row Amount' or 'On Previous Row Total' for first row,"Ne možete odabrati vrstu naboja kao ' na prethodnim Row Iznos ""ili"" u odnosu na prethodnu Row Ukupno ""za prvi red",
+Cannot set a received RFQ to No Quote,Nije moguće postaviti primljeni RFQ na nijedan citat,
+Cannot set as Lost as Sales Order is made.,Ne mogu se postaviti kao izgubljen kao prodajnog naloga je napravio .,
+Cannot set authorization on basis of Discount for {0},Ne mogu postaviti odobrenje na temelju popusta za {0},
+Cannot set multiple Item Defaults for a company.,Nije moguće postaviti više zadanih postavki za tvrtku.,
+Cannot set quantity less than delivered quantity,Ne može se postaviti količina manja od isporučene količine,
+Cannot set quantity less than received quantity,Ne može se postaviti količina manja od primljene količine,
+Cannot set the field <b>{0}</b> for copying in variants,Ne može se postaviti polje <b>{0}</b> za kopiranje u inačicama,
+Cannot transfer Employee with status Left,Ne mogu prenijeti zaposlenika s statusom lijevo,
+Cannot {0} {1} {2} without any negative outstanding invoice,Ne mogu {0} {1} {2} bez ikakvih negativnih izvanredan fakture,
+Capital Equipments,Kapitalni oprema,
 Capital Stock,Kapital,
-Capital Work in Progress,Kapitalni rad u tijeku,
+Capital Work in Progress,Kapitalni radovi u tijeku,
 Cart,kolica,
 Cart is Empty,Košarica je prazna,
-Case No(s) already in use. Try from Case No {0},Broj slučaja koji se već koriste. Pokušajte sa slučaja br. {0},
-Cash,Unovčiti,
+Case No(s) already in use. Try from Case No {0},Slučaj Ne ( i) je već u uporabi . Pokušajte s predmetu broj {0},
+Cash,Gotovina,
 Cash Flow Statement,Izvještaj o novčanom tijeku,
-Cash Flow from Financing,Novčani tijek iz financiranja,
-Cash Flow from Investing,Novčani tijek od ulaganja,
-Cash Flow from Operations,Novčani tijek iz poslovanja,
-Cash In Hand,Novac u ruci,
-Cash or Bank Account is mandatory for making payment entry,Novac ili bankovni račun je obvezan za unos plaćanja,
+Cash Flow from Financing,Novčani tijek iz financijskih,
+Cash Flow from Investing,Novčani tijek iz investicijskih,
+Cash Flow from Operations,Novčani tijek iz redovnog poslovanja,
+Cash In Hand,Novac u blagajni,
+Cash or Bank Account is mandatory for making payment entry,Novac ili bankovni račun je obvezna za izradu ulazak plaćanje,
 Cashier Closing,Zatvaranje blagajnika,
-Casual Leave,Povremeni odlazak,
+Casual Leave,Casual dopust,
 Caution,Oprez,
 Central Tax,Središnji porez,
 Certification,potvrda,
 Cess,Uspjeh,
-Change Amount,Izmijeni iznos,
-Change Code,Promijeni kôd,
-Change Item Code,Promijenite šifru stavke,
-Change POS Profile,Promijenite POS profil,
-Change Release Date,Promijeni datum izdavanja,
+Change Amount,Promjena Iznos,
+Change Item Code,Promijeni šifru stavke,
+Change POS Profile,Promjena POS profila,
+Change Release Date,Promijenite datum objavljivanja,
 Change Template Code,Promijeni kôd predloška,
-Changing Customer Group for the selected Customer is not allowed.,Promjena grupe korisnika za odabranog korisnika nije dopuštena.,
+Changing Customer Group for the selected Customer is not allowed.,Promjena grupe kupaca za odabranog kupca nije dopuštena.,
 Chapter,Poglavlje,
-Chapter information.,Informacije o poglavlju.,
-Charge of type 'Actual' in row {0} cannot be included in Item Rate,Naknada tipa &quot;Stvarno&quot; u retku {0} ne može biti uključena u stavku Stopa,
+Chapter information.,Podaci o poglavlju.,
+Charge of type 'Actual' in row {0} cannot be included in Item Rate,Punjenje tipa ' Stvarni ' u redu {0} ne mogu biti uključeni u točki Rate,
 Chargeble,Chargeble,
-Charges are updated in Purchase Receipt against each item,Troškovi se ažuriraju u Potvrdi kupnje za svaku stavku,
-"Charges will be distributed proportionately based on item qty or amount, as per your selection","Troškovi će se distribuirati proporcionalno na temelju količine ili iznosa stavke, prema Vašem odabiru",
+Charges are updated in Purchase Receipt against each item,Optužbe su ažurirani u KUPNJE protiv svake stavke,
+"Charges will be distributed proportionately based on item qty or amount, as per your selection","Troškovi će se distribuirati proporcionalno na temelju točke kom ili iznos, kao i po svom izboru",
 Chart Of Accounts,Kontni plan,
-Chart of Cost Centers,Grafikon mjesta troška,
+Chart of Cost Centers,Grafikon troškovnih centara,
 Check all,Provjeri sve,
 Checkout,Provjeri,
 Chemical,kemijski,
 Cheque,Ček,
-Cheque/Reference No,Provjera / referenca br,
-Cheques Required,Potrebni su čekovi,
-Cheques and Deposits incorrectly cleared,Provjere i depoziti su pogrešno izbrisani,
-Child Item should not be a Product Bundle. Please remove item `{0}` and save,Child Item ne bi trebao biti skup proizvoda. Uklonite stavku `{0}` i spremite,
-Child Task exists for this Task. You can not delete this Task.,Za ovaj zadatak postoji zadatak djeteta. Taj zadatak ne možete izbrisati.,
-Child nodes can be only created under 'Group' type nodes,Dječji čvorovi mogu se kreirati samo u čvorovima tipa grupe,
-Child warehouse exists for this warehouse. You can not delete this warehouse.,Za ovo skladište postoji dječje skladište. Ne možete izbrisati ovo skladište.,
-Circular Reference Error,Kružna referentna pogreška,
+Cheque/Reference No,Ček / Referentni broj,
+Cheques Required,Potrebna je provjera,
+Cheques and Deposits incorrectly cleared,Čekovi i depozita pogrešno izbrisani,
+Child Item should not be a Product Bundle. Please remove item `{0}` and save,Dijete Stavka ne bi trebao biti proizvod Bundle. Uklonite stavku &#39;{0}&#39; i spremanje,
+Child Task exists for this Task. You can not delete this Task.,Dijete Zadatak postoji za ovu Zadatak. Ne možete izbrisati ovu Zadatak.,
+Child nodes can be only created under 'Group' type nodes,Dijete čvorovi mogu biti samo stvorio pod tipa čvorišta &#39;Grupa&#39;,
+Child warehouse exists for this warehouse. You can not delete this warehouse.,Dijete skladište postoji za ovaj skladište. Ne možete izbrisati ovaj skladište.,
+Circular Reference Error,Kružni Referentna Greška,
 City,Grad,
-City/Town,Grad,
-Claimed Amount,Potraženi iznos,
+City/Town,Grad / Mjesto,
+Claimed Amount,Zahtjev za iznos potraživanja,
 Clay,Glina,
-Clear filters,Očisti filtre,
-Clear values,Očisti vrijednosti,
-Clearance Date,Datum odobrenja,
-Clearance Date not mentioned,Datum odobrenja nije naveden,
-Clearance Date updated,Ažuriran je datum odobrenja,
+Clear filters,Očistite filtre,
+Clear values,Jasne vrijednosti,
+Clearance Date,Razmak Datum,
+Clearance Date not mentioned,Razmak Datum nije spomenuo,
+Clearance Date updated,Razmak Datum ažurirana,
 Clinical Procedure,Klinički postupak,
 Clinical Procedure Template,Predložak kliničkog postupka,
-Close Balance Sheet and book Profit or Loss.,Zatvorite bilancu i knjižite dobit ili gubitak.,
+Close Balance Sheet and book Profit or Loss.,Zatvori bilanca i knjiga dobit ili gubitak .,
 Close Loan,Zatvori zajam,
 Close the POS,Zatvorite POS,
 Closed,Zatvoreno,
-Closed order cannot be cancelled. Unclose to cancel.,Zatvorena narudžba se ne može otkazati. Zatvorite za otkazivanje.,
+Closed order cannot be cancelled. Unclose to cancel.,Zatvorena redoslijed ne može se otkazati. Otvarati otkazati.,
 Closing (Cr),Zatvaranje (Cr),
 Closing (Dr),Zatvaranje (Dr),
 Closing (Opening + Total),Zatvaranje (otvaranje + ukupno),
-Closing Account {0} must be of type Liability / Equity,Završni račun {0} mora biti tipa Liability / Equity,
-Closing Balance,Završno stanje,
-Code {0} already exist,Kôd {0} već postoji,
-Collapse All,Sažmi sve,
+Closing Account {0} must be of type Liability / Equity,Zatvaranje računa {0} mora biti tipa odgovornosti / Equity,
+Closing Balance,Završna ravnoteža,
+Collapse All,Suzi sve,
 Colour,Boja,
-Combined invoice portion must equal 100%,Dio kombiniranog računa mora biti jednak 100%,
+Combined invoice portion must equal 100%,Udio kombiniranog računa mora biti jednak 100%,
 Commercial,trgovački,
-Commission,komisija,
-Commission Rate %,Stopa provizije%,
+Commission,provizija,
+Commission Rate %,Stopa komisije%,
 Commission on Sales,Komisija za prodaju,
-Commission rate cannot be greater than 100,Stopa provizije ne može biti veća od 100,
-Community Forum,Forum zajednice,
-Company (not Customer or Supplier) master.,Tvrtka (ne kupac ili dobavljač).,
-Company Abbreviation,Kratica tvrtke,
-Company Abbreviation cannot have more than 5 characters,Skraćenica tvrtke ne može imati više od 5 znakova,
-Company Name,Naziv tvrtke,
-Company Name cannot be Company,Naziv tvrtke ne može biti tvrtka,
-Company currencies of both the companies should match for Inter Company Transactions.,Valute društava obje tvrtke trebale bi se podudarati za transakcije među društvima.,
-Company is manadatory for company account,Tvrtka je podložna računu tvrtke,
+Commission rate cannot be greater than 100,Proviziju ne može biti veća od 100,
+Community Forum,Forum,
+Company (not Customer or Supplier) master.,Društvo ( ne kupaca i dobavljača ) majstor .,
+Company Abbreviation,Kratica Društvo,
+Company Abbreviation cannot have more than 5 characters,Kratica tvrtke ne može imati više od 5 znakova,
+Company Name,Ime tvrtke,
+Company Name cannot be Company,Ime tvrtke ne mogu biti poduzeća,
+Company currencies of both the companies should match for Inter Company Transactions.,Valute trgovačkih društava obje tvrtke trebale bi se podudarati s transakcijama tvrtke Inter.,
+Company is manadatory for company account,Tvrtka je racionalna za račun tvrtke,
 Company name not same,Naziv tvrtke nije isti,
 Company {0} does not exist,Tvrtka {0} ne postoji,
-"Company, Payment Account, From Date and To Date is mandatory","Tvrtka, račun za plaćanje, datum i datum obvezni su",
-Compensatory Off,Kompenzacijski isključen,
-Compensatory leave request days not in valid holidays,Zahtjev za kompenzacijskim dopustom nije važeći,
+"Company, Payment Account, From Date and To Date is mandatory","Tvrtka, račun za plaćanje, od datuma i do datuma je obavezan",
+Compensatory Off,kompenzacijski Off,
+Compensatory leave request days not in valid holidays,Doplativi dopusti za dane naplate nisu u važećem odmoru,
 Complaint,prigovor,
-Completed Qty can not be greater than 'Qty to Manufacture',Dovršena količina ne može biti veća od &quot;Količina za proizvodnju&quot;,
-Completion Date,Datum završetka,
+Completed Qty can not be greater than 'Qty to Manufacture',Završen Qty ne može biti veći od 'Kol proizvoditi',
+Completion Date,Završetak Datum,
 Computer,Računalo,
 Configure,Konfigurirati,
-"Configure Item Fields like UOM, Item Group, Description and No of Hours.","Konfigurirajte polja stavki kao što su UOM, grupa predmeta, opis i broj sati.",
-Configure {0},Konfiguriraj {0},
+Configure {0},Konfigurirajte {0},
 Confirmed orders from Customers.,Potvrđene narudžbe kupaca.,
-Connect Amazon with ERPNext,Povežite Amazon s ERPNext,
-Connect Shopify with ERPNext,Povežite Shopify s ERPNext,
-Connect to Quickbooks,Spojite se na QuickBooks,
-Connected to QuickBooks,Povezan je s QuickBooksima,
-Connecting to QuickBooks,Povezivanje s QuickBooksima,
+Connect Amazon with ERPNext,Spojite Amazon s ERPNextom,
+Connect Shopify with ERPNext,Spojite Shopify s ERPNextom,
+Connect to Quickbooks,Povežite se s QuickBooksom,
+Connected to QuickBooks,Povezano s QuickBooksom,
+Connecting to QuickBooks,Povezivanje s QuickBooksom,
 Consultation,Konzultacija,
 Consultations,konzultacije,
 Consulting,savjetodavni,
 Consumable,potrošni,
 Consumed,konzumira,
-Consumed Amount,Potrošeni iznos,
-Consumed Qty,Potrošena količina,
-Consumer Products,Potrošački proizvodi,
+Consumed Amount,Konzumira Iznos,
+Consumed Qty,Potrošeno Kol,
+Consumer Products,Consumer Products,
 Contact Number,Kontakt broj,
 Contact Us,Kontaktirajte nas,
-Content Masters,Sadržaji majstora sadržaja,
-Continue Configuration,Nastavi s konfiguracijom,
+Content Masters,Sadržaji,
+Continue Configuration,Nastavite s konfiguracijom,
 Contract,Ugovor,
-Contract End Date must be greater than Date of Joining,Datum završetka ugovora mora biti veći od datuma pridruživanja,
+Contract End Date must be greater than Date of Joining,Ugovor Datum završetka mora biti veći od dana ulaska u,
 Contribution %,Doprinos%,
-Contribution Amount,Iznos doprinosa,
-Conversion factor for default Unit of Measure must be 1 in row {0},Faktor pretvorbe za zadanu mjernu jedinicu mora biti 1 u retku {0},
-Conversion rate cannot be 0 or 1,Stopa konverzije ne može biti 0 ili 1,
-Convert to Group,Pretvori u grupu,
-Convert to Non-Group,Pretvori u ne-grupu,
+Contribution Amount,Doprinos iznos,
+Conversion factor for default Unit of Measure must be 1 in row {0},Faktor pretvorbe za zadani jedinica mjere mora biti jedan u nizu {0},
+Conversion rate cannot be 0 or 1,Stopa pretvorbe ne može biti 0 ili 1,
+Convert to Group,Pretvori u Grupi,
+Convert to Non-Group,Pretvori u ne-Group,
 Cosmetics,Kozmetika,
-Cost Center,Mjesto troška,
+Cost Center,Troška,
 Cost Center Number,Broj mjesta troška,
-Cost Center and Budgeting,Centar troškova i proračun,
-Cost Center is required in row {0} in Taxes table for type {1},Mjesto troška potrebno je u retku {0} u tablici poreza za vrstu {1},
-Cost Center with existing transactions can not be converted to group,Centar troškova s postojećim transakcijama ne može se pretvoriti u grupu,
-Cost Center with existing transactions can not be converted to ledger,Centar troškova s postojećim transakcijama ne može se pretvoriti u knjigu,
-Cost Centers,Mjesta troška,
-Cost Updated,Cijena ažurirana,
+Cost Center and Budgeting,Troškovno središte i proračun,
+Cost Center is required in row {0} in Taxes table for type {1},Troška potrebno je u redu {0} poreza stolom za vrstu {1},
+Cost Center with existing transactions can not be converted to group,Troška s postojećim transakcija ne može se prevesti u skupini,
+Cost Center with existing transactions can not be converted to ledger,Troška s postojećim transakcija ne može pretvoriti u knjizi,
+Cost Centers,Troška,
+Cost Updated,Trošak Ažurirano,
 Cost as on,Trošak kao i na,
-Cost center is required to book an expense claim,Mjesto troška je potrebno za knjiženje troškova potraživanja,
-Cost of Delivered Items,Trošak isporučenih stavki,
+Cost of Delivered Items,Troškovi isporučenih stavki,
 Cost of Goods Sold,Troškovi prodane robe,
 Cost of Issued Items,Trošak izdanih stavki,
-Cost of New Purchase,Trošak nove kupnje,
-Cost of Purchased Items,Trošak kupljenih artikala,
-Cost of Scrapped Asset,Trošak rashodovane imovine,
-Cost of Sold Asset,Trošak prodane imovine,
-Cost of various activities,Trošak različitih aktivnosti,
-"Could not create Credit Note automatically, please uncheck 'Issue Credit Note' and submit again",Automatsko kreiranje kreditne bilješke nije bilo moguće. Uklonite oznaku &quot;Napomena o izdavanju kredita&quot; i pošaljite ponovno,
-Could not generate Secret,Nije moguće generirati tajnu,
-Could not retrieve information for {0}.,Nije moguće dohvatiti informacije za {0}.,
-Could not solve criteria score function for {0}. Make sure the formula is valid.,Nije moguće riješiti funkciju ocjene kriterija za {0}. Provjerite je li formula valjana.,
-Could not solve weighted score function. Make sure the formula is valid.,Nije moguće riješiti funkciju ponderiranog rezultata. Provjerite je li formula valjana.,
-Could not submit some Salary Slips,Ne mogu poslati neke isplate plaća,
-"Could not update stock, invoice contains drop shipping item.","Nije bilo moguće ažurirati zalihu, račun sadrži stavku za slanje.",
-Country wise default Address Templates,Zadani predlošci adresa za zemlju,
-Course,Tečaj,
+Cost of New Purchase,Trošak kupnje novog,
+Cost of Purchased Items,Troškovi kupljene predmete,
+Cost of Scrapped Asset,Troškovi otpisan imovinom,
+Cost of Sold Asset,Troškovi prodane imovinom,
+Cost of various activities,Troškovi raznih aktivnosti,
+"Could not create Credit Note automatically, please uncheck 'Issue Credit Note' and submit again","Automatski se ne može izraditi Credit Note, poništite potvrdni okvir &#39;Issue Credit Note&#39; i ponovno pošaljite",
+Could not generate Secret,Nije uspjelo generirati tajnu,
+Could not retrieve information for {0}.,Nije moguće dohvatiti podatke za {0}.,
+Could not solve criteria score function for {0}. Make sure the formula is valid.,Nije moguće riješiti funkciju bodova kriterija za {0}. Provjerite je li formula valjana.,
+Could not solve weighted score function. Make sure the formula is valid.,Nije moguće riješiti funkciju ponderirane ocjene. Provjerite je li formula valjana.,
+Could not submit some Salary Slips,Nije bilo moguće poslati nagradu za plaće,
+"Could not update stock, invoice contains drop shipping item.","Ne može se ažurirati zaliha, fakture sadrži drop shipping stavke.",
+Country wise default Address Templates,Država mudar zadana adresa predlošci,
+Course,naravno,
 Course Code: ,Šifra predmeta:,
-Course Enrollment {0} does not exists,Upis u tečaj {0} ne postoji,
-Course Schedule,Raspored tečajeva,
+Course Enrollment {0} does not exists,Upis na tečaj {0} ne postoji,
+Course Schedule,Raspored predmeta,
 Course: ,Tečaj:,
 Cr,Cr,
 Create,Stvoriti,
-Create BOM,Stvorite sastavnicu,
-Create Delivery Trip,Izradite put isporuke,
-Create Disbursement Entry,Stvorite unos isplate,
+Create BOM,Stvorite BOM,
+Create Delivery Trip,Kreirajte putovanje isporukom,
+Create Disbursement Entry,Izradite unos isplate,
 Create Employee,Stvorite zaposlenika,
-Create Employee Records,Napravite evidenciju zaposlenika,
-"Create Employee records to manage leaves, expense claims and payroll","Napravite evidenciju zaposlenika za upravljanje lišćem, potraživanjem troškova i obračunom plaća",
-Create Fee Schedule,Napravite raspored naknada,
+Create Employee Records,Stvaranje zaposlenika Records,
+"Create Employee records to manage leaves, expense claims and payroll","Stvaranje zaposlenika evidencije za upravljanje lišće, trošak tvrdnje i obračun plaća",
+Create Fee Schedule,Kreirajte raspored naknada,
 Create Fees,Napravite naknade,
-Create Inter Company Journal Entry,Stvorite unos dnevnika unutar tvrtke,
-Create Invoice,Izradite dostavnicu,
-Create Invoices,Izradite fakture,
-Create Job Card,Napravite posjetnicu,
-Create Journal Entry,Napravite unos dnevnika,
-Create Lab Test,Izradite laboratorijski test,
-Create Lead,Napravite olovo,
-Create Leads,Izradite vodi,
-Create Maintenance Visit,Izradite posjet za održavanje,
-Create Material Request,Napravite zahtjev za materijal,
-Create Multiple,Stvorite više,
-Create Opening Sales and Purchase Invoices,Stvorite otvorene fakture prodaje i kupnje,
-Create Payment Entries,Izradite unose za plaćanje,
+Create Inter Company Journal Entry,Napravite unos časopisa Inter Company,
+Create Invoice,Stvorite fakturu,
+Create Invoices,Stvorite fakture,
+Create Job Card,Izradite Job Card,
+Create Journal Entry,Stvorite unos u časopis,
+Create Lab Test,Napravite laboratorijski test,
+Create Lead,Stvorite olovo,
+Create Leads,Stvaranje vodi,
+Create Maintenance Visit,Stvorite posjetu održavanju,
+Create Material Request,Izradite materijalni zahtjev,
+Create Multiple,Izradi više,
+Create Opening Sales and Purchase Invoices,Izradite otvaranje računa za prodaju i kupnju,
+Create Payment Entries,Stvorite uplate za plaćanje,
 Create Payment Entry,Izradite unos plaćanja,
-Create Print Format,Napravite format ispisa,
-Create Purchase Order,Izradite narudžbenicu,
-Create Purchase Orders,Izradite narudžbe za kupnju,
-Create Quotation,Izradi ponudu,
-Create Salary Slip,Napravite popunjavanje plaća,
-Create Salary Slips,Napravite ispis plaća,
-Create Sales Invoice,Izradite dostavnicu,
-Create Sales Order,Stvorite prodajni nalog,
-Create Sales Orders to help you plan your work and deliver on-time,Stvorite prodajne narudžbe kako biste lakše planirali svoj rad i isporučili ga na vrijeme,
-Create Sample Retention Stock Entry,Izradite unos zaliha uzorka,
+Create Print Format,Stvaranje format ispisa,
+Create Purchase Order,Izradi narudžbenicu,
+Create Purchase Orders,Izrada narudžbenice,
+Create Quotation,Napravi ponudu,
+Create Salary Slip,Stvaranje plaće Slip,
+Create Salary Slips,Stvorite plaće za sklizanje,
+Create Sales Invoice,Stvorite račun za prodaju,
+Create Sales Order,Izradi prodajni nalog,
+Create Sales Orders to help you plan your work and deliver on-time,Izradite prodajne naloge za lakše planiranje posla i isporuku na vrijeme,
+Create Sample Retention Stock Entry,Napravite unos zaliha uzoraka,
 Create Student,Stvorite Student,
-Create Student Batch,Stvorite Studentski paket,
-Create Student Groups,Stvorite grupe studenata,
-Create Supplier Quotation,Izradite ponudu dobavljača,
-Create Tax Template,Izradi predložak poreza,
-Create Timesheet,Napravite raspored,
-Create User,Izradite korisnika,
-Create Users,Izradite korisnike,
-Create Variant,Stvori varijantu,
+Create Student Batch,Stvorite skupinu učenika,
+Create Student Groups,Stvaranje grupe učenika,
+Create Supplier Quotation,Izradite ponudu ponude,
+Create Tax Template,Kreirajte predložak poreza,
+Create Timesheet,Napravite časopis,
+Create User,Izradi korisnika,
+Create Users,Stvaranje korisnika,
+Create Variant,Izradi inačicu,
 Create Variants,Napravite varijante,
-Create a new Customer,Stvorite novog klijenta,
-"Create and manage daily, weekly and monthly email digests.","Stvorite i upravljajte dnevnim, tjednim i mjesečnim pregledima e-pošte.",
-Create customer quotes,Izradite ponude korisnika,
-Create rules to restrict transactions based on values.,Stvorite pravila za ograničavanje transakcija na temelju vrijednosti.,
-Created {0} scorecards for {1} between: ,Izrađeno je {0} razglednica za {1} između:,
-Creating Company and Importing Chart of Accounts,Izrada kontnog plana tvrtke i uvoza,
+Create a new Customer,Stvaranje novog kupca,
+"Create and manage daily, weekly and monthly email digests.","Stvaranje i upravljanje automatskih mailova na dnevnoj, tjednoj i mjesečnoj bazi.",
+Create customer quotes,Stvaranje kupaca citati,
+Create rules to restrict transactions based on values.,Napravi pravila za ograničavanje prometa na temelju vrijednosti.,
+Created {0} scorecards for {1} between: ,Izrađeno {0} bodovne kartice za {1} između:,
+Creating Company and Importing Chart of Accounts,Stvaranje tvrtke i uvoz računa,
 Creating Fees,Stvaranje naknada,
-Creating Payment Entries......,Izrada unosa za plaćanje ......,
-Creating Salary Slips...,Stvaranje popisa plaća ...,
-Creating student groups,Stvaranje učeničkih grupa,
+Creating Payment Entries......,Izrada uplata ......,
+Creating Salary Slips...,Stvaranje plaće skliznula ...,
+Creating student groups,Stvaranje studentskih skupina,
 Creating {0} Invoice,Izrada fakture {0},
-Credit,Kreditna,
+Credit,Kredit,
 Credit ({0}),Kredit ({0}),
 Credit Account,Kreditni račun,
-Credit Balance,Stanje na računu,
+Credit Balance,Kreditna bilanca,
 Credit Card,Kreditna kartica,
-Credit Days cannot be a negative number,Dani kredita ne mogu biti negativni brojevi,
-Credit Limit,Kreditno ograničenje,
-Credit Note,Obavijest o kreditu,
-Credit Note Amount,Iznos kredita,
-Credit Note Issued,Izdana kreditna napomena,
-Credit Note {0} has been created automatically,Kreditna bilješka {0} je izrađena automatski,
-Credit To account must be a Balance Sheet account,Kredit na račun mora biti račun stanja,
-Credit To account must be a Payable account,Kredit na račun mora biti račun za plaćanje,
-Credit limit has been crossed for customer {0} ({1}/{2}),Prekoračeno je ograničenje kredita za klijenta {0} ({1} / {2}),
+Credit Days cannot be a negative number,Dani kredita ne može biti negativan broj,
+Credit Limit,Kreditni limit,
+Credit Note,Odobrenje kupcu,
+Credit Note Amount,Iznos uplate kredita,
+Credit Note Issued,Odobrenje kupcu izdano,
+Credit Note {0} has been created automatically,Kreditna bilješka {0} izrađena je automatski,
+Credit limit has been crossed for customer {0} ({1}/{2}),Kreditna je ograničenja prekinuta za kupca {0} ({1} / {2}),
 Creditors,vjerovnici,
-Criteria weights must add up to 100%,Utezi kriterija moraju dodati do 100%,
-Crop Cycle,Crop Cycle,
+Criteria weights must add up to 100%,Ponderi kriterija moraju se dodati do 100%,
+Crop Cycle,Ciklus usjeva,
 Crops & Lands,Usjevi i zemljišta,
-Currency Exchange must be applicable for Buying or for Selling.,Mjenjačnica mora biti primjenjiva za kupnju ili prodaju.,
-Currency can not be changed after making entries using some other currency,Valuta se ne može mijenjati nakon unosa neke druge valute,
-Currency exchange rate master.,Glavni tečaj valute.,
+Currency Exchange must be applicable for Buying or for Selling.,Mjenjač mora biti primjenjiv za kupnju ili prodaju.,
+Currency can not be changed after making entries using some other currency,Valuta se ne može mijenjati nakon što unose pomoću neke druge valute,
+Currency exchange rate master.,Majstor valute .,
 Currency for {0} must be {1},Valuta za {0} mora biti {1},
 Currency is required for Price List {0},Valuta je potrebna za cjenik {0},
-Currency of the Closing Account must be {0},Valuta završnog računa mora biti {0},
+Currency of the Closing Account must be {0},Valuta zatvaranja računa mora biti {0},
 Currency of the price list {0} must be {1} or {2},Valuta cjenika {0} mora biti {1} ili {2},
-Currency should be same as Price List Currency: {0},Valuta mora biti ista kao i cjenik valute: {0},
-Current,Trenutno,
-Current Assets,Trenutna imovina,
-Current BOM and New BOM can not be same,Trenutna sastavnica i nova sastavnica ne mogu biti iste,
-Current Job Openings,Trenutne otvorene poslove,
-Current Liabilities,Trenutni dugovi,
-Current Odometer reading entered should be greater than initial Vehicle Odometer {0},Trenutačno uneseno očitavanje odometra treba biti veće od početnog broja odometra {0},
-Current Qty,Trenutni broj,
-Current invoice {0} is missing,Trenutačna faktura {0} nedostaje,
+Currency should be same as Price List Currency: {0},Valuta bi trebala biti ista kao i Cjenik Valuta: {0},
+Current,struja,
+Current Assets,Dugotrajna imovina,
+Current BOM and New BOM can not be same,Trenutni troškovnik i novi troškovnik ne mogu biti isti,
+Current Job Openings,Trenutni radnih mjesta,
+Current Liabilities,Kratkoročne obveze,
+Current Qty,Trenutno Kom,
+Current invoice {0} is missing,Nedostaje trenutačna faktura {0},
 Customer,kupac,
-Customer Addresses And Contacts,Adrese i kontakti kupaca,
-Customer Contact,Kontakt s kupcem,
-Customer Database.,Baza podataka korisnika.,
+Customer Addresses And Contacts,Kupčeve adrese i kontakti,
+Customer Contact,Kupac Kontakt,
+Customer Database.,Baza kupaca.,
 Customer Group,Grupa kupaca,
-Customer Group is Required in POS Profile,Korisnička grupa potrebna je u POS profilu,
-Customer LPO,Korisnička LPO,
-Customer LPO No.,Korisnički LPO broj,
-Customer Name,Ime kupca,
-Customer POS Id,ID klijenta za POS,
+Customer Group is Required in POS Profile,Grupa korisnika je obavezna u POS profilu,
+Customer LPO,Korisnički LPO,
+Customer LPO No.,Kupac LPO br.,
+Customer Name,Naziv klijenta,
+Customer POS Id,ID klijenta POS,
 Customer Service,Služba za korisnike,
-Customer and Supplier,Kupac i dobavljač,
-Customer is required,Korisnik je obavezan,
-Customer isn't enrolled in any Loyalty Program,Klijent nije uključen u bilo koji program vjernosti,
-Customer required for 'Customerwise Discount',Korisnik potreban za &#39;Customerwise Discount&#39;,
-Customer {0} does not belong to project {1},Klijent {0} ne pripada projektu {1},
-Customer {0} is created.,Korisnik {0} je izrađen.,
+Customer and Supplier,Kupaca i dobavljača,
+Customer is required,Kupac je dužan,
+Customer isn't enrolled in any Loyalty Program,Kupac nije upisan u bilo koji program lojalnosti,
+Customer required for 'Customerwise Discount',Kupac je potrebno za ' Customerwise Popust ',
+Customer {0} does not belong to project {1},Korisnik {0} ne pripada projicirati {1},
+Customer {0} is created.,Korisnik {0} je stvoren.,
 Customers in Queue,Kupci u redu,
 Customize Homepage Sections,Prilagodite odjeljke početne stranice,
-Customizing Forms,Prilagođavanje obrazaca,
+Customizing Forms,Prilagodba Obrasci,
 Daily Project Summary for {0},Dnevni sažetak projekta za {0},
-Daily Reminders,Dnevni podsjetnici,
-Daily Work Summary,Sažetak dnevnog rada,
-Daily Work Summary Group,Dnevna grupa sažetka rada,
+Daily Reminders,Dnevne Podsjetnici,
+Daily Work Summary,Dnevni rad Sažetak,
+Daily Work Summary Group,Svakodnevna grupa za rad,
 Data Import and Export,Uvoz i izvoz podataka,
 Data Import and Settings,Uvoz podataka i postavke,
 Database of potential customers.,Baza potencijalnih kupaca.,
-Date Of Retirement must be greater than Date of Joining,Datum odlaska u mirovinu mora biti veći od datuma pridruživanja,
+Date Of Retirement must be greater than Date of Joining,Datum umirovljenja mora biti veći od datuma pristupa,
 Date is repeated,Datum se ponavlja,
 Date of Birth,Datum rođenja,
-Date of Birth cannot be greater than today.,Datum rođenja ne može biti veći od danas.,
-Date of Commencement should be greater than Date of Incorporation,Datum početka treba biti veći od datuma osnivanja,
-Date of Joining,Datum pridruživanja,
-Date of Joining must be greater than Date of Birth,Datum pridruživanja mora biti veći od datuma rođenja,
+Date of Birth cannot be greater than today.,Datum rođenja ne može biti veća nego danas.,
+Date of Commencement should be greater than Date of Incorporation,Datum početka mora biti veći od datuma osnivanja,
+Date of Joining,Datum pristupa,
+Date of Joining must be greater than Date of Birth,Datum pristupa mora biti veći od datuma rođenja,
 Date of Transaction,Datum transakcije,
 Debit,Zaduženje,
-Debit ({0}),Zaduženje ({0}),
+Debit ({0}),Debit ({0}),
 Debit A/C Number,Debitni A / C broj,
-Debit Account,Debitni račun,
-Debit Note,Tekuća bilješka,
-Debit Note Amount,Iznos dugovanja,
-Debit Note Issued,Izdana debitna bilješka,
-Debit To account must be a Balance Sheet account,Zaduženje Račun mora biti račun računa,
-Debit To account must be a Receivable account,Zaduženje Račun mora biti račun potraživanja,
-Debit To is required,Obavezno je zaduženje,
-Debit and Credit not equal for {0} #{1}. Difference is {2}.,Debitni i kreditni nisu jednaki za {0} # {1}. Razlika je {2}.,
+Debit Account,Duguje račun,
+Debit Note,Rashodi - napomena,
+Debit Note Amount,Debitni iznos bilješke,
+Debit Note Issued,Terećenju Izdano,
+Debit To is required,Zaduženja je potrebno,
+Debit and Credit not equal for {0} #{1}. Difference is {2}.,Debitne i kreditne nije jednaka za {0} # {1}. Razlika je {2}.,
 Debtors,dužnici,
 Debtors ({0}),Dužnici ({0}),
-Declare Lost,Izjavite Izgubljeno,
+Declare Lost,Proglasite izgubljenim,
 Deduction,Odbitak,
-Default Activity Cost exists for Activity Type - {0},Zadana cijena aktivnosti postoji za vrstu aktivnosti - {0},
-Default BOM ({0}) must be active for this item or its template,Zadana sastavnica ({0}) mora biti aktivna za ovu stavku ili njezin predložak,
-Default BOM for {0} not found,Zadana sastavnica za {0} nije pronađena,
-Default BOM not found for Item {0} and Project {1},Zadana BOM nije pronađena za stavku {0} i projekt {1},
+Default Activity Cost exists for Activity Type - {0},Zadana aktivnost Troškovi postoji Vrsta djelatnosti - {0},
+Default BOM ({0}) must be active for this item or its template,Zadana BOM ({0}) mora biti aktivan za tu stavku ili njegov predložak,
+Default BOM for {0} not found,Zadana BOM za {0} nije pronađena,
+Default BOM not found for Item {0} and Project {1},Zadani BOM nije pronađen za stavku {0} i projekt {1},
 Default Tax Template,Zadani predložak poreza,
-Default Unit of Measure for Item {0} cannot be changed directly because you have already made some transaction(s) with another UOM. You will need to create a new Item to use a different Default UOM.,Zadana mjerna jedinica za stavku {0} ne može se izravno promijeniti jer ste već obavili neku transakciju s drugom UOM-om. Morat ćete stvoriti novu stavku da biste koristili drugu zadanu UOM.,
-Default Unit of Measure for Variant '{0}' must be same as in Template '{1}',Zadana jedinica mjere za varijaciju &#39;{0}&#39; mora biti ista kao u predlošku &#39;{1}&#39;,
-Default settings for buying transactions.,Zadane postavke za kupnju transakcija.,
-Default settings for selling transactions.,Zadane postavke za transakcije prodaje.,
-Default tax templates for sales and purchase are created.,Izrađuju se predlošci za poreze za prodaju i kupnju.,
-Default warehouse is required for selected item,Zadano skladište je potrebno za odabranu stavku,
-Defense,odbrana,
+Default Unit of Measure for Item {0} cannot be changed directly because you have already made some transaction(s) with another UOM. You will need to create a new Item to use a different Default UOM.,"Zadana mjerna jedinica za točke {0} se ne može mijenjati izravno, jer ste već napravili neke transakcije (e) s drugim UOM. Morat ćete stvoriti novu stavku za korištenje drugačiji Default UOM.",
+Default Unit of Measure for Variant '{0}' must be same as in Template '{1}',Zadana mjerna jedinica za Variant &#39;{0}&#39; mora biti isti kao u predložak &#39;{1}&#39;,
+Default settings for buying transactions.,Zadane postavke za transakciju kupnje.,
+Default settings for selling transactions.,Zadane postavke za prodajne transakcije.,
+Default tax templates for sales and purchase are created.,Osnovni su predlošci poreza za prodaju i kupnju.,
+Default warehouse is required for selected item,Default skladište je potreban za odabranu stavku,
+Defense,Obrana,
 Define Project type.,Definiraj vrstu projekta.,
-Define budget for a financial year.,Definirati proračun za financijsku godinu.,
-Define various loan types,Definirajte različite vrste kredita,
+Define budget for a financial year.,Odredite proračun za financijsku godinu.,
+Define various loan types,Definirati različite vrste kredita,
 Del,del,
-Delay in payment (Days),Odgoda plaćanja (Dani),
-Delete all the Transactions for this Company,Izbrišite sve transakcije za ovu tvrtku,
-Delete permanently?,Želite li trajno izbrisati?,
+Delay in payment (Days),Kašnjenje u plaćanju (dani),
+Delete all the Transactions for this Company,Izbrišite sve transakcije za ovu Društvo,
+Delete permanently?,Brisanje trajno?,
 Deletion is not permitted for country {0},Brisanje nije dopušteno za zemlju {0},
 Delivered,Isporučeno,
-Delivered Amount,Isporučeni iznos,
-Delivered Qty,Isporučeno Količina,
-Delivered: {0},Isporučeno: {0},
-Delivery,dostava,
-Delivery Date,Datum dostave,
-Delivery Note,Napomena o isporuci,
-Delivery Note {0} is not submitted,Napomena o isporuci {0} nije poslana,
-Delivery Note {0} must not be submitted,Napomena o isporuci {0} ne smije biti poslana,
-Delivery Notes {0} must be cancelled before cancelling this Sales Order,Napomene o isporuci {0} moraju biti otkazane prije otkazivanja ovog prodajnog naloga,
-Delivery Notes {0} updated,Napomene o isporuci {0} su ažurirane,
+Delivered Amount,Isporučeno Iznos,
+Delivered Qty,Isporučena količina,
+Delivered: {0},Isporučuje se: {0},
+Delivery,Isporuka,
+Delivery Date,Datum isporuke,
+Delivery Note,Otpremnica,
+Delivery Note {0} is not submitted,Otpremnica {0} nije potvrđena,
+Delivery Note {0} must not be submitted,Otpremnica {0} ne smije biti potvrđena,
+Delivery Notes {0} must be cancelled before cancelling this Sales Order,Otpremnica {0} mora biti otkazana prije poništenja ove narudžbenice,
+Delivery Notes {0} updated,Bilješke o isporuci {0} ažurirane,
 Delivery Status,Status isporuke,
-Delivery Trip,Put isporuke,
-Delivery warehouse required for stock item {0},Potrebno skladište dostave za stavku zaliha {0},
+Delivery Trip,Putovanje isporuke,
+Delivery warehouse required for stock item {0},Isporuka skladište potrebno za dionicama stavku {0},
 Department,odjel,
 Department Stores,Robne kuće,
-Depreciation,deprecijacija,
-Depreciation Amount,Iznos amortizacije,
-Depreciation Amount during the period,Amortizacija Iznos tijekom razdoblja,
-Depreciation Date,Datum amortizacije,
-Depreciation Eliminated due to disposal of assets,Ispravka amortizacije zbog otuđenja imovine,
-Depreciation Entry,Unos amortizacije,
+Depreciation,Amortizacija,
+Depreciation Amount,Amortizacija Iznos,
+Depreciation Amount during the period,Amortizacija Iznos u razdoblju,
+Depreciation Date,Amortizacija Datum,
+Depreciation Eliminated due to disposal of assets,Amortizacija Ispadanje zbog prodaje imovine,
+Depreciation Entry,Amortizacija Ulaz,
 Depreciation Method,Metoda amortizacije,
-Depreciation Row {0}: Depreciation Start Date is entered as past date,Redoslijed amortizacije {0}: Početni datum amortizacije unesen je kao prošli datum,
-Depreciation Row {0}: Expected value after useful life must be greater than or equal to {1},Redoslijed amortizacije {0}: Očekivana vrijednost nakon korisnog vijeka trajanja mora biti veća od ili jednaka {1},
-Depreciation Row {0}: Next Depreciation Date cannot be before Available-for-use Date,Redoslijed amortizacije {0}: Sljedeći datum amortizacije ne može biti prije datuma dostupnog za uporabu,
-Depreciation Row {0}: Next Depreciation Date cannot be before Purchase Date,Redoslijed amortizacije {0}: Sljedeći datum amortizacije ne može biti prije datuma kupnje,
-Designer,Dizajner,
-Detailed Reason,Detaljni razlog,
+Depreciation Row {0}: Depreciation Start Date is entered as past date,Row amortizacije {0}: Datum početka amortizacije unesen je kao protekli datum,
+Depreciation Row {0}: Expected value after useful life must be greater than or equal to {1},Amortizacija reda {0}: očekivana vrijednost nakon korisnog vijeka trajanja mora biti veća ili jednaka {1},
+Depreciation Row {0}: Next Depreciation Date cannot be before Available-for-use Date,Row amortizacije {0}: Sljedeći datum amortizacije ne može biti prije datuma raspoloživog korištenja,
+Depreciation Row {0}: Next Depreciation Date cannot be before Purchase Date,Row amortizacije {0}: Sljedeći datum amortizacije ne može biti prije datuma kupnje,
+Designer,Imenovatelj,
+Detailed Reason,Detaljan razlog,
 Details,Detalji,
-Details of Outward Supplies and inward supplies liable to reverse charge,Pojedinosti o vanjskim dobavljačima i unutarnjim isporukama koje podliježu obrnutoj naplati,
-Details of the operations carried out.,Pojedinosti o izvršenim operacijama.,
+Details of Outward Supplies and inward supplies liable to reverse charge,Pojedinosti o vanjskim potrepštinama i unutarnjim zalihama koje mogu podnijeti povratno punjenje,
+Details of the operations carried out.,Pojedinosti o operacijama koje se provode.,
 Diagnosis,Dijagnoza,
-Did not find any item called {0},Nije pronađena nijedna stavka pod nazivom {0},
-Diff Qty,Količina dif,
+Did not find any item called {0},Niste pronašli bilo koju stavku pod nazivom {0},
+Diff Qty,Diff Qty,
 Difference Account,Račun razlike,
-"Difference Account must be a Asset/Liability type account, since this Stock Reconciliation is an Opening Entry","Račun razlike mora biti račun vrste imovine / obveze, budući da je ovo usklađivanje dionica uvodni unos",
-Difference Amount,Iznos razlike,
-Difference Amount must be zero,Razlika Iznos mora biti nula,
-Different UOM for items will lead to incorrect (Total) Net Weight value. Make sure that Net Weight of each item is in the same UOM.,Različiti UOM za stavke će dovesti do netočne vrijednosti (ukupne) neto težine. Uvjerite se da je neto težina svake stavke u istom UOM-u.,
+"Difference Account must be a Asset/Liability type account, since this Stock Reconciliation is an Opening Entry","Razlika računa mora biti tipa imovine / obveza račun, jer to kataloški Pomirenje je otvaranje Stupanje",
+Difference Amount,Razlika Količina,
+Difference Amount must be zero,Razlika Iznos mora biti jednak nuli,
+Different UOM for items will lead to incorrect (Total) Net Weight value. Make sure that Net Weight of each item is in the same UOM.,Različite mjerne jedinice proizvoda će dovesti do ukupne pogrešne neto težine. Budite sigurni da je neto težina svakog proizvoda u istoj mjernoj jedinici.,
 Direct Expenses,Izravni troškovi,
-Direct Income,Izravni prihodi,
-Disable,onesposobiti,
-Disable Template,Onemogući predložak,
-Disabled template must not be default template,Onemogućeni predložak ne smije biti zadani predložak,
-Disburse Loan,Isplatiti zajam,
+Direct Income,Izravni dohodak,
+Disabled template must not be default template,Onemogućeno predložak ne smije biti zadani predložak,
+Disburse Loan,Isplati zajam,
 Disbursed,isplaćeni,
 Disc,disk,
 Discharge,Pražnjenje,
 Discount,Popust,
-Discount Percentage can be applied either against a Price List or for all Price List.,Postotak popusta može se primijeniti na cjenik ili na cjenik.,
+Discount Percentage can be applied either against a Price List or for all Price List.,Postotak popusta se može neovisno primijeniti prema jednom ili za više cjenika.,
 Discount amount cannot be greater than 100%,Iznos popusta ne može biti veći od 100%,
 Discount must be less than 100,Popust mora biti manji od 100,
 Diseases & Fertilizers,Bolesti i gnojiva,
-Dispatch,otpremiti,
+Dispatch,Otpremanje,
 Dispatch Notification,Obavijest o otpremi,
-Dispatch State,Država otpreme,
+Dispatch State,Država slanja,
 Distance,Udaljenost,
 Distribution,Distribucija,
 Distributor,Distributer,
-Dividends Paid,Plaćene dividende,
-Do you really want to restore this scrapped asset?,Želite li doista vratiti obnovljenu imovinu?,
-Do you really want to scrap this asset?,Želite li doista zabilježiti ovu imovinu?,
-Do you want to notify all the customers by email?,Želite li obavijestiti sve klijente putem e-pošte?,
+Dividends Paid,Plaćeni Dividende,
+Do you really want to restore this scrapped asset?,Da li stvarno želite vratiti ovaj otpisan imovine?,
+Do you really want to scrap this asset?,Da li zaista želite odbaciti ovu imovinu?,
+Do you want to notify all the customers by email?,Želite li obavijestiti sve korisnike putem e-pošte?,
 Doc Date,Datum dokumenta,
-Doc Name,Naziv dokumenta,
-Doc Type,Vrsta dokumenta,
+Doc Name,Doc ime,
+Doc Type,Doc tip,
 Docs Search,Pretraživanje dokumenata,
 Document Status,Status dokumenta,
-Document Type,vrsta dokumenta,
+Document Type,Tip dokumenta,
 Documentation,Dokumentacija,
 Domains,domene,
-Done,Gotovo,
+Done,Pospremljen,
 Donor,donator,
-Donor Type information.,Informacije o vrsti donatora.,
+Donor Type information.,Informacije o donatoru.,
 Donor information.,Informacije o donatorima.,
 Download JSON,Preuzmite JSON,
 Draft,Nacrt,
-Drop Ship,Ispusti brod,
+Drop Ship,Drop Ship,
 Drug,Droga,
-Due / Reference Date cannot be after {0},Datum / referentni datum ne može biti nakon {0},
-Due Date cannot be before Posting / Supplier Invoice Date,Datum dospijeća ne može biti prije knjiženja / datuma fakture dobavljača,
-Due Date is mandatory,Datum dospijeća je obavezan,
-Duplicate Entry. Please check Authorization Rule {0},Dvostruki unos. Provjerite Pravilo autorizacije {0},
-Duplicate Serial No entered for Item {0},Dvostruki serijski broj unesen za stavku {0},
-Duplicate Tax Declaration of {0} for period {1},Ponovljena porezna izjava od {0} za razdoblje {1},
-Duplicate customer group found in the cutomer group table,Udvostručena grupa korisnika pronađena je u tablici grupnih rezača,
-Duplicate entry,Dvostruki unos,
-Duplicate item group found in the item group table,Udvostručena grupa stavki pronađena u tablici grupe stavki,
-Duplicate roll number for student {0},Duplicirani broj valjka za studenta {0},
-Duplicate row {0} with same {1},Ponovljeni redak {0} s istim {1},
+Due / Reference Date cannot be after {0},Zbog / Referentni datum ne može biti nakon {0},
+Due Date cannot be before Posting / Supplier Invoice Date,Datum roka ne može biti prije datuma knjiženja / fakture dobavljača,
+Due Date is mandatory,Datum dospijeća je obavezno,
+Duplicate Entry. Please check Authorization Rule {0},Dupli unos. Provjerite pravila za autorizaciju {0},
+Duplicate Serial No entered for Item {0},Dupli serijski broj unešen za proizvod {0},
+Duplicate customer group found in the cutomer group table,Dvostruka grupa kupaca nalaze u tablici cutomer grupe,
+Duplicate entry,Dupli unos,
+Duplicate item group found in the item group table,Dvostruki stavke skupina nalaze se u tablici stavke grupe,
+Duplicate roll number for student {0},Duplikat broja valjaka za učenika {0},
+Duplicate row {0} with same {1},Dupli red {0} sa istim {1},
 Duplicate {0} found in the table,Duplikat {0} pronađen u tablici,
 Duration in Days,Trajanje u danima,
-Duties and Taxes,Dužnosti i porezi,
-E-Invoicing Information Missing,Informacije o e-fakturiranju nedostaju,
+Duties and Taxes,Carine i porezi,
+E-Invoicing Information Missing,Informacije o e-računima nedostaju,
 ERPNext Demo,ERPNext Demo,
 ERPNext Settings,Postavke ERPNext,
-Earliest,najraniji,
-Earnest Money,Zaslužite novac,
-Earning,zarađivanje,
+Earliest,Najstarije,
+Earnest Money,kapara,
+Earning,Zarada,
 Edit,Uredi,
-Edit Publishing Details,Uredi pojedinosti objavljivanja,
-"Edit in full page for more options like assets, serial nos, batches etc.","Uredi na cijeloj stranici za više opcija kao što su sredstva, serijski brojevi, serije itd.",
+Edit Publishing Details,Uredite pojedinosti o objavljivanju,
+"Edit in full page for more options like assets, serial nos, batches etc.","Uređivanje u cijeloj stranici za više opcija kao što su imovina, serijski brojevi, serije itd.",
 Education,Obrazovanje,
-Either location or employee must be required,Potrebno je tražiti mjesto ili zaposlenika,
-Either target qty or target amount is mandatory,Ciljna količina ili ciljni iznos je obavezan,
-Either target qty or target amount is mandatory.,Ciljna količina ili ciljni iznos je obavezan.,
+Either location or employee must be required,Moraju se tražiti lokacija ili zaposlenik,
+Either target qty or target amount is mandatory,Ili meta Količina ili ciljani iznos je obvezna,
+Either target qty or target amount is mandatory.,Ili meta Količina ili ciljani iznos je obavezna .,
 Electrical,Električna,
-Electronic Equipments,Elektronska oprema,
+Electronic Equipments,elektroničke opreme,
 Electronics,Elektronika,
-Eligible ITC,Prihvatljivi ITC,
-"Email Address must be unique, already exists for {0}","Adresa e-pošte mora biti jedinstvena, već postoji za {0}",
-Email Digest: ,Digest e-pošte:,
+Eligible ITC,Ispunjava uvjete ITC,
+"Email Address must be unique, already exists for {0}","E-mail adresa mora biti jedinstvena, već postoji za {0}",
+Email Digest: ,E-pošta:,
 Email Reminders will be sent to all parties with email contacts,Podsjetnici e-pošte bit će poslani svim stranama s kontaktima e-pošte,
-Email not found in default contact,E-pošta nije pronađena u zadanom kontaktu,
-Email sent to supplier {0},E-pošta poslana dobavljaču {0},
-Email sent to {0},E-pošta poslana na {0},
+Email not found in default contact,Email nije pronađen u zadanom kontaktu,
+Email sent to supplier {0},E-pošta dostavljati opskrbljivaču {0},
+Email sent to {0},E-mail poslan na {0},
 Employee,Zaposlenik,
-Employee A/C Number,Broj zaposlenika A / C,
-Employee Advances,Predujmi zaposlenika,
-Employee Benefits,Povlastice za zaposlene,
-Employee Grade,Ocjena zaposlenika,
+Employee A/C Number,Broj zaposlenika,
+Employee Advances,Predujmovi zaposlenika,
+Employee Benefits,Primanja zaposlenih,
+Employee Grade,Grade zaposlenika,
 Employee ID,ID zaposlenika,
 Employee Lifecycle,Životni ciklus zaposlenika,
 Employee Name,ime zaposlenika,
-Employee Promotion cannot be submitted before Promotion Date ,Promocija zaposlenika ne može se podnijeti prije datuma promocije,
+Employee Promotion cannot be submitted before Promotion Date ,Promocija zaposlenika ne može se poslati prije datuma promocije,
 Employee Referral,Upućivanje zaposlenika,
 Employee Transfer cannot be submitted before Transfer Date ,Prijenos zaposlenika ne može se poslati prije datuma prijenosa,
-Employee cannot report to himself.,Zaposlenik se ne može sam prijaviti.,
-Employee relieved on {0} must be set as 'Left',Osoba oslobođena na {0} mora biti postavljena kao &quot;Lijevo&quot;,
-Employee status cannot be set to 'Left' as following employees are currently reporting to this employee:&nbsp;,Status zaposlenika ne može se postaviti na &quot;Lijevo&quot; jer sljedeći zaposlenici trenutačno izvješćuju ovog zaposlenika:,
-Employee {0} already submited an apllication {1} for the payroll period {2},Zaposlenik {0} već je poslao dodatak {1} za razdoblje obračuna plaća {2},
-Employee {0} has already applied for {1} between {2} and {3} : ,Zaposlenik {0} već se prijavio za {1} između {2} i {3}:,
-Employee {0} has already applied for {1} on {2} : ,Zaposlenik {0} već se prijavio za {1} dana {2}:,
-Employee {0} has no maximum benefit amount,Zaposlenik {0} nema maksimalni iznos naknade,
+Employee cannot report to himself.,Zaposlenik se ne može prijaviti na sebe.,
+Employee relieved on {0} must be set as 'Left',Zaposlenik razriješen na {0} mora biti postavljen kao 'lijevo ',
+Employee status cannot be set to 'Left' as following employees are currently reporting to this employee:&nbsp;,"Status zaposlenika ne može se postaviti na &quot;Lijevo&quot;, jer sljedeći zaposlenici trenutno prijavljuju ovog zaposlenika:",
+Employee {0} already submited an apllication {1} for the payroll period {2},Zaposlenik {0} već je poslao apllicaciju {1} za razdoblje plaće {2},
+Employee {0} has already applied for {1} between {2} and {3} : ,Zaposlenik {0} već je podnio zahtjev za {1} između {2} i {3}:,
+Employee {0} has already applied for {1} on {2} : ,Zaposlenik {0} već je podnio zahtjev za {1} na {2}:,
+Employee {0} has no maximum benefit amount,Zaposlenik {0} nema maksimalnu naknadu,
 Employee {0} is not active or does not exist,Zaposlenik {0} nije aktivan ili ne postoji,
-Employee {0} is on Leave on {1},Zaposlenik {0} je ostavio na {1},
-Employee {0} of grade {1} have no default leave policy,Zaposlenik {0} razreda {1} nema pravilnik o zadanom ostavljanju,
-Employee {0} on Half day on {1},Zaposlenik {0} na pola dana {1},
-Enable,Omogućiti,
-Enable / disable currencies.,Omogućite / onemogućite valute.,
-Enable Template,Omogući predložak,
-"Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Omogućavanjem opcije &quot;Koristi za košaricu&quot;, jer je omogućena košarica za kupnju i postoji barem jedno porezno pravilo za košaricu",
+Employee {0} is on Leave on {1},Zaposlenik {0} je na dopustu na {1},
+Employee {0} of grade {1} have no default leave policy,Zaposlenik {0} razreda {1} nema zadanu politiku odlaska,
+Employee {0} on Half day on {1},Zaposlenik {0} na pola dana na {1},
+Enable / disable currencies.,Omogućiti / onemogućiti valute .,
+"Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Omogućavanje &#39;Koristi za košaricu&#39;, kao što Košarica je omogućena i tamo bi trebao biti barem jedan Porezna pravila za Košarica",
 End Date,Datum završetka,
 End Date can not be less than Start Date,Datum završetka ne može biti manji od početnog datuma,
-End Date cannot be before Start Date.,Datum završetka ne može biti prije početnog datuma.,
-End Year,Završna godina,
-End Year cannot be before Start Year,Završna godina ne može biti prije početka godine,
-End on,Završite,
-End time cannot be before start time,Vrijeme završetka ne može biti prije početka,
-Ends On date cannot be before Next Contact Date.,Završava na datum ne može biti prije sljedećeg datuma kontakta.,
+End Date cannot be before Start Date.,Datum završetka ne može biti prije datuma početka.,
+End Year,Godina završetka,
+End Year cannot be before Start Year,Godina završetka ne može biti prije Početak godine,
+End on,Završi,
+End time cannot be before start time,Krajnje vrijeme ne može biti prije početka,
+Ends On date cannot be before Next Contact Date.,Završava Datum ne može biti prije Sljedećeg datuma kontakta.,
 Energy,energija,
 Engineer,Inženjer,
-Enough Parts to Build,Dovoljno dijelova za izgradnju,
+Enough Parts to Build,Dosta Dijelovi za izgradnju,
 Enroll,Upisati,
-Enrolling student,Upis studenta,
-Enrolling students,Upis studenata,
-Enter depreciation details,Unesite detalje amortizacije,
+Enrolling student,upisa studenata,
+Enrolling students,Upisuje studente,
+Enter depreciation details,Unesite pojedinosti amortizacije,
 Enter the Bank Guarantee Number before submittting.,Unesite broj bankarske garancije prije slanja.,
 Enter the name of the Beneficiary before submittting.,Unesite ime Korisnika prije slanja.,
-Enter the name of the bank or lending institution before submittting.,Prije slanja upišite naziv banke ili kreditne institucije.,
-Enter value betweeen {0} and {1},Unesite vrijednost između {0} i {1},
-Enter value must be positive,Unesite vrijednost mora biti pozitivna,
+Enter the name of the bank or lending institution before submittting.,Unesite naziv banke ili institucije posudbe prije slanja.,
+Enter value betweeen {0} and {1},Unesite vrijednost betweeen {0} i {1},
+Enter value must be positive,Unesite vrijednost moraju biti pozitivne,
 Entertainment & Leisure,Zabava i slobodno vrijeme,
-Entertainment Expenses,Troškovi zabave,
+Entertainment Expenses,Zabava Troškovi,
 Equity,pravičnost,
-Error evaluating the criteria formula,Pogreška pri procjeni formule kriterija,
-Error in formula or condition: {0},Pogreška u formuli ili uvjetu: {0},
-Error while processing deferred accounting for {0},Pogreška pri obradi odgođenog računovodstva za {0},
-Error: Not a valid id?,Pogreška: nije važeći ID?,
-Estimated Cost,Procijenjena vrijednost,
+Error evaluating the criteria formula,Pogreška u procjeni formule kriterija,
+Error in formula or condition: {0},Greška u formuli ili stanja: {0},
+Error while processing deferred accounting for {0},Pogreška tijekom obrade odgođenog računovodstva za {0},
+Error: Not a valid id?,Pogreška: Nije valjana id?,
+Estimated Cost,Procjena cijene,
 Evaluation,procjena,
-"Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Čak i ako postoji više pravila za određivanje cijena s najvišim prioritetom, primjenjuju se sljedeći interni prioriteti:",
-Event Location,Mjesto događaja,
+"Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Čak i ako postoji više Cijene pravila s najvišim prioritetom, onda sljedeći interni prioriteti primjenjuje se:",
+Event Location,Lokacija događaja,
 Event Name,Naziv događaja,
 Exchange Gain/Loss,Razmjena dobit / gubitak,
-Exchange Rate Revaluation master.,Glavni tečaj revalorizacije tečaja.,
-Exchange Rate must be same as {0} {1} ({2}),Tečaj mora biti isti kao i {0} {1} ({2}),
-Excise Invoice,Trošarinski račun,
+Exchange Rate Revaluation master.,Master master revalorizacije tečaja,
+Exchange Rate must be same as {0} {1} ({2}),Tečaj mora biti ista kao {0} {1} ({2}),
+Excise Invoice,Trošarine Račun,
 Execution,Izvršenje,
-Executive Search,Izvršna Pretraga,
+Executive Search,Executive Search,
 Expand All,Proširi sve,
-Expected Delivery Date,Očekivani datum isporuke,
-Expected Delivery Date should be after Sales Order Date,Očekivani datum isporuke trebao bi biti nakon datuma prodajnog naloga,
+Expected Delivery Date,Očekivani rok isporuke,
+Expected Delivery Date should be after Sales Order Date,Očekivani datum isporuke trebao bi biti nakon datuma prodaje,
 Expected End Date,Očekivani datum završetka,
 Expected Hrs,Očekivani sati,
 Expected Start Date,Očekivani datum početka,
-Expense,Trošak,
-Expense / Difference account ({0}) must be a 'Profit or Loss' account,Račun rashoda / razlike ({0}) mora biti račun dobiti ili gubitka,
-Expense Account,Račun troškova,
-Expense Claim,Trošak potraživanja,
-Expense Claim for Vehicle Log {0},Zahtjev za trošak za zapisnik vozila {0},
-Expense Claim {0} already exists for the Vehicle Log,Zahtjev troškova {0} već postoji za dnevnik vozila,
-Expense Claims,Troškovi potraživanja,
-Expense account is mandatory for item {0},Račun troškova je obavezan za stavku {0},
-Expense or Difference account is mandatory for Item {0} as it impacts overall stock value,Račun troškova ili razlike obvezan je za stavku {0} jer utječe na ukupnu vrijednost dionica,
+Expense,rashod,
+Expense / Difference account ({0}) must be a 'Profit or Loss' account,Rashodi / Razlika računa ({0}) mora biti račun 'dobit ili gubitak',
+Expense Account,Rashodi račun,
+Expense Claim,Rashodi polaganja,
+Expense Claim for Vehicle Log {0},Rashodi Zahtjev za vozila Prijavite {0},
+Expense Claim {0} already exists for the Vehicle Log,Rashodi Zatraži {0} već postoji za vozila Prijava,
+Expense Claims,Rashodi Potraživanja,
+Expense account is mandatory for item {0},Rashodi račun je obvezna za predmet {0},
+Expense or Difference account is mandatory for Item {0} as it impacts overall stock value,Rashodi ili razlika račun je obvezna za točke {0} jer utječe na ukupnu vrijednost dionica,
 Expenses,Troškovi,
-Expenses Included In Asset Valuation,Rashodi su uključeni u procjenu imovine,
-Expenses Included In Valuation,Troškovi uključeni u procjenu,
+Expenses Included In Asset Valuation,Troškovi uključeni u procjenu vrijednosti imovine,
+Expenses Included In Valuation,Troškovi uključeni u vrednovanje,
 Expired Batches,Istekle serije,
-Expires On,Ističe,
-Expiring On,Ističe,
-Expiry (In Days),Istek (u danima),
+Expires On,istječe,
+Expiring On,Istječe,
+Expiry (In Days),Rok (u danima),
 Explore,Istražiti,
 Export E-Invoices,Izvoz E-računa,
-Extra Large,Jako veliko,
-Extra Small,Ekstra malo,
-Failed,Neuspjeh,
-Failed to create website,Izrada web-lokacije nije uspjela,
-Failed to install presets,Nije uspjelo instaliranje unaprijed definiranih postavki,
+Extra Large,Extra large,
+Extra Small,Dodatni Mali,
+Failed,Neuspješno,
+Failed to create website,Izrada web mjesta nije uspjela,
+Failed to install presets,Instalacija preseta nije uspjela,
 Failed to login,Prijava nije uspjela,
-Failed to setup company,Nije uspjelo postavljanje tvrtke,
+Failed to setup company,Postavljanje tvrtke nije uspjelo,
 Failed to setup defaults,Nije uspjelo postavljanje zadanih postavki,
-Failed to setup post company fixtures,Nije uspjelo postavljanje pomagala za tvrtke,
+Failed to setup post company fixtures,Postavljanje post-tvrtki nije uspjelo,
 Fee,Pristojba,
-Fee Created,Naknada stvorena,
-Fee Creation Failed,Stvaranje naknade nije uspjelo,
-Fee Creation Pending,Naknada za kreiranje naknade u tijeku,
-Fee Records Created - {0},Napravljeni zapisi o naknadama - {0},
-Feedback,Povratne informacije,
+Fee Created,Kreirana naknada,
+Fee Creation Failed,Izrada pristojbe nije uspjela,
+Fee Creation Pending,Kreiranje pristojbe na čekanju,
+Fee Records Created - {0},Naknada zapisa nastalih - {0},
+Feedback,Povratna veza,
 Fees,naknade,
-Fetch Data,Dohvati podatke,
+Fetch Data,Dohvatite podatke,
 Fetch Subscription Updates,Dohvati ažuriranja pretplate,
-Fetch based on FIFO,Dohvat na temelju FIFO-a,
-Fetch exploded BOM (including sub-assemblies),Dohvati eksplodiranu sastavnicu (uključujući podsklopove),
+Fetch exploded BOM (including sub-assemblies),Fetch eksplodirala BOM (uključujući i podsklopova ),
 Fetching records......,Dohvaćanje zapisa ......,
 Fill the form and save it,Ispunite obrazac i spremite ga,
-Filter Employees By (Optional),Filtrirajte zaposlenike prema (neobavezno),
-"Filter Fields Row #{0}: Fieldname <b>{1}</b> must be of type ""Link"" or ""Table MultiSelect""",Polja filtra Red # {0}: Ime polja <b>{1}</b> mora biti tipa &quot;Link&quot; ili &quot;Table MultiSelect&quot;,
-Filter Total Zero Qty,Filtrirajte ukupni broj nula,
-Finance Book,Knjiga knjiga,
+Filter Employees By (Optional),Filtriraj zaposlenike prema (neobavezno),
+"Filter Fields Row #{0}: Fieldname <b>{1}</b> must be of type ""Link"" or ""Table MultiSelect""",Redak polja filtra # {0}: Naziv polja <b>{1}</b> mora biti tipa &quot;Link&quot; ili &quot;Table MultiSelect&quot;,
+Filter Total Zero Qty,Filtar Ukupno Zero Količina,
+Finance Book,Financijska knjiga,
 Financial / accounting year.,Financijska / obračunska godina.,
 Financial Services,Financijske usluge,
 Financial Statements,Financijska izvješća,
 Financial Year,Financijska godina,
 Finish,Završi,
-Finished Good,Gotovo dobro,
-Finished Good Item Code,Gotova šifra predmeta,
-Finished Goods,Gotova roba,
-Finished Item {0} must be entered for Manufacture type entry,Završena stavka {0} mora biti unesena za unos tipa proizvodnje,
-Finished product quantity <b>{0}</b> and For Quantity <b>{1}</b> cannot be different,Količina gotovog proizvoda <b>{0}</b> i Za količinu <b>{1}</b> ne može biti različita,
-"Fiscal Regime is mandatory, kindly set the fiscal regime in the company {0}","Fiskalni režim je obvezan, ljubazno odredite fiskalni režim u tvrtki {0}",
+Finished Good,Izvrsno dobro,
+Finished Good Item Code,Gotov kod dobra stavka,
+Finished Goods,Gotovi proizvodi,
+Finished Item {0} must be entered for Manufacture type entry,Gotovi Stavka {0} mora biti upisana za tip Proizvodnja upis,
+Finished product quantity <b>{0}</b> and For Quantity <b>{1}</b> cannot be different,Količina gotovog proizvoda <b>{0}</b> i za količinu <b>{1}</b> ne može se razlikovati,
+"Fiscal Regime is mandatory, kindly set the fiscal regime in the company {0}","Fiskalni režim je obvezan, ljubazno postavite fiskalni režim u poduzeću {0}",
 Fiscal Year,Fiskalna godina,
-Fiscal Year End Date should be one year after Fiscal Year Start Date,Datum završetka fiskalne godine trebao bi biti godinu dana nakon početka fiskalne godine,
-Fiscal Year Start Date and Fiscal Year End Date are already set in Fiscal Year {0},Početni datum fiskalne godine i datum završetka fiskalne godine već su postavljeni u fiskalnoj godini {0},
-Fiscal Year Start Date should be one year earlier than Fiscal Year End Date,Datum početka fiskalne godine trebao bi biti jedna godina ranije od datuma završetka fiskalne godine,
+Fiscal Year End Date should be one year after Fiscal Year Start Date,Datum završetka fiskalne godine trebao bi biti godinu dana nakon datuma početka fiskalne godine,
+Fiscal Year Start Date and Fiscal Year End Date are already set in Fiscal Year {0},Fiskalna godina Datum početka i datum završetka fiskalne godine već su postavljeni u fiskalnoj godini {0},
+Fiscal Year Start Date should be one year earlier than Fiscal Year End Date,Datum početka fiskalne godine trebao bi biti godinu dana ranije od datuma završetka fiskalne godine,
 Fiscal Year {0} does not exist,Fiskalna godina {0} ne postoji,
-Fiscal Year {0} is required,Potrebna je fiskalna godina {0},
+Fiscal Year {0} is required,Fiskalna godina {0} je potrebno,
 Fiscal Year {0} not found,Fiskalna godina {0} nije pronađena,
 Fiscal Year: {0} does not exists,Fiskalna godina: {0} ne postoji,
-Fixed Asset,Fiksna imovina,
-Fixed Asset Item must be a non-stock item.,Stavka osnovnog sredstva mora biti stavka koja nije na zalihama.,
-Fixed Assets,Stalna sredstva,
-Following Material Requests have been raised automatically based on Item's re-order level,Sljedeći zahtjevi za materijal podignuti su automatski na temelju ponovnog naručivanja stavke,
+Fixed Asset,Dugotrajna imovina,
+Fixed Asset Item must be a non-stock item.,Fiksni Asset Stavka mora biti ne-stock točka a.,
+Fixed Assets,Dugotrajne imovine,
+Following Material Requests have been raised automatically based on Item's re-order level,Sljedeći materijal Zahtjevi su automatski podigli na temelju stavke razini ponovno narudžbi,
 Following accounts might be selected in GST Settings:,Sljedeći računi mogu biti odabrani u GST postavkama:,
-Following course schedules were created,Stvoreni su sljedeći rasporedi tečajeva,
-Following item {0} is not marked as {1} item. You can enable them as {1} item from its Item master,Sljedeća stavka {0} nije označena kao {1} stavka. Možete ih omogućiti kao {1} stavku iz glavnog elementa stavke,
-Following items {0} are not marked as {1} item. You can enable them as {1} item from its Item master,Sljedeće stavke {0} nisu označene kao {1} stavka. Možete ih omogućiti kao {1} stavku iz glavnog elementa stavke,
+Following course schedules were created,Izrađeni su sljedeći raspored tečajeva,
+Following item {0} is not marked as {1} item. You can enable them as {1} item from its Item master,Sljedeća stavka {0} nije označena kao {1} stavka. Možete ih omogućiti kao {1} stavku iz svog master stavke,
+Following items {0} are not marked as {1} item. You can enable them as {1} item from its Item master,Sljedeće stavke {0} nisu označene kao {1} stavka. Možete ih omogućiti kao {1} stavku iz svog master stavke,
 Food,Hrana,
-"Food, Beverage & Tobacco","Hrana, piće i duhan",
+"Food, Beverage & Tobacco","Hrana , piće i duhan",
 For,Za,
-"For 'Product Bundle' items, Warehouse, Serial No and Batch No will be considered from the 'Packing List' table. If Warehouse and Batch No are same for all packing items for any 'Product Bundle' item, those values can be entered in the main Item table, values will be copied to 'Packing List' table.","Za stavke &quot;Paket proizvoda&quot;, Skladište, Serijski broj i Br. Serije smatrat će se iz tablice &quot;Popis pakiranja&quot;. Ako su Skladište i Serijski broj isti za sve pakirne stavke za bilo koju stavku &quot;Paket proizvoda&quot;, te se vrijednosti mogu unijeti u glavnu tablicu artikala, vrijednosti će se kopirati u tablicu &quot;Popis za pakiranje&quot;.",
-For Employee,Za zaposlenika,
-For Quantity (Manufactured Qty) is mandatory,Za količinu (proizvedena količina) obavezno je,
-For Supplier,Za dobavljača,
-For Warehouse,Za skladište,
-For Warehouse is required before Submit,Za skladište potrebno je prije slanja,
-"For an item {0}, quantity must be negative number",Za stavku {0} količina mora biti negativni broj,
+"For 'Product Bundle' items, Warehouse, Serial No and Batch No will be considered from the 'Packing List' table. If Warehouse and Batch No are same for all packing items for any 'Product Bundle' item, those values can be entered in the main Item table, values will be copied to 'Packing List' table.","Za &#39;proizvod Bundle&#39; predmeta, skladište, rednim i hrpa Ne smatrat će se iz &quot;Popis pakiranja &#39;stol. Ako Skladište i serije ne su isti za sve pakiranje predmeta za bilo &#39;proizvod Bundle&#39; točke, te vrijednosti može se unijeti u glavnoj točki stol, vrijednosti će se kopirati u &#39;pakiranje popis&#39; stol.",
+For Employee,Za zaposlenom,
+For Quantity (Manufactured Qty) is mandatory,Za Količina (Proizvedeno Kol) je obavezno,
+For Supplier,za Supplier,
+For Warehouse,Za galeriju,
+For Warehouse is required before Submit,Jer je potrebno Warehouse prije Podnijeti,
+"For an item {0}, quantity must be negative number","Za stavku {0}, količina mora biti negativni broj",
 "For an item {0}, quantity must be positive number","Za stavku {0}, količina mora biti pozitivan broj",
-"For job card {0}, you can only make the 'Material Transfer for Manufacture' type stock entry",Za karticu posla {0} možete unijeti samo stavku &quot;Prijenos materijala za proizvodnju&quot;,
-"For row {0} in {1}. To include {2} in Item rate, rows {3} must also be included","Za redak {0} u {1}. Da biste uključili {2} u stavku Stavka, moraju biti uključeni i redovi {3}",
-For row {0}: Enter Planned Qty,Za redak {0}: Unesite planiranu količinu,
-"For {0}, only credit accounts can be linked against another debit entry",Za {0} mogu se povezati samo kreditni računi s drugim debitnim unosom,
-"For {0}, only debit accounts can be linked against another credit entry",Za {0} mogu se povezati samo računi zaduženja s drugim unosom kredita,
+"For job card {0}, you can only make the 'Material Transfer for Manufacture' type stock entry",Za radnu karticu {0} možete izvršiti samo unos vrste zaliha &quot;Prijenos materijala za proizvodnju&quot;,
+"For row {0} in {1}. To include {2} in Item rate, rows {3} must also be included","Za red {0} {1}. Da su {2} u stopu točke, redovi {3} također moraju biti uključeni",
+For row {0}: Enter Planned Qty,Za redak {0}: unesite planirani iznos,
+"For {0}, only credit accounts can be linked against another debit entry","Za {0}, samo kreditne računi se mogu povezati protiv drugog ulaska debitnom",
+"For {0}, only debit accounts can be linked against another credit entry","Za {0}, samo debitne računi se mogu povezati protiv druge kreditne stupanja",
 Form View,Prikaz obrasca,
-Forum Activity,Aktivnost foruma,
-Free item code is not selected,Kôd besplatne stavke nije odabran,
-Freight and Forwarding Charges,Naknade za prijevoz i otpremu,
+Forum Activity,Aktivnost na forumu,
+Free item code is not selected,Besplatni kod predmeta nije odabran,
+Freight and Forwarding Charges,Teretni i Forwarding Optužbe,
 Friday,petak,
-From,Iz,
+From,Od,
 From Address 1,Od adrese 1,
 From Address 2,Od adrese 2,
-From Currency and To Currency cannot be same,Iz valute i valute ne mogu biti isti,
-From Date and To Date lie in different Fiscal Year,Od datuma do datuma leže u različitoj fiskalnoj godini,
-From Date cannot be greater than To Date,Datum ne može biti veći od datuma,
-From Date must be before To Date,Od datuma mora biti prije datuma,
-From Date should be within the Fiscal Year. Assuming From Date = {0},Od datuma treba biti unutar fiskalne godine. Pretpostavljajući od datuma = {0},
-From Date {0} cannot be after employee's relieving Date {1},Od datuma {0} ne može biti nakon datuma slanja zaposlenika {1},
-From Date {0} cannot be before employee's joining Date {1},Od datuma {0} ne može biti prije datuma pridruživanja zaposlenika {1},
-From Datetime,Iz Datetime,
-From Delivery Note,Iz obavijesti o isporuci,
+From Currency and To Currency cannot be same,Od valute i valuta ne mogu biti isti,
+From Date and To Date lie in different Fiscal Year,Datum i datum leže u različitoj fiskalnoj godini,
+From Date cannot be greater than To Date,Od datuma ne može biti veća od To Date,
+From Date must be before To Date,Od datuma mora biti prije do danas,
+From Date should be within the Fiscal Year. Assuming From Date = {0},Od datuma trebao biti u fiskalnoj godini. Uz pretpostavku Od datuma = {0},
+From Date {0} cannot be after employee's relieving Date {1},Od datuma {0} ne može biti nakon datuma olakšavanja zaposlenika {1},
+From Date {0} cannot be before employee's joining Date {1},Od datuma {0} ne može biti prije nego što se zaposlenik pridružio datumu {1},
+From Datetime,Od datetime,
+From Delivery Note,Od otpremnici,
 From Fiscal Year,Od fiskalne godine,
-From GSTIN,Iz GSTIN-a,
-From Party Name,Iz naziva stranke,
+From GSTIN,Od GSTIN-a,
+From Party Name,Od imena stranke,
 From Pin Code,Iz PIN koda,
-From Place,S mjesta,
-From Range has to be less than To Range,Iz raspona mora biti manje od raspona,
-From State,Od države,
+From Place,Od mjesta,
+From Range has to be less than To Range,Od Raspon mora biti manji od u rasponu,
+From State,Iz države,
 From Time,S vremena,
-From Time Should Be Less Than To Time,Od vremena bi trebalo biti manje od vremena,
-From Time cannot be greater than To Time.,Iz vremena ne može biti veće od vremena.,
-"From a supplier under composition scheme, Exempt and Nil rated","Od dobavljača prema shemi sastava, izuzeti i Nil ocijenjeno",
-From and To dates required,Od i do potrebnih datuma,
+From Time Should Be Less Than To Time,Iz vremena treba biti manje od vremena,
+From Time cannot be greater than To Time.,S vremena ne može biti veća od na vrijeme.,
+"From a supplier under composition scheme, Exempt and Nil rated","Od dobavljača prema shemi sastava, Oslobođeno i Nil",
+From and To dates required,Od i Do datuma zahtijevanih,
 From date can not be less than employee's joining date,Od datuma ne može biti manji od datuma pridruživanja zaposlenika,
-From value must be less than to value in row {0},Iz vrijednosti mora biti manje od vrijednosti u retku {0},
+From value must be less than to value in row {0},Od vrijednosti mora biti manje nego vrijednosti u redu {0},
 From {0} | {1} {2},Od {0} | {1} {2},
 Fuel Price,Cijena goriva,
-Fuel Qty,Količina goriva,
+Fuel Qty,Gorivo Kol,
 Fulfillment,Ispunjenje,
-Full Name,Puno ime,
-Full-time,Puno vrijeme,
-Fully Depreciated,Potpuno amortizirano,
-Furnitures and Fixtures,Namještaj i inventar,
-"Further accounts can be made under Groups, but entries can be made against non-Groups","Daljnji računi mogu se izraditi u grupi, ali unosi se mogu vršiti protiv ne-grupa",
-Further cost centers can be made under Groups but entries can be made against non-Groups,"Daljnja mjesta troška mogu se izraditi u grupi, ali unosi se mogu vršiti protiv ne-grupa",
-Further nodes can be only created under 'Group' type nodes,Daljnji čvorovi mogu se kreirati samo u čvorovima tipa &#39;Grupa&#39;,
+Full Name,Ime i prezime,
+Full-time,Puno radno vrijeme,
+Fully Depreciated,potpuno amortizirana,
+Furnitures and Fixtures,Namještaja i rasvjete,
+"Further accounts can be made under Groups, but entries can be made against non-Groups","Daljnje računi mogu biti u skupinama, ali unose se može podnijeti protiv nesrpskog Groups",
+Further cost centers can be made under Groups but entries can be made against non-Groups,"Daljnje troška mogu biti u skupinama, ali unose se može podnijeti protiv nesrpskog Groups",
+Further nodes can be only created under 'Group' type nodes,"Daljnje čvorovi mogu se samo stvorio pod ""Grupa"" tipa čvorova",
 Future dates not allowed,Budući datumi nisu dopušteni,
 GSTIN,GSTIN,
 GSTR3B-Form,GSTR3B-Oblik,
-Gain/Loss on Asset Disposal,Dobitak / gubitak na raspolaganju,
-Gantt Chart,Gantt karta,
-Gantt chart of all tasks.,Ganttov plan svih zadataka.,
+Gain/Loss on Asset Disposal,Dobit / gubitak od imovine Odlaganje,
+Gantt Chart,Gantogram,
+Gantt chart of all tasks.,Gantogram svih zadataka.,
 Gender,rod,
-General,General,
+General,Opći,
 General Ledger,Glavna knjiga,
-Generate Material Requests (MRP) and Work Orders.,Generirajte zahtjeve materijala (MRP) i radne naloge.,
-Generate Secret,Generiraj tajnu,
-Get Details From Declaration,Saznajte detalje iz izjave,
-Get Employees,Nabavite zaposlenike,
-Get Invocies,Nabavite račune,
-Get Invoices,Nabavite dostavnice,
-Get Invoices based on Filters,Dobijte dostavnice na temelju filtara,
-Get Items from BOM,Nabavite stavke iz BOM-a,
-Get Items from Healthcare Services,Nabavite artikle iz zdravstvenih usluga,
-Get Items from Prescriptions,Nabavite stavke iz recepta,
-Get Items from Product Bundle,Nabavite stavke iz skupa proizvoda,
+Generate Material Requests (MRP) and Work Orders.,Generirajte materijalne zahtjeve (MRP) i radne naloge.,
+Generate Secret,Generirajte tajnu,
+Get Details From Declaration,Potražite detalje iz deklaracije,
+Get Employees,Dobiti zaposlenike,
+Get Invocies,Nabavite fakture,
+Get Invoices,Nabavite fakture,
+Get Invoices based on Filters,Nabavite fakture na temelju Filtri,
+Get Items from BOM,Kreiraj proizvode od sastavnica (BOM),
+Get Items from Healthcare Services,Preuzmite stavke iz zdravstvenih usluga,
+Get Items from Prescriptions,Preuzmite stavke iz recepata,
+Get Items from Product Bundle,Se predmeti s Bundle proizvoda,
 Get Suppliers,Nabavite dobavljače,
-Get Suppliers By,Nabavite dobavljače,
+Get Suppliers By,Nabavite dobavljače po,
 Get Updates,Nabavite ažuriranja,
-Get customers from,Nabavite klijente,
-Get from,Dobiti od,
-Get from Patient Encounter,Dođi od susreta s pacijentom,
+Get customers from,Kupujte korisnike,
+Get from Patient Encounter,Dobiti od Patient Encounter,
 Getting Started,Početak rada,
 Global settings for all manufacturing processes.,Globalne postavke za sve proizvodne procese.,
-Go to the Desktop and start using ERPNext,Idite na radnu površinu i počnite koristiti ERPNext,
-GoCardless SEPA Mandate,Mandat SEPA bez GoCard kartice,
-GoCardless payment gateway settings,Postavke GoCardless gateway za plaćanje,
+Go to the Desktop and start using ERPNext,Idi na radnu površinu i početi koristiti ERPNext,
+GoCardless SEPA Mandate,GoCardless SEPA mandat,
+GoCardless payment gateway settings,Postavke GoCardless gateway plaćanja,
 Goal and Procedure,Cilj i postupak,
-Goals cannot be empty,Ciljevi ne mogu biti prazni,
+Goals cannot be empty,Ciljevi ne može biti prazan,
 Goods In Transit,Roba u tranzitu,
-Goods Transferred,Prijenos robe,
-Goods and Services Tax (GST India),Porez na dobra i usluge (GST Indija),
-Goods are already received against the outward entry {0},Roba je već primljena prema vanjskom unosu {0},
+Goods Transferred,Prenesena roba,
+Goods and Services Tax (GST India),Porez na robu i usluge (GST India),
+Goods are already received against the outward entry {0},Roba je već primljena prema vanjskom ulazu {0},
 Government,Vlada,
-Grand Total,Ukupno,
+Grand Total,Ukupno za platiti,
 Grant,Grant,
-Grant Application,Zahtjev za dodjelu bespovratnih sredstava,
-Grant Leaves,Odobri lišće,
-Grant information.,Odobri informacije.,
-Grocery,mješovitom,
+Grant Application,Grant Application,
+Grant Leaves,Odustani od ostavljanja,
+Grant information.,Dati informacije.,
+Grocery,Trgovina prehrambenom robom,
 Gross Pay,Bruto plaća,
 Gross Profit,Bruto dobit,
 Gross Profit %,Bruto dobit%,
 Gross Profit / Loss,Bruto dobit / gubitak,
-Gross Purchase Amount,Bruto iznos kupnje,
-Gross Purchase Amount is mandatory,Bruto iznos kupnje je obavezan,
-Group by Account,Grupirajte po računu,
+Gross Purchase Amount,Bruto Iznos narudžbe,
+Gross Purchase Amount is mandatory,Bruto Iznos narudžbe je obavezno,
+Group by Account,Grupa po računu,
 Group by Party,Grupirajte po stranci,
-Group by Voucher,Grupirajte po vaučeru,
-Group by Voucher (Consolidated),Grupiraj po vaučeru (konsolidirano),
-Group node warehouse is not allowed to select for transactions,Skladište čvora grupe nije dopušteno odabrati za transakcije,
-Group to Non-Group,Grupirajte u neku grupu,
-Group your students in batches,Grupirajte učenike u grupama,
+Group by Voucher,Grupa po jamcu,
+Group by Voucher (Consolidated),Grupiranje po vaučerima (konsolidirani),
+Group node warehouse is not allowed to select for transactions,Čvor Grupa skladište ne smije odabrati za transakcije,
+Group to Non-Group,Grupa ne-Group,
+Group your students in batches,Grupa vaši učenici u serijama,
 Groups,grupe,
-Guardian1 Email ID,ID e-pošte skrbnika1,
-Guardian1 Mobile No,Guardian1 Mobile br,
+Guardian1 Email ID,Guardian1 ID e-pošte,
+Guardian1 Mobile No,Guardian1 Mobile Ne,
 Guardian1 Name,Ime Guardian1,
 Guardian2 Email ID,ID e-pošte Guardian2,
-Guardian2 Mobile No,Guardian2 Mobile br,
+Guardian2 Mobile No,Guardian2 Mobile Ne,
 Guardian2 Name,Ime Guardian2,
-HR Manager,HR Manager,
+HR Manager,HR menadžer,
 HSN,HSN,
 HSN/SAC,HSN / SAC,
-Half Day Date is mandatory,Datum polu-dana je obavezan,
-Half Day Date should be between From Date and To Date,Datum polu-dana trebao bi biti između datuma i datuma,
-Half Day Date should be in between Work From Date and Work End Date,Datum polu-dana trebao bi biti između radnog datuma i datuma završetka posla,
-Half day date should be in between from date and to date,Datum polu-dana trebao bi biti između datuma i datuma,
+Half Day Date is mandatory,Poludnevni datum je obavezan,
+Half Day Date should be between From Date and To Date,Poludnevni Datum treba biti između od datuma i datuma,
+Half Day Date should be in between Work From Date and Work End Date,Poludnevni datum bi trebao biti između rada od datuma i datuma završetka radnog vremena,
+Half day date should be in between from date and to date,Poludnevni datum treba biti između datuma i do datuma,
 Half-Yearly,Polugodišnje,
 Hardware,Hardver,
 Head of Marketing and Sales,Voditelj marketinga i prodaje,
-Health Care,Zdravstvena zaštita,
+Health Care,Health Care,
 Healthcare,Zdravstvo,
-Healthcare (beta),Zdravstvena zaštita (beta),
-Healthcare Practitioner,Zdravstveni radnik,
-Healthcare Practitioner not available on {0},Zdravstveni radnik nije dostupan na {0},
-Healthcare Practitioner {0} not available on {1},Zdravstveni radnik {0} nije dostupan na {1},
-Healthcare Service Unit,Služba za zdravstvenu zaštitu,
-Healthcare Service Unit Tree,Stablo jedinica zdravstvenih usluga,
-Healthcare Service Unit Type,Vrsta jedinice zdravstvene službe,
+Healthcare (beta),Zdravstvo (beta),
+Healthcare Practitioner,Zdravstveni praktičar,
+Healthcare Practitioner not available on {0},Zdravstvena praksa nije dostupna na {0},
+Healthcare Practitioner {0} not available on {1},Zdravstveni praktičar {0} nije dostupan na {1},
+Healthcare Service Unit,Jedinica za zdravstvenu zaštitu,
+Healthcare Service Unit Tree,Tree zdravstvene usluge,
+Healthcare Service Unit Type,Vrsta jedinice za pružanje zdravstvene zaštite,
 Healthcare Services,Zdravstvene usluge,
 Healthcare Settings,Postavke zdravstvene zaštite,
 Hello,zdravo,
-Help Results for,Rezultati pomoći za,
+Help Results for,Pomoć za rezultate,
 High,visok,
 High Sensitivity,Visoka osjetljivost,
-Hold,držati,
-Hold Invoice,Zadržite fakturu,
+Hold,Zadrži,
+Hold Invoice,Držite fakturu,
 Holiday,Odmor,
-Holiday List,Popis za odmor,
-Hotel Rooms of type {0} are unavailable on {1},Hotelske sobe tipa {0} nisu dostupne na {1},
+Holiday List,Popis praznika,
+Hotel Rooms of type {0} are unavailable on {1},Hotel Sobe tipa {0} nisu dostupne na {1},
 Hotels,Hoteli,
 Hours,Sati,
-House rent paid days overlapping with {0},Plaćeni dani za najam kuća koji se preklapaju s {0},
-House rented dates required for exemption calculation,Datumi iznajmljivanja kuće potrebni za izračun izuzeća,
-House rented dates should be atleast 15 days apart,Datumi iznajmljivanja kuća trebali bi biti u razmaku od najmanje 15 dana,
+House rent paid days overlapping with {0},"Najam plaćenih dana za kuću, preklapajući se sa {0}",
+House rented dates required for exemption calculation,Kuća iznajmljuje datume potrebne za izračun izuzeća,
+House rented dates should be atleast 15 days apart,Datumi iznajmljenih kuća trebaju biti najmanje 15 dana,
 How Pricing Rule is applied?,Kako se primjenjuje Pravilo cijena?,
-Hub Category,Kategorija središta,
+Hub Category,Kategorija hubova,
 Human Resource,Ljudski resursi,
 Human Resources,Ljudski resursi,
 IFSC Code,IFSC kod,
 IGST Amount,Iznos IGST,
-ITC Available (whether in full op part),ITC dostupan (u cijelosti op),
-ITC Reversed,ITC obrnuto,
+ITC Available (whether in full op part),Dostupan ITC (bilo u cijelom op. Dijelu),
+ITC Reversed,ITC preokrenut,
 Identifying Decision Makers,Identificiranje donositelja odluka,
-"If Auto Opt In is checked, then the customers will be automatically linked with the concerned Loyalty Program (on save)","Ako je označena opcija Auto Opt In, klijenti će se automatski povezati s dotičnim programom vjernosti (na spremanje)",
-"If multiple Pricing Rules continue to prevail, users are asked to set Priority manually to resolve conflict.","Ako i dalje prevladavaju višestruka pravila za određivanje cijena, od korisnika se traži da ručno odrede prioritet za rješavanje sukoba.",
-"If selected Pricing Rule is made for 'Rate', it will overwrite Price List. Pricing Rule rate is the final rate, so no further discount should be applied. Hence, in transactions like Sales Order, Purchase Order etc, it will be fetched in 'Rate' field, rather than 'Price List Rate' field.","Ako je odabrano pravilo za određivanje cijene za &quot;Stopu&quot;, on će zamijeniti cjenik. Stopa cijene Pravilo je konačna stopa, tako da ne treba primijeniti daljnji popust. Dakle, u transakcijama kao što su prodajni nalog, narudžbenica itd., Ona će biti preuzeta u polje &#39;Rate&#39;, umjesto polja &#39;Rate List Rate&#39;.",
-"If two or more Pricing Rules are found based on the above conditions, Priority is applied. Priority is a number between 0 to 20 while default value is zero (blank). Higher number means it will take precedence if there are multiple Pricing Rules with same conditions.","Ako se na temelju gore navedenih uvjeta utvrde dva ili više Pravila za određivanje cijena, primjenjuje se Prioritet. Prioritet je broj između 0 i 20, dok je zadana vrijednost nula (prazno). Veći broj znači da će imati prednost ako postoji više pravila za određivanje cijena s istim uvjetima.",
-"If unlimited expiry for the Loyalty Points, keep the Expiry Duration empty or 0.","Ako neograničeno isteče za bodove lojalnosti, zadržite Trajanje isteka prazno ili 0.",
-"If you have any questions, please get back to us.","Ako imate bilo kakvih pitanja, javite nam se.",
-Ignore Existing Ordered Qty,Zanemari postojeći naručeni broj,
+"If Auto Opt In is checked, then the customers will be automatically linked with the concerned Loyalty Program (on save)","Ako je uključeno automatsko uključivanje, klijenti će se automatski povezati s predmetnim programom lojalnosti (u pripremi)",
+"If multiple Pricing Rules continue to prevail, users are asked to set Priority manually to resolve conflict.","Ako više Cijene pravila i dalje prevladavaju, korisnici su zamoljeni da postavite prioritet ručno riješiti sukob.",
+"If selected Pricing Rule is made for 'Rate', it will overwrite Price List. Pricing Rule rate is the final rate, so no further discount should be applied. Hence, in transactions like Sales Order, Purchase Order etc, it will be fetched in 'Rate' field, rather than 'Price List Rate' field.","Ako je odabrano Pravilo o cijenama za &quot;Razina&quot;, ona će prebrisati Cjenik. Cijena cijene je konačna stopa, tako da nema dodatnog popusta. Dakle, u transakcijama kao što su prodajni nalog, narudžbena narudžba i sl., To će biti dohvaćeno u polju &quot;Cijena&quot;, a ne polje &quot;Cjenovna lista&quot;.",
+"If two or more Pricing Rules are found based on the above conditions, Priority is applied. Priority is a number between 0 to 20 while default value is zero (blank). Higher number means it will take precedence if there are multiple Pricing Rules with same conditions.","Ako dva ili više Cijene Pravila nalaze se na temelju gore navedenih uvjeta, Prioritet se primjenjuje. Prioritet je broj između 0 do 20, a zadana vrijednost je nula (prazno). Veći broj znači da će imati prednost ako ima više Cijene pravila s istim uvjetima.",
+"If unlimited expiry for the Loyalty Points, keep the Expiry Duration empty or 0.","Ako je neograničeno isteklo za Points lojalnost, zadržite trajanje isteka prazno ili 0.",
+"If you have any questions, please get back to us.","Ako imate bilo kakvih pitanja, molimo vratite se u nas.",
+Ignore Existing Ordered Qty,Zanemari postojeće naručene količine,
 Import Data,Uvoz podataka,
-Import Day Book Data,Uvoz podataka o knjizi,
-Import Master Data,Uvezite glavne podatke,
-Import Successfull,Uspješan uvoz,
-Import in Bulk,Uvezi na veliko,
+Import Day Book Data,Uvezi podatke knjige dana,
+Import Master Data,Uvoz glavnih podataka,
+Import Successfull,Uvoz uspješno,
+Import in Bulk,Uvoz u rasutom stanju,
 Import of goods,Uvoz robe,
 Import of services,Uvoz usluga,
-Importing Items and UOMs,Uvoz stavki i UOM-ova,
-Importing Parties and Addresses,Uvoznice i adrese,
+Importing Items and UOMs,Uvoz predmeta i UOM-ova,
+Importing Parties and Addresses,Uvoz stranaka i adresa,
 In Maintenance,U održavanju,
 In Production,U proizvodnji,
 In Qty,U Kol,
-In Stock Qty,Na skladištu,
+In Stock Qty,Na skladištu Kol,
 In Stock: ,Na lageru:,
-In Value,U vrijednosti,
-"In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","U slučaju višeslojnog programa, korisnici će biti automatski dodijeljeni dotičnom stupu prema utrošenom trošku",
+In Value,u vrijednost,
+"In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","U slučaju višerazinskog programa, Kupci će biti automatski dodijeljeni odgovarajućem stupcu po njihovu potrošenom",
 Incentives,poticaji,
-Include Default Book Entries,Uključi zadane unose u knjigu,
-Include Exploded Items,Uključite eksplodirane stavke,
-Include POS Transactions,Uključite POS transakcije,
+Include Default Book Entries,Uključite zadane unose u knjige,
+Include Exploded Items,Uključi eksplodirane predmete,
+Include POS Transactions,Uključi POS transakcije,
 Include UOM,Uključi UOM,
 Included in Gross Profit,Uključeno u bruto dobit,
 Income,prihod,
 Income Account,Račun prihoda,
 Income Tax,Porez na dohodak,
 Incoming,dolazni,
-Incoming Rate,Dolazna stopa,
-Incorrect number of General Ledger Entries found. You might have selected a wrong Account in the transaction.,Pronađen je pogrešan broj unosa glavne knjige. Možda ste u transakciji odabrali pogrešan račun.,
-Increment cannot be 0,Povećanje ne može biti 0,
-Increment for Attribute {0} cannot be 0,Povećanje za atribut {0} ne može biti 0,
+Incoming Rate,Dolazni Stopa,
+Incorrect number of General Ledger Entries found. You might have selected a wrong Account in the transaction.,Neispravan broj glavnu knjigu unose naći. Možda ste odabrali krivi račun u transakciji.,
+Increment cannot be 0,Prirast ne može biti 0,
+Increment for Attribute {0} cannot be 0,Pomak za Osobina {0} ne može biti 0,
 Indirect Expenses,Neizravni troškovi,
-Indirect Income,Neizravni prihodi,
+Indirect Income,Neizravni dohodak,
 Individual,Pojedinac,
 Ineligible ITC,Neprihvatljiv ITC,
 Initiated,pokrenut,
-Inpatient Record,Stacionarni zapis,
-Insert,Umetnuti,
-Installation Note,Napomena o instalaciji,
-Installation Note {0} has already been submitted,Napomena za instalaciju {0} već je poslana,
-Installation date cannot be before delivery date for Item {0},Datum instalacije ne može biti prije datuma isporuke za stavku {0},
-Installing presets,Instaliranje unaprijed definiranih postavki,
-Institute Abbreviation,Kratica Instituta,
-Institute Name,ime Instituta,
+Inpatient Record,Popis bolesnika,
+Insert,Insert,
+Installation Note,Napomena instalacije,
+Installation Note {0} has already been submitted,Napomena instalacije {0} je već potvrđena,
+Installation date cannot be before delivery date for Item {0},Datum Instalacija ne može biti prije datuma isporuke za točke {0},
+Installing presets,Instaliranje unaprijed postavljenih postavki,
+Institute Abbreviation,Institut naziv,
+Institute Name,Naziv Institut,
 Instructor,Instruktor,
-Insufficient Stock,Nedovoljna zaliha,
-Insurance Start date should be less than Insurance End date,Početni datum osiguranja mora biti manji od datuma završetka osiguranja,
+Insufficient Stock,nedovoljna Stock,
+Insurance Start date should be less than Insurance End date,Osiguranje Datum početka mora biti manja od osiguranja datum završetka,
 Integrated Tax,Integrirani porez,
-Inter-State Supplies,Međudržavni potrepštine,
-Interest Amount,Iznos kamate,
-Intern,internirati,
+Inter-State Supplies,Međudržavne potrepštine,
+Interest Amount,Iznos kamata,
+Intern,stažista,
 Internet Publishing,Internet izdavaštvo,
-Intra-State Supplies,Unutar državne potrošnje,
-Invalid Attribute,Nevažeći atribut,
-Invalid Blanket Order for the selected Customer and Item,Nevažeća narudžbenica za odabranog kupca i stavku,
-Invalid Company for Inter Company Transaction.,Nevažeća tvrtka za međubankovnu transakciju.,
+Intra-State Supplies,Unutarnje države,
+Invalid Attribute,Pogrešna Osobina,
+Invalid Blanket Order for the selected Customer and Item,Nevažeća narudžba pokrivača za odabrane kupce i stavku,
+Invalid Company for Inter Company Transaction.,Nevažeća tvrtka za transakcije između kompanija.,
 Invalid GSTIN! A GSTIN must have 15 characters.,Nevažeći GSTIN! GSTIN mora imati 15 znakova.,
-Invalid GSTIN! First 2 digits of GSTIN should match with State number {0}.,Nevažeći GSTIN! Prve 2 znamenke GSTIN-a trebaju odgovarati broju države {0}.,
-Invalid GSTIN! The input you've entered doesn't match the format of GSTIN.,Nevažeći GSTIN! Unos koji ste unijeli ne odgovara formatu GSTIN-a.,
-Invalid Posting Time,Nevažeće vrijeme slanja,
-Invalid attribute {0} {1},Nevažeći atribut {0} {1},
-Invalid quantity specified for item {0}. Quantity should be greater than 0.,Nevažeća količina navedena za stavku {0}. Količina treba biti veća od 0.,
-Invalid reference {0} {1},Nevažeća referenca {0} {1},
-Invalid {0},Nevažeće {0},
-Invalid {0} for Inter Company Transaction.,Nevažeći {0} za internu transakciju tvrtke.,
-Invalid {0}: {1},Nevažeći broj {0}: {1},
+Invalid GSTIN! First 2 digits of GSTIN should match with State number {0}.,Nevažeći GSTIN! Prve dvije znamenke GSTIN-a trebaju se podudarati s državnim brojem {0}.,
+Invalid GSTIN! The input you've entered doesn't match the format of GSTIN.,Nevažeći GSTIN! Uneseni unos ne odgovara formatu GSTIN-a.,
+Invalid Posting Time,Nevažeće vrijeme knjiženja,
+Invalid attribute {0} {1},Neispravan atribut {0} {1},
+Invalid quantity specified for item {0}. Quantity should be greater than 0.,Navedena je pogrešna količina za proizvod {0}. Količina treba biti veći od 0.,
+Invalid reference {0} {1},Pogrešna referentni {0} {1},
+Invalid {0},Pogrešna {0},
+Invalid {0} for Inter Company Transaction.,Nevažeći {0} za transakciju unutar tvrtke.,
+Invalid {0}: {1},Pogrešna {0}: {1},
 Inventory,Inventar,
 Investment Banking,Investicijsko bankarstvo,
 Investments,Investicije,
-Invoice,Dostavnica,
-Invoice Created,Račun je izrađen,
-Invoice Discounting,Diskont fakture,
-Invoice Patient Registration,Registracija računa pacijenta,
-Invoice Posting Date,Datum knjiženja dostavnice,
-Invoice Type,Vrsta dostavnice,
-Invoice already created for all billing hours,Faktura je već izrađena za sve sate naplate,
-Invoice can't be made for zero billing hour,Faktura se ne može izvršiti za nulti sat naplate,
-Invoice {0} no longer exists,Faktura {0} više ne postoji,
+Invoice,Faktura,
+Invoice Created,Izračun je izrađen,
+Invoice Discounting,Popust na fakturama,
+Invoice Patient Registration,Registracija pacijenta računa,
+Invoice Posting Date,Račun knjiženja Datum,
+Invoice Type,Tip fakture,
+Invoice already created for all billing hours,Račun je već izrađen za sva vremena naplate,
+Invoice can't be made for zero billing hour,Račun se ne može izvršiti za nulti sat naplate,
+Invoice {0} no longer exists,Račun {0} više ne postoji,
 Invoiced,fakturirana,
-Invoiced Amount,Fakturirani iznos,
+Invoiced Amount,Dostavljeni iznos,
 Invoices,računi,
-Invoices for Costumers.,Fakture za kupce.,
-Inward Supplies(liable to reverse charge,Unutarnja opskrba (podložna obrnutoj naplati),
-Inward supplies from ISD,Unutarnja isporuka iz ISD-a,
-Inward supplies liable to reverse charge (other than 1 & 2 above),Unutarnji dobavljači koji podliježu obrnutoj naplati (osim gore navedenih 1 i 2),
-Is Existing Asset,Postoji postojeća imovina,
-Is Frozen,Zamrznuto je,
-Is Group,Is Group,
-Issue,Problem,
-Issue Material,Materijali za izdavanje,
+Invoices for Costumers.,Računi za kupce.,
+Inward Supplies(liable to reverse charge,Unutarnja potrošnja (može se obrnuti),
+Inward supplies from ISD,Unutarnje zalihe od ISD-a,
+Inward supplies liable to reverse charge (other than 1 & 2 above),Unutarnje zalihe podložne povratnom naboju (osim 1 i 2 gore),
+Is Existing Asset,Je Postojeći Imovina,
+Is Frozen,Je Frozen,
+Is Group,Je grupe,
+Issue,Izazov,
+Issue Material,Materijal Izazova,
 Issued,Izdano,
 Issues,pitanja,
-It is needed to fetch Item Details.,Potrebno je dohvatiti pojedinosti o stavci.,
-Item,Artikal,
+It is needed to fetch Item Details.,To je potrebno kako bi dohvatili Stavka Pojedinosti.,
+Item,Proizvod,
 Item 1,Stavka 1,
-Item 2,Točka 2,
-Item 3,Tačka 3,
-Item 4,Točka 4,
-Item 5,Tačka 5,
+Item 2,Stavka 2,
+Item 3,Stavka 3,
+Item 4,Stavka 4,
+Item 5,Stavka 5,
 Item Cart,Stavka Košarica,
-Item Code,Šifra artikla,
-Item Code cannot be changed for Serial No.,Šifra artikla nije moguće promijeniti za serijski broj,
-Item Code required at Row No {0},Kôd stavke potreban kod retka No {0},
-Item Description,Opis Predmeta,
+Item Code,Šifra proizvoda,
+Item Code cannot be changed for Serial No.,Kod proizvoda ne može se mijenjati za serijski broj.,
+Item Code required at Row No {0},Kod proizvoda je potreban u redu broj {0},
+Item Description,Opis proizvoda,
 Item Group,Grupa proizvoda,
-Item Group Tree,Stablo grupe stavki,
-Item Group not mentioned in item master for item {0},Grupa stavki koja nije navedena u glavnom stavku za stavku {0},
+Item Group Tree,Raspodjela grupa proizvoda,
+Item Group not mentioned in item master for item {0},Stavka proizvoda se ne spominje u master artiklu za artikal {0},
 Item Name,Ime proizvoda,
-Item Price added for {0} in Price List {1},Cijena stavke dodana za {0} u cjeniku {1},
-"Item Price appears multiple times based on Price List, Supplier/Customer, Currency, Item, UOM, Qty and Dates.","Cijena stavke pojavljuje se više puta na temelju cjenika, dobavljača / kupca, valute, stavke, UOM-a, broja i datuma.",
-Item Price updated for {0} in Price List {1},Cijena stavke ažurirana za {0} u cjeniku {1},
-Item Row {0}: {1} {2} does not exist in above '{1}' table,Redak stavke {0}: {1} {2} ne postoji u tablici iznad {{1} &#39;,
-Item Tax Row {0} must have account of type Tax or Income or Expense or Chargeable,Redak za porez na stavku {0} mora imati račun tipa Porez ili Prihod ili Trošak ili Trošak,
+Item Price added for {0} in Price List {1},Cijena dodana za {0} u cjeniku {1},
+"Item Price appears multiple times based on Price List, Supplier/Customer, Currency, Item, UOM, Qty and Dates.","Stavka Cijena pojavljuje se više puta na temelju Cjenika, Dobavljača / Kupca, Valute, Stavke, UOM, Qta i datuma.",
+Item Price updated for {0} in Price List {1},Artikl Cijena ažuriran za {0} u Cjeniku {1},
+Item Row {0}: {1} {2} does not exist in above '{1}' table,Stavka retka {0}: {1} {2} ne postoji u gornjoj tablici &quot;{1}&quot;,
+Item Tax Row {0} must have account of type Tax or Income or Expense or Chargeable,Stavka Porezna Row {0} mora imati račun tipa poreza ili prihoda i rashoda ili naplativ,
 Item Template,Predložak stavke,
-Item Variant Settings,Postavka varijante stavke,
-Item Variant {0} already exists with same attributes,Stavka Variant {0} već postoji s istim atributima,
+Item Variant Settings,Postavke varijacije stavke,
+Item Variant {0} already exists with same attributes,Stavka Varijanta {0} već postoji s istim atributima,
 Item Variants,Stavka Varijante,
-Item Variants updated,Stavke su ažurirane,
+Item Variants updated,Ažurirane su varijante predmeta,
 Item has variants.,Stavka ima varijante.,
-Item must be added using 'Get Items from Purchase Receipts' button,Stavka mora biti dodana pomoću gumba &quot;Preuzmi stavke iz potvrda o kupnji&quot;,
-Item or Warehouse for row {0} does not match Material Request,Stavka ili skladište za redak {0} ne podudara se sa zahtjevom za materijal,
-Item valuation rate is recalculated considering landed cost voucher amount,Stopa procjene stavke preračunava se s obzirom na iznos voucher-a za zemljišne troškove,
-Item variant {0} exists with same attributes,Varijanta stavke {0} postoji s istim atributima,
-Item {0} does not exist,Stavka {0} ne postoji,
-Item {0} does not exist in the system or has expired,Stavka {0} ne postoji u sustavu ili je istekla,
-Item {0} has already been returned,Stavka {0} je već vraćena,
-Item {0} has been disabled,Stavka {0} je onemogućena,
-Item {0} has reached its end of life on {1},Stavka {0} je završila svoj život na {1},
-Item {0} ignored since it is not a stock item,Stavka {0} zanemarena je jer nije stavka dionice,
+Item must be added using 'Get Items from Purchase Receipts' button,Stavka mora biti dodana pomoću 'se predmeti od kupnje primitaka' gumb,
+Item or Warehouse for row {0} does not match Material Request,Proizvod ili skladište za redak {0} ne odgovara Zahtjevu za materijalom,
+Item valuation rate is recalculated considering landed cost voucher amount,Stopa predmeta vrednovanja preračunava obzirom sletio troškova iznos vaučera,
+Item variant {0} exists with same attributes,Inačica Stavka {0} postoji s istim atributima,
+Item {0} does not exist,Proizvod {0} ne postoji,
+Item {0} does not exist in the system or has expired,Proizvod {0} ne postoji u sustavu ili je istekao,
+Item {0} has already been returned,Proizvod {0} je već vraćen,
+Item {0} has been disabled,Stavka {0} je onemogućen,
+Item {0} has reached its end of life on {1},Proizvod {0} je dosegao svoj rok trajanja na {1},
+Item {0} ignored since it is not a stock item,Proizvod {0} se ignorira budući da nije skladišni artikal,
 "Item {0} is a template, please select one of its variants","Stavka {0} je predložak, odaberite jednu od njegovih varijanti",
-Item {0} is cancelled,Stavka {0} je otkazana,
-Item {0} is disabled,Stavka {0} je onemogućena,
-Item {0} is not a serialized Item,Stavka {0} nije serijalizirana stavka,
-Item {0} is not a stock Item,Stavka {0} nije dionica,
-Item {0} is not active or end of life has been reached,Stavka {0} nije aktivna ili je dosegnut kraj života,
-Item {0} is not setup for Serial Nos. Check Item master,Stavka {0} nije postavljena za serijske brojeve,
-Item {0} is not setup for Serial Nos. Column must be blank,Stavka {0} nije postavljena za serijske brojeve. Stupac mora biti prazan,
-Item {0} must be a Fixed Asset Item,Stavka {0} mora biti fiksna stavka imovine,
-Item {0} must be a Sub-contracted Item,Stavka {0} mora biti podugovorena stavka,
-Item {0} must be a non-stock item,Stavka {0} mora biti stavka koja nije na zalihama,
-Item {0} must be a stock Item,Stavka {0} mora biti stavka stavke,
+Item {0} is cancelled,Proizvod {0} je otkazan,
+Item {0} is disabled,Stavka {0} je onemogućen,
+Item {0} is not a serialized Item,Proizvod {0} nije serijalizirani proizvod,
+Item {0} is not a stock Item,Proizvod {0} nije skladišni proizvod,
+Item {0} is not active or end of life has been reached,Proizvod {0} nije aktivan ili nije došao do kraja roka valjanosti,
+Item {0} is not setup for Serial Nos. Check Item master,"Stavka {0} nije dobro postavljen za gospodara , serijski brojevi Provjera",
+Item {0} is not setup for Serial Nos. Column must be blank,Stavka {0} nije setup za serijski brojevi Stupac mora biti prazan,
+Item {0} must be a Fixed Asset Item,Stavka {0} mora biti Fixed Asset predmeta,
+Item {0} must be a Sub-contracted Item,Stavka {0} mora bitisklopljen ugovor artikla,
+Item {0} must be a non-stock item,Stavka {0} mora biti ne-stock točka a,
+Item {0} must be a stock Item,Proizvod {0} mora biti skladišni,
 Item {0} not found,Stavka {0} nije pronađena,
-Item {0} not found in 'Raw Materials Supplied' table in Purchase Order {1},Stavka {0} nije pronađena u tablici &quot;Isporučeni materijali&quot; u Narudžbenici {1},
-Item {0}: Ordered qty {1} cannot be less than minimum order qty {2} (defined in Item).,Stavka {0}: naručena količina {1} ne može biti manja od minimalne narudžbe q {2} (definirana u stavci).,
+Item {0} not found in 'Raw Materials Supplied' table in Purchase Order {1},Stavka {0} nije pronađena u &quot;sirovina nabavlja se &#39;stol narudžbenice {1},
+Item {0}: Ordered qty {1} cannot be less than minimum order qty {2} (defined in Item).,Stavka {0}: Ž Količina Jedinična {1} ne može biti manja od minimalne narudžbe kom {2} (definiranom u točki).,
 Item: {0} does not exist in the system,Stavka: {0} ne postoji u sustavu,
-Items,stavke,
-Items Filter,Filteri stavki,
+Items,Proizvodi,
+Items Filter,Filtri stavki,
 Items and Pricing,Stavke i cijene,
-Items for Raw Material Request,Stavke za zahtjev za sirovinu,
-Job Card,Radna kartica,
+Items for Raw Material Request,Predmeti za zahtjev za sirovinom,
+Job Card,Radna mjesta za posao,
 Job Description,Opis posla,
 Job Offer,Ponuda za posao,
-Job card {0} created,Napravljena je posjetnica {0},
+Job card {0} created,Izrađena je kartica za posao {0},
 Jobs,Posao,
 Join,Pridružiti,
-Journal Entries {0} are un-linked,Unosi dnevnika {0} nisu povezani,
-Journal Entry,Unos dnevnika,
-Journal Entry {0} does not have account {1} or already matched against other voucher,Unos dnevnika {0} nema račun {1} ili se već podudara s drugim vaučerima,
+Journal Entries {0} are un-linked,Dnevničkih zapisa {0} su UN-povezani,
+Journal Entry,Temeljnica,
+Journal Entry {0} does not have account {1} or already matched against other voucher,Temeljnica {0} nema račun {1} ili već usklađeni protiv drugog bona,
 Kanban Board,Kanban zajednica,
 Key Reports,Ključna izvješća,
 LMS Activity,LMS aktivnost,
 Lab Test,Lab test,
-Lab Test Prescriptions,Provjere laboratorijskih testova,
-Lab Test Report,Izvješće laboratorijskog testa,
-Lab Test Sample,Uzorak laboratorijskog ispitivanja,
-Lab Test Template,Predložak laboratorijskog testiranja,
-Lab Test UOM,Laboratorijski test UOM,
-Lab Tests and Vital Signs,Laboratorijski testovi i Vitalni Znaci,
-Lab result datetime cannot be before testing datetime,Vrijeme rezultata laboratorijskog rezultata ne može biti prije testiranja datetime,
-Lab testing datetime cannot be before collection datetime,Datetime vrijeme laboratorijskog testiranja ne može biti prije datuma prikupljanja,
+Lab Test Prescriptions,Ispitivanje laboratorijskih ispitivanja,
+Lab Test Report,Izvješće testiranja laboratorija,
+Lab Test Sample,Uzorak laboratorija,
+Lab Test Template,Predložak testa laboratorija,
+Lab Test UOM,Lab test UOM,
+Lab Tests and Vital Signs,Lab testovi i vitalni znakovi,
+Lab result datetime cannot be before testing datetime,Datetime rezultata laboratorija ne može biti prije testiranja datetime,
+Lab testing datetime cannot be before collection datetime,Datetime testiranja laboratorija ne može biti prije datetime prikupljanja,
 Laboratory,Laboratorija,
 Large,veliki,
 Last Communication,Posljednja komunikacija,
-Last Communication Date,Datum zadnje komunikacije,
-Last Order Amount,Iznos posljednje narudžbe,
-Last Order Date,Datum zadnjeg narudžbe,
-Last Purchase Price,Zadnja cijena kupnje,
-Last Purchase Rate,Posljednja stopa kupnje,
-Latest,Najnoviji,
-Latest price updated in all BOMs,Najnovija cijena ažurirana u svim sastavnicama,
-Lead,voditi,
-Lead Count,Broj bodova,
-Lead Owner,Vodeći vlasnik,
-Lead Owner cannot be same as the Lead,Voditelj ne može biti isti kao i vođa,
-Lead Time Days,Dani vremena vođenja,
-Lead to Quotation,Vodite na ponudu,
-"Leads help you get business, add all your contacts and more as your leads","Vodi pomažu vam da ostvarite posao, dodate sve svoje kontakte i još mnogo toga kao svoje potencijalne klijente",
+Last Communication Date,Posljednji datum komunikacije,
+Last Order Amount,Iznos zadnje narudžbe,
+Last Order Date,Zadnje narudžbe Datum,
+Last Purchase Price,Zadnja kupovna cijena,
+Last Purchase Rate,Zadnja kupovna cijena,
+Latest,Najnovije,
+Latest price updated in all BOMs,Zadnja cijena ažurirana u svim BOM-ovima,
+Lead,Potencijalni kupac,
+Lead Count,Olovni broj,
+Lead Owner,Vlasnik potencijalnog kupca,
+Lead Owner cannot be same as the Lead,Olovo Vlasnik ne može biti ista kao i olova,
+Lead Time Days,Potencijalni kupac - ukupno dana,
+Lead to Quotation,Dovesti do kotaciju,
+"Leads help you get business, add all your contacts and more as your leads","Potencijalni kupci će vam pomoći u posao, dodati sve svoje kontakte, a više kao svoje potencijalne klijente",
 Learn,Naučiti,
-Leave Approval Notification,Ostavite obavijest o odobrenju,
-Leave Blocked,Ostavite blokirane,
-Leave Encashment,Napusti oporavak,
-Leave Management,Napusti upravljanje,
-Leave Status Notification,Ostavite obavijest o statusu,
-Leave Type,Vrsta napuštanja,
-Leave Type is madatory,Vrsta napuštanja je luda,
-Leave Type {0} cannot be allocated since it is leave without pay,Vrsta ostavljanja {0} ne može se dodijeliti jer je to dopust bez plaćanja,
-Leave Type {0} cannot be carry-forwarded,Vrsta ostavljanja {0} ne može se prenijeti,
-Leave Type {0} is not encashable,Vrsta ostavljanja {0} ne može se kopirati,
-Leave Without Pay,Ostavite bez plaćanja,
-Leave Without Pay does not match with approved Leave Application records,Ostavi bez plaćanja ne podudara se s odobrenim zapisima o aplikaciji Ostavi,
-Leave and Attendance,Odlazak i prisustvovanje,
-Leave application {0} already exists against the student {1},Aplikacija za ostavljanje {0} već postoji protiv studenta {1},
-"Leave cannot be allocated before {0}, as leave balance has already been carry-forwarded in the future leave allocation record {1}","Ostaviti se ne može dodijeliti prije {0}, budući da je saldo dopusta već prenesen u zapis za buduću dodjelu dopusta {1}",
-"Leave cannot be applied/cancelled before {0}, as leave balance has already been carry-forwarded in the future leave allocation record {1}","Ostaviti nije moguće primijeniti / otkazati prije {0}, budući da je saldo dopusta već prenesen u zapis za buduću raspodjelu dopusta {1}",
-Leave of type {0} cannot be longer than {1},Ostavljanje vrste {0} ne može biti dulje od {1},
-Leave the field empty to make purchase orders for all suppliers,Ostavite polje prazno kako biste naručili narudžbu za sve dobavljače,
+Leave Approval Notification,Odustani od obavijesti o odobrenju,
+Leave Blocked,Neodobreno odsustvo,
+Leave Encashment,Ostavi naplate,
+Leave Management,Ostavite upravljanje,
+Leave Status Notification,Pusti status obavijesti,
+Leave Type,Vrsta odsustva,
+Leave Type is madatory,Vrsta napuštanja je laka,
+Leave Type {0} cannot be allocated since it is leave without pay,Ostavi Tip {0} nije moguće rasporediti jer se ostaviti bez plaće,
+Leave Type {0} cannot be carry-forwarded,Ostavite Tip {0} ne može nositi-proslijeđen,
+Leave Type {0} is not encashable,Vrsta napuštanja {0} nije moguće naplatiti,
+Leave Without Pay,Neplaćeno odsustvo,
+Leave and Attendance,Ostavi i posjećenost,
+Leave application {0} already exists against the student {1},Napusti program {0} već postoji protiv učenika {1},
+"Leave cannot be allocated before {0}, as leave balance has already been carry-forwarded in the future leave allocation record {1}","Ostavite se ne može dodijeliti prije {0}, kao dopust ravnoteža je već ručne proslijeđena u buduće dodjele dopusta rekord {1}",
+"Leave cannot be applied/cancelled before {0}, as leave balance has already been carry-forwarded in the future leave allocation record {1}","Ostavite se ne može primijeniti / otkazan prije {0}, kao dopust ravnoteža je već ručne proslijeđena u buduće dodjele dopusta rekord {1}",
+Leave of type {0} cannot be longer than {1},Odsustvo tipa {0} ne može biti duže od {1},
+Leave the field empty to make purchase orders for all suppliers,Ostavite prazno polje za narudžbenice za sve dobavljače,
 Leaves,lišće,
-Leaves Allocated Successfully for {0},Uspješno ostavljeni dopusti za {0},
-Leaves has been granted sucessfully,Lišće je uspješno izdano,
-Leaves must be allocated in multiples of 0.5,"Lišće se mora rasporediti u višekratnicima od 0,5",
-Leaves per Year,Lišće godišnje,
+Leaves Allocated Successfully for {0},Odsustvo uspješno dodijeljeno za {0},
+Leaves has been granted sucessfully,Lišće je dobilo uspješno,
+Leaves must be allocated in multiples of 0.5,"Odsustva moraju biti dodijeljena kao višekratnici od 0,5",
+Leaves per Year,Ostavlja godišnje,
 Ledger,glavna knjiga,
 Legal,pravni,
 Legal Expenses,Pravni troškovi,
-Letter Heads for print templates.,Glave slova za predloške za ispis.,
+Letter Heads for print templates.,Zaglavlja za ispis predložaka.,
 Liability,Odgovornost,
 License,licenca,
 Lifecycle,Životni ciklus,
-Limit Crossed,Preko granice,
+Limit Crossed,Ograničenje Crossed,
 Link to Material Request,Veza na Zahtjev materijala,
 List of all share transactions,Popis svih transakcija dionica,
-List of available Shareholders with folio numbers,Popis dostupnih dioničara s brojevima dionica,
+List of available Shareholders with folio numbers,Popis dostupnih dioničara s folijskim brojevima,
 Loading Payment System,Učitavanje sustava plaćanja,
 Loan,Zajam,
-Loan Amount cannot exceed Maximum Loan Amount of {0},Iznos kredita ne može premašiti maksimalni iznos zajma od {0},
-Loan Application,Zahtjev za kredit,
-Loan Management,Upravljanje kreditima,
+Loan Amount cannot exceed Maximum Loan Amount of {0},Iznos kredita ne može biti veći od maksimalnog iznosa zajma {0},
+Loan Application,Primjena zajma,
+Loan Management,Upravljanje zajmom,
 Loan Repayment,Otplata kredita,
-Loan Start Date and Loan Period are mandatory to save the Invoice Discounting,Početni datum zajma i Razdoblje posudbe obvezni su za spremanje Diskonta fakture,
-Loans (Liabilities),Zajmovi (obveze),
-Loans and Advances (Assets),Zajmovi i predujmovi (imovina),
-Local,lokalne,
-"LocalStorage is full , did not save","LocalStorage je pun, nije spremio",
-"LocalStorage is full, did not save","LocalStorage je pun, nije spremio",
+Loan Start Date and Loan Period are mandatory to save the Invoice Discounting,Datum početka i razdoblje zajma obvezni su za spremanje popusta na fakture,
+Loans (Liabilities),Zajmovi (pasiva),
+Loans and Advances (Assets),Zajmovi i predujmovi (aktiva),
+Local,Lokalno,
+"LocalStorage is full , did not save","LocalStorage puna, nije štedjelo",
+"LocalStorage is full, did not save","LocalStorage puna, nije štedjelo",
 Log,Prijava,
-Logs for maintaining sms delivery status,Zapisi za održavanje statusa isporuke SMS-a,
+Logs for maintaining sms delivery status,Trupci za održavanje statusa isporuke sms,
 Lost,izgubljen,
 Lost Reasons,Izgubljeni razlozi,
-Low,nizak,
-Low Sensitivity,Mala osjetljivost,
-Lower Income,Niži dohodak,
-Loyalty Amount,Iznos vjernosti,
-Loyalty Point Entry,Unos bodova lojalnosti,
-Loyalty Points,Bodovi vjernosti,
-"Loyalty Points will be calculated from the spent done (via the Sales Invoice), based on collection factor mentioned.",Bodovi lojalnosti računat će se od utrošenog iznosa (putem dostavnice) na temelju spomenutog faktora naplate.,
-Loyalty Points: {0},Bodovi lojalnosti: {0},
+Low,Nisko,
+Low Sensitivity,Niska osjetljivost,
+Lower Income,Niža primanja,
+Loyalty Amount,Iznos odanosti,
+Loyalty Point Entry,Ulaznica za lojalnost,
+Loyalty Points,Bodovi lojalnosti,
+"Loyalty Points will be calculated from the spent done (via the Sales Invoice), based on collection factor mentioned.","Bodovne bodove izračunat će se iz potrošnje (putem Prodajnog računa), na temelju faktora prikupljanja.",
+Loyalty Points: {0},Bodovi vjernosti: {0},
 Loyalty Program,Program odanosti,
 Main,Glavni,
 Maintenance,Održavanje,
-Maintenance Log,Dnevnik održavanja,
+Maintenance Log,Zapisnik održavanja,
 Maintenance Schedule,Raspored održavanja,
-Maintenance Schedule is not generated for all the items. Please click on 'Generate Schedule',Raspored održavanja se ne generira za sve stavke. Kliknite na &quot;Generiraj raspored&quot;,
-Maintenance Schedule {0} exists against {1},Raspored održavanja {0} postoji u odnosu na {1},
-Maintenance Schedule {0} must be cancelled before cancelling this Sales Order,Raspored održavanja {0} mora biti otkazan prije otkazivanja ovog prodajnog naloga,
+Maintenance Schedule is not generated for all the items. Please click on 'Generate Schedule',Raspored održavanja nije generiran za sve proizvode. Molimo kliknite na 'Generiraj raspored',
+Maintenance Schedule {0} exists against {1},Raspored održavanja {0} postoji protiv {1},
+Maintenance Schedule {0} must be cancelled before cancelling this Sales Order,Stavka održavanja {0} mora biti otkazana prije poništenja ove narudžbe kupca,
 Maintenance Status has to be Cancelled or Completed to Submit,Status održavanja mora biti poništen ili dovršen za slanje,
-Maintenance Visit,Posjet održavanju,
-Maintenance Visit {0} must be cancelled before cancelling this Sales Order,Posjet za održavanje {0} mora biti poništen prije otkazivanja ovog prodajnog naloga,
-Maintenance start date can not be before delivery date for Serial No {0},Datum početka održavanja ne može biti prije datuma isporuke za serijski broj {0},
-Make,Napraviti,
+Maintenance Visit,Održavanje Posjetite,
+Maintenance Visit {0} must be cancelled before cancelling this Sales Order,Održavanje Posjetite {0} mora biti otkazana prije poništenja ovu prodajnog naloga,
+Maintenance start date can not be before delivery date for Serial No {0},Početni datum održavanja ne može biti stariji od datuma isporuke s rednim brojem {0},
+Make,Napravi,
 Make Payment,Izvršiti plaćanje,
-Make project from a template.,Izradite projekt iz predloška.,
-Making Stock Entries,Izrada dionica,
-Manage Customer Group Tree.,Upravljanje stablom grupe korisnika.,
-Manage Sales Partners.,Upravljanje prodajnim partnerima.,
-Manage Sales Person Tree.,Upravljanje stablom prodavača.,
-Manage Territory Tree.,Upravljanje stablom teritorija.,
-Manage your orders,Upravljajte svojim narudžbama,
-Management,Upravljanje,
-Manager,Menadžer,
+Make project from a template.,Napravite projekt iz predloška.,
+Making Stock Entries,Izrada Stock unose,
+Manage Customer Group Tree.,Uredi hijerarhiju grupe kupaca.,
+Manage Sales Partners.,Uredi prodajne partnere.,
+Manage Sales Person Tree.,Uredi raspodjelu prodavača.,
+Manage Territory Tree.,Uredi teritorijalnu raspodjelu.,
+Manage your orders,Upravljanje narudžbe,
+Management,Uprava,
+Manager,Upravitelj,
 Managing Projects,Upravljanje projektima,
-Managing Subcontracting,Upravljanje podugovaranjem,
-Mandatory field - Academic Year,Obvezno polje - akademska godina,
-Mandatory field - Get Students From,Obvezno polje - Odvojite studente,
+Managing Subcontracting,Upravljanje podugovaranje,
+Mandatory field - Academic Year,Obavezno polje - akademska godina,
+Mandatory field - Get Students From,Obavezno polje - Get Students From,
 Mandatory field - Program,Obvezno polje - Program,
 Manufacture,Proizvodnja,
 Manufacturer,Proizvođač,
-Manufacturer Part Number,Broj dijela proizvođača,
+Manufacturer Part Number,Proizvođačev broj dijela,
 Manufacturing,Proizvodnja,
-Manufacturing Quantity is mandatory,Količina proizvodnje je obvezna,
-Mark Absent,Mark Absent,
-Mark Attendance,Označite nazočnost,
-Mark Half Day,Označi pola dana,
-Mark Present,Mark Present,
+Manufacturing Quantity is mandatory,Proizvedena količina je obvezna,
+Mark Absent,Mark Odsutni,
+Mark Attendance,Označite prisustvo,
+Mark Half Day,Mark Poludnevni,
+Mark Present,Mark Sadašnje,
 Marketing,Marketing,
 Marketing Expenses,Troškovi marketinga,
 Marketplace,tržište,
 Marketplace Error,Pogreška na tržištu,
-"Master data syncing, it might take some time",Sinkronizacija glavnih podataka može potrajati,
-Masters,majstori,
-Match Payments with Invoices,Uskladite plaćanja s računima,
-Match non-linked Invoices and Payments.,Podudaraju s nepovezanim dostavnicama i plaćanjima.,
+"Master data syncing, it might take some time","Master Data sinkronizacije, to bi moglo potrajati neko vrijeme",
+Masters,Masteri,
+Match Payments with Invoices,Match Plaćanja s faktura,
+Match non-linked Invoices and Payments.,Klađenje na ne-povezane faktura i plaćanja.,
 Material,Materijal,
 Material Consumption,Potrošnja materijala,
-Material Consumption is not set in Manufacturing Settings.,Potrošnja materijala nije postavljena u Postavkama proizvodnje.,
-Material Receipt,Prijem materijala,
-Material Request,Zahtjev materijala,
-Material Request Date,Datum zahtjeva za materijal,
-Material Request No,Zahtjev za materijal br,
-"Material Request not created, as quantity for Raw Materials already available.","Zahtjev za materijal nije izrađen, jer je količina za sirovine već dostupna.",
-Material Request of maximum {0} can be made for Item {1} against Sales Order {2},Za stavku {1} protiv prodajnog naloga {2} može se napraviti Zahtjev materijala od maksimalno {0},
-Material Request to Purchase Order,Zahtjev za materijal za narudžbenicu,
-Material Request {0} is cancelled or stopped,Zahtjev za materijal {0} je otkazan ili zaustavljen,
-Material Request {0} submitted.,Podnesen je zahtjev za materijal {0}.,
-Material Transfer,Prijenos materijala,
+Material Consumption is not set in Manufacturing Settings.,Potrošnja materijala nije postavljena u Postavkama za proizvodnju.,
+Material Receipt,Potvrda primitka robe,
+Material Request,Zahtjev za robom,
+Material Request Date,Materijal Zahtjev Datum,
+Material Request No,Zahtjev za robom br.,
+"Material Request not created, as quantity for Raw Materials already available.","Zahtjev za materijal nije kreiran, jer je količina za sirovine već dostupna.",
+Material Request of maximum {0} can be made for Item {1} against Sales Order {2},Zahtjev za robom od maksimalnih {0} može biti napravljen za proizvod {1} od narudžbe kupca {2},
+Material Request to Purchase Order,Materijal Zahtjev za Narudžbenica,
+Material Request {0} is cancelled or stopped,Zahtjev za robom {0} je otkazan ili zaustavljen,
+Material Request {0} submitted.,Poslan je materijalni zahtjev {0}.,
+Material Transfer,Transfer robe,
 Material Transferred,Prijenos materijala,
-Material to Supplier,Materijal dobavljaču,
-Max Exemption Amount cannot be greater than maximum exemption amount {0} of Tax Exemption Category {1},Maksimalni iznos izuzeća ne može biti veći od maksimalnog iznosa izuzeća {0} od kategorije oslobođenja od poreza {1},
-Max benefits should be greater than zero to dispense benefits,Maksimalne beneficije trebaju biti veće od nule kako bi se ostvarile koristi,
-Max discount allowed for item: {0} is {1}%,Najveći dopušteni popust za stavku: {0} je {1}%,
-Max: {0},Maks.: {0},
-Maximum Samples - {0} can be retained for Batch {1} and Item {2}.,Maksimalni uzorci - {0} mogu se zadržati za Batch {1} i stavku {2}.,
-Maximum Samples - {0} have already been retained for Batch {1} and Item {2} in Batch {3}.,Maksimalni uzorci - {0} su već zadržani za Batch {1} i stavku {2} u Batch {3}.,
-Maximum amount eligible for the component {0} exceeds {1},Najveći dopušteni iznos za komponentu {0} premašuje {1},
-Maximum benefit amount of component {0} exceeds {1},Maksimalni iznos naknade komponente {0} premašuje {1},
-Maximum benefit amount of employee {0} exceeds {1},Maksimalni iznos naknade zaposlenika {0} premašuje {1},
+Material to Supplier,Materijal za dobavljača,
+Max Exemption Amount cannot be greater than maximum exemption amount {0} of Tax Exemption Category {1},Iznos maksimalnog izuzeća ne može biti veći od maksimalnog iznosa izuzeća {0} kategorije izuzeća od poreza {1},
+Max benefits should be greater than zero to dispense benefits,Maksimalne koristi bi trebale biti veće od nule kako bi se oslobodile prednosti,
+Max discount allowed for item: {0} is {1}%,Maksimalni dopušteni popust za proizvod: {0} je {1}%,
+Max: {0},Maksimalno: {0},
+Maximum Samples - {0} can be retained for Batch {1} and Item {2}.,Maksimalni uzorci - {0} mogu se zadržati za šaržu {1} i stavku {2}.,
+Maximum Samples - {0} have already been retained for Batch {1} and Item {2} in Batch {3}.,Maksimalni uzorci - {0} već su zadržani za šaržu {1} i stavku {2} u seriji {3}.,
+Maximum amount eligible for the component {0} exceeds {1},Maksimalni iznos koji ispunjava uvjete za komponentu {0} prelazi {1},
+Maximum benefit amount of component {0} exceeds {1},Maksimalna naknada komponente {0} prelazi {1},
+Maximum benefit amount of employee {0} exceeds {1},Maksimalna naknada zaposlenika {0} premašuje {1},
 Maximum discount for Item {0} is {1}%,Maksimalni popust za stavku {0} je {1}%,
-Maximum leave allowed in the leave type {0} is {1},Maksimalni dopušteni dopust u vrsti odsustva {0} je {1},
-Medical,medicinski,
-Medical Code,Medicinski kod,
+Maximum leave allowed in the leave type {0} is {1},Maksimalni dopust dopušten u dopuštenoj vrsti {0} je {1},
+Medical,Liječnički,
+Medical Code,Medicinski kodeks,
 Medical Code Standard,Standard medicinskog koda,
 Medical Department,Medicinski odjel,
 Medical Record,Medicinski zapis,
 Medium,Srednji,
 Meeting,Sastanak,
-Member Activity,Aktivnost člana,
+Member Activity,Aktivnost članova,
 Member ID,članska iskaznica,
 Member Name,Ime člana,
-Member information.,Informacije o članovima.,
+Member information.,Informacije članova.,
 Membership,Članstvo,
-Membership Details,Detalji o članstvu,
-Membership ID,ID članstva,
+Membership Details,Pojedinosti o članstvu,
+Membership ID,ID čl,
 Membership Type,Vrsta članstva,
 Memebership Details,Pojedinosti o članstvu,
-Memebership Type Details,Pojedinosti o vrsti članstva,
+Memebership Type Details,Pojedinosti o vrstama kontakata,
 Merge,Sjediniti,
 Merge Account,Spoji račun,
 Merge with Existing Account,Spajanje s postojećim računom,
-"Merging is only possible if following properties are same in both records. Is Group, Root Type, Company","Spajanje je moguće samo ako su sljedeća svojstva u oba zapisa ista. Je grupa, tip korijena, tvrtka",
-Message Sent,Poruka je poslana,
-Middle Income,Srednji dohodak,
+"Merging is only possible if following properties are same in both records. Is Group, Root Type, Company","Spajanje je moguće samo ako sljedeća svojstva su isti u obje evidencije. Je Grupa, korijen Vrsta, Društvo",
+Message Sent,Poslana poruka,
+Middle Income,Srednji Prihodi,
 Min Amt can not be greater than Max Amt,Min Amt ne može biti veći od Max Amt,
-Min Qty can not be greater than Max Qty,Min. Količina ne može biti veća od Max Qty,
-Minimum Lead Age (Days),Minimalno glavno doba (dani),
+Min Qty can not be greater than Max Qty,Minimalna količina ne može biti veća od maksimalne količine,
+Minimum Lead Age (Days),Minimalna dob (olovo),
 Miscellaneous Expenses,Razni troškovi,
-Missing Currency Exchange Rates for {0},Nedostaje tečajna lista za {0},
-Missing email template for dispatch. Please set one in Delivery Settings.,Nedostaje predložak e-pošte za slanje. Postavite ga u Postavke isporuke.,
+Missing Currency Exchange Rates for {0},Nedostaje Valuta za {0},
+Missing email template for dispatch. Please set one in Delivery Settings.,Nedostaje predložak e-pošte za slanje. Postavite jedan u Postavke isporuke.,
 "Missing value for Password, API Key or Shopify URL","Nedostaje vrijednost za zaporku, API ključ ili Shopify URL",
 Mode of Payment,Nacin placanja,
 Mode of Payments,Način plaćanja,
 Mode of Transport,Način prijevoza,
 Mode of Transportation,Način prijevoza,
-Mode of payment is required to make a payment,Način plaćanja je potreban za plaćanje,
+Mode of payment is required to make a payment,Način plaćanja potrebno je izvršiti uplatu,
 Model,Model,
 Moderate Sensitivity,Umjerena osjetljivost,
 Monday,ponedjeljak,
 Monthly,Mjesečno,
 Monthly Distribution,Mjesečna distribucija,
-Monthly Repayment Amount cannot be greater than Loan Amount,Mjesečni iznos otplate ne može biti veći od iznosa zajma,
+Monthly Repayment Amount cannot be greater than Loan Amount,Mjesečni iznos otplate ne može biti veća od iznosa kredita,
 More,Više,
 More Information,Više informacija,
-More than one selection for {0} not allowed,Više od jednog odabira za {0} nije dopušteno,
+More than one selection for {0} not allowed,Više od jednog izbora za {0} nije dopušteno,
 More...,Više...,
-Motion Picture & Video,Film i video,
-Move,Pomicati,
-Move Item,Premjesti stavku,
+Motion Picture & Video,Pokretna slika & video,
+Move,Potez,
+Move Item,Premještanje stavke,
 Multi Currency,Više valuta,
-Multiple Item prices.,Višestruke cijene stavki.,
-Multiple Loyalty Program found for the Customer. Please select manually.,Pronašli smo više programa vjernosti za klijenta. Odaberite ručno.,
-"Multiple Price Rules exists with same criteria, please resolve conflict by assigning priority. Price Rules: {0}","Postoji više pravila cijene s istim kriterijima, razriješite sukob dodjeljivanjem prioriteta. Pravila cijena: {0}",
-Multiple Variants,Višestruke varijante,
+Multiple Item prices.,Višestruke cijene proizvoda.,
+Multiple Loyalty Program found for the Customer. Please select manually.,Korisnik je pronašao više programa lojalnosti. Odaberite ručno.,
+"Multiple Price Rules exists with same criteria, please resolve conflict by assigning priority. Price Rules: {0}","Više Pravila Cijena postoji sa istim kriterijima, molimo rješavanje sukoba dodjeljivanjem prioriteta. Pravila Cijena: {0}",
+Multiple Variants,Višestruke inačice,
 Multiple default mode of payment is not allowed,Višestruki zadani način plaćanja nije dopušten,
-Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,Postoji više fiskalnih godina za datum {0}. Postavite tvrtku u fiskalnoj godini,
-Music,"glazba, muzika",
-Name error: {0},Pogreška imena: {0},
-Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Naziv novog računa. Napomena: nemojte stvarati račune za klijente i dobavljače,
-Name or Email is mandatory,Ime ili e-pošta obavezno je,
+Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,Više fiskalne godine postoji za sada {0}. Molimo postavite tvrtka u fiskalnoj godini,
+Music,glazba,
+Name error: {0},greška Ime: {0},
+Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Naziv novog računa. Napomena: Molimo vas da ne stvaraju račune za kupce i dobavljače,
+Name or Email is mandatory,Ime ili e-mail je obavezno,
 Nature Of Supplies,Priroda potrošnog materijala,
 Navigating,Kretanje,
 Needs Analysis,Analiza potreba,
 Negative Quantity is not allowed,Negativna količina nije dopuštena,
-Negative Valuation Rate is not allowed,Negativna stopa procjene nije dopuštena,
+Negative Valuation Rate is not allowed,Negativna stopa vrijednovanja nije dopuštena,
 Negotiation/Review,Pregovaranje / pregled,
-Net Asset value as on,Neto vrijednost imovine kao i na,
-Net Cash from Financing,Neto novac iz financiranja,
-Net Cash from Investing,Neto novac od ulaganja,
-Net Cash from Operations,Neto novac iz poslovanja,
-Net Change in Accounts Payable,Neto promjena obveza prema dobavljačima,
-Net Change in Accounts Receivable,Neto promjena potraživanja,
+Net Asset value as on,Neto imovina kao i na,
+Net Cash from Financing,Neto novčani tijek iz financijskih,
+Net Cash from Investing,Neto novac od investicijskih,
+Net Cash from Operations,Neto novčani tijek iz operacije,
+Net Change in Accounts Payable,Neto promjena u obveze prema dobavljačima,
+Net Change in Accounts Receivable,Neto promjena u potraživanja,
 Net Change in Cash,Neto promjena u gotovini,
 Net Change in Equity,Neto promjena u kapitalu,
-Net Change in Fixed Asset,Neto promjena fiksne imovine,
-Net Change in Inventory,Neto promjena u inventaru,
-Net ITC Available(A) - (B),Neto ITC dostupan (A) - (B),
+Net Change in Fixed Asset,Neto promjena u dugotrajne imovine,
+Net Change in Inventory,Neto promjena u inventar,
+Net ITC Available(A) - (B),Neto dostupan ITC (A) - (B),
 Net Pay,Neto plaća,
 Net Pay cannot be less than 0,Neto plaća ne može biti manja od 0,
 Net Profit,Neto dobit,
 Net Salary Amount,Neto iznos plaće,
-Net Total,Neto ukupno,
+Net Total,Osnovica,
 Net pay cannot be negative,Neto plaća ne može biti negativna,
-New Account Name,Novi naziv računa,
+New Account Name,Naziv novog računa,
 New Address,Nova adresa,
-New BOM,Nova sastavnica,
-New Batch ID (Optional),Novi ID serije (izborno),
-New Batch Qty,Novi serijski broj,
-New Cart,Nova košarica,
+New BOM,Novi BOM,
+New Batch ID (Optional),Novo ID serije (izborno),
+New Batch Qty,Nova količina serije,
+New Cart,Novi Košarica,
 New Company,Nova tvrtka,
 New Contact,Novi kontakt,
-New Cost Center Name,Novo ime mjesta troška,
-New Customer Revenue,Novi prihod kupaca,
+New Cost Center Name,Novi naziv troškovnog centra,
+New Customer Revenue,Novi prihod kupca,
 New Customers,Novi kupci,
 New Department,Novi odjel,
 New Employee,Novi zaposlenik,
 New Location,Nova lokacija,
 New Quality Procedure,Novi postupak kvalitete,
-New Sales Invoice,Nova dostavnica,
-New Sales Person Name,Ime novog prodavača,
-New Serial No cannot have Warehouse. Warehouse must be set by Stock Entry or Purchase Receipt,Novi serijski broj ne može imati skladište. Skladište mora biti postavljeno putem unosa dionica ili potvrde o kupnji,
-New Warehouse Name,Novi naziv skladišta,
-New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Novi kreditni limit je manji od tekućeg iznosa za klijenta. Ograničenje kredita mora biti atleast {0},
+New Sales Invoice,Novi prodajni Račun,
+New Sales Person Name,Novo ime prodajnog agenta,
+New Serial No cannot have Warehouse. Warehouse must be set by Stock Entry or Purchase Receipt,Novi serijski broj ne može biti na skladištu. Skladište mora biti postavljen od strane međuskladišnice ili primke,
+New Warehouse Name,Novo ime skladišta,
+New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Novi kreditni limit je manja od trenutne preostali iznos za kupca. Kreditni limit mora biti atleast {0},
 New task,Novi zadatak,
-New {0} pricing rules are created,Stvorena su nova {0} pravila za određivanje cijena,
+New {0} pricing rules are created,Stvorena su nova {0} pravila o cijenama,
 Newsletters,Newsletteri,
-Newspaper Publishers,Izdavači novina,
+Newspaper Publishers,Novinski izdavači,
 Next,Sljedeći,
-Next Contact By cannot be same as the Lead Email Address,Sljedeći kontakt ne može biti isti kao i glavna adresa e-pošte,
-Next Contact Date cannot be in the past,Datum sljedećeg kontakta ne može biti u prošlosti,
+Next Contact By cannot be same as the Lead Email Address,Sljedeća Kontakt Po ne može biti ista kao što je vodeći e-mail adresa,
+Next Contact Date cannot be in the past,Sljedeća Kontakt Datum ne može biti u prošlosti,
 Next Steps,Sljedeći koraci,
 No Action,Nema akcije,
 No Customers yet!,Još nema kupaca!,
 No Data,Nema podataka,
-No Delivery Note selected for Customer {},Za klijenta nije odabrana isporuka,
+No Delivery Note selected for Customer {},Nijedna isporuka nije odabrana za kupca {},
 No Employee Found,Nije pronađen nijedan zaposlenik,
-No Item with Barcode {0},Nema stavke s crtičnim kodom {0},
-No Item with Serial No {0},Nema stavke sa serijskim brojem {0},
-No Items added to cart,Nema stavki dodanih u košaricu,
+No Item with Barcode {0},Nema proizvoda sa barkodom {0},
+No Item with Serial No {0},Nema proizvoda sa serijskim brojem {0},
+No Items added to cart,Nijedna stavka nije dodana u košaricu,
 No Items available for transfer,Nema dostupnih stavki za prijenos,
-No Items selected for transfer,Nema stavki odabranih za prijenos,
-No Items to pack,Nema stavki za pakiranje,
-No Items with Bill of Materials to Manufacture,Nema stavki s materijalom za izradu,
-No Items with Bill of Materials.,Nema stavki s materijalom.,
+No Items selected for transfer,Nema odabranih stavki za prijenos,
+No Items to pack,Nema proizvoda za pakiranje,
+No Items with Bill of Materials to Manufacture,Nema Stavke sa Bill materijala za proizvodnju,
+No Items with Bill of Materials.,Nema predmeta s računom materijala.,
 No Lab Test created,Nije izrađen laboratorijski test,
-No Permission,Bez dozvole,
-No Quote,Nema ponude,
+No Permission,Nemate dopuštenje,
+No Quote,Nijedan citat,
 No Remarks,Nema primjedbi,
 No Result to submit,Nema rezultata za slanje,
-No Salary Structure assigned for Employee {0} on given date {1},Struktura plaće nije dodijeljena zaposleniku {0} na navedeni datum {1},
-No Staffing Plans found for this Designation,Za ovu oznaku nisu pronađeni planovi zapošljavanja,
-No Student Groups created.,Nije izrađena nijedna studentska grupa.,
-No Students in,Nema studenata u,
-No Tax Withholding data found for the current Fiscal Year.,Nema podataka o zadržavanju poreza za tekuću fiskalnu godinu.,
-No Work Orders created,Nema izrađenih radnih naloga,
-No accounting entries for the following warehouses,Nema računovodstvenih unosa za sljedeća skladišta,
-No active or default Salary Structure found for employee {0} for the given dates,Nema aktivne ili zadane strukture plaća za zaposlenika {0} za zadane datume,
-No address added yet.,Još nije dodana nijedna adresa.,
-No contacts added yet.,Još nije dodan nijedan kontakt.,
-No contacts with email IDs found.,Nisu pronađeni kontakti s ID-ovima e-pošte.,
+No Salary Structure assigned for Employee {0} on given date {1},Struktura plaće nije dodijeljena za zaposlenika {0} na određeni datum {1},
+No Staffing Plans found for this Designation,Nisu pronađeni planovi za osoblje za ovu oznaku,
+No Student Groups created.,Nema studentskih grupa stvorena.,
+No Students in,Nema studenata u Zagrebu,
+No Tax Withholding data found for the current Fiscal Year.,Nema podataka o zadržavanju poreza za aktualnu fiskalnu godinu.,
+No Work Orders created,Nema stvorenih radnih naloga,
+No accounting entries for the following warehouses,Nema računovodstvenih unosa za ova skladišta,
+No active or default Salary Structure found for employee {0} for the given dates,Ne aktivni ili zadani Struktura plaća pronađeno za zaposlenika {0} za navedene datume,
+No address added yet.,Adresa još nije dodana.,
+No contacts added yet.,Još uvijek nema dodanih kontakata.,
+No contacts with email IDs found.,Nije pronađen nijedan kontakt s ID-ovima e-pošte.,
 No data for this period,Nema podataka za ovo razdoblje,
 No description given,Nema opisa,
 No employees for the mentioned criteria,Nema zaposlenika za navedene kriterije,
 No gain or loss in the exchange rate,Nema dobitka ili gubitka tečaja,
-No items listed,Nema stavki na popisu,
-No items to be received are overdue,Nema stavki koje treba primiti,
-No leave record found for employee {0} for {1},Nije pronađen zapis za zaposlenika {0} za {1},
-No material request created,Nije napravljen nikakav zahtjev za materijal,
+No items listed,Nema navedenih stavki,
+No items to be received are overdue,Nijedna stavka koju treba primiti nije kasna,
+No material request created,Nije stvoren materijalni zahtjev,
 No more updates,Nema više ažuriranja,
 No of Interactions,Broj interakcija,
 No of Shares,Broj dionica,
-No pending Material Requests found to link for the given items.,Nije pronađen nijedan zahtjev za materijalom za povezivanje za navedene stavke.,
+No pending Material Requests found to link for the given items.,Nisu pronađeni materijalni zahtjevi na čekanju za povezivanje za određene stavke.,
 No products found,Nije pronađen nijedan proizvod,
-No products found.,Nije pronađen nijedan proizvod.,
-No record found,Nema pronađenih zapisa,
-No records found in the Invoice table,U tablici Račun nisu pronađeni zapisi,
-No records found in the Payment table,U tablici plaćanja nema zapisa,
-No replies from,Nema odgovora od korisnika,
-No salary slip found to submit for the above selected criteria OR salary slip already submitted,Nije pronađena potvrda o plaćanju koja se podnosi za gore navedene kriterije ILI listić plaće koji je već podnesen,
+No products found.,Nisu pronađeni proizvodi.,
+No record found,Nije pronađen zapis,
+No records found in the Invoice table,Nisu pronađeni zapisi u tablici računa,
+No records found in the Payment table,Nisu pronađeni zapisi u tablici plaćanja,
+No replies from,Nema odgovora od,
+No salary slip found to submit for the above selected criteria OR salary slip already submitted,Nije pronađena plaća za podnošenje gore navedenih kriterija ili već dostavljen skraćeni prihod,
 No tasks,Nema zadataka,
-No time sheets,Nema vremenskih listova,
+No time sheets,Nema vremenske tablice,
 No values,Nema vrijednosti,
-No {0} found for Inter Company Transactions.,Nije pronađena {0} za transakcije između tvrtki.,
-Non GST Inward Supplies,Unutarnji dobavljači bez GST-a,
-Non Profit,Neprofitna,
+No {0} found for Inter Company Transactions.,Ne postoji {0} pronađen za transakcije tvrtke Inter.,
+Non GST Inward Supplies,Non GST ulazne potrepštine,
+Non Profit,Neprofitno,
 Non Profit (beta),Neprofitna (beta),
-Non-GST outward supplies,Ne-GST vanjske zalihe,
-Non-Group to Group,Ne-grupa u grupu,
-None of the items have any change in quantity or value.,Nijedna stavka nema nikakve promjene u količini ili vrijednosti.,
-Nos,Nos,
+Non-GST outward supplies,Vanjske zalihe bez GST-a,
+Non-Group to Group,Non-skupine do skupine,
+None of the items have any change in quantity or value.,Nitko od stavki ima bilo kakve promjene u količini ili vrijednosti.,
+Nos,kom,
 Not Available,Nije dostupno,
-Not Expired,Nije isteklo,
-Not Marked,Nije označeno,
-Not Paid and Not Delivered,Nije plaćeno i nije isporučeno,
-Not Permitted,Nije dopušteno,
-Not Started,Nije pokrenuto,
+Not Marked,neobilježen,
+Not Paid and Not Delivered,Ne plaća i ne Isporučeno,
+Not Permitted,Nije dopuštena,
+Not Started,Ne pokrenuto,
 Not active,Nije aktivan,
-Not allow to set alternative item for the item {0},Nije dopušteno postaviti alternativnu stavku za stavku {0},
-Not allowed to update stock transactions older than {0},Nije dopušteno ažuriranje transakcija zalihama starije od {0},
-Not authorized to edit frozen Account {0},Nije ovlašten za uređivanje zamrznutog računa {0},
-Not authroized since {0} exceeds limits,Nije autorizirano jer je broj {0} veći od ograničenja,
-Not eligible for the admission in this program as per DOB,Ne ispunjava uvjete za upis u ovaj program prema DOB-u,
-Not items found,Nije pronađena nijedna stavka,
-Not permitted for {0},Nije dopušteno za {0},
-"Not permitted, configure Lab Test Template as required","Nije dopušteno, po potrebi konfigurirajte predložak laboratorijskog testa",
-Not permitted. Please disable the Service Unit Type,Nije dopušteno. Isključite vrstu jedinice usluge,
-Note: Due / Reference Date exceeds allowed customer credit days by {0} day(s),Napomena: Datum dospijeća / referentni datum premašuje dopuštene kreditne dane klijenta do {0} dana (a),
-Note: Item {0} entered multiple times,Napomena: Stavka {0} unesena je više puta,
-Note: Payment Entry will not be created since 'Cash or Bank Account' was not specified,Napomena: unos za plaćanje neće biti kreiran jer nije naveden &quot;Novčani ili bankovni račun&quot;,
-Note: System will not check over-delivery and over-booking for Item {0} as quantity or amount is 0,Napomena: Sustav neće provjeriti prekomjernu isporuku i prekomjernu rezervaciju za stavku {0} jer je količina ili iznos 0,
-Note: There is not enough leave balance for Leave Type {0},Napomena: nema dovoljno preostalog balansa za vrstu ostavljanja {0},
-Note: This Cost Center is a Group. Cannot make accounting entries against groups.,Napomena: ovo mjesto troška je grupa. Nije moguće izvršiti računovodstvene unose za grupe.,
+Not allow to set alternative item for the item {0},Ne dopusti postavljanje alternativne stavke za stavku {0},
+Not allowed to update stock transactions older than {0},Nije dopušteno ažuriranje skladišnih transakcija starijih od {0},
+Not authorized to edit frozen Account {0},Niste ovlašteni za uređivanje zamrznutog računa {0},
+Not authroized since {0} exceeds limits,Niste ovlašteni od {0} prijeđenog limita,
+Not eligible for the admission in this program as per DOB,Ne ispunjavaju uvjete za prijem u ovaj program po DOB-u,
+Not items found,Nije pronađen stavke,
+Not permitted for {0},Nije dopušteno {0},
+"Not permitted, configure Lab Test Template as required","Nije dopušteno, konfigurirajte predložak laboratorija za testiranje prema potrebi",
+Not permitted. Please disable the Service Unit Type,Nije dopušteno. Onemogućite vrstu usluge,
+Note: Due / Reference Date exceeds allowed customer credit days by {0} day(s),Napomena: S obzirom / Referentni datum prelazi dopuštene kupca kreditne dana od {0} dana (s),
+Note: Item {0} entered multiple times,Napomena : Proizvod {0} je upisan više puta,
+Note: Payment Entry will not be created since 'Cash or Bank Account' was not specified,Napomena : Stupanje Plaćanje neće biti izrađen od ' Gotovina ili bankovni račun ' nije naveden,
+Note: System will not check over-delivery and over-booking for Item {0} as quantity or amount is 0,Napomena : Sustav neće provjeravati pretjerano isporuke i više - booking za točku {0} kao količinu ili vrijednost je 0,
+Note: There is not enough leave balance for Leave Type {0},Napomena : Nema dovoljno ravnotežu dopust za dozvolu tipa {0},
+Note: This Cost Center is a Group. Cannot make accounting entries against groups.,Napomena : Ovaj troškovni centar je grupa. Nije moguće napraviti računovodstvene unose od grupe.,
 Note: {0},Napomena: {0},
-Notes,Bilješke,
+Notes,Zabilješke,
 Nothing is included in gross,Ništa nije uključeno u bruto,
 Nothing more to show.,Ništa više za pokazati.,
-Nothing to change,Ništa za promjenu,
-Notice Period,Razdoblje obavijesti,
-Notify Customers via Email,Obavijestite klijente putem e-pošte,
-Number of Depreciations Booked cannot be greater than Total Number of Depreciations,Broj knjiženih amortizacija ne može biti veći od ukupnog broja amortizacije,
+Nothing to change,Ništa se ne mijenja,
+Notice Period,Otkaznog roka,
+Notify Customers via Email,Obavijesti korisnike putem e-pošte,
+Number of Depreciations Booked cannot be greater than Total Number of Depreciations,Broj deprecijaciju rezervirano ne može biti veća od Ukupan broj deprecijaciju,
 Number of Interaction,Broj interakcija,
 Number of Order,Broj narudžbe,
 "Number of new Account, it will be included in the account name as a prefix","Broj novog računa, bit će uključen u naziv računa kao prefiks",
-"Number of new Cost Center, it will be included in the cost center name as a prefix","Broj novog mjesta troška, on će biti uključen u naziv mjesta troška kao prefiks",
+"Number of new Cost Center, it will be included in the cost center name as a prefix","Broj novog mjesta troška, bit će uključen u naziv mjesta troška kao prefiks",
 Number of root accounts cannot be less than 4,Broj korijenskih računa ne može biti manji od 4,
 Odometer,mjerač za pređeni put,
 Office Equipments,Uredska oprema,
 Office Maintenance Expenses,Troškovi održavanja ureda,
-Office Rent,Iznajmljivanje ureda,
+Office Rent,Najam ureda,
 On Hold,Na čekanju,
-On Net Total,Na Neto ukupno,
-One customer can be part of only single Loyalty Program.,Jedan kupac može biti dio samo jednog programa vjernosti.,
+On Net Total,VPC,
+One customer can be part of only single Loyalty Program.,Jedan klijent može biti dio samo jednog programa lojalnosti.,
 Online,Na liniji,
 Online Auctions,Online aukcije,
-Only Leave Applications with status 'Approved' and 'Rejected' can be submitted,Mogu se poslati samo aplikacije koje imaju status &quot;Odobreno&quot; i &quot;Odbijeno&quot;,
-"Only the Student Applicant with the status ""Approved"" will be selected in the table below.",U donjoj tablici bit će odabran samo kandidat koji ima status &quot;Odobreno&quot;.,
-Only users with {0} role can register on Marketplace,Samo korisnici s ulogom {0} mogu se registrirati na Marketplaceu,
-Only {0} in stock for item {1},Samo {0} na skladištu za stavku {1},
-Open BOM {0},Otvori BOM {0},
-Open Item {0},Otvori stavku {0},
-Open Notifications,Otvori obavijesti,
+Only Leave Applications with status 'Approved' and 'Rejected' can be submitted,Ostavite samo one prijave sa statusom &quot;Odobreno&quot; i &quot;Odbijeno&quot; može se podnijeti,
+"Only the Student Applicant with the status ""Approved"" will be selected in the table below.",U sljedećoj tablici odabrat će se samo kandidatkinja za studente s statusom &quot;Odobreno&quot;.,
+Only users with {0} role can register on Marketplace,Samo korisnici s ulogom {0} mogu se registrirati na Marketplace,
+Only {0} in stock for item {1},Samo {0} na zalihama za stavku {1},
+Open BOM {0},Otvoreno BOM {0},
+Open Item {0},Otvoreno Stavka {0},
+Open Notifications,Otvoreno Obavijesti,
 Open Orders,Otvori narudžbe,
-Open a new ticket,Otvori novu kartu,
-Opening,Otvor,
-Opening (Cr),Otvaranje (Cr),
+Open a new ticket,Otvorite novu kartu,
+Opening,Otvaranje,
+Opening (Cr),Otvaranje ( Cr ),
 Opening (Dr),Otvaranje (Dr),
-Opening Accounting Balance,Otvaranje salda računovodstva,
-Opening Accumulated Depreciation,Otvaranje akumulirane amortizacije,
-Opening Accumulated Depreciation must be less than equal to {0},Otvaranje akumulirane amortizacije mora biti manje od {0},
+Opening Accounting Balance,Otvori računovodstveno stanje,
+Opening Accumulated Depreciation,Otvaranje Akumulirana amortizacija,
+Opening Accumulated Depreciation must be less than equal to {0},Otvaranje za akumuliranu amortizaciju mora biti manja od jednaka {0},
 Opening Balance,Početno stanje,
-Opening Balance Equity,Početni kapital,
-Opening Date and Closing Date should be within same Fiscal Year,Datum otvaranja i datum zatvaranja trebaju biti u istoj fiskalnoj godini,
-Opening Date should be before Closing Date,Datum otvaranja treba biti prije datuma zatvaranja,
-Opening Entry Journal,Dnevnik otvaranja unosa,
+Opening Balance Equity,Početno stanje kapital,
+Opening Date and Closing Date should be within same Fiscal Year,Otvaranje i zatvaranje Datum datum mora biti unutar iste fiskalne godine,
+Opening Date should be before Closing Date,Otvaranje Datum bi trebao biti prije datuma zatvaranja,
+Opening Entry Journal,Časopis za otvaranje,
 Opening Invoice Creation Tool,Otvaranje alata za izradu računa,
-Opening Invoice Item,Otvaranje stavke dostavnice,
-Opening Invoices,Otvaranje računa,
-Opening Invoices Summary,Sažetak otvorenih dostavnica,
-Opening Qty,Količina otvaranja,
-Opening Stock,Otvaranje dionice,
-Opening Stock Balance,Početno stanje zaliha,
-Opening Value,Početna vrijednost,
-Opening {0} Invoice created,Otvaranje {0} Stvorene dostavnice,
+Opening Invoice Item,Stavka fakture otvaranja fakture,
+Opening Invoices,Otvori računa,
+Opening Invoices Summary,Sažetak otvaranja faktura,
+Opening Qty,Otvaranje Kol,
+Opening Stock,Otvaranje Stock,
+Opening Stock Balance,Otvaranje kataloški bilanca,
+Opening Value,Otvaranje vrijednost,
+Opening {0} Invoice created,Otvaranje {0} fakture je izrađeno,
 Operation,operacija,
-Operation Time must be greater than 0 for Operation {0},Vrijeme rada mora biti veće od 0 za rad {0},
-"Operation {0} longer than any available working hours in workstation {1}, break down the operation into multiple operations","Operacija {0} dulja od svih raspoloživih radnih sati na radnoj stanici {1}, razbiti operaciju u više operacija",
+Operation Time must be greater than 0 for Operation {0},Operacija vrijeme mora biti veći od 0 za rad {0},
+"Operation {0} longer than any available working hours in workstation {1}, break down the operation into multiple operations","Operacija {0} više nego bilo raspoloživih radnih sati u radnom {1}, razbiti rad u više operacija",
 Operations,operacije,
-Operations cannot be left blank,Operacije se ne mogu ostaviti prazne,
-Opp Count,Opp Count,
+Operations cannot be left blank,Rad se ne može ostati prazno,
+Opp Count,Count Count,
 Opp/Lead %,Opp / Lead%,
 Opportunities,Mogućnosti,
-Opportunities by lead source,Mogućnosti od izvora,
+Opportunities by lead source,Mogućnosti izvora olova,
 Opportunity,Prilika,
-Opportunity Amount,Iznos mogućnosti,
-Optional Holiday List not set for leave period {0},Neobavezna lista praznika nije postavljena za razdoblje odlaska {0},
-"Optional. Sets company's default currency, if not specified.","Opcijski. Određuje zadanu valutu tvrtke, ako nije navedena.",
-Optional. This setting will be used to filter in various transactions.,Opcijski. Ova će se postavka koristiti za filtriranje različitih transakcija.,
+Opportunity Amount,Iznos prilika,
+Optional Holiday List not set for leave period {0},Izborni popis za odmor nije postavljen za dopust razdoblja {0},
+"Optional. Sets company's default currency, if not specified.","Izborni. Postavlja tvrtke zadanu valutu, ako nije navedeno.",
+Optional. This setting will be used to filter in various transactions.,Izborni . Ova postavka će se koristiti za filtriranje u raznim transakcijama .,
 Order Count,Broj naloga,
 Order Entry,Unos narudžbe,
 Order Value,Vrijednost narudžbe,
-Order rescheduled for sync,Narudžba je ponovno zakazana za sinkronizaciju,
-Order/Quot %,Narudžba / dio%,
-Ordered,Ž,
-Ordered Qty,Naručena količina,
-"Ordered Qty: Quantity ordered for purchase, but not received.","Naručena količina: Količina naručena za kupnju, ali ne i primljena.",
+Order rescheduled for sync,Redoslijed je preusmjeren za sinkronizaciju,
+Order/Quot %,Redoslijed / kvota%,
+Ordered,Naručeno,
+Ordered Qty,Naručena kol,
+"Ordered Qty: Quantity ordered for purchase, but not received.","Naručena količina: količina naručena za kupnju, ali nije došla .",
 Orders,Narudžbe,
-Orders released for production.,Narudžbe izdane za proizvodnju.,
+Orders released for production.,Narudžbe objavljen za proizvodnju.,
 Organization,Organizacija,
 Organization Name,Naziv organizacije,
-Other Reports,Druga izvješća,
-"Other outward supplies(Nil rated,Exempted)","Ostale vanjske potrepštine (bez ocjene, izuzeto)",
-Others,Drugi,
-Out Qty,Izlazni kom,
-Out Value,Izlazna vrijednost,
-Out of Order,Van reda,
-Outgoing,otvoren,
+Other Reports,Ostala izvješća,
+"Other outward supplies(Nil rated,Exempted)","Ostale vanjske zalihe (ocjenjivano bez vrijednosti, izuzeće)",
+Others,Ostali,
+Out Qty,Od kol,
+Out Value,Iz vrijednost,
+Out of Order,Izvanredno,
+Outgoing,Odlazni,
 Outstanding,izvanredan,
-Outstanding Amount,Preostali iznos,
+Outstanding Amount,Izvanredna Iznos,
 Outstanding Amt,Izvanredna amt,
-Outstanding Cheques and Deposits to clear,Izvanredne provjere i depoziti za brisanje,
-Outstanding for {0} cannot be less than zero ({1}),Izvanredno za {0} ne može biti manja od nule ({1}),
-"Outward taxable supplies(other than zero rated, nil rated and exempted","Vanjski oporezivi isporuke (osim nultih, nulti i izuzeti)",
-Outward taxable supplies(zero rated),Vanjski oporezivi dobavljači (s nultom ocjenom),
+Outstanding Cheques and Deposits to clear,Izvanredna Čekovi i depoziti za brisanje,
+Outstanding for {0} cannot be less than zero ({1}),Izvanredna za {0} ne može biti manji od nule ( {1} ),
+Outward taxable supplies(zero rated),Porezni porezi (nulta ocjena),
 Overdue,prezadužen,
 Overlap in scoring between {0} and {1},Preklapanje u bodovanju između {0} i {1},
-Overlapping conditions found between:,Uvjeti preklapanja pronađeni između:,
+Overlapping conditions found between:,Preklapanje uvjeti nalaze između :,
 Owner,Vlasnik,
 PAN,PAN,
-PO already created for all sales order items,PO je već kreirana za sve stavke prodajnog naloga,
+PO already created for all sales order items,PO već stvoren za sve stavke prodajnog naloga,
 POS,POS,
-POS Closing Voucher alreday exists for {0} between date {1} and {2},Trajanje kupona za POS terminale postoji za {0} između datuma {1} i {2},
+POS Closing Voucher alreday exists for {0} between date {1} and {2},Prostor za zatvaranje bonova za POS postoji {0} između datuma {1} i {2},
 POS Profile,POS profil,
-POS Profile is required to use Point-of-Sale,Za korištenje Point-of-Sale je potreban POS profil,
-POS Profile required to make POS Entry,POS profil potreban za POS ulaz,
+POS Profile is required to use Point-of-Sale,POS Profil je potreban za korištenje Point-of-Sale,
+POS Profile required to make POS Entry,POS Profil potrebna da bi POS unos,
 POS Settings,POS postavke,
-Packed quantity must equal quantity for Item {0} in row {1},Pakirana količina mora biti jednaka količini za stavku {0} u retku {1},
-Packing Slip,Pakiranje,
-Packing Slip(s) cancelled,Listić (i) pakiranja je otkazan (a),
+Packed quantity must equal quantity for Item {0} in row {1},Pakirana količina mora biti jednaka količini za proizvod {0} u redku {1},
+Packing Slip,Odreskom,
+Packing Slip(s) cancelled,Pakiranje proklizavanja ( s) otkazan,
 Paid,plaćen,
 Paid Amount,Plaćeni iznos,
-Paid Amount cannot be greater than total negative outstanding amount {0},Plaćeni iznos ne može biti veći od ukupnog negativnog iznosa nepodmirenog iznosa {0},
-Paid amount + Write Off Amount can not be greater than Grand Total,Plaćeni iznos + Piši Iznos ne može biti veći od Velikog ukupnog iznosa,
-Paid and Not Delivered,Plaćeno i nije isporučeno,
-Parent Item {0} must not be a Stock Item,Roditeljska stavka {0} ne smije biti dionica,
-Parents Teacher Meeting Attendance,Sudjelovanje roditelja u nastavi,
-Part-time,Skraćeno radno vrijeme,
-Partially Depreciated,Djelomično amortizirano,
+Paid Amount cannot be greater than total negative outstanding amount {0},Uplaćeni iznos ne može biti veći od ukupnog negativnog preostali iznos {0},
+Paid amount + Write Off Amount can not be greater than Grand Total,Uplaćeni iznos + otpis iznos ne može biti veći od SVEUKUPNO,
+Paid and Not Delivered,Plaćeni i nije isporučena,
+Parent Item {0} must not be a Stock Item,Roditelj Stavka {0} ne smije biti kataloški predmeta,
+Parents Teacher Meeting Attendance,Sastanak sudionika učitelja roditelja,
+Part-time,Privemeno (nepuno radno vrijeme),
+Partially Depreciated,djelomično amortiziraju,
 Partially Received,Djelomično primljeno,
-Party,Zabava,
-Party Name,Ime stranke,
-Party Type,Vrsta stranke,
-Party Type and Party is mandatory for {0} account,Vrsta stranke i stranka obvezni su za račun {0},
-Party Type is mandatory,Tip stranke je obavezan,
+Party,Stranka,
+Party Name,Naziv stranke,
+Party Type,Tip stranke,
+Party Type and Party is mandatory for {0} account,Vrsta stranke i stranka obvezni su za {0} račun,
+Party Type is mandatory,Tip stranka je obvezna,
 Party is mandatory,Stranka je obvezna,
-Password policy for Salary Slips is not set,Pravila za zaporke za isplate plaća nisu postavljena,
-Past Due Date,Datum dospijeća,
+Password policy for Salary Slips is not set,Pravila zaporki za salve za plaće nisu postavljena,
+Past Due Date,Prošli rok dospijeća,
 Patient,Pacijent,
-Patient Appointment,Imenovanje pacijenta,
-Patient Encounter,Pacijentov susret,
+Patient Appointment,Imenovanje pacijenata,
+Patient Encounter,Pacijentni susret,
 Patient not found,Pacijent nije pronađen,
-Pay Remaining,Preostalo plaćanje,
-Pay {0} {1},Platite {0} {1},
+Pay Remaining,Plaćanje preostalo,
+Pay {0} {1},Plaćajte {0} {1},
 Payable,plativ,
-Payable Account,Račun za plaćanje,
+Payable Account,Obveze prema dobavljačima,
 Payable Amount,Iznos koji se plaća,
-Payment,Plaćanje,
-Payment Cancelled. Please check your GoCardless Account for more details,Plaćanje otkazano. Provjerite svoj GoCardless račun za više pojedinosti,
+Payment,Uplata,
+Payment Cancelled. Please check your GoCardless Account for more details,Plaćanje je otkazano. Više pojedinosti potražite u svojem računu za GoCardless,
 Payment Confirmation,Potvrda uplate,
 Payment Date,Datum plačanja,
-Payment Days,Dani plaćanja,
-Payment Document,Dokument za plaćanje,
-Payment Due Date,Datum dospijeća plaćanja,
-Payment Entries {0} are un-linked,Unosi za plaćanje {0} nisu povezani,
-Payment Entry,Unos plaćanja,
-Payment Entry already exists,Unos za plaćanje već postoji,
-Payment Entry has been modified after you pulled it. Please pull it again.,"Unos plaćanja je izmijenjen nakon što ste ga izvukli. Molim vas, povucite ga opet.",
-Payment Entry is already created,Unos za plaćanje je već stvoren,
-Payment Failed. Please check your GoCardless Account for more details,Plaćanje neuspjelo. Provjerite svoj GoCardless račun za više pojedinosti,
-"Payment Gateway Account not created, please create one manually.","Račun za Gateway plaćanja nije izrađen, napravite ga ručno.",
+Payment Days,Plaćanja Dana,
+Payment Document,Dokument plaćanja,
+Payment Due Date,Plaćanje Due Date,
+Payment Entries {0} are un-linked,Prijave plaćanja {0} su UN-linked,
+Payment Entry,Ulaz za plaćanje,
+Payment Entry already exists,Ulaz za plaćanje već postoji,
+Payment Entry has been modified after you pulled it. Please pull it again.,Ulazak Plaćanje je izmijenjen nakon što ga je izvukao. Ponovno izvucite ga.,
+Payment Entry is already created,Ulazak Plaćanje je već stvorio,
+Payment Failed. Please check your GoCardless Account for more details,Plaćanje neuspjelo. Više pojedinosti potražite u svojem računu za GoCardless,
+"Payment Gateway Account not created, please create one manually.","Payment Gateway računa nije stvorio, ručno stvoriti jedan.",
 Payment Mode,Način plaćanja,
-"Payment Mode is not configured. Please check, whether account has been set on Mode of Payments or on POS Profile.",Način plaćanja nije konfiguriran. Provjerite je li račun postavljen na Način plaćanja ili na POS profil.,
-Payment Receipt Note,Bilješka o primitku plaćanja,
+"Payment Mode is not configured. Please check, whether account has been set on Mode of Payments or on POS Profile.","Način plaćanja nije konfiguriran. Provjerite, da li je račun postavljen na način rada platnu ili na POS profilu.",
+Payment Receipt Note,Plaćanje Potvrda Napomena,
 Payment Request,Zahtjev za plaćanje,
-Payment Request for {0},Zahtjev za plaćanje za {0},
-Payment Tems,Isplate za plaćanje,
+Payment Request for {0},Zahtjev za plaćanje {0},
+Payment Tems,Teme plaćanja,
 Payment Term,Rok plaćanja,
 Payment Terms,Uvjeti plaćanja,
-Payment Terms Template,Predložak uvjeta plaćanja,
+Payment Terms Template,Predložak o plaćanju,
 Payment Terms based on conditions,Uvjeti plaćanja na temelju uvjeta,
-Payment Type,Način plaćanja,
-"Payment Type must be one of Receive, Pay and Internal Transfer","Vrsta plaćanja mora biti jedna od vrsta primanja, plaćanja i internog prijenosa",
-Payment against {0} {1} cannot be greater than Outstanding Amount {2},Plaćanje za {0} {1} ne može biti veće od nepodmirenog iznosa {2},
-Payment of {0} from {1} to {2},Plaćanje od {0} od {1} do {2},
-Payment request {0} created,Napravljen je zahtjev za plaćanje {0},
+Payment Type,Vrsta plaćanja,
+"Payment Type must be one of Receive, Pay and Internal Transfer","Vrsta plaćanja mora biti jedan od primati, platiti i unutarnje prijenos",
+Payment against {0} {1} cannot be greater than Outstanding Amount {2},Plaćanje protiv {0} {1} ne može biti veća od preostali iznos {2},
+Payment of {0} from {1} to {2},Plaćanje {0} od {1} do {2},
+Payment request {0} created,Izrađen je zahtjev za plaćanje {0},
 Payments,Plaćanja,
 Payroll,Platni spisak,
-Payroll Number,Broj plaće,
-Payroll Payable,Plaće se plaćaju,
-Payroll date can not be less than employee's joining date,Datum na platnom spisku ne može biti manji od datuma pridruživanja zaposlenika,
+Payroll Number,Broj plaća,
+Payroll Payable,Plaće Plaća,
+Payroll date can not be less than employee's joining date,Datum plaćanja ne može biti manji od datuma pridruživanja zaposlenika,
 Payslip,Payslip,
 Pending Activities,Aktivnosti na čekanju,
 Pending Amount,Iznos na čekanju,
-Pending Leaves,Ostavljeni listovi,
-Pending Qty,Broj na čekanju:,
+Pending Leaves,Na čekanju ostavlja,
+Pending Qty,U tijeku Kom,
 Pending Quantity,Količina na čekanju,
-Pending Review,Pregled na čekanju,
-Pending activities for today,Aktivnosti na čekanju za danas,
+Pending Review,U tijeku pregled,
+Pending activities for today,Čekanju aktivnosti za danas,
 Pension Funds,Mirovinski fondovi,
-Percentage Allocation should be equal to 100%,Postotak udjela trebao bi biti jednak 100%,
+Percentage Allocation should be equal to 100%,Postotak izdvajanja mora biti 100 %,
 Perception Analysis,Analiza percepcije,
 Period,Razdoblje,
-Period Closing Entry,Unos zatvaranja razdoblja,
-Period Closing Voucher,Voucher za zatvaranje razdoblja,
+Period Closing Entry,Zatvaranje razdoblja Stupanje,
+Period Closing Voucher,Razdoblje Zatvaranje bon,
 Periodicity,Periodičnost,
-Personal Details,Osobni podatci,
+Personal Details,Osobni podaci,
 Pharmaceutical,Farmaceutski,
-Pharmaceuticals,Lijekovi,
+Pharmaceuticals,Farmaceutske,
 Physician,Liječnik,
-Piecework,Rad plaćen na akord,
+Piecework,Rad po komadu,
 Pin Code,PIN kod,
 Place Of Supply (State/UT),Mjesto opskrbe (država / UT),
 Place Order,Naručiti,
-Plan for maintenance visits.,Planirajte posjete za održavanje.,
-Planned Qty,Planirana količina,
-"Planned Qty: Quantity, for which, Work Order has been raised, but is pending to be manufactured.","Planirana količina: količina, za koju je radni nalog podignut, ali čeka na izradu.",
+Plan for maintenance visits.,Plan održavanja posjeta.,
+Planned Qty,Planirani Kol,
+"Planned Qty: Quantity, for which, Work Order has been raised, but is pending to be manufactured.","Količina planiranih količina: Količina za koju je radni nalog podizan, ali čeka se izrada.",
 Planning,Planiranje,
 Plants and Machineries,Biljke i strojevi,
-Please Set Supplier Group in Buying Settings.,Podesite grupu dobavljača u postavkama kupnje.,
-Please add a Temporary Opening account in Chart of Accounts,Dodajte Privremeni otvarajući račun u Kontni plan,
-Please add the account to root level Company - ,Dodajte račun na korijensku razinu tvrtke -,
-Please add the remaining benefits {0} to any of the existing component,Molimo dodajte preostale pogodnosti {0} bilo kojoj od postojećih komponenti,
-Please check Multi Currency option to allow accounts with other currency,Provjerite opciju Multi Valuta da biste omogućili račune s drugom valutom,
-Please click on 'Generate Schedule',Kliknite na &quot;Generiraj raspored&quot;,
-Please click on 'Generate Schedule' to fetch Serial No added for Item {0},Kliknite &quot;Generiraj raspored&quot; da biste dohvatili serijski broj dodan za stavku {0},
-Please click on 'Generate Schedule' to get schedule,Kliknite na &quot;Generiraj raspored&quot; da biste dobili raspored,
-Please confirm once you have completed your training,Potvrdite nakon završetka treninga,
-Please contact to the user who have Sales Master Manager {0} role,Kontaktirajte korisnika koji ima ulogu glavnog upravitelja prodaje {0},
-Please create Customer from Lead {0},Izradite klijenta s Lead {0},
-Please create purchase receipt or purchase invoice for the item {0},Izradite račun za kupnju ili račun za stavku {0},
-Please define grade for Threshold 0%,Odredite ocjenu za prag 0%,
-Please enable Applicable on Booking Actual Expenses,Omogućite Primjenjivo za stvarne troškove rezervacije,
-Please enable Applicable on Purchase Order and Applicable on Booking Actual Expenses,Molimo omogućite Primjenjivo na narudžbenici i primjenjivo na stvarne troškove rezervacije,
-Please enable default incoming account before creating Daily Work Summary Group,Omogućite zadani dolazni račun prije izrade Dnevne grupe sažetka rada,
-Please enable pop-ups,Omogućite skočne prozore,
-Please enter 'Is Subcontracted' as Yes or No,Molimo unesite &quot;Je li podugovor&quot; kao Da ili Ne,
-Please enter API Consumer Key,Unesite API Consumer Key,
-Please enter API Consumer Secret,Unesite tajnu API-ja za API,
-Please enter Account for Change Amount,Unesite račun za iznos izmjene,
-Please enter Approving Role or Approving User,Unesite uloga za odobravanje ili korisnika za odobravanje,
-Please enter Cost Center,Unesite mjesto troška,
+Please Set Supplier Group in Buying Settings.,Postavite grupu dobavljača u Postavke kupnje.,
+Please add a Temporary Opening account in Chart of Accounts,Dodajte Privremeni račun otvaranja u računskom planu,
+Please add the account to root level Company - ,Dodajte račun u korijensku razinu Tvrtka -,
+Please add the remaining benefits {0} to any of the existing component,Dodajte preostale pogodnosti {0} na bilo koju postojeću komponentu,
+Please check Multi Currency option to allow accounts with other currency,Molimo provjerite više valuta mogućnost dopustiti račune s druge valute,
+Please click on 'Generate Schedule',"Molimo kliknite na ""Generiraj raspored '",
+Please click on 'Generate Schedule' to fetch Serial No added for Item {0},"Molimo kliknite na ""Generiraj raspored ' dohvatiti Serial No dodao je za točku {0}",
+Please click on 'Generate Schedule' to get schedule,"Molimo kliknite na ""Generiraj raspored ' kako bi dobili raspored",
+Please confirm once you have completed your training,Potvrdite nakon završetka obuke,
+Please contact to the user who have Sales Master Manager {0} role,Molimo kontaktirajte korisniku koji imaju Sales Manager Master {0} ulogu,
+Please create Customer from Lead {0},Molimo stvoriti kupac iz Olovo {0},
+Please create purchase receipt or purchase invoice for the item {0},Izradite račun za kupnju ili fakturu za kupnju stavke {0},
+Please define grade for Threshold 0%,Definirajte ocjenu za Prag 0%,
+Please enable Applicable on Booking Actual Expenses,Omogući primjenjivo na aktualne troškove rezervacije,
+Please enable Applicable on Purchase Order and Applicable on Booking Actual Expenses,Omogući primjenjivo na narudžbenicu i odnosi se na aktualne troškove rezervacije,
+Please enable default incoming account before creating Daily Work Summary Group,Molimo omogućite zadani dolazni račun prije stvaranja Grupe za dnevni rad,
+Please enable pop-ups,Molimo omogućite pop-up prozora,
+Please enter 'Is Subcontracted' as Yes or No,Unesite ' Je podugovoren ' kao da ili ne,
+Please enter API Consumer Key,Unesite API ključ korisnika,
+Please enter API Consumer Secret,Unesite API Consumer Secret,
+Please enter Account for Change Amount,Unesite račun za promjene visine,
+Please enter Approving Role or Approving User,Unesite Odobravanje ulogu ili Odobravanje korisnike,
+Please enter Cost Center,Unesite troška,
 Please enter Delivery Date,Unesite datum isporuke,
-Please enter Employee Id of this sales person,Unesite Id zaposlenika te osobe za prodaju,
-Please enter Expense Account,Unesite račun troškova,
-Please enter Item Code to get Batch Number,Unesite kôd artikla za dobivanje broja serije,
-Please enter Item Code to get batch no,Unesite šifru stavke da biste dobili serijski br,
-Please enter Item first,Najprije unesite stavku,
-Please enter Maintaince Details first,Najprije unesite podatke o održavanju,
-Please enter Material Requests in the above table,U gornju tablicu unesite Zahtjevi za materijal,
-Please enter Planned Qty for Item {0} at row {1},Unesite planiranu količinu za stavku {0} u retku {1},
-Please enter Preferred Contact Email,Unesite željenu e-poštu kontakta,
-Please enter Production Item first,Najprije unesite proizvodnu stavku,
-Please enter Purchase Receipt first,Prvo unesite potvrdu o kupnji,
-Please enter Receipt Document,Unesite dokument o primitku,
+Please enter Employee Id of this sales person,Unesite ID zaposlenika ove prodaje osobi,
+Please enter Expense Account,Unesite trošak računa,
+Please enter Item Code to get Batch Number,Unesite Šifra dobiti broj serije,
+Please enter Item Code to get batch no,Unesite kod Predmeta da se hrpa nema,
+Please enter Item first,Unesite predmeta prvi,
+Please enter Maintaince Details first,Unesite prva Maintaince Detalji,
+Please enter Material Requests in the above table,Unesite materijala zahtjeva u gornjoj tablici,
+Please enter Planned Qty for Item {0} at row {1},Unesite Planirano Qty za točku {0} na redu {1},
+Please enter Preferred Contact Email,Unesite igraca Kontakt email,
+Please enter Production Item first,Unesite Proizvodnja predmeta prvi,
+Please enter Purchase Receipt first,Unesite prvo primku,
+Please enter Receipt Document,Unesite primitka dokumenta,
 Please enter Reference date,Unesite referentni datum,
 Please enter Repayment Periods,Unesite razdoblja otplate,
-Please enter Reqd by Date,Molimo unesite zahtjev po datumu,
-Please enter Sales Orders in the above table,Unesite prodajne narudžbe u gornju tablicu,
-Please enter Woocommerce Server URL,Unesite URL poslužitelja Woocommerce,
-Please enter Write Off Account,Unesite Račun za ispis,
-Please enter atleast 1 invoice in the table,U tablicu unesite najmanje 1 dostavnicu,
-Please enter company first,Najprije unesite tvrtku,
-Please enter company name first,Najprije unesite naziv tvrtke,
-Please enter default currency in Company Master,Unesite zadanu valutu u Company Master,
+Please enter Reqd by Date,Unesite Reqd po datumu,
+Please enter Sales Orders in the above table,Unesite prodajni nalozi u gornjoj tablici,
+Please enter Woocommerce Server URL,Unesite Woocommerce URL poslužitelja,
+Please enter Write Off Account,Unesite otpis račun,
+Please enter atleast 1 invoice in the table,Unesite atleast jedan račun u tablici,
+Please enter company first,Unesite tvrtka prva,
+Please enter company name first,Unesite ime tvrtke prvi,
+Please enter default currency in Company Master,Unesite zadanu valutu u tvrtki Master,
 Please enter message before sending,Unesite poruku prije slanja,
-Please enter parent cost center,Unesite nadređeno mjesto troška,
-Please enter quantity for Item {0},Unesite količinu za stavku {0},
-Please enter relieving date.,Unesite datum olakšavanja.,
+Please enter parent cost center,Unesite roditelj troška,
+Please enter quantity for Item {0},Molimo unesite količinu za točku {0},
+Please enter relieving date.,Unesite olakšavanja datum .,
 Please enter repayment Amount,Unesite iznos otplate,
-Please enter valid Financial Year Start and End Dates,Unesite važeći datum početka i završetka financijske godine,
-Please enter valid email address,Unesite važeću adresu e-pošte,
-Please enter {0} first,Najprije unesite {0},
-Please fill in all the details to generate Assessment Result.,Molimo Vas da ispunite sve pojedinosti za izradu rezultata ocjenjivanja.,
-Please identify/create Account (Group) for type - {0},Prepoznajte / stvorite račun (grupu) za vrstu - {0},
-Please identify/create Account (Ledger) for type - {0},Prepoznajte / stvorite račun (knjigu) za vrstu - {0},
-Please input all required Result Value(s),Molimo unesite sve potrebne vrijednosti rezultata,
+Please enter valid Financial Year Start and End Dates,Unesite valjani financijske godine datum početka i kraja,
+Please enter valid email address,Unesite valjanu e-adresu,
+Please enter {0} first,Unesite {0} prvi,
+Please fill in all the details to generate Assessment Result.,Molimo vas da popunite sve pojedinosti da biste stvorili rezultat procjene.,
+Please identify/create Account (Group) for type - {0},Identificirajte / kreirajte račun (grupu) za vrstu - {0},
+Please identify/create Account (Ledger) for type - {0},Identificirajte / kreirajte račun (knjigu) za vrstu - {0},
+Please input all required Result Value(s),Unesite sve potrebne vrijednosti rezultata,
 Please login as another user to register on Marketplace,Prijavite se kao drugi korisnik da biste se registrirali na tržištu,
-Please make sure you really want to delete all the transactions for this company. Your master data will remain as it is. This action cannot be undone.,Provjerite jeste li doista željeli izbrisati sve transakcije za tu tvrtku. Vaši glavni podaci ostaju onakvi kakvi jesu. Ta se radnja ne može poništiti.,
-Please mention Basic and HRA component in Company,Navedite osnovnu i HRA komponentu u tvrtki,
-Please mention Round Off Account in Company,Navedite tvrtku zaokružen račun,
-Please mention Round Off Cost Center in Company,Molim navedite Centar za troškove u krugu tvrtke,
-Please mention no of visits required,Navedite potreban broj posjeta,
-Please mention the Lead Name in Lead {0},Navedite ime olova u olovu {0},
-Please pull items from Delivery Note,"Molimo, izvucite stavke iz otpremnice",
-Please re-type company name to confirm,Ponovno unesite naziv tvrtke za potvrdu,
-Please register the SIREN number in the company information file,Registrirajte SIREN broj u datoteci s informacijama o tvrtki,
-Please remove this Invoice {0} from C-Form {1},Uklonite ovaj račun {0} iz C-obrasca {1},
-Please save before assigning task.,Spremite prije dodjeljivanja zadatka.,
-Please save the patient first,Prvo spremite pacijenta,
-Please save the report again to rebuild or update,Spremite izvješće ponovo za obnovu ili obnovu,
-"Please select Allocated Amount, Invoice Type and Invoice Number in atleast one row","Odaberite Dodijeljeni iznos, Vrsta fakture i Broj fakture u barem jednom retku",
-Please select Apply Discount On,Odaberite Primijeni popust na,
-Please select BOM against item {0},Odaberite BOM u odnosu na stavku {0},
-Please select BOM for Item in Row {0},Odaberite BOM za stavku u retku {0},
-Please select BOM in BOM field for Item {0},Odaberite BOM u polju BOM za stavku {0},
-Please select Category first,Prvo odaberite kategoriju,
-Please select Charge Type first,Prvo odaberite Vrsta punjenja,
-Please select Company,Odaberite tvrtku,
-Please select Company and Designation,Odaberite tvrtku i oznaku,
-Please select Company and Party Type first,Prvo odaberite tvrtku i vrstu stranke,
-Please select Company and Posting Date to getting entries,Odaberite Poduzeće i Datum knjiženja za dobivanje unosa,
-Please select Company first,Najprije odaberite tvrtku,
-Please select Completion Date for Completed Asset Maintenance Log,Odaberite Datum dovršetka dovršenog dnevnika održavanja imovine,
-Please select Completion Date for Completed Repair,Odaberite Datum dovršetka dovršene popravke,
-Please select Course,Molimo odaberite Tečaj,
-Please select Drug,Odaberite Drug,
+Please make sure you really want to delete all the transactions for this company. Your master data will remain as it is. This action cannot be undone.,Molimo provjerite da li stvarno želite izbrisati sve transakcije za ovu tvrtku. Vaši matični podaci će ostati kao što je to. Ova radnja se ne može poništiti.,
+Please mention Basic and HRA component in Company,Molimo navedite komponentu Basic i HRA u tvrtki,
+Please mention Round Off Account in Company,Molimo spomenuti zaokružiti račun u Društvu,
+Please mention Round Off Cost Center in Company,Molimo spomenuti zaokružiti troška u Društvu,
+Please mention no of visits required,Molimo spomenuti nema posjeta potrebnih,
+Please mention the Lead Name in Lead {0},Navedite Lead Name u Lead {0},
+Please pull items from Delivery Note,Molimo povucite stavke iz Dostavnica,
+Please re-type company name to confirm,Ponovno upišite naziv tvrtke za potvrdu,
+Please register the SIREN number in the company information file,Molimo registrirajte SIREN broj u informativnu datoteku tvrtke,
+Please remove this Invoice {0} from C-Form {1},Molimo uklonite ovu fakturu {0} od C-obrasca {1},
+Please save the patient first,Prvo spasi pacijenta,
+Please save the report again to rebuild or update,Spremite izvješće ponovo da biste ga ponovo izgradili ili ažurirali,
+"Please select Allocated Amount, Invoice Type and Invoice Number in atleast one row","Odaberite Dodijeljeni iznos, Vrsta računa i broj računa u atleast jednom redu",
+Please select Apply Discount On,Odaberite Primijeni popusta na,
+Please select BOM against item {0},Odaberite BOM prema stavci {0},
+Please select BOM for Item in Row {0},Odaberite BOM za točku u nizu {0},
+Please select BOM in BOM field for Item {0},Odaberite BOM u BOM polje za točku {0},
+Please select Category first,Molimo odaberite kategoriju prvi,
+Please select Charge Type first,Odaberite Naknada za prvi,
+Please select Company,Odaberite tvrtke,
+Please select Company and Designation,Odaberite Tvrtka i Oznaka,
+Please select Company and Party Type first,Odaberite Društvo i Zabava Tip prvi,
+Please select Company and Posting Date to getting entries,Odaberite unos za tvrtku i datum knjiženja,
+Please select Company first,Odaberite tvrtka prvi,
+Please select Completion Date for Completed Asset Maintenance Log,Molimo odaberite Datum završetka za Dovršeni dnevnik održavanja imovine,
+Please select Completion Date for Completed Repair,Odaberite Datum dovršetka za dovršen popravak,
+Please select Course,Odaberite Tečaj,
+Please select Drug,Odaberite Lijek,
 Please select Employee,Odaberite zaposlenika,
-Please select Employee Record first.,Najprije odaberite Zapis zaposlenika.,
-Please select Existing Company for creating Chart of Accounts,Odaberite postojeću tvrtku za izradu kontnog plana,
+Please select Employee Record first.,Odaberite zaposlenika rekord prvi.,
+Please select Existing Company for creating Chart of Accounts,Odaberite postojeće tvrtke za izradu grafikona o računima,
 Please select Healthcare Service,Odaberite Zdravstvenu službu,
-"Please select Item where ""Is Stock Item"" is ""No"" and ""Is Sales Item"" is ""Yes"" and there is no other Product Bundle","Odaberite stavku gdje je &quot;Je li stavka&quot; &quot;Ne&quot;, a &quot;Je li prodajna stavka&quot; je &quot;Da&quot; i nema drugog paketa proizvoda",
+"Please select Item where ""Is Stock Item"" is ""No"" and ""Is Sales Item"" is ""Yes"" and there is no other Product Bundle","Molimo odaberite stavku u kojoj &quot;Je kataloški Stavka&quot; je &quot;Ne&quot; i &quot;Je Prodaja Stavka&quot; &quot;Da&quot;, a ne postoji drugi bala proizvoda",
 Please select Maintenance Status as Completed or remove Completion Date,Odaberite Status održavanja kao dovršen ili uklonite datum dovršetka,
-Please select Party Type first,Najprije odaberite Vrsta stranke,
+Please select Party Type first,Odaberite Party Tip prvi,
 Please select Patient,Odaberite Pacijent,
 Please select Patient to get Lab Tests,Odaberite Pacijent da biste dobili laboratorijske testove,
-Please select Posting Date before selecting Party,Odaberite Datum knjiženja prije odabira Stranke,
-Please select Posting Date first,Prvo odaberite Datum knjiženja,
-Please select Price List,Odaberite Cjenik,
+Please select Posting Date before selecting Party,Odaberite datum knjiženja prije odabira stranku,
+Please select Posting Date first,Molimo odaberite datum knjiženja prvo,
+Please select Price List,Molim odaberite cjenik,
 Please select Program,Odaberite Program,
-Please select Qty against item {0},Odaberite Količina od stavke {0},
-Please select Sample Retention Warehouse in Stock Settings first,Najprije odaberite Skladište uzorka zadržavanja u postavkama zaliha,
-Please select Start Date and End Date for Item {0},Odaberite Datum početka i Datum završetka za stavku {0},
-Please select Student Admission which is mandatory for the paid student applicant,Molimo odaberite Prijem studenata koji je obvezan za plaćenog studenta,
-Please select a BOM,Odaberite sastavnicu,
-Please select a Batch for Item {0}. Unable to find a single batch that fulfills this requirement,Odaberite Batch for Item {0}. Nije moguće pronaći niti jedan paket koji ispunjava ovaj zahtjev,
+Please select Qty against item {0},Odaberite Qty od stavke {0},
+Please select Sample Retention Warehouse in Stock Settings first,Najprije odaberite Pohrana skladišta za uzorke u zalihama,
+Please select Start Date and End Date for Item {0},Molimo odaberite datum početka i datum završetka za točke {0},
+Please select Student Admission which is mandatory for the paid student applicant,Molimo odaberite Studentski ulaz koji je obvezan za plaćenog studenta,
+Please select a BOM,Odaberite BOM,
+Please select a Batch for Item {0}. Unable to find a single batch that fulfills this requirement,Odaberite Batch for Item {0}. Nije moguće pronaći jednu seriju koja ispunjava taj uvjet,
 Please select a Company,Odaberite tvrtku,
-Please select a batch,Odaberite paket,
+Please select a batch,Odaberite grupu,
 Please select a csv file,Odaberite csv datoteku,
 Please select a customer,Odaberite klijenta,
-Please select a field to edit from numpad,Odaberite polje za uređivanje iz numeričke tipkovnice,
+Please select a field to edit from numpad,Odaberite polje za uređivanje iz numpad,
 Please select a table,Odaberite tablicu,
-Please select a valid Date,Odaberite važeći Datum,
-Please select a value for {0} quotation_to {1},Odaberite vrijednost za {0} quotation_to {1},
+Please select a valid Date,Odaberite valjani datum,
+Please select a value for {0} quotation_to {1},Molimo odabir vrijednosti za {0} quotation_to {1},
 Please select a warehouse,Odaberite skladište,
 Please select an item in the cart,Odaberite stavku u košarici,
 Please select at least one domain.,Odaberite barem jednu domenu.,
-Please select correct account,Odaberite ispravan račun,
-Please select customer,Odaberite kupca,
+Please select correct account,Molimo odaberite ispravnu račun,
+Please select customer,Molimo izaberite kupca,
 Please select date,Odaberite datum,
-Please select item code,Odaberite kôd stavke,
-Please select month and year,Odaberite mjesec i godinu,
-Please select prefix first,Najprije odaberite prefiks,
+Please select item code,Odaberite Šifra,
+Please select month and year,Molimo odaberite mjesec i godinu,
+Please select prefix first,Odaberite prefiks prvi,
 Please select the Company,Odaberite tvrtku,
 Please select the Company first,Najprije odaberite tvrtku,
-Please select the Multiple Tier Program type for more than one collection rules.,Odaberite više vrsta programa za više pravila prikupljanja.,
-Please select the assessment group other than 'All Assessment Groups',"Odaberite grupu za ocjenjivanje, osim &quot;Sve grupe za procjenu&quot;",
-Please select the document type first,Prvo odaberite vrstu dokumenta,
-Please select weekly off day,Odaberite tjedni dan,
+Please select the Multiple Tier Program type for more than one collection rules.,Odaberite višestruki tip programa za više pravila za naplatu.,
+Please select the assessment group other than 'All Assessment Groups',Odaberite grupu za procjenu osim &quot;Sve grupe za procjenu&quot;,
+Please select the document type first,Molimo odaberite vrstu dokumenta prvi,
+Please select weekly off day,Odaberite tjednik off dan,
 Please select {0},Odaberite {0},
-Please select {0} first,Prvo odaberite {0},
-Please set 'Apply Additional Discount On',Postavite &quot;Primijeni dodatni popust na&quot;,
-Please set 'Asset Depreciation Cost Center' in Company {0},Postavite &quot;Središte troškova troškova amortizacije&quot; u tvrtki {0},
-Please set 'Gain/Loss Account on Asset Disposal' in Company {0},Postavite &quot;Račun dobiti / gubitka na raspolaganje imovinom&quot; u tvrtki {0},
-Please set Account in Warehouse {0} or Default Inventory Account in Company {1},Postavite račun na skladištu {0} ili zadani račun inventara u tvrtki {1},
-Please set B2C Limit in GST Settings.,Postavite B2C granicu u GST postavkama.,
+Please select {0} first,Odaberite {0} Prvi,
+Please set 'Apply Additional Discount On',Molimo postavite &quot;Primijeni dodatni popust na &#39;,
+Please set 'Asset Depreciation Cost Center' in Company {0},Molimo postavite &quot;imovinom Centar Amortizacija troškova &#39;u Društvu {0},
+Please set 'Gain/Loss Account on Asset Disposal' in Company {0},Molimo postavite &quot;dobici / gubici računa na sredstva Odlaganje &#39;u Društvu {0},
+Please set Account in Warehouse {0} or Default Inventory Account in Company {1},Postavite račun u skladištu {0} ili zadani račun oglasnog prostora u tvrtki {1},
+Please set B2C Limit in GST Settings.,Postavite ograničenje B2C u GST postavkama.,
 Please set Company,Postavite tvrtku,
-Please set Company filter blank if Group By is 'Company',Postavite filtar tvrtke prazan ako je Grupa prema oznaci &quot;Tvrtka&quot;,
-Please set Default Payroll Payable Account in Company {0},Postavite zadani račun plaća za plaće u tvrtki {0},
-Please set Depreciation related Accounts in Asset Category {0} or Company {1},Postavite račune za amortizaciju u kategoriji imovine {0} ili tvrtki {1},
-Please set Email Address,Postavite adresu e-pošte,
+Please set Company filter blank if Group By is 'Company',Postavite prazan filtar Tvrtke ako je Skupna pošta &quot;Tvrtka&quot;,
+Please set Default Payroll Payable Account in Company {0},Molimo postavite zadanog Platne naplativo račun u Društvu {0},
+Please set Depreciation related Accounts in Asset Category {0} or Company {1},Molimo postavite Amortizacija se odnose računi u imovini Kategorija {0} ili Društvo {1},
+Please set Email Address,Molimo postavite adresu e-pošte,
 Please set GST Accounts in GST Settings,Postavite GST račune u GST postavkama,
-Please set Hotel Room Rate on {},Molimo vas da postavite cijenu za hotelsku sobu na {},
-Please set Number of Depreciations Booked,Postavite broj knjiženih amortizacija,
-Please set Unrealized Exchange Gain/Loss Account in Company {0},Postavite nerealizirani račun dobiti i gubitka na burzi u tvrtki {0},
-Please set User ID field in an Employee record to set Employee Role,Postavite polje ID korisnika u zapis zaposlenika da biste postavili ulogu zaposlenika,
-Please set a default Holiday List for Employee {0} or Company {1},Postavite zadani popis praznika za zaposlenika {0} ili tvrtku {1},
+Please set Hotel Room Rate on {},Molimo postavite Hotel Room Rate na {},
+Please set Number of Depreciations Booked,Molimo postavite Broj deprecijaciju Rezervirano,
+Please set Unrealized Exchange Gain/Loss Account in Company {0},Unesite neispunjeni račun dobiti i gubitka u tvrtki {0},
+Please set User ID field in an Employee record to set Employee Role,Molimo postavite korisnički ID polje u zapisu zaposlenika za postavljanje uloga zaposlenika,
+Please set a default Holiday List for Employee {0} or Company {1},Postavite zadani popis za odmor za zaposlenika {0} ili poduzeću {1},
 Please set account in Warehouse {0},Postavite račun u skladištu {0},
 Please set an active menu for Restaurant {0},Postavite aktivni izbornik za restoran {0},
-Please set associated account in Tax Withholding Category {0} against Company {1},Postavite pridruženi račun u kategoriji zadržavanja poreza {0} protiv tvrtke {1},
-Please set at least one row in the Taxes and Charges Table,Postavite barem jedan redak u tablici Porezi i troškovi,
-Please set default Cash or Bank account in Mode of Payment {0},Postavite zadani novčani ili bankovni račun u načinu plaćanja {0},
-Please set default account in Expense Claim Type {0},Postavite zadani račun u vrsti zahtjeva za troškove {0},
-Please set default account in Salary Component {0},Postavite zadani račun u Komponenti plaća {0},
+Please set associated account in Tax Withholding Category {0} against Company {1},Postavite pridruženi račun u kategoriju zadržavanja poreza {0} tvrtke {1},
+Please set at least one row in the Taxes and Charges Table,Molimo postavite najmanje jedan redak u tablici poreza i nameta,
+Please set default Cash or Bank account in Mode of Payment {0},Molimo postavite zadanu gotovinom ili banka računa u načinu plaćanja {0},
+Please set default account in Salary Component {0},Molimo postavite zadani račun plaće komponente {0},
 Please set default customer group and territory in Selling Settings,Postavite zadanu grupu korisnika i teritorij u postavkama prodaje,
-Please set default customer in Restaurant Settings,Postavite zadanog korisnika u Postavkama restorana,
-Please set default template for Leave Approval Notification in HR Settings.,Postavite zadani predložak za Obavijest o dopustu u postavkama za ljudske resurse.,
-Please set default template for Leave Status Notification in HR Settings.,Postavite zadani predložak za Obavijest o ostavljanju statusa u postavkama za ljudske resurse.,
-Please set default {0} in Company {1},Postavite zadanu {0} u tvrtki {1},
-Please set filter based on Item or Warehouse,Postavite filtar na temelju stavke ili skladišta,
-Please set leave policy for employee {0} in Employee / Grade record,Postavite politiku ostavljanja zaposlenika {0} u evidenciji zaposlenika / razreda,
-Please set recurring after saving,Podesite ponavljanje nakon spremanja,
+Please set default customer in Restaurant Settings,Postavite zadani klijent u Postavkama restorana,
+Please set default template for Leave Approval Notification in HR Settings.,Postavite zadani predložak za Obavijest o odobrenju za ostavljanje u HR postavkama.,
+Please set default template for Leave Status Notification in HR Settings.,Postavite zadani predložak za Obavijest o statusu ostavite u HR postavkama.,
+Please set default {0} in Company {1},Molimo postavite zadani {0} u Društvu {1},
+Please set filter based on Item or Warehouse,Molimo postavite filter na temelju stavka ili skladište,
+Please set leave policy for employee {0} in Employee / Grade record,Postavite pravila o dopustu za zaposlenika {0} u zapisniku zaposlenika / razreda,
+Please set recurring after saving,Molimo postavite ponavljajući nakon spremanja,
 Please set the Company,Postavite tvrtku,
-Please set the Customer Address,Postavite adresu klijenta,
+Please set the Customer Address,Molimo postavite korisničku adresu,
 Please set the Date Of Joining for employee {0},Postavite datum pridruživanja za zaposlenika {0},
-Please set the Default Cost Center in {0} company.,Postavite Zadano mjesto troška u tvrtki {0}.,
-Please set the Email ID for the Student to send the Payment Request,Postavite ID e-pošte studentu da pošalje zahtjev za plaćanje,
-Please set the Item Code first,Najprije postavite kod stavke,
-Please set the Payment Schedule,Postavite raspored plaćanja,
+Please set the Default Cost Center in {0} company.,Postavite Zadani centar troškova u tvrtki {0}.,
+Please set the Email ID for the Student to send the Payment Request,Postavite ID e-pošte za učenika da pošalje zahtjev za plaćanjem,
+Please set the Item Code first,Najprije postavite šifru stavke,
+Please set the Payment Schedule,Molimo postavite Raspored plaćanja,
 Please set the series to be used.,Postavite seriju koja će se koristiti.,
 Please set {0} for address {1},Postavite {0} za adresu {1},
 Please setup Students under Student Groups,Postavite učenike u studentske grupe,
-Please share your feedback to the training by clicking on 'Training Feedback' and then 'New',"Podijelite svoje povratne informacije s obukom klikom na &quot;Povratne informacije o obuci&quot;, a zatim na &quot;Novo&quot;",
-Please specify Company,Navedite tvrtku,
-Please specify Company to proceed,Navedite tvrtku za nastavak,
-Please specify a valid 'From Case No.',Navedite valjanu &quot;Iz broja slučaja&quot;,
-Please specify a valid Row ID for row {0} in table {1},Navedite važeći ID retka za redak {0} u tablici {1},
-Please specify at least one attribute in the Attributes table,U tablici Atributi navedite najmanje jedan atribut,
-Please specify currency in Company,Navedite valutu u tvrtki,
-Please specify either Quantity or Valuation Rate or both,Navedite količinu ili stopu procjene ili oboje,
-Please specify from/to range,Navedite od / do raspona,
-Please supply the specified items at the best possible rates,Navedite navedene artikle po najboljoj mogućoj cijeni,
+Please share your feedback to the training by clicking on 'Training Feedback' and then 'New',"Podijelite svoje povratne informacije s obukom klikom na &quot;Povratne informacije o treningu&quot;, a zatim &quot;Novo&quot;",
+Please specify Company,Navedite tvrtke,
+Please specify Company to proceed,Navedite Tvrtka postupiti,
+Please specify a valid 'From Case No.',Navedite važeću &#39;iz Predmet br&#39;,
+Please specify a valid Row ID for row {0} in table {1},Navedite valjanu Row ID za redom {0} u tablici {1},
+Please specify at least one attribute in the Attributes table,Navedite barem jedan atribut u tablici Svojstva,
+Please specify currency in Company,Navedite valutu u Društvu,
+Please specify either Quantity or Valuation Rate or both,Navedite ili količini ili vrednovanja Ocijenite ili oboje,
+Please specify from/to range,Navedite od / do rasponu,
+Please supply the specified items at the best possible rates,Molimo dostaviti navedene stavke po najboljim mogućim cijenama,
 Please update your status for this training event,Ažurirajte svoj status za ovaj trening događaj,
 Please wait 3 days before resending the reminder.,Pričekajte 3 dana prije ponovnog slanja podsjetnika.,
-Point of Sale,Prodajno mjesto,
+Point of Sale,Point of Sale,
 Point-of-Sale,Prodajno mjesto,
-Point-of-Sale Profile,Profil prodajnog mjesta,
+Point-of-Sale Profile,Point-of-prodaju Profil,
 Portal,Portal,
 Possible Supplier,Mogući dobavljač,
 Postal Expenses,Poštanski troškovi,
 Posting Date,Datum objave,
-Posting Date cannot be future date,Datum knjiženja ne može biti budući datum,
-Posting Time,Vrijeme objavljivanja,
-Posting date and posting time is mandatory,Datum i vrijeme knjiženja su obavezni,
+Posting Date cannot be future date,Knjiženja Datum ne može biti datum u budućnosti,
+Posting Time,Vrijeme knjiženja,
+Posting date and posting time is mandatory,Datum knjiženja i knjiženje vrijeme je obvezna,
 Posting timestamp must be after {0},Vremenska oznaka knjiženja mora biti nakon {0},
 Potential opportunities for selling.,Potencijalne prilike za prodaju.,
-Practitioner Schedule,Raspored liječnika,
+Practitioner Schedule,Raspored praktičara,
 Pre Sales,Pretprodaja,
 Preference,Prednost,
-Prescribed Procedures,Propisane procedure,
+Prescribed Procedures,Propisani postupci,
 Prescription,Recept,
 Prescription Dosage,Doziranje na recept,
-Prescription Duration,Trajanje recepta,
+Prescription Duration,Trajanje liječenja,
 Prescriptions,propisi,
-Present,Predstaviti,
+Present,Sadašnje,
 Prev,Prethodna,
-Preview Salary Slip,Pregled isplate plaće,
-Previous Financial Year is not closed,Prethodna financijska godina nije zatvorena,
+Preview Salary Slip,Pregled Plaća proklizavanja,
+Previous Financial Year is not closed,Prethodne financijske godine nije zatvoren,
 Price,Cijena,
 Price List,Cjenik,
-Price List Currency not selected,Cjenik Valuta nije odabrana,
-Price List Rate,Cijena cjenika,
-Price List master.,Master cjenovnik.,
+Price List Currency not selected,Valuta cjenika nije odabrana,
+Price List Rate,Stopa cjenika,
+Price List master.,Glavni cjenik.,
 Price List must be applicable for Buying or Selling,Cjenik mora biti primjenjiv za kupnju ili prodaju,
-Price List not found or disabled,Cjenik nije pronađen ili onemogućen,
+Price List not found or disabled,Cjenik nije pronađen,
 Price List {0} is disabled or does not exist,Cjenik {0} je onemogućen ili ne postoji,
-Price or product discount slabs are required,Potrebne su ploče s popustom za cijenu ili proizvod,
+Price or product discount slabs are required,Obavezne su ploče sa cijenama ili popustima na proizvode,
 Pricing,cijena,
-Pricing Rule,Pravilo o određivanju cijena,
-"Pricing Rule is first selected based on 'Apply On' field, which can be Item, Item Group or Brand.","Pravilo za određivanje cijena prvo se odabire na temelju polja &quot;Primijeni na&quot; koje može biti Grupa, Grupa predmeta ili Marka.",
-"Pricing Rule is made to overwrite Price List / define discount percentage, based on some criteria.",Pravilo za određivanje cijena je napravljeno da prepiše Cjenik / definira postotak popusta na temelju nekih kriterija.,
-Pricing Rule {0} is updated,Pravilo određivanja cijena {0} je ažurirano,
-Pricing Rules are further filtered based on quantity.,Pravila za određivanje cijena dodatno se filtriraju na temelju količine.,
+Pricing Rule,Pravila cijena,
+"Pricing Rule is first selected based on 'Apply On' field, which can be Item, Item Group or Brand.","Cijene Pravilo prvo se bira na temelju 'Nanesite na' terenu, koji može biti točka, točka Grupa ili Brand.",
+"Pricing Rule is made to overwrite Price List / define discount percentage, based on some criteria.","Cijene Pravilo je napravljen prebrisati Cjenik / definirati postotak popusta, na temelju nekih kriterija.",
+Pricing Rule {0} is updated,Pravilo cijene {0} se ažurira,
+Pricing Rules are further filtered based on quantity.,Pravilnik o određivanju cijena dodatno se filtrira na temelju količine.,
 Primary,osnovni,
-Primary Address Details,Pojedinosti primarne adrese,
-Primary Contact Details,Osnovni kontaktni podaci,
-Principal Amount,Glavni iznos,
-Print IRS 1099 Forms,Ispis IRS 1099 Obrasci,
-Print Report Card,Ispis izvješćne kartice,
-Print and Stationery,Ispis i papirnica,
-Print settings updated in respective print format,Postavke ispisa ažurirane u odgovarajućem formatu ispisa,
-Print taxes with zero amount,Ispis poreza s nultim iznosom,
-Printing and Branding,Tisak i brendiranje,
-Private Equity,Privatni kapital,
-Privilege Leave,Dopust za povlastice,
+Primary Address Details,Primarni podaci o adresi,
+Primary Contact Details,Primarni podaci za kontakt,
+Principal Amount,iznos glavnice,
+Print IRS 1099 Forms,Ispiši obrasce IRS 1099,
+Print Report Card,Ispis izvješća,
+Print and Stationery,Ispis i konfekcija,
+Print settings updated in respective print format,Postavke ispisa ažurirana u odgovarajućem formatu za ispis,
+Print taxes with zero amount,Ispis poreza s nula iznosa,
+Printing and Branding,Tiskanje i brendiranje,
+Private Equity,Private Equity,
+Privilege Leave,Privilege dopust,
 Probation,probni rad,
-Probationary Period,Probno razdoblje,
-Procedure,Postupak,
-Process Day Book Data,Podaci o danu knjige procesa,
-Process Master Data,Glavni podaci procesa,
+Probationary Period,Probni,
+Process Day Book Data,Obradi podatke o dnevnim knjigama,
+Process Master Data,Obradi matične podatke,
 Processing Chart of Accounts and Parties,Obrada kontnog plana i stranaka,
-Processing Items and UOMs,Stavke obrade i UOM-ovi,
-Processing Party Addresses,Obrada adresa stranke,
+Processing Items and UOMs,Obrada predmeta i UOM-ova,
+Processing Party Addresses,Obrada stranačkih adresa,
 Processing Vouchers,Obrada bonova,
 Procurement,nabavka,
 Produced Qty,Proizvedena količina,
 Product,Proizvod,
-Product Bundle,Skup proizvoda,
-Product Search,Pretraživanje proizvoda,
+Product Bundle,Snop proizvoda,
+Product Search,Pretraga proizvoda,
 Production,Proizvodnja,
-Production Item,Proizvodna stavka,
-Productions Orders cannot be raised for:,Narudžbe produkcija ne mogu se podići za:,
+Production Item,Proizvodni proizvod,
 Products,proizvodi,
-Profit and Loss,Dobit i gubitak,
+Profit and Loss,Račun dobiti i gubitka,
 Profit for the year,Dobit za godinu,
 Program,Program,
-Program in the Fee Structure and Student Group {0} are different.,Program u strukturi naknada i studentska grupa {0} su različiti.,
+Program in the Fee Structure and Student Group {0} are different.,Program u strukturi naknada i studentskoj grupi {0} razlikuju se.,
 Program {0} does not exist.,Program {0} ne postoji.,
 Program: ,Program:,
-Progress % for a task cannot be more than 100.,Napredak% za zadatak ne može biti veći od 100.,
-Project Collaboration Invitation,Poziv na suradnju na projektu,
+Progress % for a task cannot be more than 100.,Napredak% za zadatak ne može biti više od 100.,
+Project Collaboration Invitation,Projekt Suradnja Poziv,
 Project Id,Id projekta,
 Project Manager,Voditelj projekta,
 Project Name,naziv projekta,
@@ -2206,1328 +2170,1303 @@
 Project Summary for {0},Sažetak projekta za {0},
 Project Update.,Ažuriranje projekta.,
 Project Value,Vrijednost projekta,
-Project activity / task.,Projektna aktivnost / zadatak.,
-Project master.,Voditelj projekta.,
-Project-wise data is not available for Quotation,Podaci o projektu nisu dostupni za ponudu,
-Projected,projektiran,
+Project activity / task.,Projekt aktivnost / zadatak.,
+Project master.,Projekt majstor.,
+Project-wise data is not available for Quotation,Projekt - mudar podaci nisu dostupni za ponudu,
+Projected,Predviđeno,
 Projected Qty,Predviđena količina,
-Projected Quantity Formula,Formula projicirane količine,
+Projected Quantity Formula,Projektirana količina količine,
 Projects,Projekti,
-Property already added,Vlasništvo je već dodano,
-Proposal Writing,Pisanje prijedloga,
-Proposal/Price Quote,Ponuda / cijena ponude,
+Property already added,Već je dodano svojstvo,
+Proposal Writing,Pisanje prijedlog,
+Proposal/Price Quote,Prijedlog / Citat,
 Prospecting,Ležišta,
-Provisional Profit / Loss (Credit),Privremeni dobitak / gubitak (kredit),
+Provisional Profit / Loss (Credit),Privremeni dobit / gubitak (Credit),
 Publications,publikacije,
-Publish Items on Website,Objavite stavke na web-lokaciji,
+Publish Items on Website,Objavi stavke na web stranici,
 Publishing,Objavljivanje,
-Purchase,Kupiti,
-Purchase Amount,Iznos kupnje,
+Purchase,Nabava,
+Purchase Amount,Iznos narudžbe,
 Purchase Date,Datum kupnje,
-Purchase Invoice,Račun za kupnju,
-Purchase Invoice {0} is already submitted,Faktura kupovine {0} već je poslana,
+Purchase Invoice,Ulazni račun,
+Purchase Invoice {0} is already submitted,Nabavni račun {0} je već podnesen,
 Purchase Order,Narudžbenica,
 Purchase Order Amount,Iznos narudžbe,
 Purchase Order Amount(Company Currency),Iznos narudžbe (valuta tvrtke),
 Purchase Order Date,Datum narudžbe,
-Purchase Order Items not received on time,Stavke narudžbenice nisu primljene na vrijeme,
-Purchase Order number required for Item {0},Broj narudžbe za stavku {0},
-Purchase Order to Payment,Narudžbenica za plaćanje,
-Purchase Order {0} is not submitted,Narudžba kupovine {0} nije poslana,
-Purchase Orders are not allowed for {0} due to a scorecard standing of {1}.,Nalozi za kupnju nisu dopušteni za {0} zbog stanja bodovanja {1}.,
-Purchase Orders given to Suppliers.,Narudžbenice koje se daju dobavljačima.,
-Purchase Price List,Cjenik kupnje,
-Purchase Receipt,Potvrda o kupnji,
-Purchase Receipt {0} is not submitted,Potvrda o kupnji {0} nije poslana,
-Purchase Tax Template,Predložak poreza na kupnju,
-Purchase orders help you plan and follow up on your purchases,Narudžbe za kupnju pomažu vam u planiranju i praćenju kupnje,
+Purchase Order Items not received on time,Stavke za kupnju nisu dobivene na vrijeme,
+Purchase Order number required for Item {0},Broj narudžbenice kupnje je potreban za artikal {0},
+Purchase Order to Payment,Narudžbenice za plaćanje,
+Purchase Order {0} is not submitted,Narudžbenicu {0} nije podnesen,
+Purchase Orders are not allowed for {0} due to a scorecard standing of {1}.,Narudžbenice za zabavu nisu dozvoljene za {0} zbog položaja ocjene bodova {1}.,
+Purchase Orders given to Suppliers.,Narudžbenice poslane dobavljačima,
+Purchase Price List,Kupovni cjenik,
+Purchase Receipt,Primka,
+Purchase Receipt {0} is not submitted,Primka {0} nije potvrđena,
+Purchase Tax Template,Predložak poreza pri nabavi,
+Purchase orders help you plan and follow up on your purchases,Narudžbenice vam pomoći planirati i pratiti na Vašoj kupnji,
 Purchasing,Nabava,
 Purpose must be one of {0},Svrha mora biti jedna od {0},
 Qty,Kol,
 Qty To Manufacture,Količina za proizvodnju,
-Qty Total,Ukupno ukupno,
+Qty Total,Ukupni broj,
 Qty for {0},Količina za {0},
-Qty per BOM Line,Količina po liniji sastavnica,
 Qualification,Kvalifikacija,
 Quality,kvaliteta,
-Quality Action,Akcija kvalitete,
+Quality Action,Kvalitetna akcija,
 Quality Goal.,Cilj kvalitete.,
 Quality Inspection,Provjera kvalitete,
-Quality Inspection: {0} is not submitted for the item: {1} in row {2},Provjera kvalitete: {0} nije poslan za stavku: {1} u retku {2},
+Quality Inspection: {0} is not submitted for the item: {1} in row {2},Provjera kvalitete: {0} ne podnosi se za stavku: {1} u retku {2},
 Quality Management,Upravljanje kvalitetom,
 Quality Meeting,Sastanak kvalitete,
 Quality Procedure,Postupak kvalitete,
 Quality Procedure.,Postupak kvalitete.,
-Quality Review,Ocjena kvalitete,
+Quality Review,Pregled kvalitete,
 Quantity,Količina,
-Quantity ({0}) cannot be a fraction in row {1},Količina ({0}) ne može biti dio u retku {1},
-Quantity for Item {0} must be less than {1},Količina za stavku {0} mora biti manja od {1},
-Quantity in row {0} ({1}) must be same as manufactured quantity {2},Količina u retku {0} ({1}) mora biti ista kao proizvedena količina {2},
-Quantity must be less than or equal to {0},Količina mora biti manja ili jednaka {0},
+Quantity for Item {0} must be less than {1},Količina za proizvod {0} mora biti manja od {1},
+Quantity in row {0} ({1}) must be same as manufactured quantity {2},Količina u redku {0} ({1}) mora biti ista kao proizvedena količina {2},
+Quantity must be less than or equal to {0},Količina mora biti manji ili jednak {0},
 Quantity must be positive,Količina mora biti pozitivna,
 Quantity must not be more than {0},Količina ne smije biti veća od {0},
-Quantity required for Item {0} in row {1},Količina potrebna za stavku {0} u retku {1},
-Quantity should be greater than 0,Količina treba biti veća od 0,
+Quantity required for Item {0} in row {1},Količina potrebna za proizvod {0} u redku {1},
+Quantity should be greater than 0,Količina bi trebala biti veća od 0,
 Quantity to Make,Količina za izradu,
-Quantity to Manufacture must be greater than 0.,Količina za proizvodnju mora biti veća od 0.,
+Quantity to Manufacture must be greater than 0.,Količina za proizvodnju mora biti veći od 0.,
 Quantity to Produce,Količina za proizvodnju,
-Quantity to Produce can not be less than Zero,Količina za proizvodnju ne može biti manja od nule,
-Queued for replacing the BOM. It may take a few minutes.,U redu za zamjenu sastavnice. Može potrajati nekoliko minuta.,
-Queued for updating latest price in all Bill of Materials. It may take a few minutes.,U redu za ažuriranje najnovije cijene u svim materijalima. Može potrajati nekoliko minuta.,
-Quick Journal Entry,Brzi unos u dnevnik,
-Quot Count,Broj računa,
-Quot/Lead %,Quot / Lead%,
-Quotation,Citat,
-Quotation {0} is cancelled,Poništena je ponuda {0},
-Quotation {0} not of type {1},Ponuda {0} nije vrste {1},
+Quantity to Produce can not be less than Zero,Količina za proizvodnju ne može biti manja od Nula,
+Queued for replacing the BOM. It may take a few minutes.,U redu čekanja za zamjenu BOM-a. Može potrajati nekoliko minuta.,
+Queued for updating latest price in all Bill of Materials. It may take a few minutes.,U redu čekanja za ažuriranje najnovije cijene u svim Bill of Materials. Može potrajati nekoliko minuta.,
+Quick Journal Entry,Brzo Temeljnica,
+Quot Count,Broj kvote,
+Quot/Lead %,Kvota / olovo%,
+Quotation,Ponuda,
+Quotation {0} is cancelled,Ponuda {0} je otkazana,
+Quotation {0} not of type {1},Ponuda {0} nije tip {1},
 Quotations,citati,
-"Quotations are proposals, bids you have sent to your customers","Ponude su ponude, ponude koje ste poslali svojim klijentima",
-Quotations received from Suppliers.,Ponude primljene od dobavljača.,
+"Quotations are proposals, bids you have sent to your customers","Citati su prijedlozi, ponude koje ste poslali na svoje klijente",
+Quotations received from Suppliers.,Ponude dobivene od dobavljača.,
 Quotations: ,citati:,
-Quotes to Leads or Customers.,Citati za voditelje ili klijente.,
-RFQs are not allowed for {0} due to a scorecard standing of {1},RFQ-ovi nisu dopušteni za {0} zbog stanja karata rezultata {1},
-Range,opseg,
-Rate,Stopa,
+Quotes to Leads or Customers.,Ponude za kupce ili potencijalne kupce.,
+RFQs are not allowed for {0} due to a scorecard standing of {1},Zahtjevi za odobrenje nisu dopušteni za {0} zbog položaja {1},
+Range,Domet,
+Rate,VPC,
 Rate:,Stopa:,
-Raw Material,Sirovina,
+Raw Material,sirovine,
 Raw Materials,Sirovine,
-Raw Materials cannot be blank.,Sirovine ne mogu biti prazne.,
-Re-open,Ponovo otvoriti,
+Raw Materials cannot be blank.,Sirovine ne može biti prazno.,
+Re-open,Ponovno otvorena,
 Read blog,Pročitajte blog,
 Read the ERPNext Manual,Pročitajte ERPNext priručnik,
-Reading Uploaded File,Čitanje učitane datoteke,
-Real Estate,Nekretnina,
-Reason For Putting On Hold,Razlog stavljanja na čekanje,
+Reading Uploaded File,Čitanje prenesene datoteke,
+Real Estate,Nekretnine,
+Reason For Putting On Hold,Razlog za stavljanje na čekanje,
 Reason for Hold,Razlog zadržavanja,
 Reason for hold: ,Razlog zadržavanja:,
 Receipt,Priznanica,
-Receipt document must be submitted,Potrebno je dostaviti potvrdu,
+Receipt document must be submitted,Prijem dokumenata moraju biti dostavljeni,
 Receivable,potraživanja,
-Receivable Account,Račun potraživanja,
-Receive at Warehouse Entry,Primajte na ulazu u skladište,
+Receivable Account,Potraživanja račun,
+Receive at Warehouse Entry,Primanje na ulazu u skladište,
 Received,primljen,
-Received On,Primljeno Uključeno,
+Received On,Primila je u,
 Received Quantity,Primljena količina,
-Received Stock Entries,Primljene dionice,
-Receiver List is empty. Please create Receiver List,Popis primatelja je prazan. Napravite popis primatelja,
+Received Stock Entries,Primljene prijave na dionice,
+Receiver List is empty. Please create Receiver List,Receiver Lista je prazna . Molimo stvoriti Receiver Popis,
 Reconcile,Pomiriti,
-Record Patient Vitals,Zabilježite vitalne učinke pacijenta,
-"Record of all communications of type email, phone, chat, visit, etc.","Snimanje svih komunikacija vrste e-pošte, telefona, razgovora, posjeta itd.",
+"Record of all communications of type email, phone, chat, visit, etc.","Snimanje svih komunikacija tipa e-mail, telefon, chat, posjete, itd",
 Records,ploče,
-Ref,Ref,
-Ref Date,Datum odbijanja,
+Ref,Ref.,
+Ref Date,Ref Datum,
 Reference,upućivanje,
-Reference #{0} dated {1},Referenca # {0} s datumom {1},
+Reference #{0} dated {1},Reference # {0} od {1},
 Reference Date,Referentni datum,
-Reference Doctype must be one of {0},Reference Doctype mora biti jedna od {0},
+Reference Doctype must be one of {0},Referentni DOCTYPE mora biti jedan od {0},
 Reference Document,Referentni dokument,
-Reference No & Reference Date is required for {0},Referentni broj i referentni datum potrebni su za {0},
-Reference No and Reference Date is mandatory for Bank transaction,Referentni broj i referentni datum obvezni su za bankovnu transakciju,
-Reference No is mandatory if you entered Reference Date,Referentni broj je obavezan ako ste unijeli referentni datum,
+Reference No & Reference Date is required for {0},Reference Nema & Reference Datum je potrebno za {0},
+Reference No and Reference Date is mandatory for Bank transaction,Referentni broj i reference Datum obvezna je za banke transakcije,
+Reference No is mandatory if you entered Reference Date,Reference Ne obvezno ako ušao referentnog datuma,
 Reference No.,Referentni broj,
 Reference Number,Referentni broj,
-"Reference: {0}, Item Code: {1} and Customer: {2}","Referenca: {0}, šifra artikla: {1} i klijent: {2}",
+"Reference: {0}, Item Code: {1} and Customer: {2}","Referenca: {0}, šifra stavke: {1} i klijent: {2}",
 References,Reference,
 Register,Registrirajte se,
-Registration fee can not be Zero,Kotizacija ne može biti Zero,
 Reject,Odbiti,
 Rejected,odbijen,
 Related,povezan,
-Relation with Guardian1,Odnos s Guardianom1,
-Relation with Guardian2,Odnos s Guardianom2,
+Relation with Guardian1,Odnos s Guardian1,
+Relation with Guardian2,Odnos s Guardian2,
 Release Date,Datum izlaska,
-Reload Linked Analysis,Ponovno učitavanje povezane analize,
+Reload Linked Analysis,Ponovno učitaj povezanu analizu,
 Remaining,ostali,
-Remaining Balance,Preostala ravnoteža,
-Remarks,Opaske,
-Reminder to update GSTIN Sent,Podsjetnik za ažuriranje GSTIN-a poslanog,
-Remove item if charges is not applicable to that item,Uklonite stavku ako se troškovi ne odnose na tu stavku,
-Removed items with no change in quantity or value.,Uklonjene stavke bez promjene količine ili vrijednosti.,
-Reopen,Ponovo otvoriti,
-Reorder Level,Promjena redoslijeda,
-Reorder Qty,Reorder Qty,
-Repeat Customer Revenue,Ponovite prihode od kupaca,
-Repeat Customers,Ponovite korisnike,
-Replace BOM and update latest price in all BOMs,Zamijenite BOM i ažurirajte najnoviju cijenu u svim sastavnicama,
+Remaining Balance,Preostali saldo,
+Remarks,Primjedbe,
+Reminder to update GSTIN Sent,Podsjetnik za ažuriranje GSTIN posla,
+Remove item if charges is not applicable to that item,Uklanjanje stavke ako troškovi se ne odnosi na tu stavku,
+Removed items with no change in quantity or value.,Uklonjene stvari bez promjena u količini ili vrijednosti.,
+Reopen,Ponovno otvori,
+Reorder Level,Poredaj Razina,
+Reorder Qty,Poredaj Kom,
+Repeat Customer Revenue,Ponovite kupaca prihoda,
+Repeat Customers,Ponoviti kupaca,
+Replace BOM and update latest price in all BOMs,Zamijenite BOM i ažurirajte najnoviju cijenu u svim BOM-ovima,
 Replies,Odgovori,
-Report,izvješće,
-Report Builder,Graditelj izvješća,
-Report Type is mandatory,Vrsta izvješća je obavezna,
-Report an Issue,Prijaviti problem,
-Reports,Izvještaji,
-Reqd By Date,Zahtjev po datumu,
+Report,Prijavi,
+Report Builder,Report Builder,
+Report Type is mandatory,Vrsta izvješća je obvezno,
+Report an Issue,Prijavi problem,
+Reports,Izvješća,
+Reqd By Date,Reqd Po datumu,
 Reqd Qty,Reqd Qty,
 Request for Quotation,Zahtjev za ponudu,
-"Request for Quotation is disabled to access from portal, for more check portal settings.",Zahtjev za Ponudu onemogućen je za pristup s portala za više provjera postavki portala.,
-Request for Quotations,Zahtjev za ponudu,
+"Request for Quotation is disabled to access from portal, for more check portal settings.","Zahtjev za ponudu je onemogućen pristup sa portala, za više postavki provjere portal.",
+Request for Quotations,Zahtjev za dostavljanje ponuda,
 Request for Raw Materials,Zahtjev za sirovine,
 Request for purchase.,Zahtjev za kupnju.,
 Request for quotation.,Zahtjev za ponudu.,
-Requested Qty,Zatražena količina,
-"Requested Qty: Quantity requested for purchase, but not ordered.","Zatražena količina: količina koja se traži za kupnju, ali nije naručena.",
-Requesting Site,Tražite web-lokaciju,
-Requesting payment against {0} {1} for amount {2},Zahtjev za plaćanje u iznosu od {0} {1} za iznos {2},
+Requested Qty,Traženi Kol,
+"Requested Qty: Quantity requested for purchase, but not ordered.","Tražena količina : Količina zatražio za kupnju , ali ne i naređeno .",
+Requesting Site,Podnositelj zahtjeva,
+Requesting payment against {0} {1} for amount {2},Zahtjev za isplatu od {0} {1} za iznos {2},
 Requestor,Podnositelj zahtjeva,
-Required On,Obavezno uključeno,
-Required Qty,Potreban broj,
+Required On,Potrebna On,
+Required Qty,Potrebna Kol,
 Required Quantity,Potrebna količina,
 Reschedule,napraviti nov raspored,
 Research,Istraživanje,
 Research & Development,Istraživanje i razvoj,
 Researcher,Istraživač,
-Resend Payment Email,Ponovno pošaljite e-poštu s plaćanjem,
-Reserve Warehouse,Rezervno skladište,
-Reserved Qty,Rezervisana količina,
-Reserved Qty for Production,Rezervisana količina za proizvodnju,
-Reserved Qty for Production: Raw materials quantity to make manufacturing items.,Rezervirana količina za proizvodnju: Količina sirovina za izradu proizvodnih predmeta.,
-"Reserved Qty: Quantity ordered for sale, but not delivered.","Rezervirano Količina: Količina naručena za prodaju, ali ne isporučena.",
-Reserved Warehouse is mandatory for Item {0} in Raw Materials supplied,Rezervirano skladište obvezno je za stavku {0} u dostavljenim sirovinama,
+Resend Payment Email,Ponovno slanje plaćanja Email,
+Reserve Warehouse,Rezervni skladište,
+Reserved Qty,Rezervirano Kol,
+Reserved Qty for Production,Rezervirano Kol za proizvodnju,
+Reserved Qty for Production: Raw materials quantity to make manufacturing items.,Količina rezervirane za proizvodnju: Količina sirovina za izradu proizvodnih predmeta.,
+"Reserved Qty: Quantity ordered for sale, but not delivered.","Rezervirano Količina : Količina naručiti za prodaju , ali nije dostavljena .",
+Reserved Warehouse is mandatory for Item {0} in Raw Materials supplied,Rezervirano skladište obvezno je za stavku {0} u sirovinama koje ste dobili,
 Reserved for manufacturing,Rezervirano za proizvodnju,
 Reserved for sale,Rezervirano za prodaju,
 Reserved for sub contracting,Rezervirano za podugovaranje,
 Resistant,otporan,
-Resolve error and upload again.,Rješavanje pogreške i ponovno učitavanje.,
+Resolve error and upload again.,Riješite pogrešku i prenesite ponovo.,
 Responsibilities,odgovornosti,
 Rest Of The World,Ostatak svijeta,
-Restart Subscription,Ponovno pokrenite Pretplatu,
+Restart Subscription,Ponovo pokreni pretplatu,
 Restaurant,Restoran,
-Result Date,Datum rezultata,
+Result Date,Rezultat datuma,
 Result already Submitted,Rezultat je već poslan,
 Resume,Rezime,
 Retail,Maloprodaja,
-Retail & Wholesale,Maloprodaja i veleprodaja,
-Retail Operations,Maloprodajne operacije,
-Retained Earnings,Zadržana zarada,
-Retention Stock Entry,Zadržavanje zaliha,
-Retention Stock Entry already created or Sample Quantity not provided,Zadržana zaliha Unos već stvoren ili uzorak količine nije dostavljen,
+Retail & Wholesale,Trgovina na veliko i,
+Retail Operations,Trgovina na malo,
+Retained Earnings,Zadržana dobit,
+Retention Stock Entry,Zadržavanje dionice,
+Retention Stock Entry already created or Sample Quantity not provided,Dionice za zadržavanje koji su već stvoreni ili Uzorak Količina nije predviđen,
 Return,Povratak,
-Return / Credit Note,Povratna / kreditna bilješka,
-Return / Debit Note,Povratna / debitna napomena,
+Return / Credit Note,Povrat / odobrenje kupcu,
+Return / Debit Note,Povratak / debitna Napomena,
 Returns,vraća,
 Reverse Journal Entry,Obrnuti unos dnevnika,
-Review Invitation Sent,Pozivnica za preglede poslana,
+Review Invitation Sent,Pregledajte pozivnicu poslanu,
 Review and Action,Pregled i radnja,
 Rooms Booked,Sobe rezervirane,
-Root Account must be a group,Root račun mora biti grupa,
 Root Company,Root Company,
-Root Type,Tip korijena,
-Root Type is mandatory,Root Type je obvezna,
-Root cannot be edited.,Root se ne može uređivati.,
-Root cannot have a parent cost center,Root ne može imati nadređeno mjesto troška,
+Root Type,korijen Tip,
+Root Type is mandatory,Korijen Tip je obvezno,
+Root cannot be edited.,Korijen ne može se mijenjati .,
+Root cannot have a parent cost center,Korijen ne mogu imati središte troškova roditelj,
 Round Off,Zaokružiti,
-Rounded Total,Zaokruženo Ukupno,
-Row # {0}: ,Redak {{0}:,
-Row # {0}: Batch No must be same as {1} {2},Redak {{0}: serijski broj mora biti isti kao i {1} {2},
-Row # {0}: Cannot return more than {1} for Item {2},Redak # {0}: Nije moguće vratiti više od {1} za stavku {2},
-Row # {0}: Rate cannot be greater than the rate used in {1} {2},Redak # {0}: stopa ne može biti veća od stope koja se koristi u {1} {2},
-Row # {0}: Returned Item {1} does not exists in {2} {3},Redak {{0}: vraćena stavka {1} ne postoji u {2} {3},
-Row # {0}: Serial No is mandatory,Red # {0}: Serijski broj je obavezan,
-Row # {0}: Serial No {1} does not match with {2} {3},Redak # {0}: Serijski broj {1} se ne podudara s {2} {3},
-Row #{0} (Payment Table): Amount must be negative,Redak {{0} (Tablica plaćanja): Iznos mora biti negativan,
-Row #{0} (Payment Table): Amount must be positive,Redak {{0} (Tablica plaćanja): Iznos mora biti pozitivan,
-Row #{0}: Account {1} does not belong to company {2},Redak {{0}: račun {1} ne pripada tvrtki {2},
+Rounded Total,Zaokruženi iznos,
+Row # {0}: ,Red # {0}:,
+Row # {0}: Batch No must be same as {1} {2},Red # {0}: Batch Ne mora biti ista kao {1} {2},
+Row # {0}: Cannot return more than {1} for Item {2},Red # {0}: Ne može se vratiti više od {1} za točku {2},
+Row # {0}: Rate cannot be greater than the rate used in {1} {2},Red # {0}: Stopa ne može biti veća od stope korištene u {1} {2},
+Row # {0}: Returned Item {1} does not exists in {2} {3},Red # {0}: Vraćeno Stavka {1} ne postoji u {2} {3},
+Row # {0}: Serial No is mandatory,Red # {0}: Serijski br obvezno,
+Row # {0}: Serial No {1} does not match with {2} {3},Red # {0}: Serijski br {1} ne odgovara {2} {3},
+Row #{0} (Payment Table): Amount must be negative,Redak # {0} (Tablica plaćanja): iznos mora biti negativan,
+Row #{0} (Payment Table): Amount must be positive,Red # {0} (Tablica plaćanja): iznos mora biti pozitivan,
+Row #{0}: Account {1} does not belong to company {2},Red # {0}: Račun {1} ne pripada tvrtki {2},
 Row #{0}: Allocated Amount cannot be greater than outstanding amount.,Red # {0}: dodijeljeni iznos ne može biti veći od nepodmirenog iznosa.,
-"Row #{0}: Asset {1} cannot be submitted, it is already {2}","Redak # {0}: Imovina {1} nije moguće poslati, već je {2}",
-Row #{0}: Cannot set Rate if amount is greater than billed amount for Item {1}.,Redak # {0}: Ne može se postaviti stopa ako je iznos veći od obračunatog iznosa za stavku {1}.,
-Row #{0}: Clearance date {1} cannot be before Cheque Date {2},Redak {{0}: Datum odobrenja {1} ne može biti prije datuma provjere {2},
-Row #{0}: Duplicate entry in References {1} {2},Redak # {0}: Dvostruki unos u literaturi {1} {2},
-Row #{0}: Expected Delivery Date cannot be before Purchase Order Date,Redak # {0}: Očekivani datum isporuke ne može biti prije datuma narudžbe,
+"Row #{0}: Asset {1} cannot be submitted, it is already {2}","Red # {0}: Imovina {1} ne može se podnijeti, to je već {2}",
+Row #{0}: Cannot set Rate if amount is greater than billed amount for Item {1}.,Redak # {0}: Nije moguće postaviti stopu ako je iznos veći od naplaćenog iznosa za stavku {1}.,
+Row #{0}: Clearance date {1} cannot be before Cheque Date {2},Red # {0}: Datum Razmak {1} ne može biti prije Ček Datum {2},
+Row #{0}: Duplicate entry in References {1} {2},Red # {0}: ponovljeni unos u referencama {1} {2},
+Row #{0}: Expected Delivery Date cannot be before Purchase Order Date,Red # {0}: očekivani datum isporuke ne može biti prije datuma narudžbe,
 Row #{0}: Item added,Redak # {0}: stavka je dodana,
-Row #{0}: Journal Entry {1} does not have account {2} or already matched against another voucher,Red # {0}: unos dnevnika {1} nema račun {2} ili se već podudara s drugim vaučerima,
-Row #{0}: Not allowed to change Supplier as Purchase Order already exists,Red # {0}: Nije dopušteno mijenjati dobavljača jer narudžbenica već postoji,
-Row #{0}: Please set reorder quantity,Red # {0}: Postavite količinu redoslijeda,
-Row #{0}: Please specify Serial No for Item {1},Redak # {0}: navedite serijski broj za stavku {1},
+Row #{0}: Journal Entry {1} does not have account {2} or already matched against another voucher,Red # {0}: časopis za ulazak {1} nema računa {2} ili već usklađeni protiv drugog bona,
+Row #{0}: Not allowed to change Supplier as Purchase Order already exists,Red # {0}: Nije dopušteno mijenjati dobavljača kao narudžbenice već postoji,
+Row #{0}: Please set reorder quantity,Red # {0}: Molimo postavite naručivanja količinu,
+Row #{0}: Please specify Serial No for Item {1},Row # {0}: Navedite rednim brojem predmeta za {1},
 Row #{0}: Qty increased by 1,Red # {0}: Količina povećana za 1,
-Row #{0}: Rate must be same as {1}: {2} ({3} / {4}) ,Redak {{0}: Stopa mora biti ista kao {1}: {2} ({3} / {4}),
-Row #{0}: Reference Document Type must be one of Expense Claim or Journal Entry,Red # {0}: Vrsta referentnog dokumenta mora biti jedna od tvrdnji o trošku ili unosa dnevnika,
-"Row #{0}: Reference Document Type must be one of Purchase Order, Purchase Invoice or Journal Entry","Red # {0}: Vrsta referentnog dokumenta mora biti jedna od narudžbenice, fakture kupnje ili unosa dnevnika",
-"Row #{0}: Reference Document Type must be one of Sales Order, Sales Invoice or Journal Entry","Red # {0}: Vrsta referentnog dokumenta mora biti jedna od prodajnog naloga, fakture prodaje ili unosa dnevnika",
-Row #{0}: Rejected Qty can not be entered in Purchase Return,Red # {0}: Odbijena količina ne može se unijeti u Povratak kupnje,
-Row #{0}: Rejected Warehouse is mandatory against rejected Item {1},Red # {0}: Odbijena skladišta obavezna su za odbijenu stavku {1},
-Row #{0}: Reqd by Date cannot be before Transaction Date,Red # {0}: Ponovni datum po datumu ne može biti prije datuma transakcije,
-Row #{0}: Set Supplier for item {1},Redak # {0}: postavite dobavljača za stavku {1},
-Row #{0}: Status must be {1} for Invoice Discounting {2},Redak {{0}: status mora biti {1} za sniženje dostavnice {2},
-"Row #{0}: The batch {1} has only {2} qty. Please select another batch which has {3} qty available or split the row into multiple rows, to deliver/issue from multiple batches",Redak {{0}: Paket {1} ima samo {2} kom. Odaberite drugu grupu koja ima dostupnu količinu od {3} ili podijelite redak u više redaka kako biste isporučili / izdali više paketa,
-Row #{0}: Timings conflicts with row {1},Redak # {0}: Vremenski razmaci su u sukobu s retkom {1},
-Row #{0}: {1} can not be negative for item {2},Redak {0}: {1} ne može biti negativan za stavku {2},
-Row No {0}: Amount cannot be greater than Pending Amount against Expense Claim {1}. Pending Amount is {2},Broj retka {0}: Iznos ne može biti veći od iznosa na čekanju za potraživanje troškova {1}. Iznos na čekanju je {2},
-Row {0} : Operation is required against the raw material item {1},Redak {0}: Potrebna je operacija protiv stavke sirovine {1},
-Row {0}# Allocated amount {1} cannot be greater than unclaimed amount {2},Redak {0} # Dodijeljeni iznos {1} ne može biti veći od iznosa koji nije zatražen {2},
-Row {0}# Item {1} cannot be transferred more than {2} against Purchase Order {3},Redak {0} # Stavka {1} ne može se prenijeti više od {2} prema Narudžbenici {3},
-Row {0}# Paid Amount cannot be greater than requested advance amount,Red {0} # Plaćeni iznos ne može biti veći od traženog iznosa unaprijed,
-Row {0}: Activity Type is mandatory.,Redak {0}: Vrsta aktivnosti je obavezna.,
-Row {0}: Advance against Customer must be credit,Red {0}: predujam protiv klijenta mora biti odobren,
-Row {0}: Advance against Supplier must be debit,Red {0}: Naplata protiv dobavljača mora biti zadužena,
-Row {0}: Allocated amount {1} must be less than or equals to Payment Entry amount {2},Redak {0}: dodijeljeni iznos {1} mora biti manji ili jednak iznosu unosa uplate {2},
-Row {0}: Allocated amount {1} must be less than or equals to invoice outstanding amount {2},Redak {0}: dodijeljeni iznos {1} mora biti manji ili jednak iznosu nepodmirenog računa {2},
-Row {0}: An Reorder entry already exists for this warehouse {1},Redak {0}: stavka za promjenu redoslijeda već postoji za ovo skladište {1},
-Row {0}: Bill of Materials not found for the Item {1},Redak {0}: neplanirani materijali za stavku {1},
-Row {0}: Conversion Factor is mandatory,Red {0}: faktor konverzije je obavezan,
-Row {0}: Cost center is required for an item {1},Redak {0}: Mjesto troška je potrebno za stavku {1},
-Row {0}: Credit entry can not be linked with a {1},Redak {0}: unos kredita ne može se povezati s {1},
-Row {0}: Currency of the BOM #{1} should be equal to the selected currency {2},Redak {0}: valuta sastavnice # {1} treba biti jednaka odabranoj valuti {2},
-Row {0}: Debit entry can not be linked with a {1},Redak {0}: debitni unos ne može se povezati s {1},
-Row {0}: Depreciation Start Date is required,Red {0}: Potreban je početni datum amortizacije,
-Row {0}: Due Date cannot be before posting date,Redak {0}: Datum dospijeća ne može biti prije datuma knjiženja,
-Row {0}: Enter location for the asset item {1},Redak {0}: unesite lokaciju stavke imovine {1},
-Row {0}: Exchange Rate is mandatory,Redak {0}: Tečaj je obvezan,
-Row {0}: Expected Value After Useful Life must be less than Gross Purchase Amount,Redak {0}: Očekivana vrijednost nakon korisnog vijeka trajanja mora biti manja od bruto iznosa kupnje,
-Row {0}: For supplier {0} Email Address is required to send email,Red {0}: Za dobavljača {0} E-mail adresa je potrebna za slanje e-pošte,
-Row {0}: From Time and To Time is mandatory.,Red {0}: Od vremena do vremena obavezno je.,
-Row {0}: From Time and To Time of {1} is overlapping with {2},Redak {0}: od vremena do vremena od {1} preklapa se s {2},
-Row {0}: From time must be less than to time,Red {0}: Od vremena mora biti manje od vremena,
-Row {0}: Hours value must be greater than zero.,Red {0}: Vrijednost sata mora biti veća od nule.,
-Row {0}: Invalid reference {1},Redak {0}: nevažeća referenca {1},
-Row {0}: Party / Account does not match with {1} / {2} in {3} {4},Redak {0}: stranka / račun ne podudara se s {1} / {2} u {3} {4},
-Row {0}: Party Type and Party is required for Receivable / Payable account {1},Redak {0}: vrsta i stranka stranke moraju se prijaviti za račun potraživanja {1},
-Row {0}: Payment against Sales/Purchase Order should always be marked as advance,Red {0}: Plaćanje prema prodaji / narudžbenici uvijek treba označiti kao predujam,
-Row {0}: Please check 'Is Advance' against Account {1} if this is an advance entry.,Red {0}: označite &quot;Je li unaprijed&quot; na računu {1} ako je to predujam unaprijed.,
-Row {0}: Please set at Tax Exemption Reason in Sales Taxes and Charges,Redak {0}: postavite porezni način oslobođenja u porezima na promet i troškovima,
-Row {0}: Please set the Mode of Payment in Payment Schedule,Redak {0}: postavite način plaćanja na rasporedu plaćanja,
+Row #{0}: Rate must be same as {1}: {2} ({3} / {4}) ,Red # {0}: Ocijenite mora biti ista kao {1}: {2} ({3} / {4}),
+Row #{0}: Reference Document Type must be one of Expense Claim or Journal Entry,Redak # {0}: Referentni tip dokumenta mora biti jedan od zahtjeva za trošak ili unos dnevnika,
+"Row #{0}: Reference Document Type must be one of Purchase Order, Purchase Invoice or Journal Entry","Red # {0}: Referenca Tip dokumenta mora biti jedan od narudžbenice, fakture kupovine ili Journal Entry",
+"Row #{0}: Reference Document Type must be one of Sales Order, Sales Invoice or Journal Entry","Red # {0}: Referenca Tip dokumenta mora biti jedan od prodajnog naloga, prodaja fakture ili Journal Entry",
+Row #{0}: Rejected Qty can not be entered in Purchase Return,Red # {0}: Odbijen Kom se ne može upisati u kupnju povratak,
+Row #{0}: Rejected Warehouse is mandatory against rejected Item {1},Red # {0}: Odbijen Skladište je obvezna protiv odbijena točka {1},
+Row #{0}: Reqd by Date cannot be before Transaction Date,Redak # {0}: Reqd by Date ne može biti prije datuma transakcije,
+Row #{0}: Set Supplier for item {1},Red # {0}: Postavite dobavljač za stavke {1},
+Row #{0}: Status must be {1} for Invoice Discounting {2},Redak # {0}: Status mora biti {1} za popust fakture {2},
+"Row #{0}: The batch {1} has only {2} qty. Please select another batch which has {3} qty available or split the row into multiple rows, to deliver/issue from multiple batches","Red # {0}: Šarža {1} ima samo {2} qty. Odaberite drugu seriju koja ima {3} količinu dostupnu ili razdijelite red u više redaka, kako biste ih isporučili / izdali iz više šarži",
+Row #{0}: Timings conflicts with row {1},Red # {0}: vremenu sukobi s redom {1},
+Row #{0}: {1} can not be negative for item {2},Red # {0}: {1} ne može biti negativna za predmet {2},
+Row No {0}: Amount cannot be greater than Pending Amount against Expense Claim {1}. Pending Amount is {2},Redak Ne {0}: Iznos ne može biti veća od visine u tijeku protiv Rashodi Zahtjeva {1}. U tijeku Iznos je {2},
+Row {0} : Operation is required against the raw material item {1},Redak {0}: Potrebna je operacija prema stavci sirovine {1},
+Row {0}# Allocated amount {1} cannot be greater than unclaimed amount {2},Red {0} # Dodijeljeni iznos {1} ne može biti veći od neimenovanog iznosa {2},
+Row {0}# Item {1} cannot be transferred more than {2} against Purchase Order {3},Red {0} # Stavka {1} ne može se prenijeti više od {2} od narudžbenice {3},
+Row {0}# Paid Amount cannot be greater than requested advance amount,Redak {0} # Plaćeni iznos ne može biti veći od traženog predujma,
+Row {0}: Activity Type is mandatory.,Red {0}: Tip aktivnost je obavezna.,
+Row {0}: Advance against Customer must be credit,Red {0}: Advance protiv Kupac mora biti kreditna,
+Row {0}: Advance against Supplier must be debit,Red {0}: Advance protiv Dobavljač mora teretiti,
+Row {0}: Allocated amount {1} must be less than or equals to Payment Entry amount {2},Red {0}: Dodijeljeni iznos {1} mora biti manja ili jednaka količini unosa Plaćanje {2},
+Row {0}: Allocated amount {1} must be less than or equals to invoice outstanding amount {2},Red {0}: Dodijeljeni iznos {1} mora biti manji od ili jednak fakturirati preostali iznos {2},
+Row {0}: An Reorder entry already exists for this warehouse {1},Red {0}: Ulazak redoslijeda već postoji za to skladište {1},
+Row {0}: Bill of Materials not found for the Item {1},Redak {0}: broj materijala koji nije pronađen za stavku {1},
+Row {0}: Conversion Factor is mandatory,Red {0}: pretvorbe Factor je obvezno,
+Row {0}: Cost center is required for an item {1},Redak {0}: centar za trošak je potreban za stavku {1},
+Row {0}: Credit entry can not be linked with a {1},Red {0}: Kredit unos ne može biti povezan s {1},
+Row {0}: Currency of the BOM #{1} should be equal to the selected currency {2},Red {0}: Valuta sastavnice # {1} bi trebao biti jednak odabranoj valuti {2},
+Row {0}: Debit entry can not be linked with a {1},Red {0}: debitne unos ne može biti povezan s {1},
+Row {0}: Depreciation Start Date is required,Redak {0}: potreban je početni datum amortizacije,
+Row {0}: Enter location for the asset item {1},Redak {0}: unesite mjesto stavke stavke {1},
+Row {0}: Exchange Rate is mandatory,Red {0}: tečaj je obavezno,
+Row {0}: Expected Value After Useful Life must be less than Gross Purchase Amount,Redak {0}: očekivana vrijednost nakon korisnog životnog vijeka mora biti manja od bruto narudžbenice,
+Row {0}: For supplier {0} Email Address is required to send email,Red {0}: Za dobavljača {0} email adresa je potrebno za slanje e-pošte,
+Row {0}: From Time and To Time is mandatory.,Red {0}: Od vremena i vremena je obavezno.,
+Row {0}: From Time and To Time of {1} is overlapping with {2},Red {0}: S vremena i na vrijeme od {1} je preklapanje s {2},
+Row {0}: From time must be less than to time,Red {0}: S vremena na vrijeme mora biti manje,
+Row {0}: Hours value must be greater than zero.,Red {0}: Sati vrijednost mora biti veća od nule.,
+Row {0}: Invalid reference {1},Red {0}: Pogrešna referentni {1},
+Row {0}: Party / Account does not match with {1} / {2} in {3} {4},Red {0}: stranka / računa ne odgovara {1} / {2} u {3} {4},
+Row {0}: Party Type and Party is required for Receivable / Payable account {1},Red {0}: Stranka Tip i stranka je potrebno za potraživanja / obveze prema dobavljačima račun {1},
+Row {0}: Payment against Sales/Purchase Order should always be marked as advance,Red {0}: Plaćanje protiv prodaje / narudžbenice treba uvijek biti označena kao unaprijed,
+Row {0}: Please check 'Is Advance' against Account {1} if this is an advance entry.,"Red {0}: Provjerite 'Je li Advance ""protiv nalog {1} Ako je to unaprijed ulaz.",
+Row {0}: Please set at Tax Exemption Reason in Sales Taxes and Charges,Redak {0}: Postavite razlog oslobađanja od poreza u porezima i naknadama na promet,
+Row {0}: Please set the Mode of Payment in Payment Schedule,Redak {0}: Postavite Način plaćanja u Raspored plaćanja,
 Row {0}: Please set the correct code on Mode of Payment {1},Redak {0}: postavite ispravan kôd na način plaćanja {1},
-Row {0}: Qty is mandatory,Redak {0}: Količina je obavezna,
-Row {0}: Quality Inspection rejected for item {1},Redak {0}: inspekcija kvalitete odbijena za stavku {1},
-Row {0}: UOM Conversion Factor is mandatory,Red {0}: UOM konverzijski faktor je obavezan,
-Row {0}: select the workstation against the operation {1},Redak {0}: odaberite radnu stanicu u odnosu na operaciju {1},
-Row {0}: {1} Serial numbers required for Item {2}. You have provided {3}.,Redak {0}: {1} Serijski brojevi potrebni za stavku {2}. Dali ste {3}.,
-Row {0}: {1} is required to create the Opening {2} Invoices,Redak {0}: {1} potreban je za stvaranje otvaranja računa {2},
+Row {0}: Qty is mandatory,Red {0}: Količina je obvezno,
+Row {0}: Quality Inspection rejected for item {1},Redak {0}: Odbačena inspekcija kvalitete za stavku {1},
+Row {0}: UOM Conversion Factor is mandatory,Red {0}: UOM pretvorbe faktor je obavezno,
+Row {0}: select the workstation against the operation {1},Red {0}: odaberite radnu stanicu protiv operacije {1},
+Row {0}: {1} Serial numbers required for Item {2}. You have provided {3}.,Redak {0}: {1} Serijski brojevi potrebni za stavku {2}. Naveli ste {3}.,
+Row {0}: {1} is required to create the Opening {2} Invoices,Redak {0}: {1} potreban je za izradu faktura otvaranja {2},
 Row {0}: {1} must be greater than 0,Redak {0}: {1} mora biti veći od 0,
-Row {0}: {1} {2} does not match with {3},Redak {0}: {1} {2} se ne podudara s {3},
-Row {0}:Start Date must be before End Date,Redak {0}: Datum početka mora biti prije završnog datuma,
-Rows with duplicate due dates in other rows were found: {0},Pronađeni su redovi s dvostrukim datumima dospijeća u drugim redovima: {0},
-Rules for adding shipping costs.,Pravila dodavanja troškova dostave.,
+Row {0}: {1} {2} does not match with {3},Red {0}: {1} {2} ne odgovara {3},
+Row {0}:Start Date must be before End Date,Red {0} : Datum početka mora biti prije datuma završetka,
+Rows with duplicate due dates in other rows were found: {0},Nađeno je redaka s datumima duplikata u drugim redcima: {0},
+Rules for adding shipping costs.,Pravila za dodavanje troškova prijevoza.,
 Rules for applying pricing and discount.,Pravila za primjenu cijena i popusta.,
-S.O. No.,Pa ne.,
-SGST Amount,SGST Iznos,
+S.O. No.,N.K.br.,
+SGST Amount,Iznos SGST,
 SO Qty,SO Kol,
-Safety Stock,Sigurnosna zaliha,
+Safety Stock,Sigurnost Stock,
 Salary,Plaća,
-Salary Slip ID,ID isplate plaće,
-Salary Slip of employee {0} already created for this period,Isplate plaće zaposlenika {0} već su kreirane za to razdoblje,
-Salary Slip of employee {0} already created for time sheet {1},Isplate plaće zaposlenika {0} već su kreirane za vremenski list {1},
-Salary Slip submitted for period from {0} to {1},Prikaz zarade poslan u razdoblju od {0} do {1},
-Salary Structure Assignment for Employee already exists,Dodjela strukture plaća zaposleniku već postoji,
-Salary Structure Missing,Nedostaje struktura plaća,
-Salary Structure must be submitted before submission of Tax Ememption Declaration,Struktura plaća mora se podnijeti prije podnošenja Deklaracije o poreznoj olakšici,
-Salary Structure not found for employee {0} and date {1},Struktura plaće nije pronađena za zaposlenika {0} i datum {1},
-Salary Structure should have flexible benefit component(s) to dispense benefit amount,Struktura plaća trebala bi imati fleksibilnu komponentu (e) za isplaćivanje naknade,
-"Salary already processed for period between {0} and {1}, Leave application period cannot be between this date range.","Plaća je već obrađena za razdoblje između {0} i {1}, razdoblje napuštanja aplikacije ne može biti između tog raspona datuma.",
-Sales,Prodajni,
+Salary Slip ID,Plaća proklizavanja ID,
+Salary Slip of employee {0} already created for this period,Plaća proklizavanja zaposlenika {0} već stvorena za ovo razdoblje,
+Salary Slip of employee {0} already created for time sheet {1},Plaća proklizavanja zaposlenika {0} već stvoren za vremensko listu {1},
+Salary Slip submitted for period from {0} to {1},Plaća poslana za razdoblje od {0} do {1},
+Salary Structure Assignment for Employee already exists,Struktura plaće zaposleniku već postoji,
+Salary Structure Missing,Struktura plaća Nedostaje,
+Salary Structure must be submitted before submission of Tax Ememption Declaration,Struktura plaće mora se podnijeti prije podnošenja Izjave o porezu,
+Salary Structure not found for employee {0} and date {1},Nije pronađena struktura plaća za zaposlenika {0} i datum {1},
+Salary Structure should have flexible benefit component(s) to dispense benefit amount,Struktura plaće bi trebala imati fleksibilnu komponentu koristi za raspodjelu iznosa naknada,
+"Salary already processed for period between {0} and {1}, Leave application period cannot be between this date range.","Plaća se već obrađuju za razdoblje od {0} i {1}, dopusta zahtjev ne može biti između ovom razdoblju.",
+Sales,Prodaja,
 Sales Account,Račun prodaje,
-Sales Expenses,Troškovi prodaje,
-Sales Funnel,Tok za prodaju,
-Sales Invoice,Račun za prodaju,
-Sales Invoice {0} created,Napravljena je faktura prodaje {0},
-Sales Invoice {0} created as paid,Faktura prodaje {0} stvorena kao plaćena,
-Sales Invoice {0} has already been submitted,Faktura prodaje {0} već je poslana,
-Sales Invoice {0} must be cancelled before cancelling this Sales Order,Faktura prodaje {0} mora biti otkazana prije otkazivanja ovog prodajnog naloga,
-Sales Order,Prodajni nalog,
-Sales Order Item,Stavka prodajnog naloga,
-Sales Order required for Item {0},Potrebna prodajna narudžba za stavku {0},
-Sales Order to Payment,Prodajni nalog do plaćanja,
-Sales Order {0} is not submitted,Prodajni nalog {0} nije poslan,
-Sales Order {0} is not valid,Prodajni nalog {0} nije važeći,
-Sales Order {0} is {1},Prodajni nalog {0} je {1},
-Sales Orders,Prodajni nalozi,
+Sales Expenses,Prodajni troškovi,
+Sales Funnel,prodaja dimnjak,
+Sales Invoice,Prodajni račun,
+Sales Invoice {0} has already been submitted,Prodajni računi {0} su već potvrđeni,
+Sales Invoice {0} must be cancelled before cancelling this Sales Order,Prodaja Račun {0} mora biti otkazana prije poništenja ovu prodajnog naloga,
+Sales Order,Narudžba kupca,
+Sales Order Item,Naručeni proizvod - prodaja,
+Sales Order required for Item {0},Prodajnog naloga potrebna za točke {0},
+Sales Order to Payment,Prodajnog naloga za plaćanje,
+Sales Order {0} is not submitted,Prodajnog naloga {0} nije podnesen,
+Sales Order {0} is not valid,Prodajnog naloga {0} nije ispravan,
+Sales Order {0} is {1},Prodaja Naručite {0} {1},
+Sales Orders,Narudžbe kupca,
 Sales Partner,Prodajni partner,
-Sales Pipeline,Cjevovod prodaje,
+Sales Pipeline,Prodaja cjevovoda,
 Sales Price List,Prodajni cjenik,
-Sales Return,Povratak prodaje,
+Sales Return,Povrat robe,
 Sales Summary,Sažetak prodaje,
-Sales Tax Template,Predložak poreza na promet,
+Sales Tax Template,Porez Predložak,
 Sales Team,Prodajni tim,
 Sales and Returns,Prodaja i povrat,
 Sales campaigns.,Prodajne kampanje.,
-Sales orders are not available for production,Prodajni nalozi nisu dostupni za proizvodnju,
-Same Company is entered more than once,Ista tvrtka unosi se više puta,
-Same item cannot be entered multiple times.,Ista stavka se ne može unijeti više puta.,
+Sales orders are not available for production,Narudžbe za prodaju nisu dostupne za proizvodnju,
+Same Company is entered more than once,Ista tvrtka je ušao više od jednom,
+Same item cannot be entered multiple times.,Isti predmet ne može se upisati više puta.,
 Same supplier has been entered multiple times,Isti dobavljač je unesen više puta,
-Sample Collection,Uzorkovanje,
-Sample quantity {0} cannot be more than received quantity {1},Količina uzorka {0} ne može biti veća od primljene količine {1},
+Sample Collection,Prikupljanje uzoraka,
+Sample quantity {0} cannot be more than received quantity {1},Uzorak {0} ne može biti veći od primljene količine {1},
 Sanctioned,kažnjeni,
-Sanctioned Amount,Sankcionirani iznos,
-Sanctioned Amount cannot be greater than Claim Amount in Row {0}.,Sankcionirani iznos ne može biti veći od iznosa polaganja prava u retku {0}.,
+Sanctioned Amount,Iznos kažnjeni,
+Sanctioned Amount cannot be greater than Claim Amount in Row {0}.,Kažnjeni Iznos ne može biti veći od Zahtjeva Iznos u nizu {0}.,
 Sand,Pijesak,
 Saturday,subota,
 Saved,Spremljeno,
 Saving {0},Spremanje {0},
 Schedule,Raspored,
-Schedule Admission,Raspored prijema,
-Schedule Course,Raspored tečaja,
-Schedule Date,Datum rasporeda,
-Schedule Discharge,Raspored ispuštanja,
+Schedule Admission,Raspored prijama,
+Schedule Course,Raspored nastave,
+Schedule Date,Raspored Datum,
+Schedule Discharge,Raspored otpuštanja,
 Scheduled,planiran,
-Scheduled Upto,U planu je,
-"Schedules for {0} overlaps, do you want to proceed after skiping overlaped slots ?","Rasporedi za {0} preklapanja, želite li nastaviti nakon preskakanja preklapanih mjesta?",
-Score cannot be greater than Maximum Score,Rezultat ne može biti veći od maksimalnog rezultata,
-Score must be less than or equal to 5,Rezultat mora biti manji ili jednak 5,
+Scheduled Upto,Planirano upto,
+"Schedules for {0} overlaps, do you want to proceed after skiping overlaped slots ?","Rasporedi za {0} preklapanja, želite li nastaviti nakon preskakanja preklapanih utora?",
+Score cannot be greater than Maximum Score,Rezultat ne može biti veća od najvišu ocjenu,
+Score must be less than or equal to 5,Rezultat mora biti manja od ili jednaka 5,
 Scorecards,bodovima,
 Scrapped,otpisan,
 Search,traži,
-Search Item,Stavka pretraživanja,
-Search Item (Ctrl + i),Stavka pretraživanja (Ctrl + i),
+Search Item,Traži Stavka,
+Search Item (Ctrl + i),Pretraživanje (Ctrl + i),
 Search Results,Rezultati pretraživanja,
-Search Sub Assemblies,Traži podskupove,
-"Search by item code, serial number, batch no or barcode","Pretraživanje po šifri predmeta, serijskom broju, serijskom broju ili barkodu",
-"Seasonality for setting budgets, targets etc.","Sezonsko za postavljanje proračuna, ciljeva itd.",
+Search Sub Assemblies,Traži Sub skupštine,
+"Search by item code, serial number, batch no or barcode","Pretraživanje po kodu stavke, serijskog broja, šarže ili crtičnog koda",
+"Seasonality for setting budgets, targets etc.","Sezonska za postavljanje proračuna, ciljevi itd",
 Secretary,Tajnica,
-Section Code,Kôd odjeljka,
-Secured Loans,Osigurani zajmovi,
+Section Code,Kod sekcije,
+Secured Loans,osigurani krediti,
 Securities & Commodity Exchanges,Vrijednosni papiri i robne razmjene,
 Securities and Deposits,Vrijednosni papiri i depoziti,
-See All Articles,Vidi sve članke,
+See All Articles,Pogledajte sve članke,
 See all open tickets,Pogledajte sve otvorene ulaznice,
-See past orders,Pogledajte prethodne narudžbe,
-See past quotations,Pogledajte prethodne ponude,
-Select,Odaberi,
+See past orders,Pogledajte prošle narudžbe,
+See past quotations,Pogledajte dosadašnje citate,
+Select,Odabrati,
 Select Alternate Item,Odaberite alternativnu stavku,
 Select Attribute Values,Odaberite Vrijednosti atributa,
-Select BOM,Odaberite BOM,
-Select BOM and Qty for Production,Odaberite BOM i količinu za proizvodnju,
-"Select BOM, Qty and For Warehouse","Odaberite BOM, Qty i Warehouse",
-Select Batch,Odaberite Paket,
-Select Batch No,Odaberite Br,
-Select Batch Numbers,Odaberite Serijski brojevi,
-Select Brand...,Odaberite robnu marku ...,
+Select BOM,Odaberi BOM,
+Select BOM and Qty for Production,Odaberite BOM i Kol za proizvodnju,
+"Select BOM, Qty and For Warehouse","Odaberite BOM, Qty i za skladište",
+Select Batch,Odaberite Batch,
+Select Batch No,Odaberite šifra serije,
+Select Batch Numbers,Odaberite Batch Numbers,
+Select Brand...,Odaberite brand ...,
 Select Company,Odaberite tvrtku,
 Select Company...,Odaberite tvrtku ...,
-Select Customer,Odaberite Kupca,
+Select Customer,Odaberite klijenta,
 Select Days,Odaberite Dani,
-Select Default Supplier,Odaberite Zadani dobavljač,
-Select Department...,Odaberite odjel ...,
+Select Default Supplier,Odabir Primarna Dobavljač,
 Select Fiscal Year...,Odaberite fiskalnu godinu ...,
-Select Healthcare Practitioner...,Odaberite liječnika u zdravstvu ...,
-Select Item (optional),Odaberite stavku (izborno),
+Select Item (optional),Odaberite stavku (nije obavezno),
 Select Items based on Delivery Date,Odaberite stavke na temelju datuma isporuke,
-Select Items to Manufacture,Odaberite stavke za izradu,
+Select Items to Manufacture,Odaberite stavke za proizvodnju,
 Select Loyalty Program,Odaberite Program lojalnosti,
 Select POS Profile,Odaberite POS profil,
 Select Patient,Odaberite Pacijent,
 Select Possible Supplier,Odaberite Mogući dobavljač,
-Select Property,Odaberite Svojstvo,
+Select Property,Odaberite Svojstva,
 Select Quantity,Odaberite Količina,
-Select Serial Numbers,Odaberite Serijski brojevi,
-Select Status,Odaberite Status,
-Select Target Warehouse,Odaberite Ciljno skladište,
-Select Type...,Odaberite Vrsta ...,
-Select Warehouse...,Odaberite skladište ...,
+Select Serial Numbers,Odaberite serijske brojeve,
+Select Target Warehouse,Odaberite Target Warehouse,
+Select Warehouse...,Odaberite Warehouse ...,
 Select an account to print in account currency,Odaberite račun za ispis u valuti računa,
-Select an employee to get the employee advance.,Odaberite zaposlenika koji će unaprijed dobiti zaposlenika.,
-Select at least one value from each of the attributes.,Odaberite barem jednu vrijednost iz svakog atributa.,
-Select change amount account,Odaberite račun za promjenu iznosa,
+Select an employee to get the employee advance.,Odaberite zaposlenika kako biste dobili zaposlenika unaprijed.,
+Select at least one value from each of the attributes.,Odaberite barem jednu vrijednost iz svakog od atributa.,
+Select change amount account,Iznos računa Odaberi promjene,
 Select company first,Najprije odaberite tvrtku,
-Select items to save the invoice,Odaberite stavke za spremanje dostavnice,
-Select or add new customer,Odaberite ili dodajte novog kupca,
-Select students manually for the Activity based Group,Ručno odaberite učenike za grupu temeljenu na aktivnostima,
+Select items to save the invoice,Odaberite stavke za spremanje račun,
+Select or add new customer,Odaberite ili dodajte novi kupac,
+Select students manually for the Activity based Group,Ručno odaberite studente za Grupu temeljenu na aktivnostima,
 Select the customer or supplier.,Odaberite kupca ili dobavljača.,
-Select the nature of your business.,Odaberite prirodu svog poslovanja.,
+Select the nature of your business.,Odaberite prirodu Vašeg poslovanja.,
 Select the program first,Najprije odaberite program,
 Select to add Serial Number.,Odaberite za dodavanje serijskog broja.,
 Select your Domains,Odaberite svoje domene,
-Selected Price List should have buying and selling fields checked.,Odabrani cjenik treba imati označena polja za kupnju i prodaju.,
-Sell,Prodati,
+Selected Price List should have buying and selling fields checked.,Odabrani cjenik trebao bi biti provjeren na poljima kupnje i prodaje.,
+Sell,Prodavati,
 Selling,Prodaja,
-Selling Amount,Iznos prodaje,
+Selling Amount,Prodaja Iznos,
 Selling Price List,Cjenik prodaje,
 Selling Rate,Stopa prodaje,
-"Selling must be checked, if Applicable For is selected as {0}","Prodaja mora biti označena, ako je primjenjivo za odabrano kao {0}",
-Selling rate for item {0} is lower than its {1}. Selling rate should be atleast {2},Stopa prodaje za stavku {0} niža je od njezine {1}. Stopa prodaje trebala bi biti atleast {2},
-Send Grant Review Email,Pošalji e-poruku za pregled odobrenja,
-Send Now,Pošalji sada,
+"Selling must be checked, if Applicable For is selected as {0}","Prodaje se mora provjeriti, ako je primjenjivo za odabrano kao {0}",
+Selling rate for item {0} is lower than its {1}. Selling rate should be atleast {2},Stopa prodaje za stavku {0} niža je od njegove {1}. Stopa prodaje trebao bi biti najmanje {2},
+Send Grant Review Email,Slanje e-pošte za evaluaciju potpore,
+Send Now,Pošalji odmah,
 Send SMS,Pošalji SMS,
-Send Supplier Emails,Pošalji e-poštu dobavljača,
-Send mass SMS to your contacts,Pošalji masovnom SMS-u svojim kontaktima,
+Send Supplier Emails,Pošalji Supplier e-pošte,
+Send mass SMS to your contacts,Pošalji grupne SMS poruke svojim kontaktima,
 Sensitivity,Osjetljivost,
-Serial #,Serijski broj,
-Serial No and Batch,Serijski broj i serija,
-Serial No is mandatory for Item {0},Serijski broj je obavezan za stavku {0},
-Serial No {0} does not belong to Batch {1},Serijski broj {0} ne pripada Batch {1},
-Serial No {0} does not belong to Delivery Note {1},Serijski broj {0} ne pripada napomeni za isporuku {1},
-Serial No {0} does not belong to Item {1},Serijski broj {0} ne pripada stavci {1},
-Serial No {0} does not belong to Warehouse {1},Serijski broj {0} ne pripada Warehouseu {1},
-Serial No {0} does not belong to any Warehouse,Serijski broj {0} ne pripada nijednom skladištu,
-Serial No {0} does not exist,Serijski broj {0} ne postoji,
-Serial No {0} has already been received,Serijski broj {0} je već primljen,
-Serial No {0} is under maintenance contract upto {1},Serijski broj {0} pod ugovorom o održavanju do {1},
-Serial No {0} is under warranty upto {1},Serijski broj {0} je pod jamstvom do {1},
+Serial #,Serijski #,
+Serial No and Batch,Serijski broj i serije,
+Serial No is mandatory for Item {0},Serijski Nema je obvezna za točke {0},
+Serial No {0} does not belong to Batch {1},Serijski broj {0} ne pripada skupini {1},
+Serial No {0} does not belong to Delivery Note {1},Serijski Ne {0} ne pripada isporuke Napomena {1},
+Serial No {0} does not belong to Item {1},Serijski Ne {0} ne pripada točki {1},
+Serial No {0} does not belong to Warehouse {1},Serijski Ne {0} ne pripada Warehouse {1},
+Serial No {0} does not belong to any Warehouse,Serijski broj {0} ne pripada bilo Skladište,
+Serial No {0} does not exist,Serijski Ne {0} ne postoji,
+Serial No {0} has already been received,Serijski Ne {0} već je primila,
+Serial No {0} is under maintenance contract upto {1},Serijski Ne {0} je pod ugovorom za održavanje upto {1},
+Serial No {0} is under warranty upto {1},Serijski Ne {0} je pod jamstvom upto {1},
 Serial No {0} not found,Serijski broj {0} nije pronađen,
-Serial No {0} not in stock,Serijski broj {0} nije na zalihi,
-Serial No {0} quantity {1} cannot be a fraction,Serijska brojka {0} {1} ne može biti dio,
-Serial Nos Required for Serialized Item {0},Serijski brojevi potrebni za serijsku stavku {0},
-Serial Number: {0} is already referenced in Sales Invoice: {1},Serijski broj: {0} već je naveden u dostavnici: {1},
+Serial No {0} not in stock,Serijski broj {0} nije na skladištu,
+Serial No {0} quantity {1} cannot be a fraction,Serijski Ne {0} {1} količina ne može bitidio,
+Serial Nos Required for Serialized Item {0},Serijski Nos potrebna za serijaliziranom točke {0},
+Serial Number: {0} is already referenced in Sales Invoice: {1},Serijski broj: {0} već se odnosi na prodajnu fakturu: {1},
 Serial Numbers,Serijski brojevi,
-Serial Numbers in row {0} does not match with Delivery Note,Serijski brojevi u retku {0} se ne podudaraju s napomenom o isporuci,
-Serial no item cannot be a fraction,Serijska stavka ne može biti dio,
-Serial no {0} has been already returned,Serijski broj {0} je već vraćen,
-Serial number {0} entered more than once,Serijski broj {0} unesen je više puta,
-Serialized Inventory,Serijski popis,
-Series Updated,Serija je ažurirana,
+Serial Numbers in row {0} does not match with Delivery Note,Serijski brojevi u retku {0} ne podudaraju se s dostavom,
+Serial no item cannot be a fraction,Serijski nema stavke ne može biti dio,
+Serial no {0} has been already returned,Serijski broj {0} već je vraćen,
+Serial number {0} entered more than once,Serijski broj {0} ušao više puta,
+Serialized Inventory,Serijaliziranom Inventar,
+Series Updated,Serija ažurirana,
 Series Updated Successfully,Serija je uspješno ažurirana,
-Series is mandatory,Serija je obavezna,
-Series {0} already used in {1},Serija {0} je već korištena u {1},
-Service,Servis,
-Service Expense,Trošak usluge,
-"Service Item,Type,frequency and expense amount are required","Stavka usluge, Vrsta, učestalost i iznos troškova su potrebni",
+Series is mandatory,Serija je obvezno,
+Series {0} already used in {1},Serija {0} se već koristi u {1},
+Service,usluga,
+Service Expense,usluga Rashodi,
 Service Level Agreement,Ugovor o razini usluge,
 Service Level Agreement.,Ugovor o razini usluge.,
 Service Level.,Razina usluge.,
-Service Stop Date cannot be after Service End Date,Datum zaustavljanja usluge ne može biti nakon datuma završetka usluge,
-Service Stop Date cannot be before Service Start Date,Datum servisnog zaustavljanja ne može biti prije datuma početka usluge,
+Service Stop Date cannot be after Service End Date,Zaustavni datum usluge ne može biti nakon datuma završetka usluge,
+Service Stop Date cannot be before Service Start Date,Servisni datum zaustavljanja ne može biti prije datuma početka usluge,
 Services,usluge,
-"Set Default Values like Company, Currency, Current Fiscal Year, etc.","Postavi zadane vrijednosti poput tvrtke, valute, tekuće fiskalne godine itd.",
-Set Details,Postavi pojedinosti,
+"Set Default Values like Company, Currency, Current Fiscal Year, etc.","Postavi zadane vrijednosti kao što su tvrtka, valuta, tekuća fiskalna godina, itd.",
+Set Details,Postavite pojedinosti,
 Set New Release Date,Postavite novi datum izdavanja,
-Set Open,Postavite Otvori,
-Set Project and all Tasks to status {0}?,Postavite projekt i svi zadaci na status {0}?,
+Set Project and all Tasks to status {0}?,Postaviti Projekt i sve zadatke na status {0}?,
 Set Status,Postavite status,
-Set Tax Rule for shopping cart,Postavite porezno pravilo za košaricu,
-Set as Closed,Postavite kao Zatvoreno,
+Set Tax Rule for shopping cart,Postavite Porezni Pravilo za košaricu,
+Set as Closed,Postavi kao zatvoreno,
 Set as Completed,Postavite kao dovršeno,
 Set as Default,Postavi kao zadano,
-Set as Lost,Postavite kao Izgubljeno,
-Set as Open,Postavite kao Otvoreno,
-Set default inventory account for perpetual inventory,Postavite zadani oglasni prostor za trajni inventar,
+Set as Lost,Postavi kao Lost,
+Set as Open,Postavi kao Opena,
+Set default inventory account for perpetual inventory,Postavite zadani oglasni prostor za trajni oglasni prostor,
 Set default mode of payment,Postavite zadani način plaćanja,
-Set this if the customer is a Public Administration company.,Postavite ovo ako je klijent tvrtka za javnu upravu.,
-Set warehouse for Procedure {0} ,Postavi skladište za postupak {0},
-Set {0} in asset category {1} or company {2},Postavite {0} u kategoriju sredstava {1} ili tvrtku {2},
-"Setting Events to {0}, since the Employee attached to the below Sales Persons does not have a User ID{1}",Postavljanje događaja na {0} jer zaposlenik koji je priključen na niže prodajne osobe nema ID korisnika {1},
+Set this if the customer is a Public Administration company.,To postavite ako je kupac tvrtka za javnu upravu.,
+Set {0} in asset category {1} or company {2},Postavite {0} u kategoriji imovine {1} ili tvrtku {2},
+"Setting Events to {0}, since the Employee attached to the below Sales Persons does not have a User ID{1}","Postavljanje Događaji na {0}, budući da je zaposlenik u prilogu niže prodaje osoba nema ID korisnika {1}",
 Setting defaults,Postavljanje zadanih postavki,
-Setting up Email,Postavljanje e-pošte,
-Setting up Email Account,Postavljanje računa e-pošte,
+Setting up Email,Postavljanje e-poštu,
+Setting up Email Account,Postavljanje račun e-pošte,
 Setting up Employees,Postavljanje zaposlenika,
-Setting up Taxes,Postavljanje poreza,
-Setting up company,Uspostavljanje tvrtke,
+Setting up Taxes,Postavljanje Porezi,
+Setting up company,Osnivanje tvrtke,
 Settings,postavke,
-"Settings for online shopping cart such as shipping rules, price list etc.","Postavke za on-line košaricu za kupnju, kao što su pravila za dostavu, cjenik itd.",
-Settings for website homepage,Postavke za početnu stranicu web-lokacije,
-Settings for website product listing,Postavke za popis proizvoda na web-lokaciji,
+"Settings for online shopping cart such as shipping rules, price list etc.","Postavke za online košarici, kao što su utovar pravila, cjenika i sl",
+Settings for website homepage,Postavke za web stranice početnu stranicu,
+Settings for website product listing,Postavke za popis proizvoda na web mjestu,
 Settled,Obavljene,
-Setup Gateway accounts.,Postavite račune pristupnika.,
-Setup SMS gateway settings,Postavite postavke SMS pristupnika,
-Setup cheque dimensions for printing,Provjerite dimenzije za ispis,
-Setup default values for POS Invoices,Postavite zadane vrijednosti za POS račune,
-Setup mode of POS (Online / Offline),Način postavljanja POS-a (Online / Offline),
+Setup Gateway accounts.,Postava Gateway račune.,
+Setup SMS gateway settings,Postavke SMS pristupnika,
+Setup cheque dimensions for printing,Provjera postavljanje dimenzije za ispis,
+Setup default values for POS Invoices,Postavljanje zadanih vrijednosti za POS fakture,
+Setup mode of POS (Online / Offline),Način postavljanja POS (Online / Offline),
 Setup your Institute in ERPNext,Postavite svoj Institut u ERPNext,
-Share Balance,Dijelite bilancu,
-Share Ledger,Podijelite Ledger,
-Share Management,Upravljanje dionicama,
+Share Balance,Dionički saldo,
+Share Ledger,Dijelite knjigu,
+Share Management,Upravljanje dijeljenjem,
 Share Transfer,Dijeljenje prijenosa,
 Share Type,Vrsta dijeljenja,
 Shareholder,dioničar,
-Ship To State,Otpremi na državu,
+Ship To State,Brod u državu,
 Shipments,pošiljke,
-Shipping,dostava,
-Shipping Address,dostavna adresa,
-"Shipping Address does not have country, which is required for this Shipping Rule","Adresa za dostavu nema državu, koja je potrebna za ovo Pravilo o otpremi",
-Shipping rule not applicable for country {0},Pravilo dostave nije primjenjivo za zemlju {0},
-Shipping rule only applicable for Buying,Pravilo o isporuci vrijedi samo za kupnju,
-Shipping rule only applicable for Selling,Pravilo o isporuci vrijedi samo za prodaju,
-Shopify Supplier,Shopify Dobavljač,
+Shipping,Utovar,
+Shipping Address,Dostava Adresa,
+"Shipping Address does not have country, which is required for this Shipping Rule",Adresa za isporuku nema državu koja je potrebna za ovaj Pravilnik za isporuku,
+Shipping rule only applicable for Buying,Pravilo isporuke primjenjivo je samo za kupnju,
+Shipping rule only applicable for Selling,Pravilo o isporuci primjenjuje se samo za prodaju,
+Shopify Supplier,Dobavljač trgovine,
 Shopping Cart,Košarica,
-Shopping Cart Settings,Postavke košarice,
-Shortage Qty,Količina manjka,
+Shopping Cart Settings,Košarica Postavke,
+Shortage Qty,Nedostatak Kom,
 Show Completed,Prikaži dovršeno,
 Show Cumulative Amount,Prikaži kumulativni iznos,
 Show Employee,Prikaži zaposlenika,
-Show Open,Prikaži Otvori,
-Show Opening Entries,Prikaži početne unose,
+Show Open,Prikaži otvorena,
+Show Opening Entries,Prikaži unose otvaranja,
 Show Payment Details,Prikaži pojedinosti o plaćanju,
-Show Return Entries,Prikaži unose za povratak,
-Show Salary Slip,Prikaži isplatu plaće,
-Show Variant Attributes,Prikaži atribute varijante,
-Show Variants,Prikaži varijante,
-Show closed,Prikaži zatvoreno,
-Show exploded view,Prikaži eksplodirani prikaz,
+Show Return Entries,Prikaži povratne unose,
+Show Salary Slip,Prikaži Plaća proklizavanja,
+Show Variant Attributes,Prikaži svojstva varijacije,
+Show Variants,Pokaži varijante,
+Show closed,Prikaži zatvorene,
+Show exploded view,Prikaži eksplodirao pogled,
 Show only POS,Prikaži samo POS,
-Show unclosed fiscal year's P&L balances,Prikažite saldo dobiti i gubitka u fiskalnoj godini,
-Show zero values,Prikaži nultu vrijednost,
+Show unclosed fiscal year's P&L balances,Prikaži nezatvorena fiskalne godine u P &amp; L stanja,
+Show zero values,Pokaži nulte vrijednosti,
 Sick Leave,Bolovanje,
 Silt,Mulj,
 Single Variant,Jedna varijanta,
-Single unit of an Item.,Jedinica jedinice.,
-"Skipping Leave Allocation for the following employees, as Leave Allocation records already exists against them. {0}","Preskakanje izdvajanja za sljedeće zaposlenike, jer evidencija o dopuštenju ostavljanja već postoji protiv njih. {0}",
-"Skipping Salary Structure Assignment for the following employees, as Salary Structure Assignment records already exists against them. {0}","Preskakanje rasporeda plaća za sljedeće zaposlenike, jer postoje zapisi o rasporedu plaća. {0}",
-Slots for {0} are not added to the schedule,Mjesta za {0} nisu dodana rasporedu,
+Single unit of an Item.,Jedna jedinica stavku.,
+"Skipping Leave Allocation for the following employees, as Leave Allocation records already exists against them. {0}","Preskakanje dodjele odmora za sljedeće zaposlenike, kao što Dokumenti raspodjele odmora već postoje protiv njih. {0}",
+"Skipping Salary Structure Assignment for the following employees, as Salary Structure Assignment records already exists against them. {0}","Preskakanje rasporeda plaća za sljedeće zaposlenike, jer postoje evidencije o rasporedu plaće protiv njih. {0}",
+Slots for {0} are not added to the schedule,Mjesta za {0} ne dodaju se u raspored,
 Small,Mali,
 Soap & Detergent,Sapun i deterdžent,
 Software,Softver,
 Software Developer,Software Developer,
 Softwares,Software,
-Soil compositions do not add up to 100,Sastavi tla ne daju 100,
+Soil compositions do not add up to 100,Sastavi tla ne dodaju do 100,
 Sold,prodan,
-Some emails are invalid,Neke poruke e-pošte nisu važeće,
-Some information is missing,Nedostaju neke informacije,
-Something went wrong!,Nešto je pošlo po zlu!,
-"Sorry, Serial Nos cannot be merged","Nažalost, Serijski brojevi se ne mogu spojiti",
+Some emails are invalid,Neke e-poruke nisu važeće,
+Some information is missing,Neki podaci nedostaju,
+Something went wrong!,Nešto je pošlo po krivu!,
+"Sorry, Serial Nos cannot be merged","Žao nam je , Serial Nos ne mogu spojiti",
 Source,Izvor,
-Source Warehouse,Izvorno skladište,
-Source and Target Location cannot be same,Lokacija izvora i cilj ne može biti ista,
-Source and target warehouse cannot be same for row {0},Izvorno i ciljno skladište ne može biti isto za redak {0},
-Source and target warehouse must be different,Izvorno i ciljno skladište mora biti različito,
-Source of Funds (Liabilities),Izvor sredstava (obveza),
-Source warehouse is mandatory for row {0},Izvorno skladište obvezno je za redak {0},
-Specified BOM {0} does not exist for Item {1},Navedena sastavnica {0} ne postoji za stavku {1},
-Split,Podjela,
+Source Warehouse,Izvor galerija,
+Source and Target Location cannot be same,Izvor i ciljna lokacija ne mogu biti isti,
+Source and target warehouse cannot be same for row {0},Izvor i ciljna skladište ne može biti isti za redom {0},
+Source and target warehouse must be different,Izvorna i odredišna skladište mora biti drugačiji,
+Source of Funds (Liabilities),Izvor sredstava ( pasiva),
+Source warehouse is mandatory for row {0},Izvor skladište je obvezno za redom {0},
+Specified BOM {0} does not exist for Item {1},Određena BOM {0} ne postoji za točku {1},
+Split,Split,
 Split Batch,Split Batch,
 Split Issue,Split Issue,
-Sports,Sportski,
+Sports,sportovi,
 Staffing Plan {0} already exist for designation {1},Plan osoblja {0} već postoji za oznaku {1},
-Standard Buying,Standardna kupnja,
+Standard Buying,Standardna kupnju,
 Standard Selling,Standardna prodaja,
 Standard contract terms for Sales or Purchase.,Standardni uvjeti ugovora za prodaju ili kupnju.,
-Start Date,Početni datum,
-Start Date of Agreement can't be greater than or equal to End Date.,Datum početka ugovora ne može biti veći od ili jednak završnom datumu.,
+Start Date,Datum početka,
+Start Date of Agreement can't be greater than or equal to End Date.,Datum početka ugovora ne može biti veći ili jednak Krajnjem datumu.,
 Start Year,Početak godine,
-"Start and end dates not in a valid Payroll Period, cannot calculate {0}","Početni i završni datumi koji nisu u važećem obračunskom razdoblju, ne mogu izračunati {0}",
-"Start and end dates not in a valid Payroll Period, cannot calculate {0}.","Početni i završni datumi koji nisu u važećem obračunskom razdoblju, ne mogu izračunati {0}.",
-Start date should be less than end date for Item {0},Datum početka treba biti manji od datuma završetka za stavku {0},
-Start date should be less than end date for task {0},Datum početka treba biti manji od završnog datuma za zadatak {0},
-Start day is greater than end day in task '{0}',Početni dan veći je od završnog dana u zadatku &quot;{0}&quot;,
-Start on,Počnite,
+"Start and end dates not in a valid Payroll Period, cannot calculate {0}",Datumi završetka i datumi koji nisu u važećem platnom roku ne mogu izračunati {0},
+"Start and end dates not in a valid Payroll Period, cannot calculate {0}.","Datumi početka i završetka nisu u važećem razdoblju obračuna plaća, ne može se izračunati {0}.",
+Start date should be less than end date for Item {0},Početak bi trebao biti manji od krajnjeg datuma za točke {0},
+Start date should be less than end date for task {0},Datum početka trebao bi biti manji od datuma završetka zadatka {0},
+Start day is greater than end day in task '{0}',Dan početka je veći od završnog dana u zadatku &#39;{0}&#39;,
+Start on,Započnite,
 State,država,
-State/UT Tax,Porez na državu / UT,
-Statement of Account,Stanje računa,
+State/UT Tax,Porez na države / UT,
+Statement of Account,Izjava o računu,
 Status must be one of {0},Status mora biti jedan od {0},
-Stock,Zaliha,
-Stock Adjustment,Prilagodba zaliha,
-Stock Analytics,Analitika dionica,
-Stock Assets,Imovina dionica,
-Stock Available,Raspoloživa zaliha,
-Stock Balance,Stanje zaliha,
-Stock Entries already created for Work Order ,Ulazne stavke su već kreirane za radni nalog,
-Stock Entry,Unos dionica,
-Stock Entry {0} created,Stvoren je unos dionica {0},
-Stock Entry {0} is not submitted,Unos dionica {0} nije poslan,
-Stock Expenses,Troškovi zaliha,
-Stock In Hand,Stock in Hand,
-Stock Items,Zalihe,
-Stock Ledger,Glavna knjiga dionica,
-Stock Ledger Entries and GL Entries are reposted for the selected Purchase Receipts,Unosi u knjigu dionica i GL ulazi se ponovno objavljuju za odabrane potvrde o kupnji,
-Stock Levels,Razine zaliha,
-Stock Liabilities,Obveze dionica,
-Stock Options,Opcije dionica,
-Stock Qty,Količina zaliha,
-Stock Received But Not Billed,"Dionica je primljena, ali nije naplaćena",
-Stock Reports,Izvješća o zalihama,
-Stock Summary,Sažetak dionica,
-Stock Transactions,Transakcije dionica,
-Stock UOM,Stock UOM,
-Stock Value,Vrijednost zaliha,
-Stock balance in Batch {0} will become negative {1} for Item {2} at Warehouse {3},Stanje zaliha u seriji {0} postat će negativno {1} za stavku {2} na skladištu {3},
-Stock cannot be updated against Delivery Note {0},Zalihe se ne mogu ažurirati u odnosu na dostavnicu {0},
-Stock cannot be updated against Purchase Receipt {0},Stock nije moguće ažurirati u odnosu na potvrdu o kupnji {0},
-Stock cannot exist for Item {0} since has variants,Stock ne može postojati za stavku {0} jer ima varijante,
-Stock quantity to start procedure is not available in the warehouse. Do you want to record a Stock Transfer,Količina skladišta za pokretanje postupka nije dostupna u skladištu. Želite li snimiti prijenos zaliha,
-Stock transactions before {0} are frozen,Stock transakcije prije {0} su zamrznute,
-Stop,Stop,
+Stock,Lager,
+Stock Adjustment,Stock Podešavanje,
+Stock Analytics,Analitika skladišta,
+Stock Assets,dionicama u vrijednosti,
+Stock Available,Dostupno,
+Stock Balance,Skladišna bilanca,
+Stock Entries already created for Work Order ,Dionice već stvorene za radni nalog,
+Stock Entry,Međuskladišnica,
+Stock Entry {0} created,Stock Ulazak {0} stvorio,
+Stock Entry {0} is not submitted,Međuskladišnica {0} nije potvrđena,
+Stock Expenses,Stock Troškovi,
+Stock In Hand,Stock u ruci,
+Stock Items,zalihi,
+Stock Ledger,Glavna knjiga,
+Stock Ledger Entries and GL Entries are reposted for the selected Purchase Receipts,Upisi u glavnu knjigu i GL upisi su ponovno postavljeni za odabrane primke.,
+Stock Levels,Stock Razine,
+Stock Liabilities,Stock Obveze,
+Stock Options,Burzovnih opcija,
+Stock Qty,Kataloški broj,
+Stock Received But Not Billed,Stock primljeni Ali ne Naplaćeno,
+Stock Reports,dionica izvješća,
+Stock Summary,Stock Sažetak,
+Stock Transactions,Stock transakcije,
+Stock UOM,Kataloški UOM,
+Stock Value,Stock vrijednost,
+Stock balance in Batch {0} will become negative {1} for Item {2} at Warehouse {3},Stock ravnoteža u batch {0} postat negativna {1} za točku {2} na skladištu {3},
+Stock cannot be updated against Delivery Note {0},Dionica ne može biti obnovljeno protiv isporuke Napomena {0},
+Stock cannot be updated against Purchase Receipt {0},Stock ne može se ažurirati na potvrdi o kupnji {0},
+Stock cannot exist for Item {0} since has variants,Stock ne može postojati točkom {0} jer ima varijante,
+Stock transactions before {0} are frozen,Stock transakcije prije {0} se zamrznut,
+Stop,zaustaviti,
 Stopped,zaustavljen,
-"Stopped Work Order cannot be cancelled, Unstop it first to cancel","Zaustavljeni radni nalog ne može se poništiti, prvo ga poništite kako biste otkazali",
+"Stopped Work Order cannot be cancelled, Unstop it first to cancel","Zaustavljen radni nalog ne može se otkazati, prvo ga otkazati",
 Stores,prodavaonice,
 Structures have been assigned successfully,Strukture su uspješno dodijeljene,
 Student,Student,
-Student Activity,Studentska aktivnost,
-Student Address,Adresa učenika,
-Student Admissions,Prijave studenata,
-Student Attendance,Sudjelovanje studenata,
-"Student Batches help you track attendance, assessments and fees for students","Studentske serije pomažu vam pratiti pohađanje, procjene i naknade za studente",
-Student Email Address,Adresa e-pošte studenta,
-Student Email ID,ID e-pošte studenta,
-Student Group,Studentska grupa,
-Student Group Strength,Snaga učeničke grupe,
+Student Activity,Aktivnost studenata,
+Student Address,Studentska adresa,
+Student Admissions,Studentski Upisi,
+Student Attendance,Studentski Gledatelja,
+"Student Batches help you track attendance, assessments and fees for students","Studentski Serije vam pomoći pratiti posjećenost, procjene i naknade za učenike",
+Student Email Address,Studentski e-mail adresa,
+Student Email ID,Student ID e-pošte,
+Student Group,Studentski Grupa,
+Student Group Strength,Snaga grupe učenika,
 Student Group is already updated.,Studentska grupa je već ažurirana.,
-Student Group or Course Schedule is mandatory,Studentska grupa ili raspored tečaja je obavezan,
-Student Group: ,Grupa učenika:,
+Student Group or Course Schedule is mandatory,Obvezna je grupacija studenata ili raspored predmeta,
+Student Group: ,Skupina studenata:,
 Student ID,studentska iskaznica,
 Student ID: ,Studentska iskaznica:,
-Student LMS Activity,Aktivnost LMS studenata,
-Student Mobile No.,Broj studentskog mobitela,
+Student LMS Activity,LMS aktivnost učenika,
+Student Mobile No.,Studentski Mobile Ne,
 Student Name,Ime studenta,
 Student Name: ,Ime studenta:,
-Student Report Card,Studentska iskaznica,
+Student Report Card,Kartica studentskog izvješća,
 Student is already enrolled.,Student je već upisan.,
-Student {0} - {1} appears Multiple times in row {2} & {3},Student {0} - {1} pojavljuje se više puta u retku {2} &amp; {3},
-Student {0} does not belong to group {1},Student {0} ne pripada grupi {1},
-Student {0} exist against student applicant {1},Student {0} postoji prema studentu {1},
-"Students are at the heart of the system, add all your students","Studenti su u središtu sustava, dodajte sve svoje učenike",
-Sub Assemblies,Podskupovi,
-Sub Type,Pod-tip,
+Student {0} - {1} appears Multiple times in row {2} & {3},Student {0} - {1} pojavljuje više puta u nizu {2} {3},
+Student {0} does not belong to group {1},Student {0} ne pripada skupini {1},
+Student {0} exist against student applicant {1},Student {0} postoje protiv studenta podnositelja prijave {1},
+"Students are at the heart of the system, add all your students","Studenti se u središtu sustava, dodati sve svoje studente",
+Sub Assemblies,pod skupštine,
+Sub Type,Sub Type,
 Sub-contracting,Podugovaranje,
 Subcontract,Podugovor,
 Subject,predmet,
-Submit,podnijeti,
+Submit,Potvrdi,
 Submit Proof,Pošaljite dokaz,
-Submit Salary Slip,Pošaljite slanje plaće,
+Submit Salary Slip,Slanje plaće Slip,
 Submit this Work Order for further processing.,Pošaljite ovaj radni nalog za daljnju obradu.,
-Submit this to create the Employee record,Pošaljite ovo kako biste stvorili zapis zaposlenika,
-Submitted orders can not be deleted,Poslani nalozi se ne mogu izbrisati,
-Submitting Salary Slips...,Slanje popisa plaća ...,
+Submit this to create the Employee record,Pošaljite ovo kako biste stvorili zapisnik zaposlenika,
+Submitted orders can not be deleted,Dostavljeni nalozi se ne može izbrisati,
+Submitting Salary Slips...,Slanje nagrada za plaće ...,
 Subscription,Pretplata,
 Subscription Management,Upravljanje pretplatama,
 Subscriptions,Pretplate,
 Subtotal,suma stavke,
-Successfully Reconciled,Uspješno sravnjeno,
-Successfully Set Supplier,Uspješno postavljen dobavljač,
-Successfully created payment entries,Unosi za plaćanje uspješno su izrađeni,
-Successfully deleted all transactions related to this company!,Sve transakcije povezane s tom tvrtkom uspješno su izbrisane!,
-Sum of Scores of Assessment Criteria needs to be {0}.,Zbroj bodova kriterija procjene mora biti {0}.,
-Sum of points for all goals should be 100. It is {0},Zbroj bodova za sve ciljeve trebao bi biti 100. To je {0},
-Summary for this month and pending activities,Sažetak za ovaj mjesec i aktivnosti na čekanju,
-Summary for this week and pending activities,Sažetak za ovaj tjedan i aktivnosti u tijeku,
+Successfully Reconciled,Uspješno Pomirio,
+Successfully Set Supplier,Uspješno postavite dobavljača,
+Successfully created payment entries,Uspješno stvorene stavke plaćanja,
+Successfully deleted all transactions related to this company!,Uspješno izbrisati sve transakcije vezane uz ovu tvrtku!,
+Sum of Scores of Assessment Criteria needs to be {0}.,Zbroj ocjene kriterija za ocjenjivanje treba biti {0}.,
+Sum of points for all goals should be 100. It is {0},Zbroj bodova svih ciljeva trebao biti 100. To je {0},
+Summary for this month and pending activities,Sažetak za ovaj mjesec i tijeku aktivnosti,
+Summary for this week and pending activities,Sažetak za ovaj tjedan i tijeku aktivnosti,
 Sunday,nedjelja,
 Suplier,suplier,
-Suplier Name,Naziv dobavljača,
+Suplier Name,Naziv suplier,
 Supplier,Dobavljač,
 Supplier Group,Grupa dobavljača,
-Supplier Group master.,Glavni dobavljač grupe.,
-Supplier Id,Id dobavljača,
-Supplier Invoice Date cannot be greater than Posting Date,Datum fakture dobavljača ne može biti veći od datuma knjiženja,
-Supplier Invoice No,Račun dobavljača br,
-Supplier Invoice No exists in Purchase Invoice {0},Broj dostavnice dostavnice postoji u fakturi kupovine {0},
-Supplier Name,ime dobavljača,
-Supplier Part No,Broj dijela dobavljača,
-Supplier Quotation,Ponuda dobavljača,
-Supplier Quotation {0} created,Izrađena je ponuda dobavljača {0},
-Supplier Scorecard,Preglednik dobavljača,
-Supplier Warehouse mandatory for sub-contracted Purchase Receipt,Skladište dobavljača obvezno za podugovornu potvrdu o kupnji,
-Supplier database.,Baza dobavljača.,
-Supplier {0} not found in {1},Dobavljač {0} nije pronađen u {1},
+Supplier Group master.,Majstor grupa dobavljača.,
+Supplier Id,Id Dobavljač,
+Supplier Invoice Date cannot be greater than Posting Date,Datum Dobavljač Račun ne može biti veća od datum knjiženja,
+Supplier Invoice No,Dobavljač Račun br,
+Supplier Invoice No exists in Purchase Invoice {0},Dobavljač Račun br postoji u fakturi {0},
+Supplier Name,Dobavljač Ime,
+Supplier Part No,Dobavljač Dio Ne,
+Supplier Quotation,Dobavljač Ponuda,
+Supplier Quotation {0} created,Dobavljač Navod {0} stvorio,
+Supplier Scorecard,Dobavljač ocjena,
+Supplier Warehouse mandatory for sub-contracted Purchase Receipt,Dobavljač skladišta obvezan je za sub - ugovoreni kupiti primitka,
+Supplier database.,Dobavljač baza podataka.,
+Supplier {0} not found in {1},Dobavljač {0} nije pronađen {1},
 Supplier(s),Dobavljač (s),
-Supplies made to UIN holders,Potrošači za UIN nositelje,
-Supplies made to Unregistered Persons,Zalihe napravljene neregistriranim osobama,
-Suppliies made to Composition Taxable Persons,Dobavljači sastavljeni od strane poreznih obveznika,
+Supplies made to UIN holders,Nabave za držače UIN-a,
+Supplies made to Unregistered Persons,Isporuka za neregistrirane osobe,
+Suppliies made to Composition Taxable Persons,Isporuke za porezne obveznike na sastav,
 Supply Type,Vrsta napajanja,
 Support,podrška,
-Support Analytics,Podrška Analytics,
-Support Settings,Postavke podrške,
-Support Tickets,Ulaznice za podršku,
-Support queries from customers.,Podrška upitima od kupaca.,
+Support Analytics,Analitike podrške,
+Support Settings,Postavke za podršku,
+Support Tickets,Podržite ulaznice,
+Support queries from customers.,Upiti podršci.,
 Susceptible,Osjetljiv,
-Sync Master Data,Glavni podaci sinkronizacije,
-Sync Offline Invoices,Sinkronizacija izvanmrežnih dostavnica,
-Sync has been temporarily disabled because maximum retries have been exceeded,Sinkronizacija je privremeno onemogućena jer su prekoračeni maksimalni pokušaji,
-Syntax error in condition: {0},Pogreška u sintaksi: {0},
-Syntax error in formula or condition: {0},Pogreška sintakse u formuli ili uvjetu: {0},
-TDS Rate %,Stopa TDS-a%,
-Taken,Poduzete,
+Sync Master Data,Sync Master Data,
+Sync Offline Invoices,Sinkronizacija Offline Računi,
+Sync has been temporarily disabled because maximum retries have been exceeded,Sinkronizacija je privremeno onemogućena zbog prekoračenja maksimalnih pokušaja,
+Syntax error in condition: {0},Pogreška sintakse u stanju: {0},
+Syntax error in formula or condition: {0},sintaktička pogreška u formuli ili stanja: {0},
+TDS Rate %,TDS stopa%,
 Tap items to add them here,Dodirnite stavke da biste ih dodali ovdje,
-Target ({}),Ciljanje ({}),
-Target On,Cilj je uključen,
-Target Warehouse,Ciljno skladište,
-Target warehouse in row {0} must be same as Work Order,Ciljno skladište u retku {0} mora biti jednako radnom nalogu,
-Target warehouse is mandatory for row {0},Ciljno skladište obvezno je za redak {0},
+Target ({}),Cilj ({}),
+Target On,Target Na,
+Target Warehouse,Ciljana galerija,
+Target warehouse is mandatory for row {0},Target skladište je obvezno za redom {0},
 Task,Zadatak,
-Tasks,zadaci,
-Tasks have been created for managing the {0} disease (on row {1}),Stvoreni su zadaci za upravljanje bolešću {0} (u retku {1}),
+Tasks,poslovi,
+Tasks have been created for managing the {0} disease (on row {1}),Zadaci su stvoreni za upravljanje {0} bolestom (u retku {1}),
 Tax,Porez,
 Tax Assets,Porezna imovina,
-Tax Category for overriding tax rates.,Porezna kategorija za prevladavanje poreznih stopa.,
-"Tax Category has been changed to ""Total"" because all the Items are non-stock items",Porezna kategorija je promijenjena u &quot;Ukupno&quot; jer su sve stavke stavke koje nisu u zalihama,
-Tax ID,Porezni broj,
-Tax Id: ,Identifikacija poreza:,
+Tax Category for overriding tax rates.,Porezna kategorija za previsoke porezne stope.,
+"Tax Category has been changed to ""Total"" because all the Items are non-stock items",Kategorija poreza promijenjena je u &quot;Ukupno&quot; jer su sve stavke nedopuštene stavke,
+Tax ID,OIB,
+Tax Id: ,ID poreza:,
 Tax Rate,Porezna stopa,
-Tax Rule Conflicts with {0},Porez na porezno pravilo s {0},
-Tax Rule for transactions.,Porezno pravilo za transakcije.,
-Tax Template is mandatory.,Predložak poreza je obvezan.,
-Tax Withholding rates to be applied on transactions.,Porezne odbitne stope koje se primjenjuju na transakcije.,
-Tax template for buying transactions.,Šablon poreza za kupnju transakcija.,
-Tax template for item tax rates.,Predložak poreza za stope poreza na stavku.,
-Tax template for selling transactions.,Šablon poreza za transakcije prodaje.,
-Taxable Amount,Oporezivi iznos,
+Tax Rule Conflicts with {0},Porezni Pravilo Sukobi s {0},
+Tax Rule for transactions.,Porezni Pravilo za transakcije.,
+Tax Template is mandatory.,Porez Predložak je obavezno.,
+Tax Withholding rates to be applied on transactions.,Stope zadržavanja poreza koje će se primjenjivati na transakcije.,
+Tax template for buying transactions.,Porezna Predložak za kupnju transakcije .,
+Tax template for item tax rates.,Obrazac poreza za porezne stope na stavke.,
+Tax template for selling transactions.,Porezni predložak za prodajne transakcije.,
+Taxable Amount,Iznos oporezivanja,
 Taxes,Porezi,
-Team Updates,Ažuriranja tima,
+Team Updates,tim ažuriranja,
 Technology,Tehnologija,
-Telecommunications,Telekomunikacija,
+Telecommunications,Telekomunikacije,
 Telephone Expenses,Telefonski troškovi,
 Television,Televizija,
-Template of terms or contract.,Predložak uvjeta ili ugovora.,
-Templates of supplier scorecard criteria.,Predlošci kriterija ocjene dobavljača.,
-Templates of supplier scorecard variables.,Predlošci varijabli pokazatelja dobavljača.,
-Templates of supplier standings.,Predlošci položaja dobavljača.,
+Template of terms or contract.,Predložak izraza ili ugovora.,
+Templates of supplier scorecard criteria.,Predlošci kriterija dobavljača bodova.,
+Templates of supplier scorecard variables.,Predlošci varijabli s rezultatima dobavljača.,
+Templates of supplier standings.,Predlošci stanja dobavljača.,
 Temporarily on Hold,Privremeno na čekanju,
 Temporary,privremen,
 Temporary Accounts,Privremeni računi,
-Temporary Opening,Privremeno otvaranje,
-Terms and Conditions,Uvjeti i odredbe,
-Terms and Conditions Template,Predložak Uvjeta i odredbi,
-Territory,Teritorija,
+Temporary Opening,Privremeni Otvaranje,
+Terms and Conditions,Odredbe i uvjeti,
+Terms and Conditions Template,Uvjeti i odredbe - šprance,
+Territory,Teritorij,
 Territory is Required in POS Profile,Teritorij je potreban u POS profilu,
 Test,Test,
-Thank you,Hvala vam,
+Thank you,Hvala,
 Thank you for your business!,Hvala vam na poslovanju!,
-The 'From Package No.' field must neither be empty nor it's value less than 1.,&quot;Iz paketa br.&quot; polje ne smije biti prazno niti je vrijednost manja od 1.,
+The 'From Package No.' field must neither be empty nor it's value less than 1.,&#39;Iz paketa br.&#39; polje ne smije biti prazno niti vrijednost manja od 1.,
 The Brand,Brand,
-The Item {0} cannot have Batch,Stavka {0} ne može imati paket,
-The Loyalty Program isn't valid for the selected company,Program vjernosti nije važeći za odabranu tvrtku,
-The Patient {0} do not have customer refrence to invoice,Pacijent {0} nema odobrenje klijenta za fakturiranje,
-The Payment Term at row {0} is possibly a duplicate.,Termin Plaćanje u retku {0} je možda duplikat.,
-The Term End Date cannot be earlier than the Term Start Date. Please correct the dates and try again.,Datum završetka termina ne može biti ranije od datuma početka termina. Ispravite datume i pokušajte ponovno.,
-The Term End Date cannot be later than the Year End Date of the Academic Year to which the term is linked (Academic Year {}). Please correct the dates and try again.,Datum završetka završetka ne može biti kasnije od datuma završetka godine akademske godine na koju je izraz povezan (akademska godina {}). Ispravite datume i pokušajte ponovno.,
-The Term Start Date cannot be earlier than the Year Start Date of the Academic Year to which the term is linked (Academic Year {}). Please correct the dates and try again.,Datum početka razdoblja ne može biti ranije od datuma početka godine akademske godine na koju je taj izraz povezan (akademska godina {}). Ispravite datume i pokušajte ponovno.,
-The Year End Date cannot be earlier than the Year Start Date. Please correct the dates and try again.,Datum završetka godine ne može biti ranije od datuma početka godine. Ispravite datume i pokušajte ponovno.,
-The amount of {0} set in this payment request is different from the calculated amount of all payment plans: {1}. Make sure this is correct before submitting the document.,Iznos od {0} postavljen u ovom zahtjevu za plaćanje razlikuje se od izračunatog iznosa svih planova plaćanja: {1}. Provjerite je li to ispravno prije slanja dokumenta.,
-The day(s) on which you are applying for leave are holidays. You need not apply for leave.,Dan (i) na koji se prijavljujete za odmor su praznici. Ne trebate podnijeti zahtjev za dopust.,
+The Item {0} cannot have Batch,Stavka {0} ne može imati Hrpa,
+The Loyalty Program isn't valid for the selected company,Program lojalnosti ne vrijedi za odabranu tvrtku,
+The Payment Term at row {0} is possibly a duplicate.,Plaćanje u redu {0} vjerojatno je duplikat.,
+The Term End Date cannot be earlier than the Term Start Date. Please correct the dates and try again.,Datum Pojam završetka ne može biti ranije od datuma Pojam Start. Ispravite datume i pokušajte ponovno.,
+The Term End Date cannot be later than the Year End Date of the Academic Year to which the term is linked (Academic Year {}). Please correct the dates and try again.,Datum Pojam završetka ne može biti kasnije od godine datum završetka školske godine u kojoj je pojam vezan (Akademska godina {}). Ispravite datume i pokušajte ponovno.,
+The Term Start Date cannot be earlier than the Year Start Date of the Academic Year to which the term is linked (Academic Year {}). Please correct the dates and try again.,Datum Pojam početka ne može biti ranije od godine Datum početka akademske godine u kojoj je pojam vezan (Akademska godina {}). Ispravite datume i pokušajte ponovno.,
+The Year End Date cannot be earlier than the Year Start Date. Please correct the dates and try again.,Godina Datum završetka ne može biti ranije od datuma Godina Start. Ispravite datume i pokušajte ponovno.,
+The amount of {0} set in this payment request is different from the calculated amount of all payment plans: {1}. Make sure this is correct before submitting the document.,Iznos {0} postavljen u ovom zahtjevu za plaćanje razlikuje se od izračunatog iznosa svih planova plaćanja: {1}. Provjerite je li to ispravno prije slanja dokumenta.,
+The day(s) on which you are applying for leave are holidays. You need not apply for leave.,Dan (e) na koje se prijavljuje za odmor su praznici. Ne morate se prijaviti za dopust.,
 The field From Shareholder cannot be blank,Polje Od dioničara ne može biti prazno,
-The field To Shareholder cannot be blank,Polje Za dioničara ne može biti prazno,
+The field To Shareholder cannot be blank,Polje Dioničar ne može biti prazno,
 The fields From Shareholder and To Shareholder cannot be blank,Polja Od dioničara i dioničara ne mogu biti prazna,
-The folio numbers are not matching,Brojevi folija se ne podudaraju,
-The following Work Orders were created:,Sljedeći su radni nalozi izrađeni:,
-The holiday on {0} is not between From Date and To Date,Odmor na {0} nije između datuma i datuma,
-The name of the institute for which you are setting up this system.,Naziv instituta za koji postavljate ovaj sustav.,
-The name of your company for which you are setting up this system.,Naziv tvrtke za koju postavljate ovaj sustav.,
-The number of shares and the share numbers are inconsistent,Broj dionica i broj dionica su nedosljedni,
-The payment gateway account in plan {0} is different from the payment gateway account in this payment request,Račun pristupnika za plaćanje u planu {0} razlikuje se od računa pristupnika za plaćanje u ovom zahtjevu za plaćanje,
-The request for quotation can be accessed by clicking on the following link,Zahtjev za ponudu možete pristupiti klikom na sljedeći link,
+The folio numbers are not matching,Folio brojevi se ne podudaraju,
+The holiday on {0} is not between From Date and To Date,Odmor na {0} nije između Od Datum i do sada,
+The name of the institute for which you are setting up this system.,Ime instituta za koju postavljate ovaj sustav.,
+The name of your company for which you are setting up this system.,Ime vaše tvrtke za koje ste postavljanje ovog sustava .,
+The number of shares and the share numbers are inconsistent,Broj dionica i brojeva udjela nedosljedni su,
+The payment gateway account in plan {0} is different from the payment gateway account in this payment request,Račun za gateway plaćanja u planu {0} se razlikuje od računa za pristupnik plaćanja u ovom zahtjevu za plaćanje,
+The request for quotation can be accessed by clicking on the following link,Zahtjev za ponudu se može pristupiti klikom na sljedeći link,
 The selected BOMs are not for the same item,Odabrane sastavnice nisu za istu stavku,
-The selected item cannot have Batch,Odabrana stavka ne može imati paket,
+The selected item cannot have Batch,Izabrani predmet ne može imati Hrpa,
 The seller and the buyer cannot be the same,Prodavatelj i kupac ne mogu biti isti,
-The shareholder does not belong to this company,Dioničar ne pripada ovom društvu,
+The shareholder does not belong to this company,Dioničar ne pripada ovoj tvrtki,
 The shares already exist,Dionice već postoje,
-The shares don't exist with the {0},Dionice ne postoje s {0},
-"The task has been enqueued as a background job. In case there is any issue on processing in background, the system will add a comment about the error on this Stock Reconciliation and revert to the Draft stage","Zadatak je upakiran kao pozadinski posao. U slučaju bilo kakvog problema u obradi u pozadini, sustav će dodati komentar o pogrešci na ovom usklađivanju zaliha i vratiti se na fazu nacrta",
-"Then Pricing Rules are filtered out based on Customer, Customer Group, Territory, Supplier, Supplier Type, Campaign, Sales Partner etc.","Tada se Pravila o cijenama filtriraju na temelju klijenta, grupe korisnika, teritorija, dobavljača, vrste dobavljača, kampanje, prodajnog partnera itd.",
-"There are inconsistencies between the rate, no of shares and the amount calculated","Postoje nedosljednosti između stope, broja dionica i izračunatog iznosa",
-There are more holidays than working days this month.,Ovaj mjesec ima više praznika nego radnih dana.,
-There can be multiple tiered collection factor based on the total spent. But the conversion factor for redemption will always be same for all the tier.,"Može postojati višestruki faktor naplate na temelju ukupno potrošenog. No, faktor pretvorbe za otkup će uvijek biti isti za sve razine.",
-There can only be 1 Account per Company in {0} {1},U {0} {1} može biti samo jedan račun po tvrtki,
-"There can only be one Shipping Rule Condition with 0 or blank value for ""To Value""",Može postojati samo jedan uvjet za pravilo dostave s 0 ili praznom vrijednošću za &quot;Za vrijednost&quot;,
-There is no leave period in between {0} and {1},U razdoblju između {0} i {1} nema razdoblja dopusta,
-There is not enough leave balance for Leave Type {0},Nema dovoljno preostalog salda za vrstu ostavljanja {0},
-There is nothing to edit.,Nema ništa za uređivanje.,
-There isn't any item variant for the selected item,Za odabranu stavku ne postoji varijanta stavke,
-"There seems to be an issue with the server's GoCardless configuration. Don't worry, in case of failure, the amount will get refunded to your account.","Čini se da postoji problem s konfiguracijom poslužitelja GoCardless. Ne brinite, u slučaju neuspjeha, iznos će biti vraćen na vaš račun.",
-There were errors creating Course Schedule,Došlo je do pogrešaka pri izradi rasporeda tečajeva,
-There were errors.,Bilo je pogrešaka.,
-This Item is a Template and cannot be used in transactions. Item attributes will be copied over into the variants unless 'No Copy' is set,"Ova stavka je predložak i ne može se koristiti u transakcijama. Atributi stavki kopiraju se u varijante, osim ako nije postavljeno &quot;No Copy&quot;",
-This Item is a Variant of {0} (Template).,Ova je stavka varijanta od {0} (Predložak).,
-This Month's Summary,Sažetak ovog mjeseca,
-This Week's Summary,Sažetak ovog tjedna,
-This action will stop future billing. Are you sure you want to cancel this subscription?,Ova će radnja zaustaviti buduće naplate. Jeste li sigurni da želite otkazati ovu pretplatu?,
-This covers all scorecards tied to this Setup,Ovo obuhvaća sve kartice rezultata koje su povezane s ovim postavkama,
-This document is over limit by {0} {1} for item {4}. Are you making another {3} against the same {2}?,Ovaj dokument premašuje ograničenje {0} {1} za stavku {4}. Jeste li napravili još jednu {3} protiv iste {2}?,
-This is a root account and cannot be edited.,Ovo je korijenski račun i ne može se uređivati.,
-This is a root customer group and cannot be edited.,Ovo je korijenska grupa korisnika i ne može se uređivati.,
+The shares don't exist with the {0},Dionice ne postoje kod {0},
+"The task has been enqueued as a background job. In case there is any issue on processing in background, the system will add a comment about the error on this Stock Reconciliation and revert to the Draft stage","Zadatak je zamišljen kao pozadinski posao. U slučaju da dođe do problema s obradom u pozadini, sustav će dodati komentar o pogrešci ovog usklađivanja zaliha i vratit će se u fazu skice.",
+"Then Pricing Rules are filtered out based on Customer, Customer Group, Territory, Supplier, Supplier Type, Campaign, Sales Partner etc.","Cjenovna pravila filtriraju se na temelju kupca, grupe kupaca, regije, dobavljača, proizvođača, kampanje, prodajnog partnera i sl.",
+"There are inconsistencies between the rate, no of shares and the amount calculated","Postoje nedosljednosti između stope, broja dionica i izračunate iznosa",
+There are more holidays than working days this month.,Postoji više odmor nego radnih dana ovog mjeseca .,
+There can be multiple tiered collection factor based on the total spent. But the conversion factor for redemption will always be same for all the tier.,Može postojati višestruki skupni faktor zbirke na temelju ukupnog utrošenog. Ali pretvorbeni faktor za iskupljenje uvijek će biti isti za cijelu razinu.,
+There can only be 1 Account per Company in {0} {1},Tu može biti samo 1 račun po društvo u {0} {1},
+"There can only be one Shipping Rule Condition with 0 or blank value for ""To Value""","Tu može biti samo jedan Dostava Pravilo Stanje sa 0 ili prazni vrijednost za "" Da Value """,
+There is no leave period in between {0} and {1},Ne postoji razdoblje odmora između {0} i {1},
+There is not enough leave balance for Leave Type {0},Nema dovoljno ravnotežu dopust za dozvolu tipa {0},
+There is nothing to edit.,Ne postoji ništa za uređivanje .,
+There isn't any item variant for the selected item,Nema odabrane stavke za odabranu stavku,
+"There seems to be an issue with the server's GoCardless configuration. Don't worry, in case of failure, the amount will get refunded to your account.","Čini se da postoji problem s konfiguracijom GoCardless poslužitelja. Ne brinite, u slučaju neuspjeha, iznos će biti vraćen na vaš račun.",
+There were errors creating Course Schedule,Došlo je do pogrešaka prilikom izrade tečaja Raspored,
+There were errors.,Bilo je grešaka .,
+This Item is a Template and cannot be used in transactions. Item attributes will be copied over into the variants unless 'No Copy' is set,"Ova točka je predložak i ne može se koristiti u prometu. Atributi artikl će biti kopirana u varijanti osim 'Ne Copy ""je postavljena",
+This Item is a Variant of {0} (Template).,Ova stavka je varijanta od {0} (Predložak).,
+This Month's Summary,Ovomjesečnom Sažetak,
+This Week's Summary,Ovaj tjedan Sažetak,
+This action will stop future billing. Are you sure you want to cancel this subscription?,Ta će radnja zaustaviti buduće naplate. Jeste li sigurni da želite otkazati ovu pretplatu?,
+This covers all scorecards tied to this Setup,To obuhvaća sve bodove vezane uz ovu postavku,
+This document is over limit by {0} {1} for item {4}. Are you making another {3} against the same {2}?,Ovaj dokument je preko granice po {0} {1} za stavku {4}. Jeste li što drugo {3} protiv iste {2}?,
+This is a root account and cannot be edited.,To jekorijen račun i ne može se mijenjati .,
+This is a root customer group and cannot be edited.,Ovo je glavna grupa kupaca i ne može se mijenjati.,
 This is a root department and cannot be edited.,Ovo je korijenski odjel i ne može se uređivati.,
-This is a root healthcare service unit and cannot be edited.,Ovo je osnovna jedinica zdravstvene službe i ne može se uređivati.,
-This is a root item group and cannot be edited.,To je grupa korijenskih stavki i ne može se uređivati.,
-This is a root sales person and cannot be edited.,Ovo je korijenska prodajna osoba i ne može se uređivati.,
-This is a root supplier group and cannot be edited.,Ovo je osnovna grupa dobavljača i ne može se uređivati.,
-This is a root territory and cannot be edited.,Ovo je korijensko područje i ne može se uređivati.,
-This is an example website auto-generated from ERPNext,Ovo je primjer web-lokacije koja se automatski generira iz ERPNext,
-This is based on logs against this Vehicle. See timeline below for details,To se temelji na zapisnicima o ovom vozilu. Detalje potražite u donjoj crti,
-This is based on stock movement. See {0} for details,To se temelji na kretanju zaliha. Za detalje pogledajte {0},
-This is based on the Time Sheets created against this project,To se temelji na vremenskim tablicama kreiranim za ovaj projekt,
-This is based on the attendance of this Employee,To se temelji na prisutnosti ovog zaposlenika,
-This is based on the attendance of this Student,To se temelji na pohađanju ovog studenta,
-This is based on transactions against this Customer. See timeline below for details,To se temelji na transakcijama protiv ovog klijenta. Detalje potražite u donjoj crti,
-This is based on transactions against this Healthcare Practitioner.,To se temelji na transakcijama protiv ovog zdravstvenog djelatnika.,
-This is based on transactions against this Patient. See timeline below for details,To se temelji na transakcijama protiv ovog pacijenta. Detalje potražite u donjoj crti,
-This is based on transactions against this Sales Person. See timeline below for details,To se temelji na transakcijama s ovom Prodajnom osobom. Detalje potražite u donjoj crti,
-This is based on transactions against this Supplier. See timeline below for details,To se temelji na transakcijama protiv ovog dobavljača. Detalje potražite u donjoj crti,
-This will submit Salary Slips and create accrual Journal Entry. Do you want to proceed?,Ovo će dostaviti isplate plaća i stvoriti unos dnevnika obračuna. Želiš li nastaviti?,
-This {0} conflicts with {1} for {2} {3},Ovaj {0} u sukobu s {1} za {2} {3},
-Time Sheet for manufacturing.,Vremenski list za proizvodnju.,
+This is a root healthcare service unit and cannot be edited.,Ovo je jedinica za zdravstvenu zaštitu root i ne može se uređivati.,
+This is a root item group and cannot be edited.,To jekorijen stavka grupa i ne može se mijenjati .,
+This is a root sales person and cannot be edited.,To jekorijen prodavač i ne može se mijenjati .,
+This is a root supplier group and cannot be edited.,Ovo je grupa dobavljača i ne može se uređivati.,
+This is a root territory and cannot be edited.,Ovo je glavni teritorij i ne može se mijenjati.,
+This is an example website auto-generated from ERPNext,Ovo je primjer web stranica automatski generira iz ERPNext,
+This is based on logs against this Vehicle. See timeline below for details,To se temelji na zapisima protiv tog vozila. Pogledajte vremensku crtu ispod za detalje,
+This is based on stock movement. See {0} for details,To se temelji na dionicama kretanja. Vidi {0} za detalje,
+This is based on the Time Sheets created against this project,To se temelji na vremenske tablice stvorene na ovom projektu,
+This is based on the attendance of this Employee,To se temelji na prisustvo tog zaposlenog,
+This is based on the attendance of this Student,To se temelji na prisustvo ovog Student,
+This is based on transactions against this Customer. See timeline below for details,To se temelji na transakcijama protiv tog kupca. Pogledajte vremensku crtu ispod za detalje,
+This is based on transactions against this Healthcare Practitioner.,To se temelji na transakcijama protiv ove zdravstvene prakse.,
+This is based on transactions against this Patient. See timeline below for details,To se temelji na transakcijama protiv ovog pacijenta. Pojedinosti potražite u nastavku,
+This is based on transactions against this Sales Person. See timeline below for details,To se temelji na transakcijama protiv ove prodajne osobe. Pojedinosti potražite u nastavku,
+This is based on transactions against this Supplier. See timeline below for details,To se temelji na transakcijama protiv tog dobavljača. Pogledajte vremensku crtu ispod za detalje,
+This will submit Salary Slips and create accrual Journal Entry. Do you want to proceed?,To će poslati Plaće Slips i stvoriti obračunski dnevnik unos. Želiš li nastaviti?,
+This {0} conflicts with {1} for {2} {3},To {0} sukobi s {1} od {2} {3},
+Time Sheet for manufacturing.,Vrijeme list za proizvodnju.,
 Time Tracking,Praćenje vremena,
-Time logs are required for job card {0},Dnevnici vremena potrebni su za karticu posla {0},
-"Time slot skiped, the slot {0} to {1} overlap exisiting slot {2} to {3}","Vremenski razmak je preskočen, utor {0} do {1} preklapa postojeći prorez {2} do {3}",
-Time slots added,Dodani su vremenski termini,
-Time(in mins),Vrijeme (u min),
+"Time slot skiped, the slot {0} to {1} overlap exisiting slot {2} to {3}","Vremenski utor je preskočen, utor {0} do {1} preklapa vanjski otvor {2} na {3}",
+Time slots added,Dodano je vrijeme,
+Time(in mins),Vrijeme (u minutama),
 Timer,Odbrojavanje,
-Timer exceeded the given hours.,Tajmer je premašio zadane sate.,
+Timer exceeded the given hours.,Timer je premašio zadani broj sati.,
 Timesheet,kontrolna kartica,
 Timesheet for tasks.,Timesheet za zadatke.,
-Timesheet {0} is already completed or cancelled,Timesheet {0} je već dovršen ili otkazan,
+Timesheet {0} is already completed or cancelled,Timesheet {0} već je završen ili otkazan,
 Timesheets,timesheets,
-"Timesheets help keep track of time, cost and billing for activites done by your team","Timesheetsi pomažu u praćenju vremena, troškova i naplate za aktivnosti koje vaš tim obavlja",
-Titles for print templates e.g. Proforma Invoice.,"Naslovi za predloške za ispis, npr. Proforma faktura.",
+"Timesheets help keep track of time, cost and billing for activites done by your team","Timesheets pomoći pratiti vrijeme, troškove i naplatu za aktivnostima obavljaju unutar vašeg tima",
+Titles for print templates e.g. Proforma Invoice.,"Naslovi za ispis predložaka, na primjer predračuna.",
 To,Do,
-To Address 1,U adresu 1,
-To Address 2,U adresu 2,
-To Bill,Naplatiti,
-To Date,Do datuma,
+To Address 1,Adresa 1,
+To Address 2,Adresa 2,
+To Bill,Za Billa,
+To Date,Za datum,
 To Date cannot be before From Date,Datum ne može biti prije datuma,
-To Date cannot be less than From Date,Datum ne može biti manji od datuma,
-To Date must be greater than From Date,Datum mora biti veći od datuma,
-To Date should be within the Fiscal Year. Assuming To Date = {0},Do datuma treba biti unutar fiskalne godine. Pretpostavljajući da je datum = {0},
+To Date cannot be less than From Date,Do datuma ne može biti manji od datuma,
+To Date must be greater than From Date,Do datuma mora biti veći od Od datuma,
+To Date should be within the Fiscal Year. Assuming To Date = {0},Za datum mora biti unutar fiskalne godine. Pod pretpostavkom da bi datum = {0},
 To Datetime,Za Datetime,
-To Deliver,Dostaviti,
+To Deliver,Za isporuku,
 To Deliver and Bill,Za isporuku i Bill,
-To Fiscal Year,Do fiskalne godine,
+To Fiscal Year,Fiskalnoj godini,
 To GSTIN,Za GSTIN,
-To Party Name,Za ime stranke,
-To Pin Code,Za PIN kod,
-To Place,Za mjesto,
+To Party Name,Za ime partije,
+To Pin Code,Za kodiranje koda,
+To Place,Mjesto,
 To Receive,Primiti,
 To Receive and Bill,Za primanje i Bill,
 To State,Izjaviti,
-To Warehouse,U skladište,
-To create a Payment Request reference document is required,Za izradu zahtjeva za plaćanje potreban je referentni dokument,
-To date can not be equal or less than from date,Do danas ne može biti jednako ili manje od datuma,
-To date can not be less than from date,Do danas ne može biti manje od datuma,
-To date can not greater than employee's relieving date,Do danas ne može biti veći od datuma otpuštanja zaposlenika,
-"To filter based on Party, select Party Type first","Da biste filtrirali na temelju Stranke, najprije odaberite Vrsta stranke",
-"To get the best out of ERPNext, we recommend that you take some time and watch these help videos.","Da biste dobili najbolje od ERPNexta, preporučujemo da odvojite malo vremena i pogledate te videozapise pomoći.",
-"To include tax in row {0} in Item rate, taxes in rows {1} must also be included","Da biste uključili porez u redak {0} u stavci Stavka, porezi u retke {1} također moraju biti uključeni",
-To make Customer based incentive schemes.,Izraditi poticajne sheme utemeljene na klijentima.,
-"To merge, following properties must be same for both items",Za spajanje sljedeća svojstva moraju biti ista za obje stavke,
-"To not apply Pricing Rule in a particular transaction, all applicable Pricing Rules should be disabled.","Kako ne bi primijenili Pravilo o određivanju cijena u određenoj transakciji, sva primjenjiva Pravila za cijene trebala bi biti onemogućena.",
-"To set this Fiscal Year as Default, click on 'Set as Default'","Da biste ovu fiskalnu godinu postavili kao zadanu, kliknite &quot;Postavi kao zadano&quot;",
-To view logs of Loyalty Points assigned to a Customer.,Za pregled dnevnika bodova lojalnosti dodijeljenih klijentu.,
-To {0},U {0},
-To {0} | {1} {2},U {0} | {1} {2},
-Toggle Filters,Prebaci filtre,
-Too many columns. Export the report and print it using a spreadsheet application.,Previše stupaca. Izvezite izvješće i ispišite ga pomoću aplikacije za proračunske tablice.,
-Tools,alat,
-Total (Credit),Ukupno (kredit),
+To Warehouse,Za skladište,
+To create a Payment Request reference document is required,Za izradu referentnog dokumenta zahtjeva za plaćanje potrebno je,
+To date can not be equal or less than from date,Do danas ne može biti jednak ili manji od datuma,
+To date can not be less than from date,Do danas ne može biti manji od datuma,
+To date can not greater than employee's relieving date,Do danas ne može biti veći od datuma oslobađanja zaposlenika,
+"To filter based on Party, select Party Type first","Za filtriranje se temelji na stranke, odaberite stranka Upišite prvi",
+"To get the best out of ERPNext, we recommend that you take some time and watch these help videos.","Da biste dobili najbolje iz ERPNext, preporučamo da odvojite malo vremena i gledati te pomoći videa.",
+"To include tax in row {0} in Item rate, taxes in rows {1} must also be included","To uključuje porez u redu {0} u stopu točke , porezi u redovima {1} također moraju biti uključeni",
+To make Customer based incentive schemes.,Da biste napravili poticajne sheme temeljene na kupcu.,
+"To merge, following properties must be same for both items","Spojiti , ova svojstva moraju biti isti za obje stavke",
+"To not apply Pricing Rule in a particular transaction, all applicable Pricing Rules should be disabled.","Da se ne primjenjuje pravilo Cijene u određenoj transakciji, svim primjenjivim pravilima cijena bi trebala biti onemogućen.",
+"To set this Fiscal Year as Default, click on 'Set as Default'","Za postavljanje ove fiskalne godine kao zadano , kliknite na "" Set as Default '",
+To view logs of Loyalty Points assigned to a Customer.,Za pregled zapisnika lojalnih bodova dodijeljenih kupcu.,
+To {0},Za {0},
+To {0} | {1} {2},Za {0} | {1} {2},
+Toggle Filters,Uključi filtre,
+Too many columns. Export the report and print it using a spreadsheet application.,Previše stupovi. Izvesti izvješće i ispisati pomoću aplikacije za proračunske tablice.,
+Tools,Alati,
+Total (Credit),Ukupno (Credit),
 Total (Without Tax),Ukupno (bez poreza),
-Total Absent,Ukupno odsutno,
-Total Achieved,Ukupno postignuto,
-Total Actual,Ukupna stvarna,
-Total Allocated Leaves,Ukupni dodijeljeni listovi,
-Total Amount,Ukupni iznos,
-Total Amount Credited,Ukupni iznos kredita,
+Total Absent,Ukupno Odsutni,
+Total Achieved,Ukupno Ostvareno,
+Total Actual,Ukupno Stvarni,
+Total Allocated Leaves,Ukupno dopuštena lišća,
+Total Amount,Ukupan iznos,
+Total Amount Credited,Ukupan iznos je odobren,
 Total Amount {0},Ukupni iznos {0},
-Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Ukupne primjenjive naknade u tablici računa primitaka kupnje moraju biti jednake ukupnim porezima i troškovima,
+Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Ukupno odgovarajuće naknade u potvrdi o kupnji stavke stolu mora biti ista kao i Total poreza i naknada,
 Total Budget,Ukupni proračun,
-Total Collected: {0},Ukupno prikupljenih: {0},
-Total Commission,Ukupno povjerenstvo,
-Total Contribution Amount: {0},Ukupni iznos doprinosa: {0},
-Total Credit/ Debit Amount should be same as linked Journal Entry,Ukupni iznos kredita / zaduženja trebao bi biti isti kao i unos u dnevnik,
-Total Debit must be equal to Total Credit. The difference is {0},Ukupni debit mora biti jednak ukupnom kreditu. Razlika je {0},
-Total Deduction,Ukupno oduzimanje,
-Total Invoiced Amount,Ukupni fakturirani iznos,
+Total Collected: {0},Ukupno prikupljeno: {0},
+Total Commission,Ukupno komisija,
+Total Contribution Amount: {0},Iznos ukupnog iznosa doprinosa: {0},
+Total Credit/ Debit Amount should be same as linked Journal Entry,Ukupni iznos kredita / debitnog iznosa mora biti isti kao i povezani unos dnevnika,
+Total Debit must be equal to Total Credit. The difference is {0},Ukupno zaduženje mora biti jednak ukupnom kreditnom .,
+Total Deduction,Ukupno Odbitak,
+Total Invoiced Amount,Ukupno Iznos dostavnice,
 Total Leaves,Ukupno lišće,
-Total Order Considered,Ukupan broj narudžbi,
+Total Order Considered,Ukupno Naručite Smatra,
 Total Order Value,Ukupna vrijednost narudžbe,
-Total Outgoing,Ukupno odlaznih,
-Total Outstanding,Ukupno neočekivano,
-Total Outstanding Amount,Ukupni nepodmireni iznos,
-Total Outstanding: {0},Ukupno preostalih: {0},
-Total Paid Amount,Ukupni uplaćeni iznos,
+Total Outgoing,Ukupno odlazni,
+Total Outstanding,Ukupno izvanredno,
+Total Outstanding Amount,Ukupni iznos,
+Total Outstanding: {0},Ukupno izvrsno: {0},
+Total Paid Amount,Ukupno uplaćeni iznos,
 Total Payment Amount in Payment Schedule must be equal to Grand / Rounded Total,Ukupni iznos plaćanja u rasporedu plaćanja mora biti jednak Grand / Rounded Total,
 Total Payments,Ukupna plaćanja,
-Total Present,Ukupno prisutno,
+Total Present,Ukupno Present,
 Total Qty,Ukupna količina,
 Total Quantity,Ukupna količina,
 Total Revenue,Ukupni prihodi,
-Total Student,Ukupno student,
-Total Target,Ukupni cilj,
-Total Tax,Ukupni porez,
-Total Taxable Amount,Ukupni porezni iznos,
-Total Taxable Value,Ukupna porezna vrijednost,
-Total Unpaid: {0},Ukupno neplaćeno: {0},
-Total Variance,Ukupna varijacija,
-Total Weightage of all Assessment Criteria must be 100%,Ukupna težina svih kriterija procjene mora biti 100%,
-Total advance ({0}) against Order {1} cannot be greater than the Grand Total ({2}),Ukupni iznos ({0}) protiv narudžbe {1} ne može biti veći od ukupnog iznosa ({2}),
-Total advance amount cannot be greater than total claimed amount,Ukupni iznos predujma ne može biti veći od ukupnog traženog iznosa,
-Total advance amount cannot be greater than total sanctioned amount,Ukupni iznos predujma ne može biti veći od ukupnog iznosa sankcije,
-Total allocated leaves are more days than maximum allocation of {0} leave type for employee {1} in the period,Ukupni dodijeljeni listovi su više dana od maksimalne dodjele tipa {0} za zaposlenika {1} u razdoblju,
-Total allocated leaves are more than days in the period,Ukupno dodijeljeno lišće je više od dana u tom razdoblju,
-Total allocated percentage for sales team should be 100,Ukupni dodijeljeni postotak za prodajni tim trebao bi biti 100,
-Total cannot be zero,Ukupno ne može biti nula,
-Total completed qty must be greater than zero,Ukupna dovršena količina mora biti veća od nule,
+Total Student,Ukupno učenika,
+Total Target,Ukupno Target,
+Total Tax,Ukupno porez,
+Total Taxable Amount,Ukupni iznos oporezive,
+Total Taxable Value,Ukupna oporeziva vrijednost,
+Total Unpaid: {0},Ukupno Neplaćeni: {0},
+Total Variance,Ukupne varijance,
+Total Weightage of all Assessment Criteria must be 100%,Ukupno weightage svih kriterija za ocjenjivanje mora biti 100%,
+Total advance ({0}) against Order {1} cannot be greater than the Grand Total ({2}),Ukupno unaprijed ({0}) protiv Red {1} ne može biti veći od sveukupnog ({2}),
+Total advance amount cannot be greater than total claimed amount,Ukupni iznos predujma ne može biti veći od ukupnog iznosa potraživanja,
+Total advance amount cannot be greater than total sanctioned amount,Ukupni iznos predujma ne može biti veći od ukupnog sankcioniranog iznosa,
+Total allocated leaves are more days than maximum allocation of {0} leave type for employee {1} in the period,Ukupni dodijeljeni listovi su više dana od maksimalne raspodjele {0} vrste dopusta za zaposlenika {1} u razdoblju,
+Total allocated leaves are more than days in the period,Ukupno dodijeljeni Listovi su više od dana u razdoblju,
+Total allocated percentage for sales team should be 100,Ukupno dodijeljeno postotak za prodajni tim bi trebao biti 100,
+Total cannot be zero,Ukupna ne može biti nula,
 Total contribution percentage should be equal to 100,Ukupni postotak doprinosa trebao bi biti jednak 100,
-Total flexible benefit component amount {0} should not be less than max benefits {1},Ukupni iznos fleksibilne komponente kompenzacije {0} ne bi trebao biti manji od maksimalne koristi {1},
-Total hours: {0},Ukupno sati: {0},
-Total leaves allocated is mandatory for Leave Type {0},Ukupno dodijeljenih listova obavezno je za vrstu ostavljanja {0},
-Total weightage assigned should be 100%. It is {0},Ukupna dodijeljena težina treba biti 100%. To je {0},
-Total working hours should not be greater than max working hours {0},Ukupno radno vrijeme ne smije biti veće od maksimalnog radnog vremena {0},
+Total flexible benefit component amount {0} should not be less than max benefits {1},Ukupni iznos komponente fleksibilne naknade {0} ne smije biti manji od maksimalnih naknada {1},
+Total hours: {0},Ukupno vrijeme: {0},
+Total leaves allocated is mandatory for Leave Type {0},Ukupni dopušteni dopusti obvezni su za vrstu napuštanja {0},
+Total weightage assigned should be 100%. It is {0},Ukupno bi trebalo biti dodijeljena weightage 100 % . To je {0},
+Total working hours should not be greater than max working hours {0},Ukupno radno vrijeme ne smije biti veći od max radnog vremena {0},
 Total {0} ({1}),Ukupno {0} ({1}),
-"Total {0} for all items is zero, may be you should change 'Distribute Charges Based On'","Ukupno {0} za sve stavke je nula, možda biste trebali izmijeniti &quot;Distribuiranje naknada na temelju&quot;",
+"Total {0} for all items is zero, may be you should change 'Distribute Charges Based On'","Ukupno {0} za sve stavke nula, možda biste trebali promijeniti &#39;Podijeliti optužbi na temelju&#39;",
 Total(Amt),Ukupno (AMT),
-Total(Qty),Ukupno (kom),
+Total(Qty),Ukupno (Kol),
 Traceability,sljedivost,
-Track Leads by Lead Source.,Pratite trag pomoću glavnog izvora.,
+Track Leads by Lead Source.,Prati vodio izvorom olova.,
 Training,Trening,
-Training Event,Trening događaj,
-Training Events,Događaji obuke,
-Training Feedback,Povratne informacije o obuci,
-Training Result,Rezultat treninga,
+Training Event,Događaj za obuku,
+Training Events,Događaji treninga,
+Training Feedback,Povratne informacije trening,
+Training Result,Rezultat trening,
 Transaction,Transakcija,
-Transaction Date,Datum transakcije,
+Transaction Date,Transakcija Datum,
 Transaction Type,vrsta transakcije,
-Transaction currency must be same as Payment Gateway currency,Valuta transakcije mora biti ista kao i valuta za Gateway plaćanja,
-Transaction not allowed against stopped Work Order {0},Transakcija nije zabranjena protiv zaustavljenog radnog naloga {0},
-Transaction reference no {0} dated {1},Referentna broj transakcije {0} s datumom {1},
+Transaction currency must be same as Payment Gateway currency,Transakcija valute mora biti isti kao i Payment Gateway valute,
+Transaction not allowed against stopped Work Order {0},Transakcija nije dopuštena protiv zaustavljene radne narudžbe {0},
+Transaction reference no {0} dated {1},Transakcija referenca ne {0} datumom {1},
 Transactions,Transakcije,
-Transactions can only be deleted by the creator of the Company,Transakcije može izbrisati samo tvorac tvrtke,
+Transactions can only be deleted by the creator of the Company,Transakcije se mogu samo izbrisana od tvorca Društva,
 Transfer,Prijenos,
-Transfer Material,Materijal za prijenos,
+Transfer Material,Prijenos materijala,
 Transfer Type,Vrsta prijenosa,
-Transfer an asset from one warehouse to another,Prijenos imovine iz jednog skladišta u drugo,
+Transfer an asset from one warehouse to another,Prijenos imovine s jednog skladišta na drugo,
 Transfered,prenose,
 Transferred Quantity,Prenesena količina,
 Transport Receipt Date,Datum prijema prijevoza,
-Transport Receipt No,Zapisnik o prijevozu br,
-Transportation,transport,
+Transport Receipt No,Prijevoz br,
+Transportation,promet,
 Transporter ID,ID transportera,
-Transporter Name,Naziv prijevoznika,
-Travel,Putovati,
+Transporter Name,Transporter Ime,
+Travel,putovanje,
 Travel Expenses,Putni troškovi,
-Tree Type,Vrsta stabla,
-Tree of Bill of Materials,Stablo materijala,
-Tree of Item Groups.,Stablo grupa artikala.,
+Tree Type,Tree Type,
+Tree of Bill of Materials,Drvo Bill materijala,
+Tree of Item Groups.,Stablo grupe proizvoda.,
 Tree of Procedures,Stablo postupaka,
 Tree of Quality Procedures.,Stablo postupaka kvalitete.,
-Tree of financial Cost Centers.,Stablo financijskih mjesta troškova.,
-Tree of financial accounts.,Stablo financijskih računa.,
-Treshold {0}% appears more than once,Prag {0}% pojavljuje se više puta,
-Trial Period End Date Cannot be before Trial Period Start Date,Datum završetka probnog razdoblja Ne može biti prije početka probnog razdoblja,
+Tree of financial Cost Centers.,Drvo centara financijski trošak.,
+Tree of financial accounts.,Drvo financijske račune.,
+Treshold {0}% appears more than once,Prag {0}% se pojavljuje više od jednom,
+Trial Period End Date Cannot be before Trial Period Start Date,Datum završetka probnog razdoblja Ne može biti prije datuma početka probnog razdoblja,
 Trialling,trialling,
 Type of Business,Vrsta poslovanja,
-Types of activities for Time Logs,Vrste aktivnosti za zapise vremena,
+Types of activities for Time Logs,Vrste aktivnosti za vrijeme Evidencije,
 UOM,UOM,
-UOM Conversion factor is required in row {0},U redu {0} potreban je konverzija UOM-a,
-UOM coversion factor required for UOM: {0} in Item: {1},Potreban faktor pokrivanja UOM-a za UOM: {0} u stavci: {1},
+UOM Conversion factor is required in row {0},Faktor UOM pretvorbe je potrebno u redu {0},
+UOM coversion factor required for UOM: {0} in Item: {1},UOM faktor coversion potrebna za UOM: {0} u točki: {1},
 Unable to find DocType {0},Nije moguće pronaći DocType {0},
-Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Nije moguće pronaći tečaj za {0} do {1} za ključni datum {2}. Molimo ručno kreirajte zapis o mjenjačnici,
-Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Nije moguće pronaći rezultat počevši od {0}. Morate imati stalne rezultate koji pokrivaju 0 do 100,
+Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Nije moguće pronaći kurs za {0} do {1} za ključni datum {2}. Ručno stvorite zapis za mjenjačnicu,
+Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Nije moguće pronaći rezultat koji započinje na {0}. Morate imati postignute rezultate koji pokrivaju 0 do 100,
 Unable to find variable: ,Nije moguće pronaći varijablu:,
 Unblock Invoice,Deblokiraj fakturu,
-Uncheck all,Odznači sve,
-Unclosed Fiscal Years Profit / Loss (Credit),Nezatvorena dobit / gubitak u fiskalnoj godini (kredit),
+Uncheck all,Poništite sve,
+Unclosed Fiscal Years Profit / Loss (Credit),Nezatvorena Fiskalna godina Dobit / gubitak (Credit),
 Unit,Jedinica,
 Unit of Measure,Jedinica mjere,
-Unit of Measure {0} has been entered more than once in Conversion Factor Table,Jedinica mjere {0} unesena je više puta u tablicu faktora konverzije,
-Unknown,Nepoznata,
+Unit of Measure {0} has been entered more than once in Conversion Factor Table,Jedinica mjere {0} je ušao više od jednom u konverzije Factor tablici,
+Unknown,nepoznat,
 Unpaid,neplaćen,
-Unsecured Loans,Unsecured zajmovi,
-Unsubscribe from this Email Digest,Otkaži pretplatu na ovaj popis e-pošte,
+Unsecured Loans,unsecured krediti,
+Unsubscribe from this Email Digest,Odjaviti s ovog Pošalji Digest,
 Until,Do,
-Unverified Webhook Data,Nepotvrđeni podaci webhooka,
-Update Account Name / Number,Ažurirajte naziv / broj računa,
-Update Account Number / Name,Ažuriraj broj / ime računa,
-Update Bank Transaction Dates,Ažurirajte datume bankovnih transakcija,
-Update Cost,Trošak ažuriranja,
+Unverified Webhook Data,Neprovjereni podaci webhook podataka,
+Update Account Name / Number,Ažuriranje naziva / broja računa,
+Update Account Number / Name,Ažuriranje broja i naziva računa,
+Update Bank Transaction Dates,Transakcijski Termini Update banke,
+Update Cost,Update cost,
 Update Cost Center Number,Ažurirajte broj mjesta troška,
-Update Email Group,Ažuriraj grupu e-pošte,
+Update Email Group,Update Email Grupa,
 Update Items,Ažuriraj stavke,
-Update Print Format,Ažuriraj format ispisa,
-Update Response,Ažuriraj odgovor,
-Update bank payment dates with journals.,Ažurirajte datume plaćanja u bankama pomoću časopisa.,
-Update in progress. It might take a while.,Ažuriranje u tijeku. Može potrajati.,
-Update rate as per last purchase,Stopa ažuriranja prema posljednjoj kupnji,
-Update stock must be enable for the purchase invoice {0},Za fakturu kupnje mora se omogućiti ažuriranje zaliha {0},
-Updating Variants...,Ažuriranje varijacija ...,
-Upload your letter head and logo. (you can edit them later).,Prenesite glavu pisma i logo. (kasnije ih možete urediti).,
-Upper Income,Gornji dohodak,
-Used Leaves,Korišteni listovi,
+Update Print Format,Ažuriranje Format ispisa,
+Update Response,Ažurirajte odgovor,
+Update bank payment dates with journals.,Update banka datum plaćanja s časopisima.,
+Update in progress. It might take a while.,Ažuriranje je u tijeku. Može potrajati neko vrijeme.,
+Update rate as per last purchase,Stopa ažuriranja po zadnjoj kupnji,
+Update stock must be enable for the purchase invoice {0},Ažuriranje zaliha mora biti omogućeno za fakturu kupnje {0},
+Updating Variants...,Ažuriranje varijanti ...,
+Upload your letter head and logo. (you can edit them later).,Upload Vaše pismo glavu i logotip. (Možete ih uređivati kasnije).,
+Upper Income,Gornja Prihodi,
+Used Leaves,Koristi lišće,
 User,Korisnik,
-User Forum,Korisnički forum,
-User ID not set for Employee {0},ID korisnika nije postavljen za zaposlenika {0},
-User Remark,Primjedba korisnika,
-User has not applied rule on the invoice {0},Korisnik nije primijenio pravilo na dostavnici {0},
+User Forum,Forum za korisnike,
+User ID not set for Employee {0},Korisnik ID nije postavljen za zaposlenika {0},
+User Remark,Upute Zabilješka,
+User has not applied rule on the invoice {0},Korisnik nije primijenio pravilo na računu {0},
 User {0} already exists,Korisnik {0} već postoji,
-User {0} created,Korisnik {0} je izrađen,
+User {0} created,Korisnik {0} je stvoren,
 User {0} does not exist,Korisnik {0} ne postoji,
-User {0} doesn't have any default POS Profile. Check Default at Row {1} for this User.,Korisnik {0} nema zadani POS profil. Provjerite Zadano u retku {1} za ovog korisnika.,
-User {0} is already assigned to Employee {1},Korisnik {0} već je dodijeljen zaposleniku {1},
-User {0} is already assigned to Healthcare Practitioner {1},Korisnik {0} već je dodijeljen zdravstvenom djelatniku {1},
+User {0} doesn't have any default POS Profile. Check Default at Row {1} for this User.,Korisnik {0} nema zadani POS profil. Provjerite zadani redak {1} za ovog korisnika.,
+User {0} is already assigned to Employee {1},Korisnik {0} već dodijeljena zaposlenika {1},
+User {0} is already assigned to Healthcare Practitioner {1},Korisnik {0} već je dodijeljen zdravstvenoj praksi {1},
 Users,Korisnici,
-Utility Expenses,Komunalni troškovi,
-Valid From Date must be lesser than Valid Upto Date.,Valjani datum mora biti manji od važećeg datuma.,
-Valid Till,Valjan do,
-Valid from and valid upto fields are mandatory for the cumulative,Važeća polja s valjanošću i valjani upto polja obvezna su za kumulativ,
-Valid from date must be less than valid upto date,Valjan od datuma mora biti manji od važećeg datuma,
-Valid till date cannot be before transaction date,Valjan do datuma ne može biti prije datuma transakcije,
+Utility Expenses,komunalna Troškovi,
+Valid From Date must be lesser than Valid Upto Date.,Vrijedi od datuma mora biti manji od Valid Upto Date.,
+Valid Till,Vrijedi do,
+Valid from and valid upto fields are mandatory for the cumulative,Vrijedna od i valjana upto polja obavezna su za kumulativ,
+Valid from date must be less than valid upto date,Vrijedi od datuma mora biti manje od važećeg do datuma,
+Valid till date cannot be before transaction date,Vrijednost do datuma ne može biti prije datuma transakcije,
 Validity period of this quotation has ended.,Rok valjanosti ove ponude je završen.,
-Valuation Rate,Stopa procjene,
-Valuation Rate is mandatory if Opening Stock entered,Stopa vrednovanja obavezna je ako je unesena otvorena dionica,
-Valuation type charges can not marked as Inclusive,Naknade za vrstu vrednovanja ne mogu biti označene kao inkluzivne,
-Value Or Qty,Vrijednost ili broj,
+Valuation Rate,Stopa vrednovanja,
+Valuation Rate is mandatory if Opening Stock entered,Vrednovanje stopa je obavezno ako Otvaranje Stock ušao,
+Valuation type charges can not marked as Inclusive,Troškovi tipa Vrednovanje se ne može označiti kao Inclusive,
+Value Or Qty,"Vrijednost, ili Kol",
 Value Proposition,Vrijednost propozicija,
-Value for Attribute {0} must be within the range of {1} to {2} in the increments of {3} for Item {4},Vrijednost za atribut {0} mora biti u rasponu od {1} do {2} u koracima od {3} za stavku {4},
+Value for Attribute {0} must be within the range of {1} to {2} in the increments of {3} for Item {4},Vrijednost za atribut {0} mora biti unutar raspona od {1} {2} u koracima od {3} za točku {4},
 Value missing,Nedostaje vrijednost,
 Value must be between {0} and {1},Vrijednost mora biti između {0} i {1},
-"Values of exempt, nil rated and non-GST inward supplies","Vrijednosti oslobođenih, nultih i unutarnjih isporuka",
+"Values of exempt, nil rated and non-GST inward supplies","Vrijednosti izuzetih, nultih bodova i unutarnjih isporuka bez GST-a",
 Variable,varijabla,
 Variance,varijacija,
-Variance ({}),Odstupanje ({}),
+Variance ({}),Varijanca ({}),
 Variant,Varijanta,
-Variant Attributes,Atributi varijanti,
-Variant Based On cannot be changed,Na temelju opcije Variant ne može se promijeniti,
-Variant Details Report,Izvješće s pojedinostima o varijanti,
-Variant creation has been queued.,Stvaranje varijante je stavljeno u red čekanja.,
+Variant Attributes,Varijante Značajke,
+Variant Based On cannot be changed,Varijanta na temelju temelji se ne može promijeniti,
+Variant Details Report,Izvješće o pojedinostima o varijacijama,
+Variant creation has been queued.,Izrada inačice je u redu čekanja.,
 Vehicle Expenses,Troškovi vozila,
-Vehicle No,Broj vozila:,
+Vehicle No,Ne vozila,
 Vehicle Type,tip vozila,
-Vehicle/Bus Number,Broj vozila / sabirnice,
+Vehicle/Bus Number,Broj vozila / autobusa,
 Venture Capital,Venture Capital,
-View Chart of Accounts,Pogledajte kontni plan,
-View Fees Records,Pogledajte zapise o naknadama,
-View Form,Pogledaj obrazac,
+View Chart of Accounts,Prikaz sheme računa,
+View Fees Records,Prikaz zapisa o naknadama,
+View Form,Pogledajte obrazac,
 View Lab Tests,Pogledajte laboratorijske testove,
-View Leads,Prikaži vodi,
-View Ledger,Pogledajte knjigu,
-View Now,Prikaži sada,
-View Orders,Prikaz narudžbi,
-View a list of all the help videos,Pogledajte popis svih videozapisa pomoći,
-View in Cart,Prikaži u košarici,
-Visit report for maintenance call.,Posjetite izvješće za poziv na održavanje.,
+View Leads,Pogledaj vodi,
+View Ledger,Pogledaj Ledger,
+View Now,Pogledaj sada,
+View a list of all the help videos,Pregled popisa svih pomoć videa,
+View in Cart,Pogledaj u košaricu,
+Visit report for maintenance call.,Pogledajte izvješće razgovora vezanih uz održavanje.,
 Visit the forums,Posjetite forume,
 Vital Signs,Vitalni znakovi,
-Volunteer,Volonter,
-Volunteer Type information.,Informacije o vrsti volontera.,
-Volunteer information.,Informacije o volonterima.,
-Voucher #,Voucher #,
-Voucher No,Kupon br,
-Voucher Type,Vrsta vaučera,
+Volunteer,dobrovoljac,
+Volunteer Type information.,Informacije o volonteru.,
+Volunteer information.,Dobrovoljne informacije.,
+Voucher #,bon #,
+Voucher No,Bon Ne,
+Voucher Type,Bon Tip,
 WIP Warehouse,WIP skladište,
-Walk In,Ušetati,
-Warehouse can not be deleted as stock ledger entry exists for this warehouse.,Skladište se ne može izbrisati jer postoji unos dionica za ovo skladište.,
-Warehouse cannot be changed for Serial No.,Skladište se ne može promijeniti za serijski broj,
-Warehouse is mandatory,Skladište je obvezno,
-Warehouse is mandatory for stock Item {0} in row {1},Skladište je obvezno za stavku stavke {0} u retku {1},
+Walk In,Šetnja u,
+Warehouse can not be deleted as stock ledger entry exists for this warehouse.,Skladište se ne može izbrisati dok postoje upisi u glavnu knjigu za ovo skladište.,
+Warehouse cannot be changed for Serial No.,Skladište se ne može promijeniti za serijskog broja,
+Warehouse is mandatory,Skladište je obavezno,
+Warehouse is mandatory for stock Item {0} in row {1},Skladište je obvezno za skladišne proizvode {0} u redu {1},
 Warehouse not found in the system,Skladište nije pronađeno u sustavu,
-"Warehouse required at Row No {0}, please set default warehouse for the item {1} for the company {2}","Potrebna skladišta na Redu No {0}, postavite zadano skladište za stavku {1} za tvrtku {2}",
-Warehouse required for stock Item {0},Potrebna skladišta za zalihe Stavka {0},
-Warehouse {0} can not be deleted as quantity exists for Item {1},Skladište {0} nije moguće izbrisati jer količina postoji za stavku {1},
+"Warehouse required at Row No {0}, please set default warehouse for the item {1} for the company {2}","Skladište je potrebno za redak br. {0}, postavite zadano skladište za stavku {1} za tvrtku {2}",
+Warehouse required for stock Item {0},Skladište je potrebno za skladišne proizvode {0},
+Warehouse {0} can not be deleted as quantity exists for Item {1},Skladište {0} ne može biti izbrisano ako na njemu ima proizvod {1},
 Warehouse {0} does not belong to company {1},Skladište {0} ne pripada tvrtki {1},
 Warehouse {0} does not exist,Skladište {0} ne postoji,
-"Warehouse {0} is not linked to any account, please mention the account in  the warehouse record or set default inventory account in company {1}.","Skladište {0} nije povezano s bilo kojim računom, navedite račun u evidenciji skladišta ili postavite zadani oglasni prostor u tvrtki {1}.",
-Warehouses with child nodes cannot be converted to ledger,Skladišta s podređenim čvorovima ne mogu se pretvoriti u knjigu,
-Warehouses with existing transaction can not be converted to group.,Skladišta s postojećom transakcijom ne mogu se pretvoriti u skupinu.,
-Warehouses with existing transaction can not be converted to ledger.,Skladišta s postojećom transakcijom ne mogu se pretvoriti u knjigu.,
+"Warehouse {0} is not linked to any account, please mention the account in  the warehouse record or set default inventory account in company {1}.","Skladište {0} nije povezano s bilo kojim računom, navedite račun u skladištu ili postavite zadani račun zaliha u tvrtki {1}.",
+Warehouses with child nodes cannot be converted to ledger,Skladišta s djetetom čvorovi se ne može pretvoriti u glavnoj knjizi,
+Warehouses with existing transaction can not be converted to group.,Skladišta s postojećim transakcije se ne može pretvoriti u skupinu.,
+Warehouses with existing transaction can not be converted to ledger.,Skladišta s postojećim transakcije ne može pretvoriti u knjigu.,
 Warning,Upozorenje,
-Warning: Another {0} # {1} exists against stock entry {2},Upozorenje: postoji još {0} # {1} protiv stavke zaliha {2},
-Warning: Invalid SSL certificate on attachment {0},Upozorenje: nevažeći SSL certifikat o privitku {0},
-Warning: Invalid attachment {0},Upozorenje: nevažeći privitak {0},
-Warning: Leave application contains following block dates,Upozorenje: Ostavi aplikaciju sadrži sljedeće datume blokiranja,
-Warning: Material Requested Qty is less than Minimum Order Qty,Upozorenje: Zahtijevani materijal je manji od minimalne količine narudžbe,
-Warning: Sales Order {0} already exists against Customer's Purchase Order {1},Upozorenje: prodajni nalog {0} već postoji protiv narudžbenice kupca {1},
-Warning: System will not check overbilling since amount for Item {0} in {1} is zero,Upozorenje: Sustav neće provjeriti prekomjerno plaćanje jer je iznos za stavku {0} u {1} jednak nuli,
+Warning: Another {0} # {1} exists against stock entry {2},Upozorenje: Još {0} # {1} postoji protiv ulaska dionicama {2},
+Warning: Invalid SSL certificate on attachment {0},Upozorenje: Invalid SSL potvrda o vezanosti {0},
+Warning: Invalid attachment {0},Upozorenje: Invalid Prilog {0},
+Warning: Leave application contains following block dates,Upozorenje: Ostavite program sadrži sljedeće blok datume,
+Warning: Material Requested Qty is less than Minimum Order Qty,Upozorenje : Materijal Tražena količina manja nego minimalna narudžba kol,
+Warning: Sales Order {0} already exists against Customer's Purchase Order {1},Upozorenje: Prodaja Naručite {0} već postoji protiv Kupca narudžbenice {1},
+Warning: System will not check overbilling since amount for Item {0} in {1} is zero,Upozorenje : Sustav neće provjeravati overbilling od iznosa za točku {0} u {1} je nula,
 Warranty,garancija,
-Warranty Claim,Zahtjev za jamstvom,
-Warranty Claim against Serial No.,Zahtjev za jamstvom protiv serijskog broja,
+Warranty Claim,Jamstvo Zatraži,
+Warranty Claim against Serial No.,Jamstvo tužbu protiv Serial No.,
 Website,Web stranica,
-Website Image should be a public file or website URL,Slika web-lokacije mora biti javna datoteka ili URL web-lokacije,
-Website Image {0} attached to Item {1} cannot be found,Slika web-lokacije {0} u privitku stavke {1} ne može se pronaći,
-Website Listing,Oglas s web-lokacije,
+Website Image should be a public file or website URL,Web slika bi trebala biti javna datoteke ili URL web stranice,
+Website Image {0} attached to Item {1} cannot be found,Web stranica slike {0} prilogu točki {1} Ne mogu naći,
+Website Listing,Popis web stranica,
 Wednesday,srijeda,
 Weekly,Tjedni,
-"Weight is mentioned,\nPlease mention ""Weight UOM"" too","Navedite težinu, Molimo vas da navedete i &quot;Težina UOM&quot;",
+"Weight is mentioned,\nPlease mention ""Weight UOM"" too","Težina se spomenuto, \n Molimo spomenuti ""težinu UOM"" previše",
 Welcome to ERPNext,Dobrodošli u ERPNext,
-What do you need help with?,Za što vam je potrebna pomoć?,
-What does it do?,Što to radi?,
-Where manufacturing operations are carried.,Tamo gdje se obavljaju proizvodne operacije.,
-"While creating account for child Company {0}, parent account {1} not found. Please create the parent account in corresponding COA",Prilikom izrade računa za dijete tvrtke {0} nije pronađen nadređeni račun {1}. Kreirajte nadređeni račun u odgovarajućoj COA,
+What do you need help with?,Što vam je potrebna pomoć?,
+What does it do?,Što učiniti ?,
+Where manufacturing operations are carried.,Gdje se odvija proizvodni postupci.,
+"While creating account for child Company {0}, parent account {1} not found. Please create the parent account in corresponding COA","Tijekom stvaranja računa za podmlađivanje Company {0}, nadređeni račun {1} nije pronađen. Napravite nadređeni račun u odgovarajućem COA",
 White,bijela,
-Wire Transfer,Žični prijenos,
+Wire Transfer,Wire Transfer,
 WooCommerce Products,WooCommerce proizvodi,
 Work In Progress,Radovi u tijeku,
 Work Order,Radni nalog,
-Work Order already created for all items with BOM,Radni nalog je već izrađen za sve stavke s BOM-om,
-Work Order cannot be raised against a Item Template,Radni nalog se ne može podići protiv predloška predmeta,
+Work Order already created for all items with BOM,Radni nalog već stvoren za sve stavke s BOM-om,
+Work Order cannot be raised against a Item Template,Radni nalog ne može se podići na predložak stavke,
 Work Order has been {0},Radni nalog je bio {0},
 Work Order not created,Radni nalog nije izrađen,
 Work Order {0} must be cancelled before cancelling this Sales Order,Radni nalog {0} mora biti otkazan prije otkazivanja ovog prodajnog naloga,
-Work Order {0} must be submitted,Radni nalog {0} mora biti dostavljen,
-Work Orders Created: {0},Napravljeni radni nalozi: {0},
-Work Summary for {0},Sažetak posla za {0},
-Work-in-Progress Warehouse is required before Submit,Prije slanja potrebno je skladište za rad u tijeku,
-Workflow,Tijek rada,
-Working,Radna,
-Working Hours,Radni sati,
-Workstation,Workstation,
-Workstation is closed on the following dates as per Holiday List: {0},Radna stanica je zatvorena na sljedeće datume prema prazničnoj listi: {0},
+Work Order {0} must be submitted,Mora se poslati radni nalog {0},
+Work Orders Created: {0},Kreirani radni nalozi: {0},
+Work Summary for {0},Sažetak rada za {0},
+Work-in-Progress Warehouse is required before Submit,Rad u tijeku Warehouse je potrebno prije Podnijeti,
+Workflow,Hodogram,
+Working,Radni,
+Working Hours,Radnih sati,
+Workstation,Radna stanica,
+Workstation is closed on the following dates as per Holiday List: {0},Radna stanica je zatvorena na sljedeće datume po Holiday Popis: {0},
 Wrapping up,Završavati,
 Wrong Password,Pogrešna lozinka,
-Year start date or end date is overlapping with {0}. To avoid please set company,"Datum početka ili završni datum godine preklapaju se s {0}. Da biste izbjegli, molimo postavite tvrtku",
-You are in offline mode. You will not be able to reload until you have network.,Nalazite se u izvanmrežnom načinu rada. Nećete se moći ponovno učitati dok ne dobijete mrežu.,
-You are not authorized to add or update entries before {0},Nemate ovlaštenje za dodavanje ili ažuriranje unosa prije {0},
-You are not authorized to approve leaves on Block Dates,Niste ovlašteni odobravati ostavljanje na datumima bloka,
-You are not authorized to set Frozen value,Niste ovlašteni postavljati vrijednost Frozen,
-You are not present all day(s) between compensatory leave request days,Vi niste prisutni cijeli dan (e) između dana za kompenzacijski dopust,
-You can not change rate if BOM mentioned agianst any item,Ne možete promijeniti stopu ako BOM spominje bilo koju stavku,
-You can not enter current voucher in 'Against Journal Entry' column,Trenutačni vaučer ne možete unijeti u stupac &quot;Protiv dnevnika&quot;,
+Year start date or end date is overlapping with {0}. To avoid please set company,Godina datum početka ili završetka je preklapanje s {0}. Da bi se izbjegla postavite tvrtku,
+You are in offline mode. You will not be able to reload until you have network.,Vi ste u izvanmrežnom načinu rada. Nećete biti u mogućnosti da ponovno učitati dok imate mrežu.,
+You are not authorized to add or update entries before {0},Niste ovlašteni dodavati ili ažurirati unose prije {0},
+You are not authorized to approve leaves on Block Dates,Niste ovlašteni za odobravanje lišće o skupnom Datumi,
+You are not authorized to set Frozen value,Niste ovlašteni za postavljanje zamrznute vrijednosti,
+You are not present all day(s) between compensatory leave request days,Niste prisutni cijeli dan između dana zahtjeva za kompenzacijski dopust,
+You can not change rate if BOM mentioned agianst any item,Ne možete promijeniti cijenu ako je sastavnica spomenuta u bilo kojem proizvodu,
+You can not enter current voucher in 'Against Journal Entry' column,Ne možete unijeti trenutni nalog u stupac 'u odnosu na temeljnicu',
 You can only have Plans with the same billing cycle in a Subscription,U Pretplati možete imati samo planove s istim ciklusom naplate,
-You can only redeem max {0} points in this order.,Ovim redoslijedom možete iskoristiti najviše {0} bodova.,
-You can only renew if your membership expires within 30 days,Možete obnoviti samo ako vaše članstvo istekne u roku od 30 dana,
-You can only select a maximum of one option from the list of check boxes.,S popisa potvrdnih okvira možete odabrati najviše jednu opciju.,
-You can only submit Leave Encashment for a valid encashment amount,Dopuštenje za ostavljanje možete poslati samo za važeći iznos naplate,
-You can't redeem Loyalty Points having more value than the Grand Total.,Ne možete iskoristiti bodove lojalnosti s većom vrijednosti od ukupnog iznosa.,
-You cannot credit and debit same account at the same time,Ne možete istodobno kreditirati i teretiti isti račun,
-You cannot delete Fiscal Year {0}. Fiscal Year {0} is set as default in Global Settings,Fiskalnu godinu {0} ne možete izbrisati. Fiskalna godina {0} postavljena je kao zadana u općim postavkama,
-You cannot delete Project Type 'External',Ne možete izbrisati vrstu projekta &quot;Vanjski&quot;,
-You cannot edit root node.,Ne možete uređivati korijenski čvor.,
-You cannot restart a Subscription that is not cancelled.,Ne možete ponovno pokrenuti pretplatu koja nije otkazana.,
-You don't have enought Loyalty Points to redeem,Nemate dovoljno bodova lojalnosti da biste ih iskoristili,
-You have already assessed for the assessment criteria {}.,Već ste procijenili kriterije procjene {}.,
+You can only redeem max {0} points in this order.,U tom redoslijedu možete iskoristiti najviše {0} bodova.,
+You can only renew if your membership expires within 30 days,Možete obnoviti pretplatu samo ako vaše članstvo istekne u roku od 30 dana,
+You can only select a maximum of one option from the list of check boxes.,Na popisu potvrdnih okvira možete odabrati najviše jednu opciju.,
+You can only submit Leave Encashment for a valid encashment amount,Količinu napuštanja možete poslati samo za valjani iznos naplate,
+You can't redeem Loyalty Points having more value than the Grand Total.,Ne možete iskoristiti bodove lojalnosti koji imaju više vrijednosti od ukupnog iznosa.,
+You cannot credit and debit same account at the same time,Ne možete istovremeno kreditirati i debitirati isti račun,
+You cannot delete Fiscal Year {0}. Fiscal Year {0} is set as default in Global Settings,Ne možete izbrisati Fiskalnu godinu {0}. Fiskalna godina {0} je postavljena kao zadana u Globalnim postavkama,
+You cannot delete Project Type 'External',Ne možete izbrisati vrstu projekta &#39;Vanjski&#39;,
+You cannot edit root node.,Ne možete uređivati root čvor.,
+You cannot restart a Subscription that is not cancelled.,Ne možete ponovo pokrenuti pretplatu koja nije otkazana.,
+You don't have enought Loyalty Points to redeem,Nemate dovoljno bodova lojalnosti za otkup,
+You have already assessed for the assessment criteria {}.,Već ste ocijenili kriterije procjene {}.,
 You have already selected items from {0} {1},Već ste odabrali stavke iz {0} {1},
-You have been invited to collaborate on the project: {0},Pozvani ste na suradnju na projektu: {0},
-You have entered duplicate items. Please rectify and try again.,Unijeli ste dvostruke stavke. Ispravite i pokušajte ponovno.,
-You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,"Morate biti korisnik koji nije administrator, s ulogama upravitelja sustava i upravitelja stavki da biste se registrirali na tržištu.",
-You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Morate biti korisnik s ulogama Upravitelja sustava i Upravitelja stavki da biste dodali korisnike na Marketplace.,
-You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Morate biti korisnik s ulogama Upravitelja sustava i Upravitelja stavki da biste se registrirali na Marketplaceu.,
-You need to be logged in to access this page,Morate biti prijavljeni kako biste pristupili ovoj stranici,
-You need to enable Shopping Cart,Morate omogućiti košaricu za kupnju,
-You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Izgubit ćete zapise prethodno generiranih računa. Jeste li sigurni da želite ponovno pokrenuti ovu pretplatu?,
+You have been invited to collaborate on the project: {0},Pozvani ste za suradnju na projektu: {0},
+You have entered duplicate items. Please rectify and try again.,Unijeli ste dupli proizvod. Ispravite i pokušajte ponovno.,
+You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Morate biti korisnik koji nije administrator s ulogama upravitelja sustava i upravitelja stavki da biste se registrirali na tržištu.,
+You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Morate biti korisnik s ulogama upravitelja sustava i upravitelja stavki kako biste korisnike dodali na tržište.,
+You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Morate biti korisnik s ulogama upravitelja sustava i upravitelja stavki da biste se registrirali na tržištu.,
+You need to be logged in to access this page,Morate biti prijavljeni da biste pristupili ovoj stranici,
+You need to enable Shopping Cart,Morate omogućiti košaricu,
+You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Izgubit ćete evidenciju prethodno generiranih faktura. Jeste li sigurni da želite ponovno pokrenuti ovu pretplatu?,
 Your Organization,Vaša organizacija,
-Your cart is Empty,Vaša košarica je prazna,
+Your cart is Empty,Vaša je košarica prazna,
 Your email address...,Vaša email adresa...,
-Your order is out for delivery!,Vaša je narudžba isporučena!,
+Your order is out for delivery!,Vaša je narudžba izvan isporuke!,
 Your tickets,Vaše ulaznice,
 ZIP Code,Poštanski broj,
-[Error],[Pogreška],
-[{0}](#Form/Item/{0}) is out of stock,[{0}] (# Form / Item / {0}) nema na skladištu,
-`Freeze Stocks Older Than` should be smaller than %d days.,&quot;Zamrzavanje zaliha starijih od&quot; trebalo bi biti manje od% d dana.,
+[Error],[Greška],
+[{0}](#Form/Item/{0}) is out of stock,[{0}] (# Obrazac / Artikl / {0}) nema na skladištu,
+`Freeze Stocks Older Than` should be smaller than %d days.,` Zamrzni Zalihe starije od ` bi trebao biti manji od % d dana .,
 based_on,based_on,
-cannot be greater than 100,ne može biti veća od 100,
-disabled user,onemogućen korisnik,
-"e.g. ""Build tools for builders""",npr. &quot;Build tools for builders&quot;,
-"e.g. ""Primary School"" or ""University""",npr. &quot;Osnovna škola&quot; ili &quot;Sveučilište&quot;,
-"e.g. Bank, Cash, Credit Card","npr. banka, gotovina, kreditna kartica",
+cannot be greater than 100,ne može biti veće od 100,
+disabled user,onemogućen korisnika,
+"e.g. ""Build tools for builders""","na primjer ""Alati za graditelje""",
+"e.g. ""Primary School"" or ""University""",npr &quot;Osnovna škola&quot; ili &quot;Sveučilište&quot;,
+"e.g. Bank, Cash, Credit Card","npr. banka, gotovina, kreditne kartice",
 hidden,skriven,
 modified,promijenjen,
 on,na,
-{0} '{1}' is disabled,{0} &#39;{1}&#39; je onemogućeno,
-{0} '{1}' not in Fiscal Year {2},{0} &#39;{1}&#39; nije u fiskalnoj godini {2},
-{0} ({1}) cannot be greater than planned quantity ({2}) in Work Order {3},{0} ({1}) ne može biti veći od planirane količine ({2}) u radnom nalogu {3},
-{0} - {1} is inactive student,{0} - {1} je neaktivan student,
-{0} - {1} is not enrolled in the Batch {2},{0} - {1} nije prijavljen u skupni {2},
-{0} - {1} is not enrolled in the Course {2},{0} - {1} nije upisano u tečaj {2},
-{0} Budget for Account {1} against {2} {3} is {4}. It will exceed by {5},{0} Proračun za račun {1} za {2} {3} je {4}. Premašit će za {5},
-{0} Digest,{0} Sažetak,
-{0} Number {1} already used in account {2},{0} Broj {1} već je korišten u računu {2},
+{0} '{1}' is disabled,{0} '{1}' je onemogućen,
+{0} '{1}' not in Fiscal Year {2},{0} '{1}' nije u fiskalnoj godini {2},
+{0} ({1}) cannot be greater than planned quantity ({2}) in Work Order {3},{0} ({1}) ne može biti veći od planirane količine ({2}) u Radnoj nalogu {3},
+{0} - {1} is inactive student,{0} - {1} je neaktivan učenik,
+{0} - {1} is not enrolled in the Batch {2},{0} - {1} nije upisana u skupinu {2},
+{0} - {1} is not enrolled in the Course {2},{0} - {1} nije upisana u tečaj {2},
+{0} Budget for Account {1} against {2} {3} is {4}. It will exceed by {5},{0} Proračun za račun {1} od {2} {3} je {4}. To će biti veći od {5},
+{0} Digest,{0} Digest,
+{0} Number {1} already used in account {2},{0} Broj {1} koji je već korišten za račun {2},
 {0} Request for {1},{0} Zahtjev za {1},
-{0} Result submittted,{0} Rezultat je poslan,
-{0} Serial Numbers required for Item {1}. You have provided {2}.,{0} Serijski brojevi potrebni za stavku {1}. Dali ste {2}.,
-{0} Student Groups created.,{0} Stvorene su studentske grupe.,
-{0} Students have been enrolled,{0} Studenti su upisani,
-{0} against Bill {1} dated {2},{0} protiv računa {1} s datumom {2},
-{0} against Purchase Order {1},{0} protiv narudžbenice za kupnju {1},
-{0} against Sales Invoice {1},{0} protiv dostavnice za prodaju {1},
-{0} against Sales Order {1},{0} protiv prodajnog naloga {1},
-{0} already allocated for Employee {1} for period {2} to {3},{0} je već dodijeljen zaposleniku {1} za razdoblje {2} do {3},
+{0} Result submittted,{0} Rezultat poslan,
+{0} Serial Numbers required for Item {1}. You have provided {2}.,{0} serijski brojevi potrebni za Artikl {1}. Ti su dali {2}.,
+{0} Student Groups created.,Stvorena je {0} studentska grupa.,
+{0} Students have been enrolled,{0} Učenici su upisani,
+{0} against Bill {1} dated {2},{0} u odnosu na račun {1} s datumom {2},
+{0} against Purchase Order {1},{0} u odnosu na narudžbu {1},
+{0} against Sales Invoice {1},{0} u odnosu na prodajnom računu {1},
+{0} against Sales Order {1},{0} u odnosu na prodajni nalog {1},
+{0} already allocated for Employee {1} for period {2} to {3},{0} već dodijeljeno za zaposlenika {1} za vrijeme {2} {3},
 {0} applicable after {1} working days,{0} primjenjivo nakon {1} radnih dana,
-{0} asset cannot be transferred,Ne može se prenijeti {0} sredstvo,
-{0} can not be negative,{0} ne može biti negativan,
+{0} asset cannot be transferred,{0} imovina se ne može se prenijeti,
+{0} can not be negative,{0} ne može biti negativna,
 {0} created,Izrađeno je {0},
-"{0} currently has a {1} Supplier Scorecard standing, and Purchase Orders to this supplier should be issued with caution.","{0} trenutno ima status {1} dobavljača rezultata, a narudžbenice za tog dobavljača trebaju biti izdane s oprezom.",
-"{0} currently has a {1} Supplier Scorecard standing, and RFQs to this supplier should be issued with caution.","{0} trenutno ima {1} status dobavljača rezultata, a upit za ovaj dobavljač trebao bi biti izdan s oprezom.",
-{0} does not belong to Company {1},{0} ne pripada tvrtki {1},
-{0} does not have a Healthcare Practitioner Schedule. Add it in Healthcare Practitioner master,{0} nema raspored liječnika. Dodajte ga u majstora liječnika,
-{0} entered twice in Item Tax,{0} dvaput je uneseno u porez na stavku,
-{0} for {1},{0} za {1},
-{0} has been submitted successfully,{0} je uspješno poslano,
-{0} has fee validity till {1},{0} ima valjanost naknade do {1},
-{0} hours,{0} sati,
+"{0} currently has a {1} Supplier Scorecard standing, and Purchase Orders to this supplier should be issued with caution.","{0} trenutačno ima status dobavljača {1}, a narudžbenice za ovog dobavljača trebaju biti izdane s oprezom.",
+"{0} currently has a {1} Supplier Scorecard standing, and RFQs to this supplier should be issued with caution.","{0} trenutačno ima stajalište dobavljača rezultata {1}, a zahtjevi za odobrenje dobavljaču trebaju biti izdani s oprezom.",
+{0} does not belong to Company {1},{0} ne pripada Društvu {1},
+{0} does not have a Healthcare Practitioner Schedule. Add it in Healthcare Practitioner master,{0} nema raspored zdravstvenih radnika. Dodajte ga u majstor zdravstvene prakse,
+{0} entered twice in Item Tax,{0} dva puta ušao u točki poreza,
+{0} for {1},{0} od {1},
+{0} has been submitted successfully,{0} uspješno je poslan,
+{0} has fee validity till {1},{0} ima valjanost do {1},
+{0} hours,{0} sata,
 {0} in row {1},{0} u retku {1},
-{0} is a company holiday,{0} je praznik tvrtke,
-{0} is blocked so this transaction cannot proceed,{0} je blokiran tako da se ova transakcija ne može nastaviti,
+{0} is blocked so this transaction cannot proceed,{0} blokiran je tako da se ova transakcija ne može nastaviti,
 {0} is mandatory,{0} je obavezno,
-{0} is mandatory for Item {1},{0} je obavezna za stavku {1},
-{0} is mandatory. Maybe Currency Exchange record is not created for {1} to {2}.,{0} je obavezno. Možda zapis razmjene valute nije stvoren za {1} do {2}.,
-{0} is not a stock Item,{0} nije dionica,
-{0} is not a valid Batch Number for Item {1},{0} nije važeći serijski broj za stavku {1},
-{0} is not added in the table,{0} nije dodan u tablicu,
-{0} is not in Optional Holiday List,{0} nije u izbornom popisu praznika,
-{0} is not in a valid Payroll Period,{0} nije u valjanom obračunskom razdoblju,
-{0} is now the default Fiscal Year. Please refresh your browser for the change to take effect.,{0} sada je zadana fiskalna godina. Osvježite preglednik kako bi promjena stupila na snagu.,
+{0} is mandatory for Item {1},{0} je obavezno za točku {1},
+{0} is mandatory. Maybe Currency Exchange record is not created for {1} to {2}.,{0} je obavezno. Možda Mjenjačnica zapis nije stvoren za {1} na {2}.,
+{0} is not a stock Item,{0} nije skladišni proizvod,
+{0} is not a valid Batch Number for Item {1},{0} nije ispravan broj serije za točku {1},
+{0} is not added in the table,{0} nije dodan u tablici,
+{0} is not in Optional Holiday List,{0} nije u popisu slobodnih opcija,
+{0} is not in a valid Payroll Period,{0} nije u važećem razdoblju obračuna plaća,
+{0} is now the default Fiscal Year. Please refresh your browser for the change to take effect.,{0} je sada zadana fiskalna godina. Osvježi preglednik kako bi se promjene aktualizirale.,
 {0} is on hold till {1},{0} je na čekanju do {1},
-{0} item found.,Pronađena je {0} stavka.,
-{0} items found.,Pronađeno je {0} stavki.,
-{0} items in progress,U tijeku je {0} stavki,
-{0} items produced,Proizvedeno je {0} stavki,
-{0} must appear only once,{0} mora se pojaviti samo jednom,
+{0} item found.,{0} predmet je pronađen.,
+{0} items found.,{0} pronađenih predmeta.,
+{0} items in progress,{0} stavke u tijeku,
+{0} items produced,{0} predmeti koji,
+{0} must appear only once,{0} mora pojaviti samo jednom,
 {0} must be negative in return document,{0} mora biti negativan u povratnom dokumentu,
-{0} must be submitted,Morate poslati {0},
-{0} not allowed to transact with {1}. Please change the Company.,{0} nije dopušteno obavljati transakcije s {1}. Molimo promijenite tvrtku.,
+{0} must be submitted,{0} mora biti poslano,
+{0} not allowed to transact with {1}. Please change the Company.,{0} nije dopušteno izvršiti transakciju s {1}. Promijenite tvrtku.,
 {0} not found for item {1},{0} nije pronađen za stavku {1},
-{0} on Half day Leave on {1},{0} na pola dana napuštanja {1},
-{0} on Leave on {1},{0} na Ostavi na {1},
-{0} parameter is invalid,Parametar {0} nije valjan,
-{0} payment entries can not be filtered by {1},{0} unosa za plaćanje ne može se filtrirati do {1},
-{0} should be a value between 0 and 100,{0} treba biti vrijednost između 0 i 100,
-{0} units of [{1}](#Form/Item/{1}) found in [{2}](#Form/Warehouse/{2}),{0} jedinica od [{1}] (# Form / Item / {1}) pronađenih u [{2}] (# Obrazac / Skladište / {2}),
-{0} units of {1} needed in {2} on {3} {4} for {5} to complete this transaction.,{0} jedinica {1} potrebne u {2} na {3} {4} za {5} za dovršetak ove transakcije.,
-{0} units of {1} needed in {2} to complete this transaction.,Za dovršetak ove transakcije potrebno je {0} jedinica {1} u {2}.,
-{0} valid serial nos for Item {1},{0} važećih serijskih brojeva za stavku {1},
-{0} variants created.,Izrađene su {0} varijante.,
-{0} {1} created,Izrađeno je {0} {1},
+{0} parameter is invalid,Parametar {0} nije važeći,
+{0} payment entries can not be filtered by {1},{0} unosa plaćanja ne može se filtrirati po {1},
+{0} should be a value between 0 and 100,{0} mora biti vrijednost između 0 i 100,
+{0} units of [{1}](#Form/Item/{1}) found in [{2}](#Form/Warehouse/{2}),{0} jedinica [{1}] (# Form / Artikl / {1}) naći u [{2}] (# Form / Skladište / {2}),
+{0} units of {1} needed in {2} on {3} {4} for {5} to complete this transaction.,{0} jedinica {1} potrebna u {2} na {3} {4} od {5} za dovršetak ovu transakciju.,
+{0} units of {1} needed in {2} to complete this transaction.,{0} jedinica {1} potrebna u {2} za dovršetak ovu transakciju.,
+{0} valid serial nos for Item {1},{0} valjani serijski nos za Stavka {1},
+{0} variants created.,Stvorene su varijante {0}.,
+{0} {1} created,{0} {1} stvorio,
 {0} {1} does not exist,{0} {1} ne postoji,
 {0} {1} does not exist.,{0} {1} ne postoji.,
-{0} {1} has been modified. Please refresh.,{0} {1} je izmijenjeno. Osvježite.,
-{0} {1} has not been submitted so the action cannot be completed,{0} {1} nije poslan tako da se radnja ne može dovršiti,
-"{0} {1} is associated with {2}, but Party Account is {3}","Korisnik {0} {1} povezan je s {2}, ali račun stranke je {3}",
+{0} {1} has been modified. Please refresh.,{0} {1} je izmijenjen. Osvježi stranicu.,
+{0} {1} has not been submitted so the action cannot be completed,{0} {1} nije poslano tako da se radnja ne može dovršiti,
+"{0} {1} is associated with {2}, but Party Account is {3}","{0} {1} povezan je s {2}, ali račun stranke je {3}",
 {0} {1} is cancelled or closed,{0} {1} je otkazan ili zatvoren,
-{0} {1} is cancelled or stopped,{0} {1} je otkazan ili zaustavljen,
-{0} {1} is cancelled so the action cannot be completed,{0} {1} je otkazano tako da se radnja ne može dovršiti,
-{0} {1} is closed,{0} {1} je zatvoreno,
-{0} {1} is disabled,{0} {1} je onemogućeno,
-{0} {1} is frozen,{0} {1} je zamrznut,
-{0} {1} is fully billed,Naplaćuje se u potpunosti {0} {1},
+{0} {1} is cancelled or stopped,{0} {1} otkazan ili zaustavljen,
+{0} {1} is cancelled so the action cannot be completed,{0} {1} je otkazana pa se radnja ne može dovršiti,
+{0} {1} is closed,{0} {1} je zatvorena,
+{0} {1} is disabled,{0} {1} je onemogućen,
+{0} {1} is frozen,{0} {1} je zamrznuta,
+{0} {1} is fully billed,{0} {1} je naplaćen u cijelosti,
 {0} {1} is not active,{0} {1} nije aktivan,
 {0} {1} is not associated with {2} {3},{0} {1} nije povezan s {2} {3},
-{0} {1} is not present in the parent company,{0} {1} nije prisutan u nadređenoj tvrtki,
-{0} {1} is not submitted,{0} {1} nije poslan,
+{0} {1} is not present in the parent company,{0} {1} nije prisutno u matičnoj tvrtki,
+{0} {1} is not submitted,{0} {1} nije podnesen,
 {0} {1} is {2},{0} {1} je {2},
-{0} {1} must be submitted,Morate poslati {0} {1},
-{0} {1} not in any active Fiscal Year.,{0} {1} nije aktivna fiskalna godina.,
-{0} {1} status is {2},Status {0} {1} je {2},
-{0} {1}: 'Profit and Loss' type account {2} not allowed in Opening Entry,{0} {1}: račun za vrstu profita i gubitka {2} nije dopušten u početnom unosu,
+{0} {1} must be submitted,{0} {1} mora biti podnesen,
+{0} {1} not in any active Fiscal Year.,{0} {1} nije u nijednoj fiskalnoj godini.,
+{0} {1} status is {2},{0} {1} status je {2},
+{0} {1}: 'Profit and Loss' type account {2} not allowed in Opening Entry,{0} {1}: Tip računa 'Dobit i gubitak'  {2} nije dopušten u Početnom Unosu,
 {0} {1}: Account {2} cannot be a Group,{0} {1}: Račun {2} ne može biti grupa,
-{0} {1}: Account {2} does not belong to Company {3},{0} {1}: Račun {2} ne pripada tvrtki {3},
-{0} {1}: Account {2} is inactive,{0} {1}: Račun {2} je neaktivan,
-{0} {1}: Accounting Entry for {2} can only be made in currency: {3},{0} {1}: unos za računovodstvo za {2} može biti samo u valuti: {3},
-{0} {1}: Cost Center is mandatory for Item {2},{0} {1}: Mjesto troška je obavezno za stavku {2},
-{0} {1}: Cost Center is required for 'Profit and Loss' account {2}. Please set up a default Cost Center for the Company.,{0} {1}: Mjesto troška je potrebno za račun &quot;Dobit i gubitak&quot; {2}. Postavite zadano mjesto troška za tvrtku.,
-{0} {1}: Cost Center {2} does not belong to Company {3},{0} {1}: mjesto troška {2} ne pripada tvrtki {3},
-{0} {1}: Customer is required against Receivable account {2},{0} {1}: Korisnik je potreban protiv računa potraživanja {2},
-{0} {1}: Either debit or credit amount is required for {2},{0} {1}: Za iznos od {2} potreban je debitni ili kreditni iznos,
-{0} {1}: Supplier is required against Payable account {2},{0} {1}: Dobavljač je obavezan prema računu za plaćanje {2},
-{0}% Billed,Naplaćeno je {0}%,
+{0} {1}: Account {2} does not belong to Company {3},{0} {1}: Račun {2} ne pripada Društvu {3},
+{0} {1}: Account {2} is inactive,{0} {1}: Račun {2} nije aktivan,
+{0} {1}: Accounting Entry for {2} can only be made in currency: {3},{0} {1}: knjiženje za {2} je moguće izvesti samo u valuti: {3},
+{0} {1}: Cost Center is mandatory for Item {2},{0} {1}: Mjesto troška je ovezno za stavku {2},
+{0} {1}: Cost Center is required for 'Profit and Loss' account {2}. Please set up a default Cost Center for the Company.,{0} {1}: Troškovno mjesto potrebno je za račun dobiti i gubitka {2}. Molimo postaviti zadano mjesto troška.,
+{0} {1}: Cost Center {2} does not belong to Company {3},{0} {1}: Troškovno mjesto {2} ne pripada Društvu {3},
+{0} {1}: Customer is required against Receivable account {2},{0} {1}: potrebna je Kupac protiv Potraživanja računa {2},
+{0} {1}: Either debit or credit amount is required for {2},{0} {1}: Iznos potraživanja ili dugovanja potreban za {2},
+{0} {1}: Supplier is required against Payable account {2},{0} {1}: potreban Dobavljač u odnosu na plativi račun{2},
+{0}% Billed,{0}% Naplaćeno,
 {0}% Delivered,{0}% Isporučeno,
-"{0}: Employee email not found, hence email not sent","{0}: e-pošta zaposlenika nije pronađena, stoga e-pošta nije poslana",
-{0}: From {0} of type {1},{0}: Iz {0} vrste {1},
+"{0}: Employee email not found, hence email not sent","{0}: Radnik email nije pronađen, stoga ne e-mail poslan",
+{0}: From {0} of type {1},{0}: Od {0} od tipa {1},
 {0}: From {1},{0}: od {1},
-{0}: {1} does not exists,{0}: {1} ne postoji,
-{0}: {1} not found in Invoice Details table,{0}: {1} nije pronađen u tablici Pojedinosti dostavnice,
+{0}: {1} does not exists,{0}: {1} Ne radi postoji,
+{0}: {1} not found in Invoice Details table,{0}: {1} nije pronađen u Pojedinosti dostavnice stolu,
 {} of {},{} od {},
-Email Group,Grupa e-pošte,
+"Dear System Manager,","Dragi System Manager,",
+Email Group,E-mail Group,
 Images,slike,
 Import,Uvoz,
-There is some problem with the file url: {0},Postoji neki problem s URL-om datoteke: {0},
-Values Changed,Promijenjene vrijednosti,
+There is some problem with the file url: {0},Postoji neki problem s datotečnog URL: {0},
+Values Changed,Vrijednosti promjene,
+or,ili,
 Ageing Range 4,Raspon starenja 4,
 Allocated amount cannot be greater than unadjusted amount,Dodijeljeni iznos ne može biti veći od neprilagođenog iznosa,
 Allocated amount cannot be negative,Dodijeljeni iznos ne može biti negativan,
-"Difference Account must be a Asset/Liability type account, since this Stock Entry is an Opening Entry","Račun razlike mora biti račun vrste imovine / obveze, budući da je ovaj unos dionica početni unos",
+"Difference Account must be a Asset/Liability type account, since this Stock Entry is an Opening Entry","Račun razlike mora biti račun vrste imovine / odgovornosti, jer je ovaj unos dionica uvodni unos",
 Error in some rows,Pogreška u nekim redovima,
 Import Successful,Uvoz je uspješan,
 Please save first,Prvo spremite,
-Price not found for item {0} in price list {1},Cijena nije pronađena za stavku {0} u cjeniku {1},
+Price not found for item {0} in price list {1},Cijena nije pronađena za artikl {0} u cjeniku {1},
 Warehouse Type,Vrsta skladišta,
-'Date' is required,&quot;Datum&quot; je obavezan,
+'Date' is required,Obavezan je datum,
 Benefit,Korist,
 Budgets,proračuni,
-Bundle Qty,Kol,
+Bundle Qty,Količina paketa,
 Company GSTIN,Tvrtka GSTIN,
 Company field is required,Polje tvrtke je obavezno,
 Creating Dimensions...,Izrada dimenzija ...,
-Duplicate entry against the item code {0} and manufacturer {1},Dvostruki unos za kôd stavke {0} i proizvođač {1},
-Import Chart Of Accounts from CSV / Excel files,Uvezite grafikon računa iz CSV / Excel datoteka,
-Invalid GSTIN! The input you've entered doesn't match the GSTIN format for UIN Holders or Non-Resident OIDAR Service Providers,Nevažeći GSTIN! Unos koji ste unijeli ne odgovara GSTIN formatu za UIN nositelje ili nerezidentne OIDAR davatelje usluga,
-Invoice Grand Total,Faktura Grand Total,
-Last carbon check date cannot be a future date,Zadnji datum provjere ugljika ne može biti datum u budućnosti,
-Make Stock Entry,Unos dionica,
+Duplicate entry against the item code {0} and manufacturer {1},Duplikat unosa sa šifrom artikla {0} i proizvođačem {1},
+Import Chart Of Accounts from CSV / Excel files,Uvezi račun s računa iz CSV / Excel datoteka,
+Invalid GSTIN! The input you've entered doesn't match the GSTIN format for UIN Holders or Non-Resident OIDAR Service Providers,Nevažeći GSTIN! Uneseni unos ne odgovara formatu GSTIN za vlasnike UIN-a ili nerezidentne davatelje usluga OIDAR-a,
+Invoice Grand Total,Faktura ukupno,
+Last carbon check date cannot be a future date,Posljednji datum provjere ugljika ne može biti budući datum,
+Make Stock Entry,Unesite zalihe,
 Quality Feedback,Povratne informacije o kvaliteti,
-Quality Feedback Template,Predložak kvalitete povratnih informacija,
-Rules for applying different promotional schemes.,Pravila za primjenu različitih promotivnih programa.,
+Quality Feedback Template,Predložak povratne informacije o kvaliteti,
+Rules for applying different promotional schemes.,Pravila za primjenu različitih promotivnih shema.,
 Shift,smjena,
 Show {0},Prikaži {0},
-"Special Characters except ""-"", ""#"", ""."", ""/"", ""{"" and ""}"" not allowed in naming series","Posebni znakovi osim &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{&quot; I &quot;}&quot; nisu dopušteni u imenovanju nizova",
-Target Details,Pojedinosti ciljanja,
-{0} already has a Parent Procedure {1}.,{0} već ima nadređeni postupak {1}.,
+"Special Characters except ""-"", ""#"", ""."", ""/"", ""{"" and ""}"" not allowed in naming series","Posebni znakovi osim &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{&quot; I &quot;}&quot; nisu dopušteni u imenovanju serija",
+Target Details,Pojedinosti cilja,
+{0} already has a Parent Procedure {1}.,{0} već ima roditeljski postupak {1}.,
 Annual,Godišnji,
 Approved,Odobren,
-Change,Promijeniti,
+Change,Promjena,
 From Date,Od datuma,
 Group By,Grupiranje prema,
 Importing {0} of {1},Uvoz {0} od {1},
 No data to export,Nema podataka za izvoz,
 % Of Grand Total,% Od ukupnog broja,
-'employee_field_value' and 'timestamp' are required.,Obavezni su &#39;Employ_field_value&#39; i &#39;timestamp&#39;.,
+'employee_field_value' and 'timestamp' are required.,Obavezni su&#39;posleni_polovi_vrijednost &#39;i&#39; vremenska oznaka &#39;.,
 <b>Company</b> is a mandatory filter.,<b>Tvrtka</b> je obvezan filtar.,
 <b>From Date</b> is a mandatory filter.,<b>From Date</b> je obavezan filtar.,
 <b>From Time</b> cannot be later than <b>To Time</b> for {0},<b>{Time} od vremena</b> ne može biti kasnije od <b>To ~ a</b> {0},
@@ -3545,17 +3484,17 @@
 Accounting Masters,Majstori računovodstva,
 Accounting Period overlaps with {0},Računovodstveno razdoblje se preklapa s {0},
 Activity,Aktivnost,
-Add / Manage Email Accounts.,Dodavanje / upravljanje računima e-pošte.,
-Add Child,Dodajte dijete,
-Add Loan Security,Dodaj sigurnost kredita,
-Add Multiple,Dodajte više,
-Add Participants,Dodajte sudionike,
+Add / Manage Email Accounts.,Dodaj / uredi email račun.,
+Add Child,Dodaj dijete,
+Add Loan Security,Dodajte sigurnost kredita,
+Add Multiple,Dodaj više stavki,
+Add Participants,Dodaj sudionike,
 Add to Featured Item,Dodajte u istaknuti predmet,
 Add your review,Dodajte svoju recenziju,
 Add/Edit Coupon Conditions,Dodavanje / uređivanje uvjeta kupona,
 Added to Featured Items,Dodano u istaknute stavke,
 Added {0} ({1}),Dodano {0} ({1}),
-Address Line 1,Redak adrese 1,
+Address Line 1,Adresa - linija 1,
 Addresses,adrese,
 Admission End Date should be greater than Admission Start Date.,Datum završetka prijema trebao bi biti veći od datuma početka upisa.,
 Against Loan,Protiv zajma,
@@ -3570,13 +3509,12 @@
 Applied Coupon Code,Primijenjeni kod kupona,
 Apply Coupon Code,Primijenite kod kupona,
 Appointment Booking,Rezervacija termina,
-"As there are existing transactions against item {0}, you can not change the value of {1}","Kako postoje stavke protiv stavke {0}, ne možete promijeniti vrijednost {1}",
+"As there are existing transactions against item {0}, you can not change the value of {1}","Kao što postoje neki poslovi protiv točki {0}, ne možete promijeniti vrijednost {1}",
 Asset Id,Id sredstva,
 Asset Value,Vrijednost imovine,
 Asset Value Adjustment cannot be posted before Asset's purchase date <b>{0}</b>.,Podešavanje vrijednosti imovine ne može se objaviti prije datuma kupnje imovine <b>{0}</b> .,
 Asset {0} does not belongs to the custodian {1},Imovina {0} ne pripada staratelju {1},
 Asset {0} does not belongs to the location {1},Imovina {0} ne pripada lokaciji {1},
-Assets not created for <b>{0}</b>. You will have to create asset manually.,Sredstva nisu stvorena za <b>{0}</b> . Morat ćete stvoriti imovinu ručno.,
 At least one of the Applicable Modules should be selected,Treba odabrati barem jedan od primjenjivih modula,
 Atleast one asset has to be selected.,Treba odabrati najmanje jedan iznos.,
 Attendance Marked,Sudjelovanje je označeno,
@@ -3585,13 +3523,13 @@
 Automatic Reconciliation,Automatsko pomirenje,
 Available For Use Date,Datum upotrebe,
 Available Stock,Dostupne zalihe,
-"Available quantity is {0}, you need {1}","Dostupna količina je {0}, potrebna vam je {1}",
+"Available quantity is {0}, you need {1}","Dostupna količina je {0}, treba vam {1}",
 BOM 1,BOM 1,
 BOM 2,BOM 2,
 BOM Comparison Tool,Alat za usporedbu BOM-a,
 BOM recursion: {0} cannot be child of {1},BOM rekurzija: {0} ne može biti dijete od {1},
 BOM recursion: {0} cannot be parent or child of {1},BOM rekurzija: {0} ne može biti roditelj ili dijete od {1},
-Back to Home,Povratak na dom,
+Back to Home,Povratak kući,
 Back to Messages,Natrag na poruke,
 Bank Data mapper doesn't exist,Karti za bankovne podatke ne postoje,
 Bank Details,Bankovni detalji,
@@ -3604,21 +3542,21 @@
 Blue,plava,
 Book,Knjiga,
 Book Appointment,Sređivanje knjige,
-Brand,marka,
-Browse,pretraživati,
+Brand,Brend,
+Browse,Pretraži,
 Call Connected,Poziv je povezan,
 Call Disconnected,Poziv prekinuti,
-Call Missed,Poziv je propušten,
+Call Missed,Poziv propušten,
 Call Summary,Sažetak poziva,
 Call Summary Saved,Sažetak poziva je spremljen,
-Cancelled,otkazan,
+Cancelled,OTKAZANO,
 Cannot Calculate Arrival Time as Driver Address is Missing.,Ne mogu izračunati vrijeme dolaska jer nedostaje adresa vozača.,
 Cannot Optimize Route as Driver Address is Missing.,Ruta se ne može optimizirati jer nedostaje adresa vozača.,
 "Cannot Unpledge, loan security value is greater than the repaid amount","Ne mogu se ukloniti, vrijednost jamstva zajma je veća od otplaćenog iznosa",
-Cannot complete task {0} as its dependant task {1} are not ccompleted / cancelled.,Zadatak ne može biti dovršen {0} jer njegov ovisni zadatak {1} nije dovršen / otkazan.,
+Cannot complete task {0} as its dependant task {1} are not ccompleted / cancelled.,Ne mogu dovršiti zadatak {0} jer njegov ovisni zadatak {1} nije dovršen / otkazan.,
 Cannot create loan until application is approved,Zajam nije moguće stvoriti dok aplikacija ne bude odobrena,
-Cannot find a matching Item. Please select some other value for {0}.,Nije moguće pronaći odgovarajuću stavku. Odaberite neku drugu vrijednost za {0}.,
-"Cannot overbill for Item {0} in row {1} more than {2}. To allow over-billing, please set allowance in Accounts Settings","Nije moguće nadoplatiti za stavku {0} u retku {1} više od {2}. Da biste omogućili prekomjerno naplaćivanje, molimo postavite dodatak u Postavkama računa",
+Cannot find a matching Item. Please select some other value for {0}.,Ne možete pronaći odgovarajući stavku. Odaberite neku drugu vrijednost za {0}.,
+"Cannot overbill for Item {0} in row {1} more than {2}. To allow over-billing, please set allowance in Accounts Settings","Nije moguće preplatiti za stavku {0} u retku {1} više od {2}. Da biste omogućili prekomjerno naplaćivanje, molimo postavite dodatak u Postavkama računa",
 Cannot unpledge more than {0} qty of {0},Ne može se poništiti više od {0} broj od {0},
 "Capacity Planning Error, planned start time can not be same as end time","Pogreška planiranja kapaciteta, planirano vrijeme početka ne može biti isto vrijeme završetka",
 Categories,Kategorije,
@@ -3627,18 +3565,18 @@
 Choose a corresponding payment,Odaberite odgovarajuće plaćanje,
 Click on the link below to verify your email and confirm the appointment,Kliknite donju vezu kako biste potvrdili svoju e-poštu i potvrdili sastanak,
 Close,Zatvoriti,
-Communication,Komunikacija,
-Compact Item Print,Ispis kompaktnih predmeta,
+Communication,Mail,
+Compact Item Print,Kompaktni Stavka Print,
 Company,Društvo,
 Company of asset {0} and purchase document {1} doesn't matches.,Tvrtka imovine {0} i dokument o kupnji {1} ne odgovaraju.,
 Compare BOMs for changes in Raw Materials and Operations,Usporedite BOM za promjene u sirovinama i načinu rada,
-Compare List function takes on list arguments,Funkcija Usporedi popis preuzima argumente popisa,
-Complete,potpun,
+Compare List function takes on list arguments,Funkcija Usporedi popis preuzima argumente liste,
+Complete,Kompletna,
 Completed,dovršen,
 Completed Quantity,Popunjena količina,
 Connect your Exotel Account to ERPNext and track call logs,Povežite svoj Exotel račun na ERPNext i pratite zapise poziva,
 Connect your bank accounts to ERPNext,Povežite svoje bankovne račune s ERPNext-om,
-Contact Seller,Obratite se prodavatelju,
+Contact Seller,Kontaktirajte prodavača,
 Continue,Nastaviti,
 Cost Center: {0} does not exist,Centar troškova: {0} ne postoji,
 Couldn't Set Service Level Agreement {0}.,Nije moguće postaviti ugovor o razini usluge {0}.,
@@ -3650,7 +3588,7 @@
 Create Quality Inspection for Item {0},Napravite inspekciju kvalitete za predmet {0},
 Creating Accounts...,Stvaranje računa ...,
 Creating bank entries...,Izrada bankovnih unosa ...,
-Creating {0},Izrada {0},
+Creating {0},Stvaranje {0},
 Credit limit is already defined for the Company {0},Kreditni limit je već definiran za Društvo {0},
 Ctrl + Enter to submit,Ctrl + Enter za slanje,
 Ctrl+Enter to submit,Ctrl + Enter za slanje,
@@ -3658,23 +3596,23 @@
 Current Status,Trenutni status,
 Customer PO,Kupci PO,
 Customize,Prilagodba,
-Daily,Dnevno,
+Daily,Svakodnevno,
 Date,Datum,
 Date Range,Raspon datuma,
 Date of Birth cannot be greater than Joining Date.,Datum rođenja ne može biti veći od datuma pridruživanja.,
-Dear,draga,
+Dear,Poštovani,
 Default,Zadano,
 Define coupon codes.,Definirajte kodove kupona.,
 Delayed Days,Odloženi dani,
 Delete,Izbrisati,
 Delivered Quantity,Količina isporučena,
-Delivery Notes,Dostavnice,
+Delivery Notes,Obavijesti o isporuci,
 Depreciated Amount,Amortizirani iznos,
 Description,Opis,
 Designation,Oznaka,
 Difference Value,Vrijednost razlike,
 Dimension Filter,Dimenzijski filter,
-Disabled,Onemogućeno,
+Disabled,Ugašeno,
 Disbursed Amount cannot be greater than loan amount,Izneseni iznos ne može biti veći od iznosa zajma,
 Disbursement and Repayment,Isplata i otplata,
 Distance cannot be greater than 4000 kms,Udaljenost ne može biti veća od 4000 km,
@@ -3687,39 +3625,38 @@
 Duplicate,Duplikat,
 Duplicate Project with Tasks,Umnožavanje projekta sa zadacima,
 Duplicate project has been created,Izrađen je duplikat projekta,
-E-Way Bill JSON can only be generated from a submitted document,Račun za e-put JSON može se generirati samo iz poslanog dokumenta,
-E-Way Bill JSON can only be generated from submitted document,Račun za e-put JSON može se generirati samo iz poslanog dokumenta,
-E-Way Bill JSON cannot be generated for Sales Return as of now,Račun za e-put JSON od sada se ne može generirati za povrat prodaje,
+E-Way Bill JSON can only be generated from a submitted document,e-Way Bill JSON može se generirati samo iz poslanog dokumenta,
+E-Way Bill JSON can only be generated from submitted document,e-Way Bill JSON može se generirati samo iz poslanog dokumenta,
+E-Way Bill JSON cannot be generated for Sales Return as of now,e-Way Bill JSON od sada se ne može generirati za povrat prodaje,
 ERPNext could not find any matching payment entry,ERPNext nije mogao pronaći nijedan odgovarajući unos za plaćanje,
 Earliest Age,Najranije doba,
-Edit Details,Uredi detalje,
+Edit Details,Uredi pojedinosti,
 Edit Profile,Uredi profil,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,"Ako je način prijevoza cestovni, nije potreban ili GST Transporter ID ili vozilo",
 Email,E-mail,
 Email Campaigns,Kampanje e-pošte,
 Employee ID is linked with another instructor,ID zaposlenika povezan je s drugim instruktorom,
 Employee Tax and Benefits,Porez na zaposlenike i beneficije,
-Employee is required while issuing Asset {0},Zaposlenik je obvezan prilikom izdavanja imovine {0},
+Employee is required while issuing Asset {0},Zaposlenik je dužan prilikom izdavanja imovine {0},
 Employee {0} does not belongs to the company {1},Zaposlenik {0} ne pripada tvrtki {1},
 Enable Auto Re-Order,Omogući automatsku ponovnu narudžbu,
-End Date of Agreement can't be less than today.,Datum završetka ugovora ne može biti manji od danas.,
-End Time,Vrijeme završetka,
-Energy Point Leaderboard,Energy Point ploča s najboljim rezultatima,
+End Date of Agreement can't be less than today.,Datum završetka ugovora ne može biti manji od današnjeg.,
+End Time,Kraj vremena,
+Energy Point Leaderboard,Energy Point Leaderboard,
 Enter API key in Google Settings.,Unesite ključ API-a u Google postavke.,
 Enter Supplier,Unesite dobavljača,
 Enter Value,Unesite vrijednost,
 Entity Type,Vrsta entiteta,
-Error,greška,
+Error,Pogreška,
 Error in Exotel incoming call,Pogreška u dolaznom pozivu Exotela,
 Error: {0} is mandatory field,Pogreška: {0} je obavezno polje,
 Event Link,Link događaja,
 Exception occurred while reconciling {0},Izuzeće je došlo tijekom usklađivanja {0},
 Expected and Discharge dates cannot be less than Admission Schedule date,Očekivani i iskrcajni datumi ne mogu biti manji od datuma Plana prijema,
 Expire Allocation,Isteče dodjela,
-Expired,Istekao,
-Expiry date is mandatory for selected item.,Datum isteka obvezan je za odabrani artikl.,
+Expired,Istekla,
 Export,Izvoz,
-Export not allowed. You need {0} role to export.,Izvoz nije dopušten. Za izvoz vam treba {0} uloga.,
+Export not allowed. You need {0} role to export.,Izvoz nisu dopušteni . Trebate {0} ulogu za izvoz .,
 Failed to add Domain,Dodavanje Domene nije uspjelo,
 Fetch Items from Warehouse,Dohvaćanje predmeta iz skladišta,
 Fetching...,Preuzimanje u tijeku ...,
@@ -3729,10 +3666,9 @@
 Finding linked payments,Pronalaženje povezanih plaćanja,
 Finished Product,Gotov proizvod,
 Finished Qty,Gotovo Količina,
-First add items in the Item Locations table,Prvo dodajte stavke u tablicu Lokacije predmeta,
 Fleet Management,Mornarički menađer,
 Following fields are mandatory to create address:,Sljedeća polja su obavezna za stvaranje adrese:,
-For Month,Za mjesec dana,
+For Month,Mjesec dana,
 "For item {0} at row {1}, count of serial numbers does not match with the picked quantity","Za stavku {0} u retku {1}, broj serijskih brojeva ne odgovara odabranoj količini",
 For operation {0}: Quantity ({1}) can not be greter than pending quantity({2}),Za rad {0}: Količina ({1}) ne može biti veća od količine na čekanju ({2}),
 For quantity {0} should not be greater than work order quantity {1},Za količinu {0} ne smije biti veća od količine radnog naloga {1},
@@ -3746,18 +3682,18 @@
 Future Payments,Buduće isplate,
 GST HSN Code does not exist for one or more items,GST HSN kod ne postoji za jednu ili više stavki,
 Generate E-Way Bill JSON,Stvorite e-Way Bill JSON,
-Get Items,Dohvati stavke,
+Get Items,Kreiraj proizvode,
 Get Outstanding Documents,Nabavite izvanredne dokumente,
 Goal,Cilj,
 Greater Than Amount,Veća od iznosa,
 Green,zelena,
-Group,Skupina,
-Group By Customer,Grupiranje po kupcu,
+Group,Grupa,
+Group By Customer,Grupiranje prema kupcu,
 Group By Supplier,Grupiranje po dobavljaču,
-Group Node,Grupni čvor,
+Group Node,Group Node,
 Group Warehouses cannot be used in transactions. Please change the value of {0},Grupne skladišta ne mogu se koristiti u transakcijama. Promijenite vrijednost {0},
-Help,Pomozite,
-Help Article,Članak pomoći,
+Help,Pomoć,
+Help Article,Pomoć članak,
 "Helps you keep tracks of Contracts based on Supplier, Customer and Employee","Pomaže vam pratiti ugovore na temelju dobavljača, kupca i zaposlenika",
 Helps you manage appointments with your leads,Pomaže vam u upravljanju sastancima s potencijalnim klijentima,
 Home,Dom,
@@ -3770,10 +3706,10 @@
 Intermediate,srednji,
 Invalid Barcode. There is no Item attached to this barcode.,Nevažeći barkod. Nijedna stavka nije priložena ovom barkodu.,
 Invalid credentials,Nevažeće vjerodajnice,
-Invite as User,Pozovi kao korisnika,
+Invite as User,Pozovi kao korisnik,
 Issue Priority.,Prioritet pitanja.,
 Issue Type.,Vrsta izdanja,
-"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Čini se da postoji problem s konfiguracijom trake poslužitelja. U slučaju neuspjeha, iznos će se vratiti na vaš račun.",
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Čini se da postoji problem s konfiguracijom trake poslužitelja. U slučaju neuspjeha, iznos će biti vraćen na vaš račun.",
 Item Reported,Stavka prijavljena,
 Item listing removed,Popis predmeta uklonjen je,
 Item quantity can not be zero,Količina predmeta ne može biti jednaka nuli,
@@ -3784,11 +3720,11 @@
 Lab Test Item {0} already exist,Predmet laboratorijskog testa {0} već postoji,
 Last Issue,Zadnje izdanje,
 Latest Age,Najnovije doba,
-Leave application is linked with leave allocations {0}. Leave application cannot be set as leave without pay,Prijava za odlazak povezana je s izdvajanjima za dopust {0}. Aplikacija za odlazak ne može se postaviti kao dopust bez plaćanja,
+Leave application is linked with leave allocations {0}. Leave application cannot be set as leave without pay,Prijava za odlazak povezana je s izdvajanjima za dopust {0}. Aplikacija za napuštanje ne može se postaviti kao dopust bez plaćanja,
 Leaves Taken,Lišće uzeto,
 Less Than Amount,Manje od iznosa,
 Liabilities,pasiva,
-Loading...,Učitavam...,
+Loading...,Učitavanje ...,
 Loan Amount exceeds maximum loan amount of {0} as per proposed securities,Iznos zajma premašuje maksimalni iznos zajma od {0} po predloženim vrijednosnim papirima,
 Loan Applications from customers and employees.,Prijave za zajmove od kupaca i zaposlenika.,
 Loan Disbursement,Isplata zajma,
@@ -3797,30 +3733,30 @@
 Loan Security Pledge,Zalog osiguranja zajma,
 Loan Security Pledge Company and Loan Company must be same,Zajam za jamstvo zajma i Tvrtka za zajam moraju biti isti,
 Loan Security Pledge Created : {0},Stvoreno jamstvo zajma: {0},
-Loan Security Pledge already pledged against loan {0},Zajam za zajam već je založen za zajam {0},
+Loan Security Pledge already pledged against loan {0},Zajam zajam zajma već založen protiv zajma {0},
 Loan Security Pledge is mandatory for secured loan,Zalog osiguranja zajma obvezan je za zajam,
 Loan Security Price,Cijena osiguranja zajma,
 Loan Security Price overlapping with {0},Cijena osiguranja zajma koji se preklapa s {0},
-Loan Security Unpledge,Poništenje sigurnosti zajma,
+Loan Security Unpledge,Bezplatno pozajmljivanje kredita,
 Loan Security Value,Vrijednost kredita zajma,
-Loan Type for interest and penalty rates,Vrsta kredita za kamate i zatezne stope,
+Loan Type for interest and penalty rates,Vrsta zajma za kamate i zatezne stope,
 Loan amount cannot be greater than {0},Iznos zajma ne može biti veći od {0},
 Loan is mandatory,Zajam je obvezan,
 Loans,krediti,
 Loans provided to customers and employees.,Krediti kupcima i zaposlenicima.,
-Location,Mjesto,
+Location,Lokacija,
 Log Type is required for check-ins falling in the shift: {0}.,Zapisnik je potreban za prijave u padu: {0}.,
-Looks like someone sent you to an incomplete URL. Please ask them to look into it.,Izgleda da vam je netko poslao nepotpun URL. Zamolite ih da pogledaju.,
-Make Journal Entry,Unesite u časopis,
-Make Purchase Invoice,Napravite fakturu o kupnji,
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,Izgleda da ti je netko poslao nepotpune URL. Zamolite ih gledati u nju.,
+Make Journal Entry,Provjerite Temeljnica,
+Make Purchase Invoice,Napravi račun kupnje,
 Manufactured,Proizveden,
 Mark Work From Home,Označi rad od kuće,
-Master,Ovladati; majstorski,
+Master,Master,
 Max strength cannot be less than zero.,Maksimalna čvrstoća ne može biti manja od nule.,
 Maximum attempts for this quiz reached!,Došli su maksimalni pokušaji ovog kviza!,
 Message,Poruka,
-Missing Values Required,Nedostaju potrebne vrijednosti,
-Mobile No,Broj mobitela,
+Missing Values Required,Nedostaje vrijednosti potrebne,
+Mobile No,Mobitel br,
 Mobile Number,Broj mobitela,
 Month,Mjesec,
 Name,Ime,
@@ -3832,26 +3768,24 @@
 New release date should be in the future,Novi datum izlaska trebao bi biti u budućnosti,
 Newsletter,Bilten,
 No Account matched these filters: {},Nijedan račun ne odgovara tim filterima: {},
-No Employee found for the given employee field value. '{}': {},Za određenu vrijednost polja zaposlenika nije pronađen zaposlenik. &#39;{}&#39;: {},
+No Employee found for the given employee field value. '{}': {},Za određenu vrijednost polja zaposlenika nije pronađen nijedan zaposlenik. &#39;{}&#39;: {},
 No Leaves Allocated to Employee: {0} for Leave Type: {1},Nema dopuštenih zaposlenika: {0} za vrstu odmora: {1},
 No communication found.,Nije pronađena komunikacija.,
 No correct answer is set for {0},Nije postavljen ispravan odgovor za {0},
 No description,bez opisa,
-No issue has been raised by the caller.,Pozivatelj nije postavio nijedan problem.,
+No issue has been raised by the caller.,Nazivatelj nije pokrenuo nijedan problem.,
 No items to publish,Nema stavki za objavljivanje,
-No outstanding invoices found,Nisu pronađeni neizmireni računi,
+No outstanding invoices found,Nisu pronađene nepodmirene fakture,
 No outstanding invoices found for the {0} {1} which qualify the filters you have specified.,Nisu pronađene nepodmirene fakture za {0} {1} koji ispunjavaju filtre koje ste naveli.,
 No outstanding invoices require exchange rate revaluation,Nijedna nepodmirena faktura ne zahtijeva revalorizaciju tečaja,
 No reviews yet,Još nema recenzija,
-No valid <b>Loan Security Price</b> found for {0},Nije pronađena valjana <b>cijena</b> jamstva za <b>zajam</b> {0},
-No views yet,Još nema pogleda,
+No views yet,Još nema prikaza,
 Non stock items,Nedostaju artikli,
-Not Allowed,Nije dozvoljeno,
+Not Allowed,Nije dopušteno,
 Not allowed to create accounting dimension for {0},Nije dopušteno stvaranje računovodstvenih dimenzija za {0},
 Not permitted. Please disable the Lab Test Template,Nije dopušteno. Onemogućite predložak laboratorijskog testa,
-Not permitted. Please disable the Procedure Template,Nije dopušteno. Onemogućite predložak postupka,
-Note,Bilješka,
-Notes: ,Bilješke:,
+Note,Zabilješka,
+Notes: ,Zabilješke:,
 Offline,offline,
 On Converting Opportunity,O mogućnosti pretvorbe,
 On Purchase Order Submission,Nakon predaje narudžbe,
@@ -3859,9 +3793,9 @@
 On Task Completion,Po završetku zadatka,
 On {0} Creation,Na {0} Stvaranje,
 Only .csv and .xlsx files are supported currently,Trenutno su podržane samo .csv i .xlsx datoteke,
-Only expired allocation can be cancelled,Moguće je otkazati samo dodijeljeno istjecanje,
-Only users with the {0} role can create backdated leave applications,Samo korisnici s ulogom {0} mogu stvarati unaprijed dopuštene aplikacije,
-Open,Otvoren,
+Only expired allocation can be cancelled,Samo je istekla dodjela istekla,
+Only users with the {0} role can create backdated leave applications,Samo korisnici s ulogom {0} mogu izrađivati unaprijed dopuštene aplikacije,
+Open,Otvoreno,
 Open Contact,Otvori kontakt,
 Open Lead,Otvoreno olovo,
 Opening and Closing,Otvaranje i zatvaranje,
@@ -3878,7 +3812,7 @@
 Payment Document Type,Vrsta dokumenta plaćanja,
 Payment Name,Naziv plaćanja,
 Penalty Amount,Iznos kazne,
-Pending,U tijeku,
+Pending,Na čekanju,
 Performance,Izvođenje,
 Period based On,Razdoblje na temelju,
 Perpetual inventory required for the company {0} to view this report.,Trajni inventar potreban je kompaniji {0} za pregled ovog izvještaja.,
@@ -3888,12 +3822,12 @@
 Plaid public token error,Pogreška javnog tokena u obliku video zapisa,
 Plaid transactions sync error,Pogreška sinkronizacije plaidnih transakcija,
 Please check the error log for details about the import errors,Provjerite dnevnik pogrešaka za detalje o uvoznim pogreškama,
-Please click on the following link to set your new password,Kliknite sljedeću vezu da biste postavili novu lozinku,
+Please click on the following link to set your new password,Molimo kliknite na sljedeći link kako bi postavili novu lozinku,
 Please create <b>DATEV Settings</b> for Company <b>{}</b>.,Izradite <b>DATEV postavke</b> za tvrtku <b>{}</b> .,
 Please create adjustment Journal Entry for amount {0} ,Napravite unos prilagodbe u časopisu za iznos {0},
 Please do not create more than 500 items at a time,Ne stvarajte više od 500 predmeta odjednom,
 Please enter <b>Difference Account</b> or set default <b>Stock Adjustment Account</b> for company {0},Unesite <b>račun razlike</b> ili postavite zadani <b>račun</b> za <b>prilagodbu dionica</b> za tvrtku {0},
-Please enter GSTIN and state for the Company Address {0},Unesite GSTIN i napišite adresu tvrtke {0},
+Please enter GSTIN and state for the Company Address {0},Unesite GSTIN i upišite adresu tvrtke {0},
 Please enter Item Code to get item taxes,Unesite šifru predmeta da biste dobili porez na artikl,
 Please enter Warehouse and Date,Unesite datum skladišta i datum,
 Please enter coupon code !!,Unesite kod kupona !!,
@@ -3906,10 +3840,9 @@
 Please select Customer first,Prvo odaberite kupca,
 Please select Item Code first,Prvo odaberite šifru predmeta,
 Please select Loan Type for company {0},Odaberite vrstu kredita za tvrtku {0},
-Please select Patient to get prescribed procedure,Molimo odaberite Pacijent da biste dobili propisani postupak,
 Please select a Delivery Note,Odaberite bilješku o isporuci,
 Please select a Sales Person for item: {0},Odaberite prodajnu osobu za stavku: {0},
-Please select another payment method. Stripe does not support transactions in currency '{0}',Odaberite drugi način plaćanja. Stripe ne podržava transakcije u valuti &#39;{0}&#39;,
+Please select another payment method. Stripe does not support transactions in currency '{0}',Odaberite drugi način plaćanja. Traka ne podržava transakcije u valuti &quot;{0}&quot;,
 Please select the customer.,Odaberite kupca.,
 Please set a Supplier against the Items to be considered in the Purchase Order.,Molimo postavite dobavljača protiv proizvoda koji će se smatrati narudžbenicom.,
 Please set account heads in GST Settings for Compnay {0},Postavite glave računa u GST Postavke za tvrtku {0},
@@ -3920,7 +3853,7 @@
 Please set valid GSTIN No. in Company Address for company {0},Molimo postavite važeći GSTIN broj na adresi tvrtke za tvrtku {0},
 Please set {0},Postavite {0},customer
 Please setup a default bank account for company {0},Postavite zadani bankovni račun za tvrtku {0},
-Please specify,Molimo navedite,
+Please specify,Navedite,
 Please specify a {0},Navedite {0},lead
 Pledge Status,Status zaloga,
 Pledge Time,Vrijeme zaloga,
@@ -3945,15 +3878,15 @@
 Purchase Invoices,Kupnja fakture,
 Purchase Orders,Narudžbenice,
 Purchase Receipt doesn't have any Item for which Retain Sample is enabled.,Kupnja potvrde nema stavku za koju je omogućen zadržati uzorak.,
-Purchase Return,Kupovina povrat,
+Purchase Return,Kupnja Povratak,
 Qty of Finished Goods Item,Količina proizvoda gotove robe,
 Qty or Amount is mandatroy for loan security,Količina ili iznos je mandatroy za osiguranje kredita,
 Quality Inspection required for Item {0} to submit,Inspekcija kvalitete potrebna je za predavanje predmeta {0},
 Quantity to Manufacture,Količina za proizvodnju,
 Quantity to Manufacture can not be zero for the operation {0},Količina za proizvodnju ne može biti nula za operaciju {0},
 Quarterly,tromjesečni,
-Queued,U redu za slanje,
-Quick Entry,Brzi ulazak,
+Queued,Čekanju,
+Quick Entry,Brzi Ulaz,
 Quiz {0} does not exist,Kviz {0} ne postoji,
 Quotation Amount,Iznos kotacije,
 Rate or Discount is required for the price discount.,Za popust na cijenu potreban je popust ili popust.,
@@ -3966,12 +3899,12 @@
 Refreshing,Osvježavajući,
 Release date must be in the future,Datum izlaska mora biti u budućnosti,
 Relieving Date must be greater than or equal to Date of Joining,Datum oslobađanja mora biti veći ili jednak datumu pridruživanja,
-Rename,Preimenovati,
+Rename,Preimenuj,
 Rename Not Allowed,Preimenovanje nije dopušteno,
 Repayment Method is mandatory for term loans,Način otplate je obvezan za oročene kredite,
 Repayment Start Date is mandatory for term loans,Datum početka otplate je obvezan za oročene kredite,
 Report Item,Stavka izvješća,
-Report this Item,Prijavi ovu stavku,
+Report this Item,Prijavite ovu stavku,
 Reserved Qty for Subcontract: Raw materials quantity to make subcontracted items.,Količina rezerviranog za podugovor: Količina sirovina za izradu predmeta koji su predmet podugovora.,
 Reset,Reset,
 Reset Service Level Agreement,Poništite ugovor o razini usluge,
@@ -3981,32 +3914,31 @@
 Review,Pregled,
 Room,Soba,
 Room Type,Vrsta sobe,
-Row # ,Redak br.,
-Row #{0}: Accepted Warehouse and Supplier Warehouse cannot be same,Redak # {0}: Prihvaćeno skladište i skladište dobavljača ne mogu biti isto,
-Row #{0}: Cannot delete item {1} which has already been billed.,Redak broj {0}: Nije moguće izbrisati stavku {1} koja je već naplaćena.,
+Row # ,Red #,
+Row #{0}: Accepted Warehouse and Supplier Warehouse cannot be same,Redak # {0}: Prihvaćena skladišta i skladišta dobavljača ne mogu biti isti,
+Row #{0}: Cannot delete item {1} which has already been billed.,Redak # {0}: Nije moguće izbrisati stavku {1} koja je već naplaćena.,
 Row #{0}: Cannot delete item {1} which has already been delivered,Redak # {0}: Ne može se izbrisati stavka {1} koja je već isporučena,
 Row #{0}: Cannot delete item {1} which has already been received,Redak # {0}: Ne može se izbrisati stavka {1} koja je već primljena,
 Row #{0}: Cannot delete item {1} which has work order assigned to it.,Redak broj {0}: Ne može se izbrisati stavka {1} kojoj je dodijeljen radni nalog.,
-Row #{0}: Cannot delete item {1} which is assigned to customer's purchase order.,Redak # {0}: Ne može se izbrisati stavka {1} koja je dodijeljena kupčevoj narudžbi za kupnju.,
+Row #{0}: Cannot delete item {1} which is assigned to customer's purchase order.,Redak broj {0}: Ne može se izbrisati stavka {1} koja je dodijeljena kupčevoj narudžbi za kupnju.,
 Row #{0}: Cannot select Supplier Warehouse while suppling raw materials to subcontractor,Redak broj {0}: Nije moguće odabrati skladište dobavljača dok dobavlja sirovine podizvođaču,
 Row #{0}: Cost Center {1} does not belong to company {2},Redak # {0}: Troškovno mjesto {1} ne pripada tvrtki {2},
 Row #{0}: Operation {1} is not completed for {2} qty of finished goods in Work Order {3}. Please update operation status via Job Card {4}.,Redak # {0}: Operacija {1} nije dovršena za {2} količinu gotovih proizvoda u radnom nalogu {3}. Ažurirajte status rada putem Job Card {4}.,
-Row #{0}: Payment document is required to complete the transaction,Redak broj {0}: Za dovršenje transakcije potreban je dokument plaćanja,
-Row #{0}: Serial No {1} does not belong to Batch {2},Redak broj {0}: Serijski br. {1} ne pripada grupi {2},
+Row #{0}: Payment document is required to complete the transaction,Redak # {0}: Dokument za plaćanje potreban je za dovršavanje transakcije,
+Row #{0}: Serial No {1} does not belong to Batch {2},Redak br. {0}: Serijski br. {1} ne pripada grupi {2},
 Row #{0}: Service End Date cannot be before Invoice Posting Date,Redak broj {0}: datum završetka usluge ne može biti prije datuma knjiženja fakture,
 Row #{0}: Service Start Date cannot be greater than Service End Date,Redak broj {0}: Datum početka usluge ne može biti veći od datuma završetka usluge,
 Row #{0}: Service Start and End Date is required for deferred accounting,Redak broj {0}: Datum početka i završetka usluge potreban je za odgođeno računovodstvo,
 Row {0}: Invalid Item Tax Template for item {1},Redak {0}: nevažeći predložak poreza na stavku za stavku {1},
-Row {0}: Quantity not available for {4} in warehouse {1} at posting time of the entry ({2} {3}),Redak {0}: Količina nije dostupna za {4} u skladištu {1} u vrijeme knjiženja ({2} {3}),
+Row {0}: Quantity not available for {4} in warehouse {1} at posting time of the entry ({2} {3}),Redak {0}: Količina nije dostupna za {4} u skladištu {1} u vrijeme knjiženja unosa ({2} {3}),
 Row {0}: user has not applied the rule {1} on the item {2},Redak {0}: korisnik nije primijenio pravilo {1} na stavku {2},
 Row {0}:Sibling Date of Birth cannot be greater than today.,Redak {0}: datum rođenja braće ne može biti veći od današnjeg.,
-Row {1}: Asset Naming Series is mandatory for the auto creation for item {0},Redak {1}: Serija imenovanja imovine obvezna je za automatsko stvaranje stavke {0},
 Row({0}): {1} is already discounted in {2},Red ({0}): {1} već je snižen u {2},
 Rows Added in {0},Redovi dodano u {0},
 Rows Removed in {0},Redovi su uklonjeni za {0},
 Sanctioned Amount limit crossed for {0} {1},Granica sankcioniranog iznosa pređena za {0} {1},
 Sanctioned Loan Amount already exists for {0} against company {1},Iznos sankcioniranog zajma već postoji za {0} protiv tvrtke {1},
-Save,Uštedjeti,
+Save,Spremi,
 Save Item,Spremi stavku,
 Saved Items,Spremljene stavke,
 Scheduled and Admitted dates can not be less than today,Zakazani i prihvaćeni datumi ne mogu biti manji nego danas,
@@ -4014,7 +3946,7 @@
 Search for a payment,Traži plaćanje,
 Search for anything ...,Traži bilo što ...,
 Search results for,Rezultati pretrage za,
-Select All,Odaberi sve,
+Select All,Odaberite sve,
 Select Difference Account,Odaberite račun razlike,
 Select a Default Priority.,Odaberite zadani prioritet.,
 Select a Supplier from the Default Supplier List of the items below.,Odaberite dobavljača sa zadanog popisa dobavljača dolje navedenih stavki.,
@@ -4029,7 +3961,7 @@
 Serial Number Created,Izrađen serijski broj,
 Serial Numbers Created,Napravljeni su serijski brojevi,
 Serial no(s) required for serialized item {0},Serijski brojevi potrebni za serijsku stavku {0},
-Series,Niz,
+Series,Serija,
 Server Error,pogreška servera,
 Service Level Agreement has been changed to {0}.,Ugovor o razini usluge promijenjen je u {0}.,
 Service Level Agreement tracking is not enabled.,Praćenje sporazuma o razini usluge nije omogućeno.,
@@ -4038,16 +3970,15 @@
 Set,set,
 Set Meta Tags,Postavljanje metaoznaka,
 Set Response Time and Resolution for Priority {0} at index {1}.,Podesite vrijeme odziva i razlučivost za prioritet {0} na indeksu {1}.,
-"Set item's shelf life in days, to set expiry based on manufacturing date plus shelf-life.",Postavite rok trajanja artikala u danima kako biste postavili rok upotrebe na temelju datuma proizvodnje plus rok trajanja.,
 Set {0} in company {1},Postavite {0} u tvrtki {1},
-Setup,Postaviti,
-Setup Wizard,Čarobnjak za instaliranje,
-Shift Management,Upravljanje smjenama,
+Setup,Postavke,
+Setup Wizard,Čarobnjak za postavljanje,
+Shift Management,Upravljanje pomakom,
 Show Future Payments,Prikaži buduće isplate,
 Show Linked Delivery Notes,Prikaži povezane bilješke o isporuci,
 Show Sales Person,Pokaži prodajnu osobu,
 Show Stock Ageing Data,Pokaži podatke o starenju zaliha,
-Show Warehouse-wise Stock,Pokažite zalihe mudre,
+Show Warehouse-wise Stock,Pokažite zalihe pametne,
 Size,Veličina,
 Something went wrong while evaluating the quiz.,Nešto je pošlo po zlu tijekom vrednovanja kviza.,
 "Sorry,coupon code are exhausted","Nažalost, kod kupona je iscrpljen",
@@ -4060,18 +3991,18 @@
 Status,Status,
 Status must be Cancelled or Completed,Status mora biti otkazan ili dovršen,
 Stock Balance Report,Izvještaj o stanju dionica,
-Stock Entry has been already created against this Pick List,Unos dionica već je stvoren protiv ove Pick liste,
+Stock Entry has been already created against this Pick List,Unos dionica već je stvoren protiv ove liste odabira,
 Stock Ledger ID,ID knjige dionice,
-Stock Value ({0}) and Account Balance ({1}) are out of sync for account {2} and it's linked warehouses.,Vrijednost zaliha ({0}) i saldo računa ({1}) nisu sinkronizirani za račun {2} i povezani su skladišta.,
+Stock Value ({0}) and Account Balance ({1}) are out of sync for account {2} and it's linked warehouses.,Vrijednost dionica ({0}) i saldo računa ({1}) nisu sinkronizirani za račun {2} i povezani su skladišta.,
 Stores - {0},Trgovine - {0},
 Student with email {0} does not exist,Student s adresom e-pošte {0} ne postoji,
-Submit Review,Pošaljite recenziju,
-Submitted,Poslao,
-Supplier Addresses And Contacts,Adrese i kontakti dobavljača,
+Submit Review,Pošaljite pregled,
+Submitted,Potvrđeno,
+Supplier Addresses And Contacts,Supplier Adrese i kontakti,
 Synchronize this account,Sinkronizirajte ovaj račun,
 Tag,Označiti,
 Target Location is required while receiving Asset {0} from an employee,Ciljana lokacija potrebna je dok primate imovinu {0} od zaposlenika,
-Target Location is required while transferring Asset {0},Ciljana lokacija potrebna je prilikom prijenosa sredstva {0},
+Target Location is required while transferring Asset {0},Ciljana lokacija potrebna je tijekom prijenosa imovine {0},
 Target Location or To Employee is required while receiving Asset {0},Ciljana lokacija ili zaposlenik su potrebni za vrijeme prijema imovine {0},
 Task's {0} End Date cannot be after Project's End Date.,{0} Krajnji datum zadatka ne može biti nakon završetka datuma projekta.,
 Task's {0} Start Date cannot be after Project's End Date.,Zadatak {0} Datum početka ne može biti nakon završetka datuma projekta.,
@@ -4088,9 +4019,8 @@
 The selected payment entry should be linked with a creditor bank transaction,Odabrani unos za plaćanje trebao bi biti povezan s bankovnom transakcijom vjerovnika,
 The selected payment entry should be linked with a debtor bank transaction,Odabrani unos za plaćanje trebao bi biti povezan s bankovnom transakcijom dužnika,
 The total allocated amount ({0}) is greated than the paid amount ({1}).,Ukupni dodijeljeni iznos ({0}) namazan je od uplaćenog iznosa ({1}).,
-The total completed qty({0}) must be equal to qty to manufacture({1}),Ukupni ispunjeni broj ({0}) mora biti jednak količini za proizvodnju ({1}),
 The value {0} is already assigned to an exisiting Item {2}.,Vrijednost {0} je već dodijeljena postojećoj stavci {2}.,
-There are no vacancies under staffing plan {0},Nema slobodnih radnih mjesta prema kadrovskom planu {0},
+There are no vacancies under staffing plan {0},Nema slobodnih radnih mjesta u okviru kadrovskog plana {0},
 This Service Level Agreement is specific to Customer {0},Ovaj Ugovor o razini usluge specifičan je za kupca {0},
 This action will unlink this account from any external service integrating ERPNext with your bank accounts. It cannot be undone. Are you certain ?,Ova akcija će prekinuti vezu ovog računa s bilo kojom vanjskom uslugom koja integrira ERPNext s vašim bankovnim računima. To se ne može poništiti. Jesi li siguran ?,
 This bank account is already synchronized,Taj je bankovni račun već sinkroniziran,
@@ -4100,9 +4030,9 @@
 This page keeps track of your items in which buyers have showed some interest.,Ova stranica prati vaše predmete za koje su kupci pokazali neki interes.,
 Thursday,četvrtak,
 Timing,Vrijeme,
-Title,Titula,
+Title,Naslov,
 "To allow over billing, update ""Over Billing Allowance"" in Accounts Settings or the Item.","Da biste omogućili prekomerno naplaćivanje, ažurirajte &quot;Nadoplata za naplatu&quot; u Postavkama računa ili Stavka.",
-"To allow over receipt / delivery, update ""Over Receipt/Delivery Allowance"" in Stock Settings or the Item.","Da biste omogućili primanje / isporuku, ažurirajte &quot;Preplata za primanje / Dostava&quot; u Postavkama zaliha ili Stavka.",
+"To allow over receipt / delivery, update ""Over Receipt/Delivery Allowance"" in Stock Settings or the Item.","Da biste omogućili primanje / isporuku, ažurirajte &quot;Preplata primanja / Dostava&quot; u Postavkama zaliha ili Stavka.",
 To date needs to be before from date,Do danas treba biti prije od datuma,
 Total,ukupno,
 Total Early Exits,Ukupno rani izlazi,
@@ -4112,10 +4042,9 @@
 Totals,Ukupan rezultat,
 Training Event:,Trening događaj:,
 Transactions already retreived from the statement,Transakcije su već povučene iz izjave,
-Transfer Material to Supplier,Prijenos materijala dobavljaču,
+Transfer Material to Supplier,Prebaci Materijal Dobavljaču,
 Transport Receipt No and Date are mandatory for your chosen Mode of Transport,Broj potvrde prijevoza i datum obvezni su za odabrani način prijevoza,
 Tuesday,utorak,
-Type,Tip,
 Unable to find Salary Component {0},Nije moguće pronaći komponentu plaće {0},
 Unable to find the time slot in the next {0} days for the operation {1}.,Nije moguće pronaći vremensko mjesto u sljedećih {0} dana za operaciju {1}.,
 Unable to update remote activity,Nije moguće ažurirati daljinsku aktivnost,
@@ -4124,19 +4053,19 @@
 Unmarked Attendance for days,Danima bez oznake,
 Unpublish Item,Ponipublishtavanje stavke,
 Unreconciled,nesaglašen,
-Unsupported GST Category for E-Way Bill JSON generation,Nepodržani GST kategorija za generiranje e-puta Bill JSON,
+Unsupported GST Category for E-Way Bill JSON generation,Nepodržana GST kategorija za e-Way Bill JSON generacije,
 Update,Ažuriraj,
 Update Details,Ažuriraj pojedinosti,
 Update Taxes for Items,Ažurirajte poreze na stavke,
-"Upload a bank statement, link or reconcile a bank account","Pošaljite bankovni izvod, povežite ili usklađujete bankovni račun",
+"Upload a bank statement, link or reconcile a bank account","Prenesite bankovni izvod, povežite ili usklađujete bankovni račun",
 Upload a statement,Prenesite izjavu,
 Use a name that is different from previous project name,Koristite ime koje se razlikuje od prethodnog naziva projekta,
 User {0} is disabled,Korisnik {0} je onemogućen,
-Users and Permissions,Korisnici i dopuštenja,
+Users and Permissions,Korisnici i dozvole,
 Vacancies cannot be lower than the current openings,Slobodna radna mjesta ne mogu biti niža od trenutačnih,
 Valid From Time must be lesser than Valid Upto Time.,Vrijedi od vremena mora biti kraće od Važećeg vremena uputa.,
 Valuation Rate required for Item {0} at row {1},Stopa vrednovanja potrebna za stavku {0} u retku {1},
-"Valuation rate not found for the Item {0}, which is required to do accounting entries for {1} {2}. If the item is transacting as a zero valuation rate item in the {1}, please mention that in the {1} Item table. Otherwise, please create an incoming stock transaction for the item or mention valuation rate in the Item record, and then try submiting / cancelling this entry.","Stopa vrednovanja nije pronađena za poziciju {0} koja je potrebna za unos računovodstvenih stavki za {1} {2}. Ako stavka djeluje kao stavka nulte vrijednosti u {1}, navedite to u {1} tablici predmeta. U suprotnom, napravite dolaznu transakciju dionica za stavku ili navedite stopu procjene u zapisu stavke, a zatim pokušajte predati / poništiti taj unos.",
+"Valuation rate not found for the Item {0}, which is required to do accounting entries for {1} {2}. If the item is transacting as a zero valuation rate item in the {1}, please mention that in the {1} Item table. Otherwise, please create an incoming stock transaction for the item or mention valuation rate in the Item record, and then try submiting / cancelling this entry.","Nije pronađena stopa vrednovanja za stavku {0} koja je potrebna za unos računovodstvenih stavki za {1} {2}. Ako stavka djeluje kao stavka nulte vrijednosti u {1}, navedite to u {1} tablici predmeta. U suprotnom, napravite dolaznu transakciju dionica za stavku ili navedite stopu procjene u zapisu stavke, a zatim pokušajte predati / poništiti taj unos.",
 Values Out Of Sync,Vrijednosti nisu sinkronizirane,
 Vehicle Type is required if Mode of Transport is Road,Vrsta vozila potrebna je ako je način prijevoza cestovni,
 Vendor Name,Naziv dobavljača,
@@ -4146,18 +4075,18 @@
 View call log,Pogledajte dnevnik poziva,
 Warehouse,Skladište,
 Warehouse not found against the account {0},Skladište nije pronađeno na računu {0},
-Welcome to {0},Dobrodošli na {0},
+Welcome to {0},Slobodno {0},
 Why do think this Item should be removed?,Zašto mislite da bi ovaj predmet trebao biti uklonjen?,
-Work Order {0}: Job Card not found for the operation {1},Radni nalog {0}: Job kartica nije pronađena za operaciju {1},
+Work Order {0}: Job Card not found for the operation {1},Radni nalog {0}: kartica posla nije pronađena za operaciju {1},
 Workday {0} has been repeated.,Radni dan {0} je ponovljen.,
-XML Files Processed,Obrađene XML datoteke,
+XML Files Processed,Obrađene su XML datoteke,
 Year,Godina,
-Yearly,Godišnje,
-You,Vas,
+Yearly,Godišnji,
+You,Vi,
 You are not allowed to enroll for this course,Nije vam dopušteno upisati se na ovaj tečaj,
 You are not enrolled in program {0},Niste upisani u program {0},
 You can Feature upto 8 items.,Možete predstaviti do 8 predmeta.,
-You can also copy-paste this link in your browser,Ovu vezu možete kopirati i zalijepiti u svoj preglednik,
+You can also copy-paste this link in your browser,Također možete kopirati ovaj link u Vaš preglednik,
 You can publish upto 200 items.,Možete objaviti do 200 predmeta.,
 You can't create accounting entries in the closed accounting period {0},Ne možete stvoriti knjigovodstvene unose u zatvorenom obračunskom razdoblju {0},
 You have to enable auto re-order in Stock Settings to maintain re-order levels.,"Da biste održali razinu ponovne narudžbe, morate omogućiti automatsku ponovnu narudžbu u Postavkama dionica.",
@@ -4169,24 +4098,23 @@
 Your rating:,Vaša ocjena:,
 Zero qty of {0} pledged against loan {0},Nula {0} založila se za zajam {0},
 and,i,
-e-Way Bill already exists for this document,Račun za e-put već postoji za ovaj dokument,
+e-Way Bill already exists for this document,Za ovaj dokument već postoji e-Way Bill,
 woocommerce - {0},woocommerce - {0},
-{0} Asset{2} Created for <b>{1}</b>,{0} Imovina {2} Izrađena za <b>{1}</b>,
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} Kuponi se koriste {1}. Dozvoljena količina se iscrpljuje,
-{0} Name,{0} Ime,
+{0} Name,{0} Name,
 {0} Operations: {1},{0} Operacije: {1},
 {0} bank transaction(s) created,{0} stvorene bankovne transakcije,
-{0} bank transaction(s) created and {1} errors,Stvorene {0} bankovne transakcije i {1} pogreške,
+{0} bank transaction(s) created and {1} errors,{0} stvorene bankovne transakcije i {1} pogreške,
 {0} can not be greater than {1},{0} ne može biti veći od {1},
 {0} conversations,{0} razgovora,
 {0} is not a company bank account,{0} nije bankovni račun tvrtke,
-{0} is not a group node. Please select a group node as parent cost center,{0} nije grupni čvor. Odaberite čvor grupe kao matično mjesto troškova,
+{0} is not a group node. Please select a group node as parent cost center,{0} nije grupni čvor. Odaberite čvor grupe kao nadređeno mjesto troškova,
 {0} is not the default supplier for any items.,{0} nije zadani dobavljač za bilo koju robu.,
-{0} is required,{0} je obavezan,
+{0} is required,{0} je potrebno,
 {0} units of {1} is not available.,{0} jedinice od {1} nisu dostupne.,
 {0}: {1} must be less than {2},{0}: {1} mora biti manji od {2},
 {} is an invalid Attendance Status.,{} je nevažeći status posjećenosti.,
-{} is required to generate E-Way Bill JSON,{} potreban je za generiranje e-puta Bill JSON,
+{} is required to generate E-Way Bill JSON,{} je potreban za generiranje e-Way Bill JSON,
 "Invalid lost reason {0}, please create a new lost reason","Nevažeći izgubljeni razlog {0}, izradite novi izgubljeni razlog",
 Profit This Year,Dobit ove godine,
 Total Expense,Ukupni rashodi,
@@ -4197,82 +4125,89 @@
 Comments,komentari,
 Download,preuzimanje datoteka,
 New,Novi,
+Not Found,Nije pronađeno,
 Print,otisak,
 Reference Name,Naziv poveznice,
-Refresh,Osvježiti,
+Refresh,Osvježi stranicu,
 Success,Uspjeh,
 Value,Vrijednost,
 Actual,stvaran,
 Add to Cart,Dodaj u košaricu,
 Days Since Last Order,Dana od zadnje narudžbe,
-In Stock,Na lageru,
+In Stock,Na zalihi,
 Loan Amount is mandatory,Iznos zajma je obvezan,
 Mode Of Payment,Nacin placanja,
 No students Found,Studenti nisu pronađeni,
-Not in Stock,Nije na zalihama,
-Please select a Customer,Odaberite kupca,
-Printed On,Tiskano na,
+Not in Stock,Ne u skladištu,
+Please select a Customer,Odaberite klijenta,
+Printed On,tiskana na,
 Received From,Primljeno od,
 Sales Person,Prodajna osoba,
 To date cannot be before From date,Do danas ne može biti prije Od datuma,
 Write Off,Otpisati,
-{0} Created,{0} Izrađeno,
-Email Id,Id e-pošte,
+{0} Created,{0} stvorio,
+Email Id,E-mail ID,
 Actual ,stvaran,
 Add to cart,Dodaj u košaricu,
 Budget,budžet,
 Chart Of Accounts Importer,Uvoznik računa računa,
-Chart of Accounts,Računski plan,
-Customer database.,Korisnička baza podataka.,
-Days Since Last order,Dana od zadnje narudžbe,
-Download as JSON,Preuzmite kao JSON,
-End date can not be less than start date,Datum završetka ne može biti manji od početnog datuma,
-For Default Supplier (Optional),Za zadanog dobavljača (neobavezno),
-From date cannot be greater than To date,Datum ne može biti veći od Do danas,
-Get items from,Dohvati predmete od,
-Group by,Grupirajte prema,
+Chart of Accounts,Kontni plan,
+Customer database.,Baza podataka korisnika.,
+Days Since Last order,Dana od posljednje narudžbe,
+Download as JSON,Preuzmi kao Json,
+End date can not be less than start date,Datum završetka ne može biti manja od početnog datuma,
+For Default Supplier (Optional),Za dobavljača zadano (neobavezno),
+From date cannot be greater than To date,Datum ne može biti veći od datuma,
+Get items from,Nabavite stavke iz,
+Group by,Grupiranje prema,
 In stock,Na lageru,
-Item name,Ime proizvoda,
+Item name,Naziv proizvoda,
 Loan amount is mandatory,Iznos zajma je obvezan,
-Minimum Qty,Minimalna količina,
-More details,Više detalja,
-Nature of Supplies,Priroda materijala,
-No Items found.,Nije pronađen nijedan predmet.,
-No employee found,Nije pronađen nijedan zaposlenik,
-No students found,Studenti nisu pronađeni,
-Not in stock,Nema na zalihi,
+Minimum Qty,Minimalni broj,
+More details,Više pojedinosti,
+Nature of Supplies,Priroda potrošnog materijala,
+No Items found.,Nema pronađenih stavki.,
+No employee found,Nisu pronađeni zaposlenici,
+No students found,Nema učenika Pronađeno,
+Not in stock,Nije na zalihama,
 Not permitted,Nije dopušteno,
-Open Issues ,Otvoreni problemi,
-Open Projects ,Otvoreni projekti,
-Open To Do ,Otvoreno za napraviti,
-Operation Id,ID operacije,
-Partially ordered,Djelomično naručena,
-Please select company first,Prvo odaberite tvrtku,
-Please select patient,Molimo odaberite pacijenta,
+Open Issues ,Otvorena pitanja,
+Open Projects ,Otvoreno Projekti,
+Open To Do ,Otvoreni učiniti,
+Operation Id,Operacija ID,
+Partially ordered,djelomično Ž,
+Please select company first,Najprije odaberite tvrtku,
+Please select patient,Odaberite Pacijent,
 Printed On ,Tiskano na,
-Projected qty,Količina projiciranog broja,
-Sales person,Prodavač,
-Serial No {0} Created,Serijski broj {0} Napravljeno,
+Projected qty,Predviđena količina,
+Sales person,Prodajna osoba,
+Serial No {0} Created,Serijski Ne {0} stvorio,
 Set as default,Postavi kao zadano,
-Source Location is required for the Asset {0},Lokacija izvora potrebna je za imovinu {0},
+Source Location is required for the Asset {0},Izvor Lokacija je potrebna za imovinu {0},
 Tax Id,Porezni broj,
-To Time,U Vrijeme,
-To date cannot be before from date,Do danas datum ne može biti prije,
-Total Taxable value,Ukupna oporeziva vrijednost,
-Upcoming Calendar Events ,Predstojeći kalendarski događaji,
-Value or Qty,Vrijednost ili Količina,
+To Time,Za vrijeme,
+To date cannot be before from date,Datum ne može biti prije datuma,
+Total Taxable value,Ukupna porezna vrijednost,
+Upcoming Calendar Events ,Nadolazeći Kalendar događanja,
+Value or Qty,Vrijednost ili broj,
 Variance ,varijacija,
 Variant of,Varijanta,
 Write off,Otpisati,
-Write off Amount,Otpisati iznos,
+Write off Amount,Napišite paušalni iznos,
 hours,sati,
 received from,primljeno od,
-to,do,
-Customer &gt; Customer Group &gt; Territory,Kupac&gt; Grupa kupaca&gt; Teritorij,
-Item Code &gt; Item Group &gt; Brand,Kod artikla&gt; Grupa artikala&gt; Marka,
-Please set Naming Series for {0} via Setup &gt; Settings &gt; Naming Series,Postavite Nameing Series za {0} putem Podešavanje&gt; Postavke&gt; Imenovanje serija,
-Please setup Employee Naming System in Human Resource &gt; HR Settings,Postavite sustav imenovanja zaposlenika u Ljudski resursi&gt; HR postavke,
-Please setup Instructor Naming System in Education &gt; Education Settings,Postavite sustav imenovanja instruktora u Obrazovanje&gt; Postavke obrazovanja,
-Please setup numbering series for Attendance via Setup &gt; Numbering Series,Postavite brojevnu seriju za Attendance putem Postavljanje&gt; Seriesing Number,
-Supplier &gt; Supplier Type,Dobavljač&gt; vrsta dobavljača,
-UOM Conversion factor ({0} -&gt; {1}) not found for item: {2},Faktor konverzije UOM ({0} -&gt; {1}) nije pronađen za stavku: {2},
+to,za,
+Failed to setup defaults for country {0}. Please contact support@erpnext.com,Nije uspjelo postavljanje zadanih postavki za zemlju {0}. Molimo kontaktirajte support@erpnext.com,
+Row #{0}: Item {1} is not a Serialized/Batched Item. It cannot have a Serial No/Batch No against it.,Redak # {0}: Stavka {1} nije serijski / skupa stavka. Protiv njega ne može imati serijski broj / br.,
+Please set {0},Molimo postavite {0},
+Please set {0},Postavite {0},supplier
+Draft,Nacrt,"docstatus,=,0"
+Cancelled,otkazan,"docstatus,=,2"
+Please setup Instructor Naming System in Education > Education Settings,Postavite sustav imenovanja instruktora u Obrazovanje&gt; Postavke obrazovanja,
+Please set Naming Series for {0} via Setup > Settings > Naming Series,Postavite Nameing Series za {0} putem Podešavanje&gt; Postavke&gt; Imenovanje serija,
+UOM Conversion factor ({0} -> {1}) not found for item: {2},Faktor konverzije UOM ({0} -&gt; {1}) nije pronađen za stavku: {2},
+Item Code > Item Group > Brand,Kod artikla&gt; Grupa artikala&gt; Marka,
+Customer > Customer Group > Territory,Kupac&gt; Grupa kupaca&gt; Teritorij,
+Supplier > Supplier Type,Dobavljač&gt; vrsta dobavljača,
+Please setup Employee Naming System in Human Resource > HR Settings,Postavite sustav imenovanja zaposlenika u Ljudski resursi&gt; HR postavke,
+Please setup numbering series for Attendance via Setup > Numbering Series,Postavite brojevnu seriju za Attendance putem Postavljanje&gt; Numeriranje serija,
