Здесь показаны различия между двумя версиями данной страницы.
Следущая версия | Предыдущая версия Следущая версия Both sides next revision | ||
api-bills [2011/09/13 09:36] admin создано |
api-bills [2014/09/26 10:53] admin [Параметры] |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | Для того чтобы выставить счет за определенный товар на определенную сумму следует использовать механизм создания ссылок-счетов с использованием API Onpay.\\ | + | Для того чтобы автоматически выставить счет за определенный товар на определенную сумму можно использовать механизм создания ссылок-счетов с использованием API Onpay. А можно просто вручную сделать ссылку через интерфейс Кабинета продавца https://secure.onpay.ru/payment_links - для этого не потребуется никаких специальных знаний.\\ |
\\ | \\ | ||
+ | ==== Параметры ==== | ||
Для получения ссылки (счета) необходимо отправить запрос (GET или POST) на адрес https://secure.onpay.ru/pay/make_payment_link со следующими параметрами:\\ | Для получения ссылки (счета) необходимо отправить запрос (GET или POST) на адрес https://secure.onpay.ru/pay/make_payment_link со следующими параметрами:\\ | ||
- | + | **pay_amount** - сумма счета\\ | |
- | pay_amount - сумма счета\\ | + | **pay_for** - назначение платежа\\ |
- | pay_for - назначение платежа\\ | + | **one_way** - форма оплаты одним способом (тикер валюты) (не обязательно)\\ |
- | user_email - адрес электронной почты плательщика (не обязательно)\\ | + | **ticker** - тикер валюты оплаты\\ |
- | currency - тикер валюты оплаты\\ | + | **user_login** - адрес платежной формы (обычно тот же, что и логин пользователя)\\ |
- | user_login - логин пользователя\\ | + | **user_email** - адрес электронной почты плательщика (не обязательно)\\ |
- | one_way - форма оплаты одним способом (тикер валюты) (не обязательно)\\ | + | **price_final** - комиссию платежной системы взымать с продавца (true или false)\\ |
- | price_final - комиссию платежной системы взымать с продавца (true или false)\\ | + | **pay_type** - конвертировать все платежи в выбранную валюту (1 - да, 2 - нет)\\ |
- | pay_type - конвертировать все платежи в выбранную валюту (1 - да, 2 - нет)\\ | + | **notify_by_api** - проверять возможность оплаты через API мерчанта (Если "1" - при оплате мерчант получит запрос через указанный им в зеленом кабинете URL API IN. Если на запрос не будет ответа или ответ будет негативным, оплата не пройдет)\\ |
- | notify_by_api - проверять возможность оплаты через API мерчанта\\ | + | **md5** - строка, полученная вычислением MD5 от конкатенации pay_amount, pay_for, ticker, user_login, price_final, pay_type, notify_by_api, api_in_key, разделенных двоеточием (:)\\ |
- | md5 - строка, полученная вычислением MD5 от конкатенации pay_amount,pay_for,currency,user_login,one_way,price_final,pay_type,notify_by_api,api_in_key разделенных двоеточием (:)\\ | + | |
\\ | \\ | ||
- | где api_in_key - пароль для API мерчанта\\ | + | Все параметры, содержащие символы не относящиеся к ASCII должны быть переданы в кодировке utf8.\\ |
\\ | \\ | ||
В случае успеха статус ответа будет 200 и в теле ответа будет сгенерированная ссылка.\\ | В случае успеха статус ответа будет 200 и в теле ответа будет сгенерированная ссылка.\\ | ||
В случае неудачи статус ответа будет 400 и в теле ответа будет объяснение причины.\\ | В случае неудачи статус ответа будет 400 и в теле ответа будет объяснение причины.\\ | ||
\\ | \\ | ||
- | Причины могут быть следующие: неправильный md5 или ошибки при сохранении счета (зависит от валидации).\\ | + | Причины могут быть следующие: неправильный MD5 или ошибки при сохранении счета (зависит от валидации).\\ |
+ | \\ | ||
+ | ==== Форматы параметров ==== | ||
+ | **pay_amount**: число, разделитель - точка, будет округлено до 2 знаков после разделителя\\ | ||
+ | **pay_for**: строка \\ | ||
+ | **user_email**: строка\\ | ||
+ | **ticker**: строка, 3-символьное обозначение валюты оплаты(в верхнем регистре)\\ | ||
+ | **user_login**: строка, логин магазина в системе Onpay)\\ | ||
+ | **one_way**: строка, 3-символьное обозначение валюты для оплаты одним способом\\ | ||
+ | **price_final**: булевское значение, значения '1', 'true', 'TRUE', 't', 'T' будут интерпретированы как "да", любые другие - как "нет" (в том числе, к примеру 'True' дает false)\\ | ||
+ | **pay_type**: 1 или 2, любое другое значение вызовет ошибку\\ | ||
+ | **notify_by_ap**i: строка, '1' или '0'\\ | ||
+ | **md5 - строка**\\ | ||
+ | \\ | ||
+ | **Все параметры, содержащие символы не относящиеся к ASCII должны быть переданы в кодировке utf8.**\\ | ||
+ | ==== Пример GET запроса ==== | ||
+ | |||
+ | https://secure.onpay.ru/pay/make_payment_link?pay_amount=100&pay_for=Order%20342&user_email=user@pochta.ru&ticker=RUR&user_login=onpay&price_final=true&md5=cf653b4c4a7861b2224bd31eb3e3f291&pay_type=1¬ify_by_api=true \\ | ||
+ | |||
+ | ==== Пример POST запроса ==== | ||
+ | \\ | ||
+ | POST https://secure.onpay.ru/pay/make_payment_link { | ||
+ | "price_final"=>"true", | ||
+ | "user_login"=>"onpay", | ||
+ | "notify_by_api"=>"true", | ||
+ | "pay_type"=>"1", | ||
+ | "pay_amount"=>"100", | ||
+ | "ticker"=>"RUR", | ||
+ | "md5"=>"cf653b4c4a7861b2224bd31eb3e3f291", | ||
+ | "pay_for"=>"Order 342", | ||
+ | "user_email"=>"user@pochta.ru" | ||
+ | } |