convert
Используя методы модели convert мерчант может:
- Провести конвертацию валют - convert.create
- Предварительно рассчитать параметры конвертации - convert.calc
- Получить информацию по интересующей его операции конвертации - convert.get
Внимание!
Методы модели заблокированы для типизированных мерчантов, при попытке использовать методы модели convert для типизированных мерчантов Система возвратит ошибку EStateForbidden.
endpoint
Запросы на работу методов модели отправляются на endpoint https://api.any.money/.
convert.create
Метод создает ордер конвертации переданной пары валют и возвращает репрезентацию параметров операции.
Входящие параметры метода
| Параметр | Обязательный параметр | Пример | Описание |
|---|---|---|---|
| externalid | да | "123" | идентификатор, заданный мерчантом |
| in_amount | да* | "2345" | сумма списания |
| in_curr | да | "USD" | валюта списания |
| out_amount | да* | "345" | сумма зачисления |
| out_curr | да | "UAH" | валюта зачисления |
| callback_url | нет | "https://any_money.redirect.com" | url-адрес для уведомлений об изменении состояния ордера, формат уведомлений |
* обязательно указать один из параметров in_amount или out_amount
Данные ответа метода
репрезентация ордера операции типа convert
Возможные возвращаемые ошибки
- EParamAmountFormatInvalid
- переданная сумма не соответствует параметрам валюты, например, не соответствует дробная часть
- EParamAmountTooBig
- обрабатываемая сумма больше максимальной суммы конвертации
- EParamAmountTooSmall
- обрабатываемая сумма меньше минимальной суммы конвертации
- EParamCurrencyInvalid
- валюта отсутствует в системе
- EParamFieldInvalid
- передан невалидный параметр callback_url
- EParamInvalid
- переданы неверные значения in_amount, out_amount, не передан ни один из in_amount, out_amount или переданы сразу оба
- EParamUnique
- ордер с таким значением externalid уже существует
- EStateCurrencyInactive
- валюта с переданным именем in_curr, out_curr не активна(отключена)
- EStateExchangeUnavail
- in_curr и out_curr совпадают или данное направление обмена недоступно
- EStateForbidden
- попытка использования метода для типизированного мерчанта
- EStateInsufficientFunds
- обрабатываемая сумма больше баланса мерчанта в валюте списания
convert.calc
Метод расчета параметров ордера конвертации с учетом суммы и валют транзакции.
Входящие параметры метода
| Параметр | Обязательный параметр | Пример | Описание |
|---|---|---|---|
| in_amount | да* | "100" | сумма списания |
| in_curr | да | "UAH" | валюта списания |
| out_amount | да* | "100" | сумма зачисления |
| out_curr | да | "USD" | валюта зачисления |
| validate_balance | нет | true | ключ необходимости проверки достаточности баланса списания для выполнения транзакции (true=проверка нужна, false=нет). default=true. Важно передавать параметр в булевском формате, а не в строковом. Значения вида "false" будут засчитаны системой, как дефолтный true |
* обязательно указать один из параметров in_amount или out_amount
Данные ответа метода
Параметры ордера типа convert
- in_amount
- сумма валюты списания, необходимая для конвертации
- orig_amount
- оригинальная сумма, т.е. тот amount списания или зачисления, который был заказан при создании ордера
- out_amount
- сумма валюты зачисления, получившаяся в результате конвертации
- rate
- курс обмена валют, если проводилась конвертация. В формате
"rate": ["25.30301", "1"]
Возможные возвращаемые ошибки
- EParamAmountFormatInvalid
- переданная сумма не соответствует параметрам валюты, например, не соответствует дробная часть
- EParamAmountTooBig
- обрабатываемая сумма больше максимальной суммы конвертации
- EParamAmountTooSmall
- обрабатываемая сумма меньше минимальной суммы конвертации
- EParamCurrencyInvalid
- валюта in_curr и/или out_curr отсутствует в системе
- EParamInvalid
- переданы неверные значения in_amount, out_amount, не передан ни один из in_amount, out_amount или переданы сразу оба
- EStateCurrencyInactive
- валюта с переданным именем in_curr, out_curr не активна
- EStateExchangeUnavail
- in_curr и out_curr совпадают или данное направление обмена недоступно
- EStateForbidden
- попытка использования метода для типизированного мерчанта
- EStateInsufficientFunds
- обрабатываемая сумма больше чем баланс мерчанта в валюте зачисления
convert.get
Метод поиска и получения параметров ордера типа convert (обмена валют) по его идентификатору.
Входящий параметр метода
| Параметр | Обязательный параметр | Пример | Описание |
|---|---|---|---|
| externalid | да | "123" | внешний идентификатор ордера типа convert |
Данные ответа метода
Возможные возвращаемые ошибки
- EParamInvalid
- передано неверное значение параметра externalid
- EParamNotFound
- не найден ордер c соответствующим externalid
- EStateForbidden
- попытка использования метода для типизированного мерчанта