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

pay_amount - сумма счета
pay_for - назначение платежа
currency - тикер валюты оплаты
user_login - логин пользователя
user_email - адрес электронной почты плательщика (не обязательно)
one_way - форма оплаты одним способом (тикер валюты) (не обязательно)
price_final - комиссию платежной системы взымать с продавца (true или false)
pay_type - конвертировать все платежи в выбранную валюту (1 - да, 2 - нет)
notify_by_api - проверять возможность оплаты через API мерчанта
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 мерчанта
В случае успеха статус ответа будет 200 и в теле ответа будет сгенерированная ссылка.
В случае неудачи статус ответа будет 400 и в теле ответа будет объяснение причины.
Причины могут быть следующие: неправильный md5 или ошибки при сохранении счета (зависит от валидации).