Добавлена поддержка разных валют в расчётах с поставщиками. Теперь закупочную цену можно хранить в той валюте, в которой она указана в договоре, а клиентский баланс вести по собственным условиям. Это пригодится, если часть направлений оплачивается в рублях, а остальные поставщики выставляют цены в другой валюте.
Раньше сопоставление таких предложений требовало дополнительных пересчётов. Я расширил исходный код SMS-биллинга, чтобы валютные параметры участвовали в предусмотренных расчётах системы. Администратору проще сравнивать условия каналов и готовить предложение клиенту, сохраняя исходные сведения о закупке.
Как сравнивать расходы
Для корректного сопоставления важны не только число в прайсе, но и валюта, курс и период действия цены. Например, одинаковая стоимость двух направлений в разных валютах ещё не означает одинаковые расходы. При анализе статистики следует выбирать согласованные параметры пересчёта.
Валютные настройки полезны и при создании собственного SMS-сервиса: можно начать с местных направлений, а затем подключить поставщиков из других стран. При этом цены, остатки и история операций остаются в общей системе учёта.
Изменение не фиксирует курс на будущие периоды. Если договор предусматривает особое округление или собственный источник курсов, эти правила нужно отдельно согласовать с настройками расчётов.