Валютный provenance
Requested date против effective date в курсе валют
Как выходные и даты действия курса влияют на воспроизводимость пересчёта зарплат.
· 5 минут чтения · TechRole Index
Запросить курс на конкретную дату и получить курс, действующий на эту дату, не всегда означает получить запись с тем же календарным числом. Выходные и праздники делают requested date и effective date разными полями.
Две даты отвечают на разные вопросы
Requested date фиксирует намерение расчёта: для какого календарного дня система запросила данные. Effective date приходит от источника и сообщает, к какой дате относится опубликованный набор курсов.
Если запрос сделан для воскресенья, официальный ответ может содержать последний установленный курс с более ранней effective date. Переписывать её воскресеньем означает приписать источнику несуществующую публикацию.
Зачем сохранять исходный номинал
Некоторые валюты публикуются не за одну единицу, а за номинал 10, 100 или больше. Rate-to-RUB должен нормализовать значение на одну единицу, но snapshot обязан позволять проверить исходные value и nominal.
Иначе повторный расчёт может дать расхождение даже при совпадающих датах и коде валюты.
Идемпотентный snapshot
Надёжный ключ snapshot включает provider, requested date и currency. Повторный запуск не создаёт случайную новую версию, а сверяет или обновляет ту же запись вместе с effective date.
Расчётная запись должна ссылаться на конкретный snapshot, а не запрашивать «текущий курс» во время каждого чтения. Так результат остаётся воспроизводимым после изменения официального курса.
Граница применения курса
Официальный курс подтверждает валютное преобразование, но не исправляет неизвестный gross/net, неполную вилку или несовместимый период. Эти проверки выполняются отдельно.
В цитате пересчитанного значения нужны currency source, requested date, effective date и правило nominal normalization.
Контрольный список
- Сохранять requested и effective date отдельно.
- Нормализовать официальный nominal на одну единицу.
- Ссылаться на snapshot, а не на плавающий текущий курс.
- Не считать курс решением неизвестного tax basis.
Как сослаться на материал
TechRole Index. «Requested date против effective date в курсе валют». 20 июля 2026 г.. https://win-702hpohbtiv.tail044b19.ts.net/insights/cbr-requested-vs-effective-date