Стендап Сьогодні 📢 Канал в Telegram @stendap_sogodni

🤖🚫 Контент вільний від AI. Цей пост на 100% написаний людиною, як і все на моєму блозі. Насолоджуйтесь!

05.06.2023

Що робити з валютами


Літо починається

В продовження теми про зберігання фінансових значень, розповім трохи про валюти.

Наївне уявлення про валюти досить просте. Є одна валюта, є інша, є курс. Пазури програміста вже тягнуться до StackOverflow, щоб знайти там зручний API. Та й нескладно знайти багато джерел поточного курсу валюти. Є безплатні, є за підписку — гроші зазвичай беруть за частоту оновлень.

Проте така модель не проходить базової перевірки. Єдиного курсу валюти немає. Є міжнародний курс, є курс Нацбанку, є курс твого банку чи обмінника на куті. Який правильний? Відповіді немає. Точніше, реальний курс валюти існує тільки в момент обміну.

Тому що робити з валютою, залежить від конкретного застосунку та його бізнес-логіки. Якщо треба просто приблизно показати суму в іншій валюті — підійде один з API з курсами. Якщо це магазин — то у платіжної системи можна дізнатись точний курс. А якщо маємо справи зі справжніми банківськими операціями — то курс є властивістю операції та має бути вказаний явно.

В Сінтрі до розділу “Накопичення” валюта була суто косметичним елементом. Та поки не треба переводити з однієї валюти в іншу, цього достатньо. Але накопичення можливі не тільки в валюті бюджету, як всім нам знайомо. Ми вирішили під час створення внеску в накопичення відразу питати дві суми — скільки (умовно гривень) пішло з бюджету, та скільки (умовно євро) зайшло як внесок. З першого погляду, це можна було б автоматизувати, але насправді ні — коли відкладаєш гроші, потрібна реальна сума на руках, а ніяке не наближення.