Инструменты пользователя

Инструменты сайта


api-for-pay-form

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Both sides previous revision Предыдущая версия
Следущая версия Both sides next revision
api-for-pay-form [2015/10/19 10:25]
admin
api-for-pay-form [2015/10/19 10:44]
admin
Строка 6: Строка 6:
  
 1) **Запрос на получение информации о платежной форме** (курсы обмена,​ комиссии,​ списки платежных интерфейсов,​ получение локализации ключей...) 1) **Запрос на получение информации о платежной форме** (курсы обмена,​ комиссии,​ списки платежных интерфейсов,​ получение локализации ключей...)
-GET запрос отправляется в формате JSON на url идентичный адресу платежной формы - https://​secure.onpay.ru/​pay/​merchant_login+**GET запрос** отправляется в формате JSON на url идентичный адресу платежной формы - https://​secure.onpay.ru/​pay/​merchant_login
  
 2) **Запрос на создание платежного ордера**. Ответом является инструкция для дальнейшего перенаправления плательщика для оплаты или показа инструкции. 2) **Запрос на создание платежного ордера**. Ответом является инструкция для дальнейшего перенаправления плательщика для оплаты или показа инструкции.
-POST запрос отправялется в формате JSON на url - https://​secure.onpay.ru/​pay+**POST запрос** отправялется в формате JSON на url - https://​secure.onpay.ru/​pay
  
 Шаг получения информации является НЕобязательным для создания платежного ордера. Но он необходим для получения свежих данных,​ в том числе о курсах обмена. Сайт магазина может делать его раз в сутки, либо после получения ошибки об изменении курса обмена,​ либо при изменении настроек платежных систем в своем кабинете. Шаг получения информации является НЕобязательным для создания платежного ордера. Но он необходим для получения свежих данных,​ в том числе о курсах обмена. Сайт магазина может делать его раз в сутки, либо после получения ошибки об изменении курса обмена,​ либо при изменении настроек платежных систем в своем кабинете.
  
 ===== Получение информации о платежной форме ===== ===== Получение информации о платежной форме =====
-Для получения информации следует отправить GET запрос в формате JSON на URL " https://​secure.onpay.ru/​pay/​merchant_login",​ где merchant_login - идентификатор сайта.+Для получения информации следует отправить ​**GET запрос** в формате JSON на URL " https://​secure.onpay.ru/​pay/​merchant_login",​ где merchant_login - идентификатор сайта.\\
 В ответ будет получен JSON следующего формата:​ В ответ будет получен JSON следующего формата:​
   {   {
Строка 34: Строка 34:
     "​errors":​ {     "​errors":​ {
         "​recipient":​ [         "​recipient":​ [
-            "​Для использования API платежной формы необходимо обратится в техническую поддержку Onpay для активации данного функционала для магазина"​+            "​Для использования API платежной формы необходимо обратиться в техническую поддержку Onpay для активации данного функционала для магазина"​
         ]         ]
     }     }
Строка 43: Строка 43:
 ==== Описание параметров ==== ==== Описание параметров ====
 === paysystem_interfaces === === paysystem_interfaces ===
-Значением является hash, ключами которого являются названия доступных и включенных интерфейсов оплаты(данные значения для использования в запросе на создание ордера как "​interface_ticker"​)\\+Значением является hash, ключами которого являются названия доступных и включенных интерфейсов оплаты (данные значения для использования в запросе на создание ордера как "​interface_ticker"​)\\
 Значениями ключей-интерфейсов является также хеш, содержащий 2 ключа:​\\ Значениями ключей-интерфейсов является также хеш, содержащий 2 ключа:​\\
 "​**paysystem**"​ - для определения комиссий и курсов обмена,​ а также списка дополнительных полей, "​**paysystem**"​ - для определения комиссий и курсов обмена,​ а также списка дополнительных полей,
Строка 63: Строка 63:
 "​**currency_code**"​ - 3-ех символьный код валюты (для отображения плательщику,​ если необходимо)\\ "​**currency_code**"​ - 3-ех символьный код валюты (для отображения плательщику,​ если необходимо)\\
 "​**convert_to**"​ - платежная система,​ в которую будет осуществлена автоконвертация,​ если не указана валюта в которую должен быть сконвертирован платеж. НЕ во все системы можно зачислять средства,​ поэтому в качестве значения поля "​ticker"​ в запросе на создание ордера необходимо использовать только значения из данного поля, а не любую из платежных систем.\\ "​**convert_to**"​ - платежная система,​ в которую будет осуществлена автоконвертация,​ если не указана валюта в которую должен быть сконвертирован платеж. НЕ во все системы можно зачислять средства,​ поэтому в качестве значения поля "​ticker"​ в запросе на создание ордера необходимо использовать только значения из данного поля, а не любую из платежных систем.\\
-"​**commissions**"​ - комиссии платежной системы,​ содержит 3 параметра:​ pip - процентная комиссия,​ pif - фиксированная комиссия,​ mci - минимальная комиссия.\\+"​**commissions**"​ - комиссии платежной системы,​ содержит 3 параметра:​\\ 
 +**pip** - процентная комиссия,​\\ 
 +**pif** - фиксированная комиссия,​\\ 
 +**mci** - минимальная комиссия.\\
 "​**exchange_rates**"​ - курсы обмена,​ представленные в виде хеша вида: {"​USD":​0.01597,"​RUR":​1.0}. Такая запись означает,​ что одна единица в данной платежной системе может быть обменяна на 0.01597 единиц в валюте USD или на 1.0 в валюте RUR.\\ "​**exchange_rates**"​ - курсы обмена,​ представленные в виде хеша вида: {"​USD":​0.01597,"​RUR":​1.0}. Такая запись означает,​ что одна единица в данной платежной системе может быть обменяна на 0.01597 единиц в валюте USD или на 1.0 в валюте RUR.\\
  
Строка 110: Строка 113:
 Список полей находится по ключу "​**data**",​ кроме данного ключа могут присутствовать другие,​ а именно именования интерфейсов оплаты. Список полей находится по ключу "​**data**",​ кроме данного ключа могут присутствовать другие,​ а именно именования интерфейсов оплаты.
  
-Пример выше расшифровывается как: +Пример выше расшифровывается как:\\ 
-''​Для платежной системы BBR 4 дополнительных поля: first_name, middle_name,​ last_name, address. +Для платежной системы BBR 4 дополнительных поля: first_name, middle_name,​ last_name, address.\\ 
-Следовательно для всех интерфейсов данной системы их необходимо передавать,​ за исключением платежного интерфейса "​SBR"​ (передан отдельным ключом).''​ +Следовательно для всех интерфейсов данной системы их необходимо передавать,​ за исключением платежного интерфейса "​SBR"​ (передан отдельным ключом).\\ 
 +\\
 Следует отметить,​ что у ключа интерфейса может быть свой вложенный ключ "​data",​ в этом случае для данного интерфейса используются поля из вложенного hash-а (запись в том же формате) Следует отметить,​ что у ключа интерфейса может быть свой вложенный ключ "​data",​ в этом случае для данного интерфейса используются поля из вложенного hash-а (запись в том же формате)
  
Строка 277: Строка 280:
  
 === Пример расчета для интерфейса оплаты SBR === === Пример расчета для интерфейса оплаты SBR ===
-**1) SBR принадлжеит платежной системе BBR, значит для расчета суммы берем курсы обмена из этой платежной системы**+**1) SBR принадлежит платежной системе BBR, значит для расчета суммы берем курсы обмена из этой платежной системы**
  
   "​exchange_rates":​   "​exchange_rates":​
