# Do not edit - generated from Unicode CLDR data
#
# The key is an ISO4217 currency code, and the value is of the form:
#   display name|symbol|decimal digits|not-used-flag
# If a symbol is not supplied, the currency code will be used
# If # of decimal digits is omitted, 2 is used
# If a currency is not generally used, not-used-flag=1
# Trailing empty fields can be omitted

ADP = Andorska pezeta (ADP)||0|1
AED = Ujedinjeni arapski emirati dirham
AFA = Avganistanski avgani (1927-2002) AFA|||1
AFN = Avganistanski avgani (AFN)|Af|0
ALK = ALK|||1
ALL = Albanski lek||0
AMD = Jermenski dram||0
ANG = Holandski Antili gilder (ANG)|NAf.
AOA = Angolijska kvanza (AOA)|Kz
AOK = Angolijska kvanza (1977-1990) (AOK)|||1
AON = Angolijska nova kvanza (1990-2000) (AON)|||1
AOR = Angolijska kvanza reajustado (1995-1999) (AOR)|||1
ARA = Argentinski austral (ARA)|₳||1
ARP = Argentinski pezo (1983-1985) (ARP)|||1
ARS = Argentinski pezo|AR$
ATS = Austrijski šiling|||1
AUD = Australijski dolar|AU$
AWG = Arubijski florin (AWG)|Afl.
AZM = Azerbejdžanski manat (AZM)|||1
AZN = Azerbejdžanski manat (AZN)|man.
BAD = Bosansko-Hercegovački dinar|||1
BAM = Bosansko-Hercegovačka konvertibilna marka|KM
BAN = BAN|||1
BBD = Barbadoski dolar (BBD)|Bds$
BDT = Bangladeška taka (BDT)|Tk
BEC = Belgijski frank (konvertibilni) (BEC)|||1
BEF = Belgijski franak|BF||1
BEL = Belgijski frank (finansijski) (BEL)|||1
BGL = Bugarski tvrdi lev (BGL)|||1
BGM = BGM|||1
BGN = Bugarski lev
BGO = BGO|||1
BHD = Bahreinski dinar (BHD)|BD|3
BIF = Burundski franak (BIF)|FBu|0
BMD = Bermudski dolar (BMD)|BD$
BND = Brunejski dolar|BN$
BOB = Bolivijski boliviano|Bs
BOL = BOL|||1
BOP = Bolivijski pezo (BOP)|$b.||1
BOV = Bolivijski mvdol (BOV)|||1
BRB = Brazilski kruzeiro novo (1967-1986) (BRB)|||1
BRC = Brazilski kruzado (BRC)|||1
BRE = Brazilski kruzeiro (1990-1993) (BRE)|||1
BRL = Brazilski real|R$
BRN = Brazilski kruzado novo (BRN)|||1
BRR = Brazilski kruzeiro (BRR)|||1
BRZ = BRZ|||1
BSD = Bahamski dolar (BSD)|BS$
BTN = Butanski ngultrum (BTN)|Nu.
BUK = Burmanski kjat (BUK)|||1
BWP = Botsvanska pula (BWP)
BYB = Beloruska nova rublja (1994-1999) (BYB)|||1
BYR = Beloruska rublja (BYR)||0
BZD = Belize dolar (BZD)|BZ$
CAD = Kanadski dolar|CA$
CDF = Kongolski franak (CDF)
CHE = WIR Evro (CHE)|||1
CHF = Švajcarski franak
CHW = WIR franak (CHW)|||1
CLF = Čileanski unidades de fomento (CLF)||0|1
CLP = Čileanski pezo|CL$|0
CNX = CNX|||1
CNY = Kineski Juan Renminbi|CN¥
COP = Kolumbijski pezo|CO$|0
COU = Unidad de Valor real (COU)|||1
CRC = Kostarikanski kolon (CRC)|₡|0
CSD = Stari srpski dinar|||1
CSK = Čehoslovačka tvrda koruna (CSK)|||1
CUC = kubanski konvertibilni pezos|CUC$
CUP = Kubanski pezo (CUP)|CU$
CVE = Kejp verdanški eskudo (CVE)|CV$
CYP = Kipratska funta (CYP)|CY£||1
CZK = Češka kruna|Kč
DDM = Istočnoevropska marka (DDM)|||1
DEM = Nemačka marka|DM||1
DJF = Džibutanski franak (DJF)|Fdj|0
DKK = Danska kruna|Dkr
DOP = DOminikanski pezo (DOP)|RD$
DZD = Alžirski dinar (DZD)|DA
ECS = Ekvadorijski sukr (ECS)|||1
ECV = Ekvadorski unidad de valor konstantin (UVC)|||1
EEK = Estonska kruna|Ekr
EGP = Egipatska funta|EG£
ERN = Eritreanska nakfa (ERN)|Nfk
ESA = Španska pezeta (račun) ESA|||1
ESB = Španska pezeta (konvertibilni račun) (ESB)|||1
ESP = Španska pezeta|Pts|0|1
ETB = Etopijski bir (ETB)|Br
EUR = Evro|€
FIM = Finska marka|mk||1
FJD = Fidži dolar|FJ$
FKP = Foklandska ostrva funta (FKP)|FK£
FRF = Francuski franak|₣||1
GBP = Britanska funta sterlinga|UK£
GEK = Gruzijski kupon larit (GEK)|||1
GEL = Džordžijski lari (GEL)
GHC = Ganijski cedi (1979-2007) (GHC)|₵||1
GHS = Ganijski cedi (GHS)|GH₵
GIP = Gibraltarska funta (GIP)|GI£
GMD = Gambijski dalasi (GMD)
GNF = Gvinejski franak (GNF)|FG|0
GNS = Gvinejski sili (GNS)|||1
GQE = Evatorijalna gvineja ekvele (GQE)|||1
GRD = Drahma|₯||1
GTQ = Gvatemalski kvetzal (GTQ)
GWE = Portugalska Gvineja eskudo (GWE)|||1
GWP = Gvineja bisao pezo (GWP)|||1
GYD = Guajanski dolar (GYD)|GY$|0
HKD = Honkonški dolar|HK$
HNL = Honduranska lempira (HNL)
HRD = Hrvatski dinar|||1
HRK = Hrvatska kuna|kn
HTG = Haitski gurd (HTG)
HUF = Mađarska forinta|Ft|0
IDR = Indonezijska rupiah|Rp|0
IEP = Irska funta|IR£||1
ILP = Izraelska funta (ILP)|I£||1
ILR = stari izraelski šekeli|||1
ILS = Izraelski šekel|₪
INR = Indijski rupi|Rs.
IQD = Irački dinar (IQD)||0
IRR = Iranijski rial (IRR)||0
ISJ = stara islandska kruna|||1
ISK = Islandska kruna (ISK)|Ikr|0
ITL = Italijanska lira|IT₤|0|1
JMD = Jamajski dolar (JMD)|J$
JOD = Jordanski dinar (JOD)|JD|3
JPY = Japanski jen|¥|0
KES = Kenijski šiling|Ksh
KGS = Kirgistanski som (KGS)
KHR = Kambodžijski riel (KHR)
KMF = Komoranski franak (KMF)|CF|0
KPW = Severnokorejski von (KPW)||0
KRH = KRH|||1
KRO = KRO|||1
KRW = Južno-korejski Von|₩|0
KWD = Kuvajtski dinar|KD|3
KYD = Kajmanska ostrva dolar (KYD)|KY$
KZT = Kazahstanski tendž (JZT)
LAK = Laoški kip (LAK)|₭|0
LBP = Lebanska funta (LBR)|LB£|0
LKR = Šrilankanski rupi (LKR)|SLRs
LRD = Liberijski dolar (LRD)|L$
LSL = Lesotski loti (LSL)
LTL = Litvanski litas|Lt
LTT = Litvanski talonas (LTT)|||1
LUC = Luksemburški konvertibilni franak (LUC)|||1
LUF = Luksemburški franak||0|1
LUL = Luksemburški finansijski franak (LUL)|||1
LVL = Latvijski lats (LVL)|Ls
LVR = Latvijska rublja (LVR)|||1
LYD = Libijski dinar|LD|3
MAD = Marokanski dirham
MAF = Marokanski franak (MAF)|||1
MCF = MCF|||1
MDC = MDC|||1
MDL = Moldovski lju (MDL)
MGA = Malagasijski ariari (MGA)||0
MGF = Malagasijski franak (MGF)||0|1
MKD = Makedonski denar
MKN = MKN|||1
MLF = Malijanski franak (MLF)|||1
MMK = Mjanmaški kjat (MMK)||0
MNT = Mongolski tugrik (MNT)|₮|0
MOP = Makaniška pataka (MOP)|MOP$
MRO = Mauritanijska ugvija|UM|0
MTL = Malteška lira|Lm||1
MTP = Malteška funta (MTP)|MT£||1
MUR = Mauricijska ruplja (MUR)|MURs|0
MVR = Maldivijska rufija (MVR)
MWK = Malavijska kvača (MWK)
MXN = Meksički peso|MX$
MXP = Meksijski srebrno pezo (1861-1992) (MXP)|||1
MXV = Meksijski unidad de inverzion (MXV)|||1
MYR = Malezijski ringit|RM
MZE = Mozambijski eskudo (MZE)|||1
MZM = Stari mozambijski metikal (MZM)|Mt||1
MZN = Mozambijski metikal (MZN)|MTn
NAD = Nambijski dolar (NAD)|N$
NGN = Nigerijska naira (NGN)|₦
NIC = Nikaragvanška kordoba (NIC)|||1
NIO = Nikaragvanška kordoba oro|C$
NLG = Holandski gulden|fl||1
NOK = Norveška kruna|Nkr
NPR = Nepalska ruplja (NPR)|NPRs
NZD = Novozelandski dolar|NZ$
OMR = Omanski rial (OMR)||3
PAB = Panamanska balboa (PAB)|B/.
PEI = Peruvijski inti (PEI)|I/.||1
PEN = Peruanski nuevo sol|S/.
PES = Peruvijski sol (PES)|||1
PGK = Papua Nova Gvineja kina (PGK)
PHP = Filipinski peso|Php
PKR = Pakistanski rupi|PKRs|0
PLN = Poljski zlot (PLN)|zl
PLZ = Poljski zloti (1950-1995) (PLZ)|||1
PTE = Portugalski eskudo|Esc||1
PYG = Paragvajski guarni (PYG)|₲|0
QAR = Katarski rial (QAR)|QR
RHD = Rodizijski dolar (RHD)|RH$||1
ROL = Stari romanski lju (ROL)|||1
RON = Rumunski leu
RSD = Srpski dinar|din.|0
RUB = Ruska rublja
RUR = Ruska rublja (1991-1998)|||1
RWF = Ruandski franak (RWF)||0
SAR = Saudijski rijal (SAR)|SR
SBD = Solomonska ostrva dolar (SBD)|SI$
SCR = Sejšelski rupi (SCR)|SRe
SDD = STari sudanski dinar (SDD)|LSd||1
SDG = Sudanska funta (SDG)
SDP = Stara sudanska funta (SDP)|||1
SEK = Švedska kruna|Skr
SGD = Singapurski dolar|S$
SHP = Sv. Helenska funta (SHP)|SH£
SIT = Slovenski tolar|||1
SKK = Slovačka kruna|Sk||1
SLL = Sijeraleonski leone (SLL)|Le|0
SOS = Somalijski šiling (SOS)|Ssh|0
SRD = Surinamski dolar (SRD)|SR$
SRG = Surinamski gilder (SRG)|Sf||1
STD = Sao Tome i Principe dobra (STD)|Db|0
SUR = Sovjetska rublja (SUR)|||1
SVC = Salvadorski kolon (SVC)|SV₡||1
SYP = Sirijska funta (SYP)|SY£|0
SZL = Švazi lilangeni (SZL)
THB = Tai baht (THB)|฿
TJR = Tadžakistanska rublja (SYR)|||1
TJS = Tadžikistanski somoni (TJS)
TMM = Turkmenistanski manat (TMM)||0|1
TMT = turkmenistanski novi manat
TND = Tunizijski dinar (TND)|DT|3
TOP = Tongška Paʻanga (TOP)|T$
TPE = Timorški eskudo (TPE)|||1
TRL = Stara turska lira (TRL)||0|1
TRY = Turska lira|TL
TTD = Trinidad i Tobago dolar (TTD)|TT$
TWD = Novi tajvanski dolar|NT$
TZS = Tanzijski šiling (TZS)|TSh|0
UAH = Ukrajinska hrivnja
UAK = Ukrajinski karbovaneti (UAK)|||1
UGS = Ugandijski šiling (1966-1987) (UGS)|||1
UGX = Ugandijski šiling (UGX)|USh|0
USD = Američki dolar|US$
USN = SAD dolar (sledeći dan) (USN)|||1
USS = SAD dolar (isti dan) (USS)|||1
UYI = Urugvajski pezo en unidades indeksades (UYI)|||1
UYP = Urugvajski pezo (1975-1993) (UYP)|||1
UYU = Urugvajski pezo (UYU)|$U
UZS = Uzbekistanski som (UZS)||0
VEB = Venecuelanski bolivar|||1
VEF = Venecuelanska bolivija fuerte (VEF)|Bs.F.
VND = Vijetnamski dong|₫|0
VNN = VNN|||1
VUV = Vanatuški vatu (VUV)|VT|0
WST = Samoanska tala (WST)|WS$
XAF = CFA franak BEAC (XAF)|FCFA|0
XAG = Srebro (CAG)|||1
XAU = Zlato (XAU)|||1
XBA = Evropska kompozitna jedinica (XBA)|||1
XBB = Evropska novčana jedinica (XBB)|||1
XBC = Evropska jedinica računa (XBC)|||1
XBD = Evropska jedinica računa (XBD)|||1
XCD = Istočnokaribijski dolar (XCD)|EC$
XDR = Posebna prava (XDR)|||1
XEU = Evropska valutna jedinica (XEU)|||1
XFO = Francuski zlatni frank (XFO)|||1
XFU = Francuski UIC-frank (XFU)|||1
XOF = CFA franak BCEAO (XOF)|CFA|0
XPD = Paladijum (XPD)|||1
XPF = CFP franak (XPF)|CFPF|0
XPT = Platina (XPT)|||1
XRE = RINET fondovi (XRE)|||1
XTS = Kod testirane valute (XTS)|||1
XXX = Nepoznata ili nevažeća valuta|||1
YDD = Jemenski dinar (YDD)|||1
YER = Jemenski rial (YER)|YR|0
YUD = Jugoslovenski tvrdi dinar (YUD)|||1
YUM = Jugoslovenski novi dinar (YUM)|||1
YUN = Jugoslovenski konvertibilni dinar (YUN)|||1
YUR = YUR|||1
ZAL = Južnoafrički rand (finansijski) ZAL|||1
ZAR = Južna Afrika Rand|R
ZMK = Zambijska kvača (ZMK)|ZK|0
ZRN = Zairski novi zair (ZRN)|NZ||1
ZRZ = Zairski zair (ZRZ)|||1
ZWD = Zimbabvejski dolar (ZWD)|Z$|0|1
ZWL = Зимбабвејски долар|||1
ZWR = ZWR|||1
