Это старая версия документа.
Для того чтобы автоматически выставить счет за определенный товар на определенную сумму можно использовать механизм создания ссылок-счетов с использованием 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.
В случае успеха статус ответа будет 200 и в теле ответа будет сгенерированная ссылка.
В случае неудачи статус ответа будет 400 и в теле ответа будет объяснение причины.
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 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"
}