Счета приложения
Разовый счёт позволяет получить оплату от владельца магазина через InSales. Размер комиссии согласуется при публикации приложения.
Оплата проходит в следующем порядке:
- Пользователь соглашается выполнить платное действие.
- Приложение создаёт счёт и открывает в браузере пользователя
confirmation_urlиз ответа. - Пользователь оплачивает или отклоняет счёт на странице InSales.
- InSales один раз вызывает
return_url, чтобы уведомить приложение о результате.
Повторной доставки уведомления нет. Периодически проверяйте состояние счетов, по которым уведомление не пришло, например раз в сутки.
Методы — ApplicationCharge в справочнике. Периодическая оплата — отдельный ресурс, см. периодические счета.
Поля
name— назначение платежаprice— суммаreturn_url— адрес уведомленияtest— тестовый счёт, оплату можно подтвердить без реального платежаconfirmation_url— адрес страницы оплаты, который API возвращает при создании счётаstatus—pending,acceptedилиdeclined
Создание
POST /admin/application_charges.json
{
"application_charge": {
"name": "Sms 200",
"price": 180.0,
"return_url": "https://myapp.example/charges/15",
"test": true
}
}
Ответ 201:
{
"id": 1,
"name": "Sms 200",
"price": "180.0",
"return_url": "https://myapp.example/charges/15",
"test": true,
"status": "pending",
"confirmation_url": "http://SHOP/admin/application_charges/1",
"created_at": "2026-09-26T13:21:27.639+03:00",
"updated_at": "2026-09-26T13:21:27.639+03:00"
}
Перенаправьте браузер пользователя на confirmation_url из ответа. Используйте полученный адрес целиком.
Включите в return_url внутренний идентификатор счёта в вашем приложении. При получении уведомления найдите по нему идентификатор счёта InSales и запросите текущее состояние счёта через API.
Чтение и список
GET /admin/application_charges/:id.json
GET /admin/application_charges.json — счета этого приложения.
Отклонение
POST /admin/application_charges/:id/decline.json с заголовком Content-Type: application/json.
Отклонить можно неоплаченный счёт. API возвращает объект счёта со status: declined.