Skip to main content

Currency codes (common)

ISO 4217 currency codes for the invoice currency (BT-5) and the VAT accounting currency (BT-6), with the rules that matter on e-invoices.

How these codes are used on invoices

ISO 4217 defines the currency codes that structured invoices use instead of free text. Receiving systems, ERPs and validators expect exact codes such as EUR (Euro), USD (US dollar), CHF (Swiss franc). Practical subset; ISO 4217 contains many more currencies.

ISO 4217

Practical subset; ISO 4217 contains many more currencies.

How to use this code list in production

Keep one mapping for currency codes across ERP source data, generated XML and validation checks. Lock the allowed values before go-live, map legacy values before export, and make sure finance teams know which business cases require manual review.

Currency codes (common)

CodeMeaningNotes
EUREuroCurrency of the euro area and the usual invoice currency (BT-5) for EU e-invoices. EN 16931 amounts use at most two decimals.
USDUS dollarNon-EU currency. If VAT is due in an EU member state that requires VAT in its national currency, add BT-6 and the VAT total in that currency (BT-111).
GBPPound sterlingNon-EU currency. If VAT is due in an EU member state that requires VAT in its national currency, add BT-6 and the VAT total in that currency (BT-111).
CHFSwiss francNon-EU currency. If VAT is due in an EU member state that requires VAT in its national currency, add BT-6 and the VAT total in that currency (BT-111).
TRYTurkish liraNon-EU currency. If VAT is due in an EU member state that requires VAT in its national currency, add BT-6 and the VAT total in that currency (BT-111).
PLNPolish zlotyNational currency of Poland (EU, outside the euro area). If you invoice in another currency but VAT is due in Poland, add BT-6 = PLN and the VAT total in PLN (BT-111).
SEKSwedish kronaNational currency of Sweden (EU, outside the euro area). If you invoice in another currency but VAT is due in Sweden, add BT-6 = SEK and the VAT total in SEK (BT-111).
NOKNorwegian kroneNon-EU currency. If VAT is due in an EU member state that requires VAT in its national currency, add BT-6 and the VAT total in that currency (BT-111).
DKKDanish kroneNational currency of Denmark (EU, outside the euro area). If you invoice in another currency but VAT is due in Denmark, add BT-6 = DKK and the VAT total in DKK (BT-111).
CZKCzech korunaNational currency of Czechia (EU, outside the euro area). If you invoice in another currency but VAT is due in Czechia, add BT-6 = CZK and the VAT total in CZK (BT-111).
HUFHungarian forintNational currency of Hungary (EU, outside the euro area). If you invoice in another currency but VAT is due in Hungary, add BT-6 = HUF and the VAT total in HUF (BT-111).
RONRomanian leuNational currency of Romania (EU, outside the euro area). If you invoice in another currency but VAT is due in Romania, add BT-6 = RON and the VAT total in RON (BT-111).
ISKIcelandic krónaNon-EU currency. If VAT is due in an EU member state that requires VAT in its national currency, add BT-6 and the VAT total in that currency (BT-111).
MXNMexican pesoNon-EU currency. If VAT is due in an EU member state that requires VAT in its national currency, add BT-6 and the VAT total in that currency (BT-111).
JPYJapanese yenISO 4217 defines no decimal places for this currency. Send whole amounts (for example 15000.00) so that line totals and document totals do not drift through rounding.
CADCanadian dollarNon-EU currency. If VAT is due in an EU member state that requires VAT in its national currency, add BT-6 and the VAT total in that currency (BT-111).
AUDAustralian dollarNon-EU currency. If VAT is due in an EU member state that requires VAT in its national currency, add BT-6 and the VAT total in that currency (BT-111).
CNYChinese yuan renminbiNon-EU currency. If VAT is due in an EU member state that requires VAT in its national currency, add BT-6 and the VAT total in that currency (BT-111).
INRIndian rupeeNon-EU currency. If VAT is due in an EU member state that requires VAT in its national currency, add BT-6 and the VAT total in that currency (BT-111).
BRLBrazilian realNon-EU currency. If VAT is due in an EU member state that requires VAT in its national currency, add BT-6 and the VAT total in that currency (BT-111).
ZARSouth African randNon-EU currency. If VAT is due in an EU member state that requires VAT in its national currency, add BT-6 and the VAT total in that currency (BT-111).
SGDSingapore dollarNon-EU currency. If VAT is due in an EU member state that requires VAT in its national currency, add BT-6 and the VAT total in that currency (BT-111).
HKDHong Kong dollarNon-EU currency. If VAT is due in an EU member state that requires VAT in its national currency, add BT-6 and the VAT total in that currency (BT-111).
KRWSouth Korean wonISO 4217 defines no decimal places for this currency. Send whole amounts (for example 15000.00) so that line totals and document totals do not drift through rounding.
THBThai bahtNon-EU currency. If VAT is due in an EU member state that requires VAT in its national currency, add BT-6 and the VAT total in that currency (BT-111).
AEDUAE dirhamNon-EU currency. If VAT is due in an EU member state that requires VAT in its national currency, add BT-6 and the VAT total in that currency (BT-111).
ILSIsraeli new shekelNon-EU currency. If VAT is due in an EU member state that requires VAT in its national currency, add BT-6 and the VAT total in that currency (BT-111).
NZDNew Zealand dollarNon-EU currency. If VAT is due in an EU member state that requires VAT in its national currency, add BT-6 and the VAT total in that currency (BT-111).
UAHUkrainian hryvniaNon-EU currency. If VAT is due in an EU member state that requires VAT in its national currency, add BT-6 and the VAT total in that currency (BT-111).
RSDSerbian dinarNon-EU currency. If VAT is due in an EU member state that requires VAT in its national currency, add BT-6 and the VAT total in that currency (BT-111).

