payum/iso4217
PHP library providing ISO 4217 currency data, including three-letter codes, numeric codes, names, minor units, and related metadata. Lightweight and dependency-free, it offers a simple API for looking up and validating currencies in payment and e-commerce apps. Part of the Payum ecosystem.
Adopt it when:
CurrencyRepository interface so the underlying source can be swapped.Look elsewhere when:
moneyphp/money) that bundles ISO data, rather than pairing this with hand-rolled math.intl/NumberFormatter; this package provides data, not formatting or translated currency names.For executives: This is a small, free, MIT-licensed PHP library that supplies the official ISO currency list — codes, decimal places, and numeric codes. Adopting it removes the need to maintain our own currency table and, more importantly, removes a class of money bugs: charging ¥1000 as if it had cents, or mishandling 3-decimal currencies like the Kuwaiti dinar. Cost is near zero, integration is a single Composer line, and it is not a platform commitment — we can replace it later without touching product code. The one caveat is that it is a static dataset last published in 2022, so we will verify the currency list against the current ISO standard at adoption and re-verify on a schedule.
For engineering: Dependency-free, Composer-ready, simple lookup by alphabetic or numeric code with minor unit and name. Use it strictly as reference data behind our own currency interface; do not let it leak into domain code. Pin the version, add a test asserting the minor units for the currencies we actually support, and treat dataset currency as a tracked risk with a defined review cadence or fork path. Do not use it for arithmetic, formatting, or rates.
How can I help you explore Laravel packages today?