ежедневно с 10:00 до 21:00
Формат экспортного файла курсов
Основные правила:
- Файл курсов формируется в XML -формате;
- Каждая запись идет с новой строки. Перенос осуществляется символом -
\n
- Для числовых значений разделителем целой части является точка;
- Корневой элемент -
<rates>
- Каждое направление обмена описывается в элементе -
<item>
- Обязательные к указанию элементы для описания направления обмена внутри элемента item:
<from>
– код валюты, которую обменный пункт принимает от клиента. Коды валют приведены в списке ниже;<to>
– код валюты, которую обменный пункт отправляет клиенту. Коды валют приведены в списке ниже;<in>
– для указания курса обмена, сколько валюты from должен отдать клиент;<out>
– для указания курса обмена, сколько валюты to получит клиент;<amount>
– размер резерва валюты to в обменном пункте, максимум, который может получить клиент;<minamount>
– минимальная возможная к обмену сумма валюты, которую обменный пункт принимает от клиента. Указывается в валюте from.
Пример:
<minamount>4.1<minamout>
Если ограничений по минимальной сумме несколько, например, отдельно на прием и на выплату, необходимо указывать в поле minamount максимальное значение такого ограничения, сконвертированное в валюту from.
<maxamout>
– максимальная возможная к разовому обмену сумма валюты, которую обменный пункт принимает от клиента. Указывается в валюте from.Пример:
<maxamount>500</maxamount>
Если ограничений по максимальной сумме несколько, например, отдельно на прием и на выплату, необходимо указывать в поле maxamount минимальное значение такого ограничения, сконвертированное в валюту from.
- Дополнительные элементы для описания направления обмена внутри элемента item
<fromfee>
– дополнительная комиссия, не входящая в курс обмена и взимаемая с суммы, которую клиент переводит в обменный пункт. Указывается в валюте from.<tofee>
– дополнительная комиссия, не входящая в курс обмена и взимаемая с суммы, которую обменный пункт переводит клиенту. Указывается в валюте to.<minfee>
– минимальная комиссия, которая рассчитывается для разницы между отдаваемой суммой и эквивалентом получаемой валюты относительно среднего биржевого курса. Указывается абсолютное значение в валюте from. Процентное значение недоступно для данного вида комиссии.
Пример:
<fronfee>2.15</fromfee>
Возможно также использование знака
%
для обозначения процентной комиссии;Пример:
<tofee>0.01508</tofee>
Возможно также использование знака
%
для обозначения процентной комиссии;Пример:
<minfee>5</minfee>
Пожалуйста, имейте в виду, что к дополнительным комиссиям fromfee и tofee комиссия minfee не имеет отношения. Минимальная комиссия для отдаваемой или получаемой комиссии на данный момент никак не учитывается нашей системой, избегайте подобного формирования курса. Смотрите ниже примеры использования.
Пример №1. Минимальная комиссия больше маржи обменного пункта
Курс обмена 1 доллара – 66 рублей, а официальный курс 68 рублей. Маржа составляет 2 рубля. При обмене 10 долларов получается, что 20 рублей – маржа обменного пункта. Но минимальная комиссия 100 рублей больше маржи в 20 рублей, поэтому 20 заменяется на 100 и происходит вычитание остатка из получаемой суммы: 660 - (100 - 20) = 580.
Пример №2. Минимальная комиссия меньше маржи обменного пункта
Курс обмена 1 доллара – 66 рублей, а официальный курс 68 рублей. Маржа составляет 2 рубля. При обмене 100 долларов получается, что 200 рублей – маржа обменного пункта. Минимальная комиссия меньше этого значения, поэтому этот параметр в данном расчете не учитывается: 6600 - 200 = 6400.
Примечание: дополнительная комиссия minfee имеет недостатки, в ближайшее время планируется удаление этого типа комиссии.
<floating>
- Курс обмена не фиксируется в заявке. Сумма обмена может измениться на момент отправки средств клиенту<delay>
- для установки *метки задержки в проведении обмена. Указывается время в минутах, на которое обмен будет задержан;<param>
- данный элемент служит для указания дополнительных *меток, таких как:manual
- для указания метки *ручного обмена, которая должна присутствовать для направлений обмена, которые обрабатываются через оператора вручную, либо если обмен по направлению производится с задержками (не моментально);juridical
- обменный пункт производит переводы средств на банковский счет клиента со счета юридического лица или ИП. Данная метка актуальна к установке только в направлениях * —› Банковский счет;veryfying
- При обмене может потребоваться верификация документов и личности клиента;cardverify
- Для обмена требуется верификация карты;otherin
- прием денежных средств от клиента производится на стороннюю платежную систему, а не на ту, что указана в поле from;otherin
- прием денежных средств от клиента производится на стороннюю платежную систему, а не на ту, что указана в поле from;otherout
- выплата денежных средств клиенту производится со сторонней платежной системы, а не с той, что указана в поле to;reg
- Для создания заявки требуется регистрация на сайте;delivery
- обменный пункт не имеет офиса в выбранном городе, оплата курьерской доставки включена в курс обмена или отображена в метке.anonim
- Для проведения обмена не требуются личные данные пользователя и верификация карты и личности. Если меток несколько, они указываются через запятую.
Если меток несколько, они указываются через запятую.
Пример:
<param>manual,reg</param>
<city>
- используется для указания города для направлений обмена с наличными. Список городов с кодами представлен ниже.
Пример: <city>MSK</city>
Если условия по направлению обмена одинаковые в нескольких городах, разрешено указывать внутри одного элемента item несколько городов через запятую в одном элементе city.
Пример: <city>MSK, DUBAI, KIEV</city>
Курсы городов
Код города | Описание |
Курсы электронных валют
Код валюты | Описание |
Пример
<rates>
<item>
<from>USDTPOLYGON</from>
<to>BTC</to>
<in>28803.5277</in>
<out>1</out>
<amount>8.30510473</amount>
<tofee>0.0002</tofee>
<minamount>153</minamount>
<maxamount>6120</maxamount>
</item>
<item>
<from>QWRUB</from>
<to>USDTERC20</to>
<in>85.12395</in>
<out>1</out>
<amount>5102144.77288</amount>
<minamount>5000 RUB</minamount>
<maxamount>500000 RUB</maxamount>
</item>
<item>
<from>USDTTRC20</from>
<to>CASHRUB</to>
<in>1</in>
<out>80.2005</out>
<amount>154468024.3405</amount>
<minamount>4000 USDT</minamount>
<maxamount>1000000 USDT</maxamount>
<city>MSK</city>
</item>
</rates>
Если экспортный файл обновляется раз в минуту через Cron, достаточно ли такой периодичности?
Нет, этого недостаточно. Cron в данном случае не годится. Наш мониторинг запрашивает файлы курсов каждые 10 секунд, поэтому для повышения точности передаваемых данных необходимо, чтобы обменный пункт имел экспортный файл, который в любой момент времени будет содержать информацию, соответствующую информации на сайте обменного пункта.
Подойдет один из следующих вариантов реализации экспорта:
- Скрипт, который при каждом его запросе генерирует новые экспортные данные;
- Статичный экспортный файл, который будет программно пересоздан каждый раз, когда какое-либо изменение курсов/резервов/комиссий произойдет на сайте обменного пункта.
Какие комиссии должны передаваться в экспортном файле?
В ваших курсах на мониторинге должны быть учтены:
- Все затраты, связанные с отправкой средств со стороны обменного пункта взимаемые с суммы, получаемой пользователем;
- Все затраты, связанные с отправкой средств со стороны клиента, за исключением комиссий, взимаемых ПС если оплата производится внутри этой ПС. Соответствующие данные по дополнительным комиссиям должны быть проставлены в вашем экспортном файле.