Next step

Create an XRechnung from your PDF and confirm the codes

The converter determines codes from this list for BT-5 from the details on the invoice. You see each value before download and can correct it. Already have an XML file? The free validator reports codes outside the list, for example under BR-CL-04, BR-05.

Download requires an account. Subscriptions from €10/month with annual billing (excl. taxes), or €5 per conversion (excl. taxes) without a subscription.

Practical tips before you send an e-invoice

  • Use the exact code from ISO 4217 and keep the spelling and casing expected by the standard.
  • Check that the currency codes you use match the business case and the related fields on the invoice.
  • Validate the final XRechnung, ZUGFeRD/Factur-X, UBL, or CII file before sending it to the recipient.

Common code-list mistakes

  • Letting free-text values pass through the ERP export instead of mapping them to the official code list.
  • Using a technically valid code without checking whether the recipient profile or country rule actually allows it.
  • Fixing the XML output only, while leaving the upstream ERP source value inconsistent for the next invoice.

Frequently asked questions

Common questions when teams choose currency codes for an invoice or an ERP export.

What are currency codes used for on an invoice?

ISO 4217 is the standardized list behind these codes. A code tells the receiving system exactly which value you mean, so the invoice can be processed automatically in XRechnung, ZUGFeRD/Factur-X, UBL, CII and Peppol workflows.

Which currency codes are used most often?

Common examples on this page include EUR (Euro), USD (US dollar), CHF (Swiss franc). The right choice depends on your transaction, tax treatment, recipient requirements, and the invoice profile you are sending.

Where do currency codes go in a structured e-invoice?

Enter the code in the structured invoice field that matches its meaning, for example the currency field, VAT category field, payment means field, unit field, or invoice type field. The exact XML path depends on whether you send XRechnung, ZUGFeRD/Factur-X, UBL, or CII.

How do I avoid validation errors with currency codes?

Use only values allowed by the relevant implementation guide, keep the code exactly as defined in ISO 4217, and provide all related data required by that choice. Many validation errors happen when a code is correct in isolation but inconsistent with the rest of the invoice.

Can I use codes outside this page?

Often yes, but recipients and national profiles frequently accept only a practical subset of the full ISO 4217 list. This page focuses on common invoice values, so confirm buyer-specific or country-specific rules before sending production documents.

Download

Use this code list in your systems or validation rules.

Official resources