Документы · Инструмент для выставления счетов фрилансерам
ISO 4217 Коды валют: почему в счете-фактуре недостаточно знака «$»
· Фон
счет форматы файлов проверка
Символы валют являются общими, смещены и иногда отсутствуют в шрифтах; трехбуквенные коды однозначны. В этом посте объясняется стандарт ISO 4217, второстепенные единицы и соглашения о форматировании, которые делают сумму читаемой в любой стране.
Какой доллар? — клиент, который заплатил не в той валюте, поскольку в счете был указан только этот символ.
Простой символ не всегда идентифицирует одну валюту, поэтому в счете-фактуре выбранный код должен быть виден везде, где двусмысленность имеет значение. Репозиторий не проверяет историю о том, что клиент заплатил неправильную валюту, и не нужно придумывать анекдоты, чтобы показать, что явные идентификаторы уменьшают риск догадок.
Трехбуквенные коды валют в этом инструменте — полезные идентификаторы без необоснованной истории стандартов.
Денежный реестр использует знакомые трехбуквенные коды валют в качестве ключей и связывает каждый из них с количеством второстепенных единиц. В этой статье не утверждается, как стандарт ISO конструирует каждый код, и не цитируется история его публикаций, поскольку эти факты не взяты из репозитория.
Незначительные единицы в текущем реестре — ноль или два, не все ISO возможности.
Текущий реестр представляет валюты с нулем или двумя младшими цифрами. JPY, KRW и VND форматируются без дробных единиц, тогда как другие перечисленные записи используют две. Утверждение книги о том, что в некоторых поддерживаемых валютах используются три десятичных знака, для этой реализации неверно.
Символы и размещение — до или после суммы, с пробелом или без него, и почему условные обозначения различаются.
Intl.NumberFormat определяет представление символа или кода в выбранной валюте и фиксированной локали. Символы могут появляться рядом со значением так, как их узнают читатели, но код остается более четким идентификатором, когда один и тот же глиф может обозначать несколько валют или шрифт не может отображать предпочтительный знак.
Разделители в целом — этот инструмент исправляет один стабильный формат английской локали.
Правила группировки и десятичных дробей в целом различаются, однако этот инструмент не локализует их для каждой выбранной страны. Он исправляет английскую локаль, чтобы экран, печать и пользовательские строки PDF оставались стабильными и совместимыми с его путем к шрифту. Выбор страны меняет метаданные валюты, а не разделители локали посетителя.
Рабочий пример — одна сумма, записанная в пяти валютах с правильными кодами, второстепенными единицами и разделителями.
Сравните одну точную сумму второстепенной единицы в пяти валютах из реестра и обратите внимание, как различаются нулевой и двузначный форматы. Сохраняйте базовое значение, соответствующее каждому примеру, вместо того, чтобы притворяться, что одно и то же целое число с младшей единицей имеет одинаковое экономическое значение в разных валютах.
Что сюда не входит: обменные курсы, даты конвертации и способы учета валютных прибылей и убытков.
Средство форматирования не выполняет поиск обменного курса и не сохраняет дату конвертации. Он не рассчитывает прибыли, убытки или порядок бухгалтерского учета. Документ выражен только в одной валюте, поэтому любая конвертация относится к отдельному рабочему процессу.
Вывод: всегда показывайте код и формат читателю и позволяйте настройкам валюты инструмента выставления счетов фрилансерам применять соглашения.
Выберите и отобразите предполагаемый код, а затем проверьте сгенерированное значение, а не доверяйте только символу. Инструмент выставления счетов фрилансерам последовательно применяет точность выбранной записи реестра; он не локализует все соглашения о разделителях и не реализует конвертацию валют.