API для взаимодействия Интернет-магазина с онлайн-кассой.
Архитектура API касcы
API для касcы — программный интерфейс системы для взаимодействия с онлайн-кассой.
API использует REST архитектуру. Параметры передаются методом POST в формате JSON, кодировке UTF-8 с обязательным указанием заголовка Content-Type: application/json.
https://kassa.shop-ctrl.ru/api/1/api.php - адрес для отправки запросов.
Запрос состояния можно также получать в виде GET запроса. Более подробно об это см. в Получения информации о формировании чека платежа
Пример данных (Формирование кассового чека):
data:
{
"token":"862df162a3c25c339f26a97c462dd",
"app":"39464",
"comment":"интернет заказ",
"operation":"print",
"cashier":"Иванов В.В.",
"site":"www.internet-mag.ru",
"priority":1000,
"email":"customer@mail.ru",
"contents": [
{
"productName":"Супер товар",
"code":"1b12152",
"price":34,
"quantity":1,
"discount":0,
"nds":""
},
{
"productName":"Классный товар",
"code":"1b123152",
"price":3100,
"quantity":3,
"discount":50,
"nds":"18"
}
],
"nc_sum":9334,
"exterNum":"34789" }Ответ система выдает в JSON формате, который как минимум включает в себя три параметра: result, code и info:
{"result":"ok","code":"007","info":"Сохранено!"} Параметры
| Параметр | Формат | Применение | Описание |
|---|---|---|---|
| token | String | Обязательный | токен - секретный ключ доступа к API. См. в личном кабинете ( Кабинет > Настройки > Профиль) |
| app | String | Обязательный | код виртуальной кассы (# кассы) к которой привязан фискальный регистратор. См. его тут ( Магазины > Список онлайн-касс) |
| operation | String | Обязательный | Обращения к кассе на выполнение операции. Команды: print - проведение товара, status - запрос состояния и т.д.Более подробно об этом тут |
| site | String | Необязательный | Название сайта интернет-магазина или его адрес в сети. |
| String | Обязательный | E-mail плательщика на который будет отправлена квитанция об оплате | |
| cellphone | String | Необязательный | Мобильный номер плательщика. |
| comment | String | Необязательный | Комментарий оплаты. |
| contents | Json | Обязательный для "operation":"print", "operation":"refund" | Данные о покупке состоящий из одного и более массивов. Поля: productName (String) - наименование товара, code (String) - код (артикул или штрих-код) товара, price (Numeric) - цена товара (в руб.), quantity (Numeric) - количество, discount (Numeric) - скидка (в руб.), nds (String) - Ставка налога(по умолчанию - без НДС) . Возможные значения:
Более подробно об этом тут |
| nc_sum | Numeric | Обязательный | Non-cash sum - сумма всех позиций. |
| priority | Numeric | Необязательный | Приоритет выполнения из очереди, от 0 до 100000. Чем больше число, тем выше приоритет. |
| exterNum | String | Необязательный | Идентификатор операции в вашей системе. Возвращается в ответе для контроля. |