Печатный шаблон
> СерверККМ V4 > REST API > Работа с ККМДата обновления: 7 августа 2026 г.
POST template
Создание печатного шаблона
URL: {{HTTPRoot}}/template
Тело запроса
{
"Name": "Template32",
"Type": 1,
"TemplateItems": [
{
"PrintLine": {
"Type": 1,
"Line": "Текст",
"LineRight": "Информация",
"Alignment": 1,
"Font": 5,
"Wrap": true
}
},
{
"PrintLine": {
"Type": 1,
"Line": "Сумма",
"LineRight": "1 250,00",
"Alignment": 0,
"Font": 0,
"Wrap": false
}
},
{
"PrintLine": {
"Type": 4,
"SeparatorLine": {
"LineStyle": 0
}
}
},
{
"PrintLine": {
"Type": 2,
"Alignment": 1,
"Barcode": {
"Type": "QR",
"Value": "https://www.rbsoft.ru/",
"PrintText": 0,
"Height": 30,
"BarWidth": 6
}
}
},
{
"PrintLine": {
"Type": 3,
"Alignment": 1,
"Scale": 100,
"Picture": {
"PictureBase64": "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mP8z8BQDwAEhQGAhKmMIQAAAABJRU5ErkJggg==",
"Alignment": 2,
"Width": 200,
"Height": 80
}
}
}
]
}
| Имя поля | Тип | Обяз | Назначение | Пример |
|---|---|---|---|---|
| Name | string | + | Имя шаблона. Используется как уникальный идентификатор шаблона на сервере. Имя должно быть уникальным — создание шаблона с уже существующим именем не допускается. Поле является обязательным и не может быть пустым. Разрешённые символы: a-zA-Z0-9_-(). Использование пробелов не допускается. | “name120” |
| Type | int | + | Тип шаблона: 0 — Реклама; 1 — Строки чека; 2 — Шапка или подвал чека |
1 |
| TemplateItems | Список AdvItem | + | Строки шаблона (только нефискальные поля) | “TemplateItems”: [ { “PrintLine”: { “Type”: 1, “Line”: “Текст”, “LineRight”: “”, “Alignment”: 1, “Font”: 5, “Wrap”: true } }, { “PrintLine”: { “Type”: 1, “Line”: “Сумма”, “LineRight”: “1 250,00”, “Alignment”: 0, “Font”: 0, “Wrap”: false } }, { “PrintLine”: { “Type”: 4, “SeparatorLine”: { “LineStyle”: 0 } } }, { “PrintLine”: { “Type”: 2, “Alignment”: 1, “Barcode”: { “Type”: “QR”, “Value”: “https://www.rbsoft.ru/”, “PrintText”: 0, “Height”: 30, “BarWidth”: 6 } } }, { “PrintLine”: { “Type”: 3, “Alignment”: 1, “Scale”: 100, “Picture”: { “PictureBase64”: “iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mP8z8BQDwAEhQGAhKmMIQAAAABJRU5ErkJggg==”, “Alignment”: 2, “Width”: 200, “Height”: 80 } } } ] |
AdvItem
| Имя поля | Тип | Обяз | Назначение | Пример |
|---|---|---|---|---|
| PrintLine | PrintLine | + | Строка печати | “PrintLine”: |
Тип: PrintLine
| Имя поля | Тип | Обяз | Назначение | Пример |
|---|---|---|---|---|
| Type | int | + | Тип строки. 0 — фискальная строка; 1 — текстовая строка; 2 — штрихкод; 3 — изображение; 4, Line — линия. Если не указано — принимается значение 1 (TextString). |
1 |
| Width | int | - | Ширина. Если не указано — 0 (ширина по содержимому). |
0 |
| Scale | int | - | Масштаб. Если не указано — применяется масштаб 100%. |
100 |
| Line | string | - | Текст строки (левая часть) | “Текст” |
| LineRight | string | - | Текст строки (правая часть) | “Информация” |
| Alignment | int | - | Выравнивание. 0 — выравнивание по левому краю; 1 — Выравнивание по центру; 2 — Выравнивание по правому краю; 3 — По ширине. Если не указано — по левому краю. |
1 |
| Font | int | - | Шрифт. 0 — Шрифт для обычных строк; 1 — Жирный шрифт; 2 — Мелкий шрифт; 3, Medium — Средний шрифт; 4, Big — Крупный шрифт; 5 — Стиль заголовка первого уровня (H1); 6 — Стиль заголовка второго уровня (H2); 7 — Стиль заголовка третьего уровня (H3); 8 — Стиль заголовка четвёртого уровня (H4); 9 — Стиль заголовка пятого уровня (H5). Если не указано — 0 (Normal). |
0 |
| Wrap | bool | - | Признак переноса строк. false - строка обрезается; true - строка переносится. Если не указано — принимается значение true. |
true |
| Barcode | Barcode | - | Штрихкод | “Barcode”: { “Type”: “QR”, “Value”: “https://www.rbsoft.ru/”, “PrintText”: 0, “Height”: 30, “BarWidth”: 6 } |
| SeparatorLine | SeparatorLine | - | Разделительная линия | “SeparatorLine”: |
| Picture | Picture | - | Картинка | “Picture”: |
Тип: Barcode
| Имя поля | Тип | Обяз | Назначение | Пример |
|---|---|---|---|---|
| Type | string | + | Тип штрихкода. Возможные значения: UPCA, CODE39, EAN13, EAN8, UPCE, ITF, CODABAR, CODE93, CODE128, PDF417, CODE32, QR |
“QR” |
| Value | string | + | Значение штрихкода | “t=20260522T1506&s=50.00&fn=9999078902010507&i=343&fp=1352614355&n=1” |
| PrintText | int | - | Задает способ печати текста штрихкода(только для одномерных штрихкодов). 0 — не печатать 1 — печатать снизу 2 — печатать сверху 3 — печатать сверху и снизу. Если не указано — 0. |
1 |
| Height | int | - | Высота штрихкода в точках. Допустимые значения свойства: 0..1199 |
100 |
| BarWidth | int | - | Ширина штриха в точках Допустимые значения свойства: 0..1199 Рекомендуемое значение – 2. |
100 |
Тип: Picture
| Имя поля | Тип | Обяз | Назначение | Пример |
|---|---|---|---|---|
| PictureBase64 | string | + | Изображение закодированное в Base64 | “iVBORw0KGgoAAAANSUhEUgA…” |
| Alignment | int | - | Выравнивание: 1 - по левому краю; 2 - по центру(по умолчанию); 3 - по правому краю. Если не указано — 2 (по центру). |
2 |
| Width | int | - | Ширина изображения при печати, в точках | 200 |
| Height | int | - | Высота изображения при печати, в точках | 80 |
Тип: SeparatorLine
| Имя поля | Тип | Обяз | Назначение | Пример |
|---|---|---|---|---|
| LineStyle | int | + | Стиль разделительной линии: 0 — сплошная линия(по умолчанию); 1 — жирная линия; 2 — штриховая линия; 3 — пунктирная линия; 4 — двойная линия. Если не указано — 0 (сплошная). |
1 |
Тело ответа
200 OK
{
"Result": "name120",
"Code": 0,
"Description": "OK",
"Success": true
}
Result
| Имя поля | Тип | Обяз | Назначение | Пример |
|---|---|---|---|---|
| Result | string | - | Название шаблона. Данное значение можно использовать для GET или DELETE-запроса template, чтобы получить более подробную информацию или удалить созданный печатный шаблон. | “name7” |
Примеры ошибок
72 Имя шаблона не указано
{
"Code": 72,
"Description": "Имя шаблона не указано.",
"Success": false
}
72 Имя шаблона уже используется
{
"Code": 72,
"Description": "Не удалось создать шаблон: Имя шаблона 'area' уже используется..",
"Success": false
}
PUT template
Редактирование печатного шаблона по его уникальному названию (Name)
URL: {{HTTPRoot}}/template
Тело запроса
{
"Name": "name120",
"Type": 0,
"TemplateItems": [
{
"PrintLine": {
"Type": 1,
"Line": "Текс222т",
"LineRight": "",
"Alignment": 1,
"Font": 5,
"Wrap": true
}
},
{
"PrintLine": {
"Type": 1,
"Line": "Сумма",
"LineRight": "1 250,00",
"Alignment": 0,
"Font": 0,
"Wrap": false
}
},
{
"PrintLine": {
"Type": 4,
"SeparatorLine": {
"LineStyle": 0
}
}
},
{
"PrintLine": {
"Type": 2,
"Alignment": 1,
"Barcode": {
"Type": "QR",
"Value": "https://www.rbsoft.ru/",
"PrintText": 0,
"Height": 30,
"BarWidth": 6
}
}
},
{
"PrintLine": {
"Type": 3,
"Alignment": 1,
"Scale": 100,
"Picture": {
"PictureBase64": "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mP8z8BQDwAEhQGAhKmMIQAAAABJRU5ErkJggg==",
"Alignment": 2,
"Width": 200,
"Height": 80
}
}
}
]
}
Смотрите документацию POST-запроса template
Тело ответа
200 OK
{
"Code": 0,
"Description": "OK",
"Success": true
}
Примеры ошибок
72 Имя шаблона не указано
{
"Code": 72,
"Description": "Имя шаблона не указано.",
"Success": false
}
DELETE template?id=name1221212121220
Удаление шаблона по названию
URL: {{HTTPRoot}}/template?id=name1221212121220
Параметры запроса
| Имя поля | Тип | Обяз | Назначение | Пример |
|---|---|---|---|---|
| id | string | + | Название печатного шаблона | base_header |
Тело ответа
200 OK
{
"Code": 0,
"Description": "OK",
"Success": true
}
Примеры ошибок
72 Файл шаблона не найден
{
"Code": 72,
"Description": "Не удалось удалить шаблон: Файл шаблона 'name1221212121220' не найден.",
"Success": false
}
72 Имя шаблона не указано
{
"Code": 72,
"Description": "Имя шаблона не указано.",
"Success": false
}
GET template/list
Получение списка печатных шаблонов
URL: {{HTTPRoot}}/template/list
Тело ответа
200 OK
{
"Result": [
"base_advertisement",
"base_check_lines",
"base_header",
"name3",
"name7",
"test"
],
"Code": 0,
"Description": "OK",
"Success": true
}
Result
| Имя поля | Тип | Обяз | Назначение | Пример |
|---|---|---|---|---|
| Result | Список string | - | Массив с названиями шаблонов | “base_advertisement”, “base_check_lines”, “base_header”, “name3”, “name7”, “test” |
GET template?name=base_header
Получение печатного шаблона
URL: {{HTTPRoot}}/template?name=base_header
Параметры запроса
| Имя параметра | Тип | Обяз | Назначение | Пример |
|---|---|---|---|---|
| name | string | + | Название шаблона. | base_header |
Тело ответа
200 ОК
{
"Result": {
"Name": "base_header",
"TemplateItems": [
{
"PrintLine": {
"Type": 1,
"Width": 0,
"Scale": 0,
"Line": "Шаблон шапки чека",
"LineRight": "",
"Alignment": 1,
"Font": 5,
"Wrap": false,
"IsCreateFromTemplate": true
}
},
{
"PrintLine": {
"Type": 1,
"Width": 0,
"Scale": 0,
"Line": "Товар",
"LineRight": "100.00",
"Alignment": 0,
"Font": 0,
"Wrap": false,
"IsCreateFromTemplate": true
}
},
{
"PrintLine": {
"Type": 4,
"Width": 0,
"Scale": 0,
"Line": "",
"LineRight": "",
"Alignment": 0,
"Font": 0,
"Wrap": false,
"SeparatorLine": {
"LineStyle": 0
},
"IsCreateFromTemplate": true
}
}
],
"Type": 2
},
"Code": 0,
"Description": "OK",
"Success": true
}
Result (TemplateParameters)
| Имя поля | Тип | Обяз | Назначение | Пример |
|---|---|---|---|---|
| Name | string | + | Уникальное имя шаблона. | “base_header” |
| TemplateItems | Список AdvItem | + | Строки шаблона (только нефискальные поля) | “TemplateItems”: [ { “PrintLine”: { “Type”: 1, “Line”: “Текст”, “LineRight”: “”, “Alignment”: 1, “Font”: 5, “Wrap”: true } }, { “PrintLine”: { “Type”: 1, “Line”: “Сумма”, “LineRight”: “1 250,00”, “Alignment”: 0, “Font”: 0, “Wrap”: false } }, { “PrintLine”: { “Type”: 4, “SeparatorLine”: { “LineStyle”: 0 } } }, { “PrintLine”: { “Type”: 2, “Alignment”: 1, “Barcode”: { “Type”: “QR”, “Value”: “https://www.rbsoft.ru/”, “PrintText”: 0, “Height”: 30, “BarWidth”: 6 } } }, { “PrintLine”: { “Type”: 3, “Alignment”: 1, “Scale”: 100, “Picture”: { “PictureBase64”: “iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mP8z8BQDwAEhQGAhKmMIQAAAABJRU5ErkJggg==”, “Alignment”: 2, “Width”: 200, “Height”: 80 } } } ] |
| Type | int | - | Тип шаблона: 0 — Реклама; 1 — Строки чека; 2 — Шапка или подвал чека |
1 |
AdvItem
| Имя поля | Тип | Обяз | Назначение | Пример |
|---|---|---|---|---|
| PrintLine | PrintLine | - | Строка печати | “PrintLine”: |
PrintLine
| Имя поля | Тип | Обяз | Назначение | Пример |
|---|---|---|---|---|
| Type | int | - | Тип строки. 0 — фискальная строка; 1 — текстовая строка; 2 — штрихкод; 3 — изображение; 4 — разделительная линия |
1 |
| Width | int | - | Ширина | 0 |
| Scale | int | - | Масштаб | 100 |
| Line | string | - | Текст строки (левая часть) | “Кассовый чек” |
| LineRight | string | - | Текст строки (правая часть) | ”“ |
| Alignment | int | - | Выравнивание. 0 — выравнивание по левому краю; 1 — Выравнивание по центру; 2 — Выравнивание по правому краю; 3 — По ширине |
1 |
| Font | int | - | Шрифт. 0 — Шрифт для обычных строк; 1 — Жирный шрифт; 2 — Мелкий шрифт; 3, Medium — Средний шрифт; 4, Big — Крупный шрифт; 5 — Стиль заголовка первого уровня (H1); 6 — Стиль заголовка второго уровня (H2); 7 — Стиль заголовка третьего уровня (H3); 8 — Стиль заголовка четвёртого уровня (H4); 9 — Стиль заголовка пятого уровня (H5). |
0 |
| IsFontSpecified | bool | - | Признак, что шрифт задан явно во входящих данных или при создании строки | true |
| Wrap | bool | - | Признак переноса строк. false - строка обрезается; true - строка переносится |
true |
| Barcode | Barcode | - | Штрихкод | “Barcode”: { “Type”: “QR”, “Value”: “https://www.rbsoft.ru/”, “PrintText”: 0, “Height”: 30, “BarWidth”: 6 } |
| SeparatorLine | SeparatorLine | Разделительная линия | “SeparatorLine”: | |
| Picture | Picture | - | Картинка | “Picture”: |
| IsCreateFromTemplate | bool | Создано из шаблона. true - создано из печатного шаблона; false — не создан из печатного шаблона |
false |
Barcode
| Имя поля | Тип | Обяз | Назначение | Пример |
|---|---|---|---|---|
| Type | string | + | Тип штрихкода. Возможные значения: UPCA, CODE39, EAN13, EAN8, UPCE, ITF, CODABAR, CODE93, CODE128, PDF417, CODE32, QR |
“QR” |
| Value | string | - | Значение штрихкода | “t=20260522T1506&s=50.00&fn=9999078902010507&i=343&fp=1352614355&n=1” |
| PictureBase64 | string | - | Изображение barcode закодированное в строке в кодировке base64 | “iVBORw0KGgoAAAANSUhEUgAAAH0AAAB9CAIAAAAA4vtyAAAA…” |
| PrintText | int | - | Задает способ печати текста штрихкода(только для одномерных штрихкодов). 0 — не печатать; 1 — печатать снизу; 2 — печатать сверху; 3 — печатать сверху и снизу |
1 |
| Height | int | - | Высота штрихкода в точках. Допустимые значения свойства: 0..1199 |
100 |
| BarWidth | int | - | Ширина штриха в точках. Допустимые значения свойства: 0..1199. |
100 |
Picture
| Имя поля | Тип | Обяз | Назначение | Пример |
|---|---|---|---|---|
| PictureBase64 | string | + | Изображение закодированное в Base64 | “iVBORw0KGgoAAAANSUhEUgA…” |
| Alignment | int | - | Выравнивание: 1 - по левому краю; 2 - по центру; 3 - по правому краю. |
2 |
| Width | int | - | Ширина изображения при печати, в точках | 200 |
| Height | int | - | Высота изображения при печати, в точках | 80 |
| StartLineNumber | int | - | Номер первой строки печати изображения | 0 |
| EndLineNumber | int | - | Номер последней строки печати изображения | 0 |
| IsUploaded | bool | - | Признак загрузки изображения в память ККТ | false |
| Override | bool | - | Признак перезаписи изображения в памяти ККТ | false |
SeparatorLine
| Имя поля | Тип | Обяз | Назначение | Пример |
|---|---|---|---|---|
| LineStyle | int | + | Стиль разделительной линии: 0 — сплошная линия(по умолчанию); 1 — жирная линия; 2 — штриховая линия; 3 — пунктирная линия; 4 — двойная линия. |
1 |
Примеры ошибок
704 Файл шаблона не найден
{
"Code": 704,
"Description": "Файл шаблона 'base_h' не найден.",
"Success": false
}
72 Не указано имя шаблона
{
"Code": 72,
"Description": "Не указано имя шаблона",
"Success": false
}