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

Консультанты
ON-LINE


743884 - Павел

369677 - Мария

570915 - Евгения

658202 - Ася


Оборудование
Комиссия дилеров
Главная

Мерчант


В данном разделе представлена информация для разработчиков программного обеспечения, в том числе описания протоколов поставщиков услуг, электронных магазинов (мерчант), пунктов обмена валют, стандарта обмена данными альтернативного программного обеспечения с серверами Delta Key.

Регистрация и настройка электронного магазина
Переадресация пользователя на мерчант для осуществления платежа
Получение результатов оплаты
Возврат на сайт магазина после завершения операции
Примеры реализации

Регистрация и настройка электронного магазина


Операция приема платежей на сайте возможно только для зарегистрированных в системе электронных магазинов.

Описание процесса регистрации и настройки электронного магазина в различных типах клиентского программного обеспечения:

  • Регистрация и настройка электронного магазина в "Delta Key Classic"

  • Регистрация и настройка электронного магазина в Системе мониторинга и статистики

  • Регистрация и настройка электронного магазина в Интернет-кабинете


    В числе прочих сведений при регистрации электронного магазина пользователь должен указать следующие данные:

  • skeys - секретный ключ, используется для проверки целостности и достоверности передаваемых данных платежной системой (при отправке магазином пользователя на мерчант) и магазином (при получении результатов платежа);
  • url_result - адрес, на который поступают результаты оплаты;
  • url_success - адрес страницы, которая открывается после завершения платежа;
  • url_fail - адрес страницы, которая открывается при НЕ успешном платеже (отказ от оплаты);
  • method_result - метод передачи данных на url_result (POST или GET);
  • method_success - метод передачи данных на url_success (POST, GET или LINK);
  • method_fail - метод передачи данных на url_fail (POST, GET или LINK).

    В настройках магазина нет привязки к какому-либо счету, так как в зависимости от принимаемой магазином валюты может использоваться соответствующий счет.

    Переадресация пользователя на мерчант для осуществления платежа


    Для переадресации пользователя на мерчант платежной системы "Delta Key" необходимо передать на URL https://deltakey.biz/merchant/index.py следующие данные:

  • keyt_shop - номер счета получателя. Данный счет определяет, в какой валюте необходимо совершить платеж. При этом пользователь может совершить платеж со своего счета в любой валюте, средства будут автоматически сконвертированы в валюту получателя; длинное целое, 15 цифр;
  • num_shop - номер электронного магазина, выданный при регистрации; целое число;
  • sum - сумма получателя в валюте счета получателя; дробное число, точность два знака, разделитель - точка;
  • ext_transact - номер внешней транзакции. Всегда должен быть уникальным для данного магазина; длинное целое, до 19 цифр;
  • comment - комментарий, отображаемый плательщику; строка до 255 символов;

    Внимание! Недопустимым является присутствие в комментарии символа ' < одинарная_кавычка > или " < двойная_кавычка >

  • identified - для электронных магазинов всегда равен 1; целое число, 1 цифра;
  • sign - подпись сообщения с использованием секретного ключа;
  • неограниченное количество других параметров, которые будут переданы на скрипт результата платежа (result_url), отчете об ошибке (fail_url) или страницу успешного платежа (success_url).

    Метод передачи данных может быть POST или GET.

    Пример формы для размещения на странице:

    <FORM method="post" action="https://deltakey.biz/merchant/index.py">
    <input type=hidden name="keyt_shop" value="810000000000001">
    <input type=hidden name="num_shop" value="316">
    <input type=hidden name="sum" value="10">
    <input type=hidden name="ext_transact" value="316368200711221430">
    <input type=hidden name="comment" value="Оплата товара">
    <input type=hidden name="identified" value=1>
    <input type=hidden name="sign" value="40dda8fa5fa407370dc0142673e9f4f5">
    <input type=submit value="Оплатить">
    </FORM>
    

    Сигнатура вычисляется путем склейки передаваемых параметров и хеширования их методом hmac с использованием секретного ключа. Количество и порядок склейки параметров строго определены:

    ext_transact + num_shop + keyt_shop + identified + sum + comment

    Описание метода HMAC
    Проверка формирования подписи

    Получение результатов оплаты


    После совершения платежа результаты оплаты отправляются на скрипт, указанный при регистрации магазина (result_url). При этом на этот скрипт отправляются данные как об успешном платеже, так и в случае возникновения ошибки.

    Отправляются следующие данные:

  • ext_transact - номер внешней транзакции, переданный магазином при отправке на мерчант;
  • sum - сумма платежа; должна быть равна сумме, переданной магазином, в противном случае настоятельно рекомендуется результат не принимать и сообщить в службу безопасности платежной системы Delta Key с указанием параметров платежа;
  • comment - комментарий, переданный магазином при отправке на мерчант;
  • num_shop - номер магазина;
  • keyt_shop - счет получателя (магазина);
  • sign - подпись сообщения сервера платежной системы;
  • identified - идентификатор, всегда равен 1;
  • transact - номер транзакции сервера Delta Key; в случае ошибки равен нулю; всегда уникальное число, в целях безопасности рекомендуется проверять на уникальность;
  • status - статус платежа; значения, не равные 2, обозначают ошибку; значение, равное 2 - не всегда успех, а только когда result = 0;
  • status_text - текстовая расшифровка статуса;
  • result - результат обработки (код ошибки); в случае успеха равен 0, иначе - ошибка;
  • result_text - текстовая расшифровка результата;
  • id_pay - ID плательщика;
  • keyt_pay - счет плательщика;
  • + дополнительные параметры в любом количестве, переданные магазином при посылке на мерчант.

    Сигнатура вычисляется путем склейки передаваемых параметров и хеширования их методом hmac с использованием секретного ключа. Количество и порядок склейки параметров строго определены:

    transact + status + result + ext_transact + num_shop + keyt_shop + identified + sum + comment

    Следует обратить внимание, что дополнительные параметры не участвуют в сигнатуре, поэтому могут быть подменены злоумышленниками. Следовательно, они не должны использоваться магазином в качестве достоверных данных и участвовать в финансовой логике, если только логика их формирования, проверки и использования не представляется пользователю достаточно безопасной.

    Описание метода HMAC
    Проверка подписи сервера о результатах оплаты

    В случае, если скрипт получения результатов проверил все данные и успешно выполнился, он должен напечатать единственную строку "ok" или "+" для сообщения серверу платежной системы об успешности выполнения. При отсутствии любой из приведенных строк операция проведения платежа через мерчант будет отменена и пользователю будет выдана ошибка "Поставщик услуг не может принять платеж".

    Возврат на сайт магазина после завершения операции


    В случае, если плательщик отказывается от оплаты либо операция завершена с ошибкой, платежная система предлагает ему перейти на страницу, указанную в параметре fail_url, если же операция завершена успешно, то осуществляется переход на страницу success_url. На эти скрипты также могут быть переданы результаты платежа, если в настройках магазина указаны в качестве метода передачи POST или GET (но не LINK).

    Передаваемые параметры о результате операции, дополнительные параметры, а также подпись, формируемая в результате передачи (параметр sign) соответствуют аналогичным параметрам передачи данных на result_url (см.раздел Получение результатов оплаты).

    Примеры реализации


    Пример реализации протокола мерчанта на языке PHP (Демонстрационный магазин).

    Скачать скрипты примера реализации протокола мерчанта на языке PHP


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


    Партнерам


    Поставщикам услуг
    Электронным магазинам
    Обменным пунктам валют
    Банкам
    Дилерам по приему платежей
    Комиссия за прием платежей
    Дилерам по персонализации
    Разработчикам ПО
    Логотипы, баннеры и кнопки