Currencies: ISO 4217 codes
Every currency in ECMS9 has three separate fields. Mixing them up is the single most common cause of the Google Search Console warning "Invalid ISO 4217 currency code (in "offers")" and of rejected price feeds.
| Field | What it is | Example (hryvnia) |
|---|---|---|
| Title | Human name, shown only in the admin panel | Hryvnia |
| ISO Code | Three Latin capital letters from the ISO 4217 standard. Machines read it: Google, marketplaces, payment gateways, analytics | UAH |
| Character (symbol) | What shoppers see next to the price on the storefront | грн, ₴ |
The storefront never shows the ISO code to shoppers, and machines never read the symbol. So the code must be exactly the standard one, and the symbol can be whatever your customers are used to.
Where to set
Admin → Shop → Currencies, open the currency and check the field ISO Code. Save, then clear the site cache (Admin → Clear cache) so cached product pages and feeds pick up the new value.
Common correct codes:
| Currency | Code |
|---|---|
| Ukrainian hryvnia | UAH |
| US dollar | USD |
| Euro | EUR |
| Polish zloty | PLN |
| British pound | GBP |
The full list is published by ISO: https://www.iso.org/iso-4217-currency-codes.html
Wrong values we see most often
грн,грн.,гривня— this is the symbol, not the code. Putгрнinto Character andUAHinto ISO Code.uah,Uah— lowercase. Google accepts only capital letters.₴,$,€— symbols again.- A code with spaces or a trailing dot.
Who reads the ISO code
The code of the default (main) currency goes into everything a machine consumes:
- Product structured data (
Product → offers → priceCurrencyandshippingDetails → shippingRate → currencyin JSON-LD). Google Search Console reports a wrong value as a warning on every product page; with a correct code the rich result shows the price. - Price feeds of the Price export module: Rozetka, Prom.ua, Hotline,
Google Merchant (there the currency is a feed setting,
UAHby default), Privat, Nadavi and the rest. Marketplaces reject a feed with a non-ISO currency or import it without prices. - Analytics events (GA4
purchase,add_to_cartand others): thecurrencyfield of the event is the ISO code; GA4 drops revenue with an unknown currency. - Payment gateways (Privat24 and others) that take the currency code from the shop settings.
How to check yourself
- Open any product page on the storefront, view the page source and find
"priceCurrency". It must read"priceCurrency":"UAH"(or your currency's code). - Paste the product URL into Google's Rich Results Test (https://search.google.com/test/rich-results) — the Product item must have no currency warning.
- In Google Search Console → Enhancements → Products, after the fix press Validate fix. Google re-crawls the affected pages over the next days and closes the warning.
The system takes the code verbatim from the currency record — it does not correct or validate it. If the warning appears, the fix is always in Shop → Currencies, not in the theme or a module.
See also: Google Analytics 4 events.