class Money
def from_subunits(subunits, currency_iso, format: :iso4217)
def from_subunits(subunits, currency_iso, format: :iso4217) currency = Helpers.value_to_currency(currency_iso) subunit_to_unit_value = if format == :iso4217 currency.subunit_to_unit elsif format == :stripe Helpers::STRIPE_SUBUNIT_OVERRIDE.fetch(currency.iso_code, currency.subunit_to_unit) else raise ArgumentError, "unknown format #{format}" end value = Helpers.value_to_decimal(subunits) / subunit_to_unit_value new(value, currency) end