Содержание

Выставление счета через API

Для того чтобы автоматически выставить счет за определенный товар на определенную сумму можно использовать механизм создания ссылок-счетов с использованием API Onpay. А можно просто вручную сделать ссылку через интерфейс Кабинета продавца https://secure.onpay.ru/payment_links - для этого не потребуется никаких специальных знаний.

Параметры

Для получения ссылки (счета) необходимо отправить запрос (GET или POST) на адрес https://secure.onpay.ru/pay/make_payment_link со следующими параметрами:

Параметр формат Описание
pay_amount число, разделитель - точка, будет округлено до 2 знаков после разделителя сумма счета
pay_for строка назначение платежа
one_way строка форма оплаты одним способом (тикер валюты) (не обязательно)
ticker строка 3-символьное обозначение валюты оплаты(в верхнем регистре)
user_login строка логин магазина в системе Onpay
user_email строка адрес электронной почты плательщика (не обязательно)
price_final строка, «1» или «0»(по умолчанию «0») если «1», комиссия платежной системы будет взыматься с продавца
pay_type целое число, 1 или 2 конвертировать все платежи в выбранную валюту (1 - да, 2 - нет)
notify_by_api строка, «1» или «0» проверять возможность оплаты через API мерчанта (Если «1» - при оплате мерчант получит запрос через указанный им в зеленом кабинете URL API IN. Если на запрос не будет ответа или ответ будет негативным, оплата не пройдет)
md5 строка строка, полученная вычислением MD5 от конкатенации pay_amount, pay_for, ticker, user_login, price_final, pay_type, notify_by_api, api_in_key, разделенных двоеточием (:) перед взятием мд5 надо привести к верхнему регистру

Все параметры, содержащие символы не относящиеся к ASCII должны быть переданы в кодировке utf8.
ВНИМАНИЕ! НЕ применяйте функцию base64, CGI и CGI (UTF8), не пишите транслитом, не придумывайте отсебятину, делайте как написано.

В случае успеха статус ответа будет 200 и в теле ответа будет сгенерированная ссылка.
В случае неудачи статус ответа будет 400 и в теле ответа будет объяснение причины.

Пример 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&notify_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" 
}