Войти в систему Создать аккаунт








Тарифы
Лимиты
Главная

Интерфейсы подключения пунктов обмена электронных валют


Пункту обмена валют необходимо иметь возможность выполнения следующих операций:

  • Перевод средств пользователю.
  • Выставление счета пользователю (мерчант).
  • Получение статистических данных, результатов выполнения операции.
  • Дополнительные возможности, такие как получение балансов своих счетов, проверка счета пользователя, проверка данных о пользователе и т.д.

    Не обязательно, чтобы пункт обмена валют реализовывал все эти функциональные возможности, в самом простом случае может быть достаточно реализации протокола мерчанта и перевода средств пользователю. Однако и другие функции могут также оказаться крайне полезными. Например, при заказе операции пользователь указывает свой аккаунт в ICQMoney; при этом обменный пункт может сразу проверить существование такого пользователя и при необходимости отказать пользователю в продолжении оформления операции (например, пользователь с таким UIN не существует или у него запрещен ввод/вывод средств).

    Описание протокола мерчанта см. здесь.

    Ниже приводится список команд, реализованных на основе протокола DKCP-User и стандарта ExDK, отсортированных по их функциональному назначению.
        getlist_keyt - Получение списка своих счетов;
        getlist_finoperation - Получение финансовой статистики;
        get_result_finoperation - Получение статуса и результата транзакции;
        getparams_exttransact - Получение параметров финансовой операции по номеру внешней транзакции;
        get_result_exttransact - Проверка результата операции по номеру внешней транзакции;
        pay_id - Перевод другому пользователю;
        pay_uin - Прямой платеж на номер ICQ;
        check_uin - Проверка существования UIN;
        check_keyt - Проверка существования счета;




    getlist_keyt

    Получение списка своих счетов

        Подробное описание команды:
    Команда позволяет получить список всех счетов пользователя или одного из его счетов

        Скрипт:
    https://deltakey.net/dkcp/keyt.py

        Дополнительные параметры команды:
    keyt
    Описание:Номер счета
    Обязательный:Нет
    Значение по-умолчанию:-1
    Регулярное выражение:^-1$|^@keyt@$
    Тип значения:-1 или целое число, 15 цифр
    stat_code
    Описание:Код типа счета
    Обязательный:Нет
    Значение по-умолчанию:-1
    Регулярное выражение:^-1$|^[0-9]+[0-9\,]*$
    Тип значения:-1 - все типы счетов, или список кодов через запятую

        Возвращаемое значение:
    В табличной части возвращается список счетов пользователя. В случае, если передан параметр "keyt", то в табличной части будет содержаться только одна строка с параметрами переданного счета. Если передан неверный номер счета, то в табличной части не будет содержаться ни одной строки.




    getlist_finoperation

    Получение финансовой статистики

        Подробное описание команды:
    Команда позволяет получить все подробности проведенных операций

        Скрипт:
    https://deltakey.net/dkcp/statistics.py

        Дополнительные параметры команды:
    type
    Описание:Все операции(-1), только приход(1), только расход(2)
    Обязательный:Нет
    Значение по-умолчанию:2
    Регулярное выражение:^-1$|^1$|^2$
    Тип значения:-1 или 1 или 2
    date_start
    Описание:Начальная дата
    Обязательный:Нет
    Значение по-умолчанию:-1
    Регулярное выражение:^-1$|^\d{4}-\d{2}-\d{2}$
    Тип значения:-1 (все даты) или ГГГГ-ММ-ДД
    date_end
    Описание:Конечная дата
    Обязательный:Нет
    Значение по-умолчанию:-1
    Регулярное выражение:^-1$|^\d{4}-\d{2}-\d{2}$
    Тип значения:-1 (все даты) или ГГГГ-ММ-ДД
    subj
    Описание:Субъект
    Обязательный:Нет
    Значение по-умолчанию:-1
    Регулярное выражение:^-1$|^[0-9]+[0-9\,]*$
    Тип значения:-1(все субъекты) или целое число (несколько ч/з запятую)
    object_num
    Описание:Код типа объекта
    Обязательный:Нет
    Значение по-умолчанию:-1
    Регулярное выражение:^-1$|^[0-9]+[0-9\,]*$
    Тип значения:-1(все объекты) или целое число (несколько ч/з запятую)
    status
    Описание:Статус операции
    Обязательный:Нет
    Значение по-умолчанию:-1
    Регулярное выражение:^-1$|^[1-2]$
    Тип значения:-1 - все статусы, 1 - в обработке, 2 - завершенные
    check_num
    Описание:Номер чека
    Обязательный:Нет
    Значение по-умолчанию:-1
    Регулярное выражение:^-1$|^\d{1,19}$
    Тип значения:-1 - все чеки, длинное целое до 19 цифр
    optdata
    Описание:Значение параметра платежа
    Обязательный:Нет
    Значение по-умолчанию:-1
    Регулярное выражение:^-1$|^.*$
    Тип значения:строка длиной до 255 символов
    subj_param
    Описание:Параметр субъекта (напр. номер формы)
    Обязательный:Нет
    Значение по-умолчанию:-1
    Регулярное выражение:^-1$|^[0-9]+[0-9\,]*$
    Тип значения:-1 (без отбора по параметру) или целое число (несколько ч/з запятую)
    keyt
    Описание:Номер счета
    Обязательный:Нет
    Значение по-умолчанию:-1
    Регулярное выражение:^-1$|^@keyt@$
    Тип значения:-1 (все счета) или 15 цифр
    num_point
    Описание:Номер точки
    Обязательный:Нет
    Значение по-умолчанию:-1
    Регулярное выражение:^-1$|^[0-9]+[0-9\,]*$
    Тип значения:-1(все точки) или целое число (несколько ч/з запятую)
    archive
    Описание:Просмотр текущей информации (0) либо из архива (1)
    Обязательный:Нет
    Значение по-умолчанию:0
    Регулярное выражение:^[0-1]$
    Тип значения:0 или 1
    time_start
    Описание:Начальное время
    Обязательный:Нет
    Значение по-умолчанию:00:00:00
    Регулярное выражение:^\d{2}:\d{2}:\d{2}$
    Тип значения:чч:мм:сс
    time_end
    Описание:Конечное время
    Обязательный:Нет
    Значение по-умолчанию:23:59:59
    Регулярное выражение:^\d{2}:\d{2}:\d{2}$
    Тип значения:чч:мм:сс
    is_limit
    Описание:Ограничить выборку (1) либо все записи (0)
    Обязательный:Нет
    Значение по-умолчанию:1
    Регулярное выражение:^[0-1]$
    Тип значения:0 или 1
    num_limit
    Описание:Количество выбираемых записей
    Обязательный:Нет
    Значение по-умолчанию:100
    Регулярное выражение:^\d+$
    Тип значения:Целое число
    done
    Описание:Завершенность операции
    Обязательный:Нет
    Значение по-умолчанию:None
    Регулярное выражение:^None$|^0$|^1$|^-1$|^-2$|^-3$
    Тип значения:None - любые, 0 - в обработке, 1 - успешные, -2 - отказанные, -3 - аннулированные
    list_fields
    Описание:Список выбираемых полей
    Обязательный:Нет
    Значение по-умолчанию:transact,typelocal,id_pay,keyt_pay,id_shop, keyt_shop,num_term,num_point,date_pay,curr,sum,comiss,itogo,status,result,summ_start, summ_end,date_in,date_out,subj,subj_param,object,chek,name_corr,code,done, num_param,param,ip
    Регулярное выражение:^.+$
    Тип значения:Строка неограниченной длины
    transact_num
    Описание:Номер транзакции
    Обязательный:Нет
    Значение по-умолчанию:-1
    Регулярное выражение:^-1$|^[0-9]+[0-9\,]*$
    Тип значения:-1(все транзакции) или целое число (несколько ч/з запятую)
    curr
    Описание:Валюта
    Обязательный:Нет
    Значение по-умолчанию:-1
    Регулярное выражение:^-1$|^[0-9]+[0-9\,]*$
    Тип значения:-1(все валюты) или целое число (несколько ч/з запятую)
    subdealers
    Описание:Список субдилеров
    Обязательный:Нет
    Значение по-умолчанию:-1
    Регулярное выражение:^-1$|^all$|^[0-9]+[0-9\,]*$
    Тип значения:-1(только свои транзакции) или целое число (несколько ч/з запятую)
    type_program
    Описание:Тип программы
    Обязательный:Нет
    Значение по-умолчанию:-1
    Регулярное выражение:^-1$|^-?[0-9]+[0-9\,]*$
    Тип значения:Тип программы -1 - все, или список кодов программ через запятую
    date_type
    Описание:Тип даты (дата начала или дата завершения операции)
    Обязательный:Нет
    Значение по-умолчанию:date_in
    Регулярное выражение:^date_in$|^date_out$|^date_back$
    Тип значения:Строка `date_in` или `date_out` или `date_back`
    code
    Описание:Код операции
    Обязательный:Нет
    Значение по-умолчанию:-1
    Регулярное выражение:^-1$|^[\-0-9]+(\,\-?[0-9]+)*$
    Тип значения:-1 - все операции, или список кодов операций ч/запятую (отриц.числа - исключение операций)
    operation_done
    Описание:Показывать только завершенные операции
    Обязательный:Нет
    Значение по-умолчанию:
    Регулярное выражение:^.*$
    Тип значения:Строка
    balance
    Описание:Отображать текущий баланс
    Обязательный:Нет
    Значение по-умолчанию:
    Регулярное выражение:^.*$
    Тип значения:Строка
    date_pay
    Описание:Дата платежа
    Обязательный:Нет
    Значение по-умолчанию:
    Регулярное выражение:^.*$
    Тип значения:Строка

        Возвращаемое значение:
    В табличной части возвращается список операций




    get_result_finoperation

    Получение статуса и результата транзакции

        Подробное описание команды:
    Команда позволяет запросить статус и результат платежа (обработан/не обработан, успех/неуспех). Имеет смысл для операций, не завершенных в момент проводки транзакции, таких, как перевод пользователю с протекцией сделки, моментальная оплата и некоторые другие

        Скрипт:
    https://deltakey.net/dkcp/statistics.py

        Дополнительные параметры команды:
    transact_num
    Описание:Номер транзакции
    Обязательный:Да
    Значение по-умолчанию:
    Регулярное выражение:^\d+$
    Тип значения:Целое число

        Возвращаемое значение:
    В табличной части результат возвращается код статуса, текстовая расшифровка статуса, результат и текстовая расшифровка результата.
    Статус 2 означает, что операция завершена, иначе - в обработке. Для завершенных операций результат равный 0 означает успех проведения, иначе - ошибка (отказ).
    Для незавершенных операций (статус=1) результат значения не имеет, так как будет присвоен только по завершению операции.




    getparams_exttransact

    Получение параметров финансовой операции по номеру внешней транзакции

        Подробное описание команды:
    Команда позволяет получить все подробности операции по номеру внешней транзакции

        Скрипт:
    https://deltakey.net/dkcp/statistics.py

        Дополнительные параметры команды:
    ext_transact_num
    Описание:Номер внешней транзакции
    Обязательный:Да
    Значение по-умолчанию:
    Регулярное выражение:^\d{1,20}$
    Тип значения:Целое число до 20 символов
    only_data
    Описание:Возвращать данные без описания
    Обязательный:Нет
    Значение по-умолчанию:0
    Регулярное выражение:^[0-1]$
    Тип значения:0 или 1

        Возвращаемое значение:
    Параметры операции возвращаются в дополнительной части ответа. Для получения расшифровки параметров необходимо послать в запросе дополнительный параметр only_data=0




    get_result_exttransact

    Проверка результата операции по номеру внешней транзакции

        Подробное описание команды:
    Команда позволяет проверить результат выполнения операции по номеру внешней транзакции

        Скрипт:
    https://deltakey.net/dkcp/statistics.py

        Дополнительные параметры команды:
    ext_transact_num
    Описание:Номер внешней транзакции
    Обязательный:Да
    Значение по-умолчанию:
    Регулярное выражение:^\d{1,20}$
    Тип значения:Целое число до 20 символов

        Возвращаемое значение:
    В табличной части результат возвращается код статуса, текстовая расшифровка статуса, результат и текстовая расшифровка результата.
    Статус 2 означает, что операция завершена, иначе - в обработке. Для завершенных операций результат равный 0 означает успех проведения, иначе - ошибка (отказ).
    Для незавершенных операций (статус=1) результат значения не имеет, так как будет присвоен только по завершению операции.




    pay_id

    Перевод другому пользователю

        Подробное описание команды:
    Операция перевода средств другому пользователю. В параметре "sum" указывается сумма, которая будет зачислена на счет получателю, комиссия системы (при наличии) при этом будет удерживаться сверху с плательщика.
    Если необходимо перевести средства со своего счета в валюте, отличной от валюты счета получателя, параметр "auto_rate" необходимо поставить 1, иначе будет выдана ошибка об отличии валюты счета плательщика от валюты счета получателя.
    Операцию возможно провести с протекцией сделки. Для этого параметр "protect" устанавливается в 1, а в параметре "protect_code" указывается код протекции. По-умолчанию протекция устанавливается сроком на три дня. С помощью параметра "protect_day" можно установить другое количество дней действия протекции.

        Скрипт:
    https://deltakey.net/dkcp/fin.py

        Дополнительные параметры команды:
    sum
    Описание:Сумма платежа
    Обязательный:Да
    Значение по-умолчанию:
    Регулярное выражение:^\d{1,12}(\.\d{1,2}){,1}$
    Тип значения:дробное число, точность два знака. Разделитель - точка
    date_pay
    Описание:Локальная дата платежа
    Обязательный:Нет
    Значение по-умолчанию:now
    Регулярное выражение:^\d{4}-\d{2}-\d{2}(\s\d{2}:\d{2}:\d{2}){,1}$|^now$
    Тип значения:ГГГГ-ММ-ДД или ГГГГ-ММ-ДД чч:мм:сс
    keyt
    Описание:Номер счета для списания средств
    Обязательный:Да
    Значение по-умолчанию:
    Регулярное выражение:^@keyt@$
    Тип значения:15 цифр
    keyt_shop
    Описание:Номер счета получателя
    Обязательный:Нет
    Значение по-умолчанию:
    Регулярное выражение:^$|^@keyt@$
    Тип значения:15 цифр
    comment
    Описание:Комментарий получателю
    Обязательный:Нет
    Значение по-умолчанию:
    Регулярное выражение:^.{,255}$
    Тип значения:строка длиной до 255 символов
    auto_rate
    Описание:Автоматическая конвертация (1-разрешить конвертацию валют, 0-запретить)
    Обязательный:Нет
    Значение по-умолчанию:0
    Регулярное выражение:^[0-1]$
    Тип значения:0 или 1
    protect
    Описание:Установить код протекции
    Обязательный:Нет
    Значение по-умолчанию:0
    Регулярное выражение:^[0-1]$
    Тип значения:0 или 1
    protect_code
    Описание:Код протекции
    Обязательный:Нет
    Значение по-умолчанию:
    Регулярное выражение:^$|^.{3,60}$
    Тип значения:Строка от 3 до 60 символов
    protect_day
    Описание:Срок протекции (в днях)
    Обязательный:Нет
    Значение по-умолчанию:3
    Регулярное выражение:^\d{1,3}$
    Тип значения:Число до 3 цифр
    icq
    Описание:# icq
    Обязательный:Нет
    Значение по-умолчанию:
    Регулярное выражение:^$|^.{,100}$
    Тип значения:Строка до 100 символов
    mobilenumber_shop
    Описание:Номер мобильного телефона получателя
    Обязательный:Нет
    Значение по-умолчанию:
    Регулярное выражение:^$|^\+?\d{10,12}$
    Тип значения:10-12 цифр
    email_shop
    Описание:Адрес электронной почты получателя
    Обязательный:Нет
    Значение по-умолчанию:
    Регулярное выражение:^$|^[0-9a-zA-Z_\-\.]+@[0-9a-zA-Z_\-\.]+$
    Тип значения:E-mail
    id_shop
    Описание:ID получателя
    Обязательный:Нет
    Значение по-умолчанию:
    Регулярное выражение:^$|^\d{15}$
    Тип значения:15 цифр
    apply_unregister
    Описание:Разрешить перевод незарегистрированному пользователю
    Обязательный:Нет
    Значение по-умолчанию:0
    Регулярное выражение:^[0-1]$
    Тип значения:0 или 1

        Возвращаемое значение:
    Дополнительных параметров команда не возвращает




    pay_uin

    Прямой платеж на номер ICQ

        Подробное описание команды:
    Операция перевода средств пользователю ICQMoney.
    Если необходимо перевести средства со своего счета в валюте, отличной от юнитов, параметр "auto_rate" необходимо поставить 1, иначе будет выдана ошибка об отличии валюты счета плательщика от валюты счета получателя.
    Операцию возможно провести с протекцией сделки. Для этого параметр "protect" устанавливается в 1, а в параметре "protect_code" указывается код протекции. По-умолчанию протекция устанавливается сроком на три дня. С помощью параметра "protect_day" можно установить другое количество дней действия протекции.

        Скрипт:
    https://deltakey.net/dkcp/fin.py

        Дополнительные параметры команды:
    sum
    Описание:Сумма платежа
    Обязательный:Да
    Значение по-умолчанию:
    Регулярное выражение:^\d{1,12}(\.\d{1,2}){,1}$
    Тип значения:дробное число, точность два знака. Разделитель - точка
    date_pay
    Описание:Локальная дата платежа
    Обязательный:Да
    Значение по-умолчанию:
    Регулярное выражение:^\d{4}-\d{2}-\d{2}(\s\d{2}:\d{2}:\d{2}){,1}$
    Тип значения:ГГГГ-ММ-ДД или ГГГГ-ММ-ДД чч:мм:сс
    keyt
    Описание:Номер счета для списания средств
    Обязательный:Да
    Значение по-умолчанию:
    Регулярное выражение:^@keyt@$
    Тип значения:15 цифр
    comment
    Описание:Комментарий получателю
    Обязательный:Нет
    Значение по-умолчанию:
    Регулярное выражение:^.{,255}$
    Тип значения:строка длиной до 255 символов
    auto_rate
    Описание:Автоматическая конвертация (1-разрешить конвертацию валют, 0-запретить)
    Обязательный:Нет
    Значение по-умолчанию:0
    Регулярное выражение:^[0-1]$
    Тип значения:0 или 1
    protect
    Описание:Установить код протекции
    Обязательный:Нет
    Значение по-умолчанию:0
    Регулярное выражение:^[0-1]$
    Тип значения:0 или 1
    protect_code
    Описание:Код протекции
    Обязательный:Нет
    Значение по-умолчанию:
    Регулярное выражение:^$|^.{3,60}$
    Тип значения:Строка от 3 до 60 символов
    protect_day
    Описание:Срок протекции (в днях)
    Обязательный:Нет
    Значение по-умолчанию:3
    Регулярное выражение:^\d{1,3}$
    Тип значения:Число до 3 цифр
    uin
    Описание:UIN получателя
    Обязательный:Да
    Значение по-умолчанию:
    Регулярное выражение:^.{2,100}$
    Тип значения:Строка до 100 символов

        Возвращаемое значение:
    Дополнительных параметров команда не возвращает




    check_uin

    Проверка существования UIN

        Подробное описание команды:
    Команда позволяет проверить, зарегистрирован ли пользователь в системе по его UIN

        Скрипт:
    https://deltakey.net/dkcp/notfin_service.py

        Дополнительные параметры команды:
    uin
    Описание:UIN
    Обязательный:Да
    Значение по-умолчанию:
    Регулярное выражение:^.{2,100}$
    Тип значения:Строка от 2 до 100 символов

        Возвращаемое значение:
    Дополнительно команда возвращает имя пользователя, его ID, номер его счета, возможность ввода средств в систему (name, uid, keyt и instat соответственно)




    check_keyt

    Проверка существования счета

        Подробное описание команды:
    Команда позволяет проверить, зарегистрирован ли пользователь в системе по номеру счета

        Скрипт:
    https://deltakey.net/dkcp/notfin_service.py

        Дополнительные параметры команды:
    keyt
    Описание:Счет
    Обязательный:Да
    Значение по-умолчанию:
    Регулярное выражение:^@keyt@$
    Тип значения:15 цифр

        Возвращаемое значение:
    Дополнительно команда возвращает имя пользователя, его ID, номер его счета, возможность ввода средств в систему (name, uid, keyt и instat соответственно)



    Вернуться назад