ТЕХНИЧЕСКАЯ ДОКУМЕНТАЦИЯ

Печатный шаблон

> СерверККМ 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
}