Строка 378: Строка 381:
   }   }
  
-Маски для первичной валидации и сообщения об ошибках для дополнительных полей можно получить при помощи запроса информации. +Маски для первичной валидации и сообщения об ошибках для дополнительных полей можно получить при помощи запроса информации.\\ 
-Значениями поля "​user_phone.code"​ может быть одно из значений кодов стран из запроса на получение информации. Для некоторых платежных интерфейсов список кодов ограничивается (см. в разделе *additional_params*)+Значениями поля "​user_phone.code"​ может быть одно из значений кодов стран из запроса на получение информации. Для некоторых платежных интерфейсов список кодов ограничивается (см. в разделе *additional_params*)\\
  
 ==== Ответ ==== ==== Ответ ====
Строка 389: Строка 392:
   "​errors":​ {}   "​errors":​ {}
   }   }
-Гдеодно из полейerrors, redirect_to или po_psi_data_request НЕ пустое(НЕ пустыми могут быть несколько полей).+Где одно или несколько из полей ​из **errors****redirect_to** или ​**po_psi_data_request** НЕ пустое(-ые).
  
 Алгоритм обработки ответа:​\\ Алгоритм обработки ответа:​\\
-**Если НЕ пустое "​errors"​** сайт магазина должен отобразить ошибки плательщику и переформировать данные для отправки(пример:​ в случае отсутствия обязательного поля - заполнить данное поле). ​(подробнее ​читать ​в разделе "​errors"​)\\+**Если НЕ пустое "​errors"​** сайт магазина должен отобразить ошибки плательщику и переформировать данные для отправки (пример:​ в случае отсутствия обязательного поля - заполнить данное поле). ​Подробнее ​см. в разделе "​errors"​)\\
 **Иначе**\\ **Иначе**\\
 \\ \\
Строка 418: Строка 421:
     }     }
  
-Ключ ошибки - это поле, значение которого неверно.\\ +**Ключ ошибки** - это поле, значение которого неверно.\\ 
-Значение - массив текстов ошибок.\\+**Значение** - массив текстов ошибок.\\
 Иногда текст ошибки представлен в виде ключа для локализации,​ пример:​ "​pay_form_add_p_message.first_name"​. В таких случаях перевод нужно брать из файлов локализации,​ url которых можно получить при помощи запроса получения информации.\\ Иногда текст ошибки представлен в виде ключа для локализации,​ пример:​ "​pay_form_add_p_message.first_name"​. В таких случаях перевод нужно брать из файлов локализации,​ url которых можно получить при помощи запроса получения информации.\\
 \\ \\
Строка 452: Строка 455:
             "​order_id"​="​123"​             "​order_id"​="​123"​
             "​sum"​=103.09             "​sum"​=103.09
-При этом сайт магазина должен передавать значения полей в неизменяемом виде(соблюдая типы данных и не применяя дополнительных функций(округление,​ изменение регистра)) +При этом сайт магазина должен передавать значения полей в неизменяемом виде (соблюдая типы данных и не применяя дополнительных функций(округление,​ изменение регистра)) 
-hash кроме ключей route и data может содержать дополнительные ключи, сайт магазина должен игнорировать их.+Данный ​hash кроме ключей route и data может содержать дополнительные ключи, сайт магазина должен игнорировать их.
api-for-pay-form.txt · Последние изменения: 2015/10/19 11:25 — admin