Курсы валют
Этот перевод выполнен автоматически и ещё не вычитан. Читать английскую версию
Курсы валют позволяют работать с валютами, отличными от вашей базовой валюты. Валюту можно выбрать для тарифов, вендоров, маршрутов терминации, клиентов, аккаунтов, платёжных процессоров и ваучеров, как только для неё здесь есть курс. FlySIP пересчитывает каждую сумму между валютами по этим курсам, например когда аккаунт в USD тарифицируется по тарифу в EUR. У каждого клиента свои курсы относительно его базовой валюты, поэтому курсы реселлера не влияют на ваши.
Где найти
Заголовок раздела «Где найти»Откройте Tariffs & Currencies → Exchange Rates (курсы валют) в левой боковой панели. URL - /xrates.php. Логины без тарифов видят эту группу как Currencies. Пункт скрыт для пользователей, ограниченных уровнем доступа.
Что вы видите
Заголовок раздела «Что вы видите»Список показывает каждую валюту, у которой есть курс, кроме вашей базовой валюты.
| Колонка | Значение |
|---|---|
| Status (статус) | Треугольник-предупреждение Exchange Rate is outdated. (курс устарел), когда курс не обновлялся больше суток. В остальных случаях пусто |
| Currency Unit (денежная единица) | Название валюты и код ISO, ссылка на форму |
| <base> per Unit | Сколько вашей базовой валюты стоит одна единица валюты, например USD per Unit |
| Units per <base> | Тот же курс в обратном направлении: единицы валюты за одну единицу вашей базовой валюты |
| Source (источник) | Откуда берётся курс: Manual Entry (ручной ввод), Alpha Vantage, Currencylayer, Apilayer или Custom Script (собственный скрипт) |
| Timestamp (время обновления) | Дата и время последнего обновления в вашем часовом поясе |
Значок корзины появляется только для валюты, которую никто не использует. Фильтр сопоставляет Currency Unit (is like или is not like) с названием или кодом ISO без учёта регистра. Он сравнивает всё значение; используйте % как подстановочный символ, например %dollar%.
Добавление курса валюты
Заголовок раздела «Добавление курса валюты»- Нажмите Add.
- Выберите Currency Unit. Список предлагает валюты, у которых ещё нет курса; все они перечислены на странице Поддерживаемые валюты.
- Выберите Source.
- Для Manual Entry введите Exchange Rate (курс) и выберите его направление: <base> per 1 Unit или Units per 1 <base>. Для онлайн-источника введите API Access Key (ключ доступа к API) своей подписки у этого провайдера.
- Нажмите Save & Close.
Для онлайн-источника панель сразу получает курс и отказывается сохранять, если не может его получить. Cannot retrieve … communication with … has failed означает, что провайдер не ответил или отклонил ключ. The … does not support currency conversion означает, что провайдер не котирует эту валюту относительно вашей базовой валюты; используйте для неё Manual Entry.
Источники
Заголовок раздела «Источники»| Источник | Что нужно | Обновление |
|---|---|---|
| Manual Entry | Сам курс | Никогда. Редактируйте курс, когда он меняется |
| Alpha Vantage | API Access Key от Alpha Vantage | Каждые 15 минут |
| Currencylayer | API Access Key от Currencylayer. Отметьте Paid Subscription (платная подписка), когда ваш тариф позволяет HTTPS; бесплатные тарифы опрашиваются по обычному HTTP | Ежечасно |
| Apilayer | API Access Key для Currency Data API на Apilayer | Ежечасно |
| Custom Script | Скрипт, установленный на коммутаторе, см. ниже. Показывается, только когда скрипт существует | Каждые 15 минут |
Программа обновления запускается каждые 15 минут и обновляет каждый курс, у источника которого истёк интервал. Когда провайдер не отвечает, курс сохраняет последнее значение, а Timestamp перестаёт меняться; через сутки появляется значок предупреждения. Бесплатные тарифы ограничивают число запросов в месяц, а каждая валюта - это отдельный запрос при каждом обновлении; посчитайте их, прежде чем добавлять много валют на бесплатном тарифе.
Эти провайдеры - сторонние сервисы. FlySIP не контролирует их доступность, цены или условия, поэтому проверяйте колонку Status после любых изменений на их стороне.
Использование собственного скрипта
Заголовок раздела «Использование собственного скрипта»Собственный скрипт позволяет вычислять курсы самостоятельно, например добавлять наценку к курсу провайдера или брать их у своего банка. Для этого нужен доступ к командной оболочке коммутатора.
- Создайте скрипт
/var/env<N>/scripts/xrate_update_custom.sh, где<N>- номер среды (1для основной). - Сделайте его исполняемым:
chmod 755 /var/env1/scripts/xrate_update_custom.sh. - Откройте Exchange Rates, добавьте или отредактируйте валюту и выберите Custom Script как Source.
Скрипт получает три аргумента: базовую валюту, валюту и строку JSON с параметрами ({}). Он должен вывести одно положительное число - количество валюты за одну единицу базовой валюты - и завершиться с кодом 0. Всё остальное считается неудачным обновлением.
Этот пример берёт курс Alpha Vantage и добавляет 5%:
#!/bin/sh# $1 = base currency, $2 = currency, $3 = options (JSON)# Prints the amount of $2 per one unit of $1.
SCALE=1.05KEY="your-alpha-vantage-key"
RATE=$(/home/ssp/scripts/python_exec.sh /home/ssp/scripts/xrate_update.py \ 1 AlphaVantage "$1" "$2" "{\"api_access_key\": \"$KEY\"}")
echo "scale=12; ${RATE} * ${SCALE}" | /usr/bin/bc -qЗамените 1 после xrate_update.py номером своей среды.
Редактирование курса валюты
Заголовок раздела «Редактирование курса валюты»Нажмите на валюту. Currency Unit изменить нельзя; вы можете изменить Source, ключ или, для Manual Entry, курс. Сохранение сразу получает свежий курс из онлайн-источника. Новый курс применяется к звонкам и платежам с этого момента; уже записанные CDR и платежи сохраняют свои суммы.
Удаление курса валюты
Заголовок раздела «Удаление курса валюты»- Нажмите значок корзины в строке.
- Нажмите Delete в подтверждении.
Значок показывается, только пока ни один ваш аккаунт, клиент, тариф, платёжный процессор или ваучер не использует валюту, а для корневого клиента - также ни один вендор или маршрут терминации. Сначала переведите их на другую валюту.
Связанные страницы
Заголовок раздела «Связанные страницы»- Поддерживаемые валюты
- Тарифы
- Платежи
- Тарификация и биллинг
- Частые вопросы: изменение базовой валюты
- Возврат средств на аккаунт: пересчёт платежей через API