API: накладная М-15
POST /api/v1/documents/m15
Формирует печать накладной на отпуск материалов на сторону (форма № М-15) без сохранения в кабинете и возвращает PDF или XLSX.
Список шаблонов: GET /api/v1/documents/m15/templates
Пример
{
"format": "pdf",
"template": 410,
"response": "json",
"number": "15",
"date": "2026-08-23",
"basis": "Договор поставки № 12",
"through_whom": "Петров П.П. по доверенности № 5",
"table_date": "2026-08-23",
"table_kod_vida": "01",
"table_sender_division": "Склад № 1",
"table_sender_view": "хранение",
"table_recipient_division": "Участок № 2",
"table_recipient_view": "строительство",
"print_stamp": true,
"seller": {
"name": "ООО Ромашка",
"inn": "7701234567",
"kpp": "770101001",
"okpo": "12345678",
"address": "г. Москва",
"phone": "495-000-00-00",
"director": "Иванов Иван Иванович",
"director_post": "Генеральный директор",
"accountant": "Сидорова Анна",
"stamp_url": "https://example.com/stamp.png",
"director_sign": "https://example.com/director.png"
},
"buyer": {
"name": "ООО Покупатель",
"inn": "7707654321",
"okpo": "87654321",
"director": "Петров Пётр Петрович",
"director_post": "Генеральный директор"
},
"items": [
{
"name": "Кабель ВВГ 3×2,5",
"product_code": "К-15",
"account": "10.01",
"analytic_code": "М-01",
"unit": "м",
"unit_code": "006",
"qty_requested": 100,
"quantity": 98,
"price": 85,
"vat": 20,
"inventory_number": "ИН-12",
"passport_number": "П-4",
"warehouse_card": "15"
}
]
}
items можно передать объектом с числовыми ключами. Пустой массив ([]) не считается ошибкой: в таблицу попадёт одна пустая строка.
Основные поля
| Поле | Описание |
|---|---|
format | pdf (по умолчанию) или xlsx |
template | код печатной формы, по умолчанию 410 |
number | номер накладной (печатается в заголовке «НАКЛАДНАЯ №») |
date | дата документа Y-m-d |
basis | основание: договор, заказ-наряд (алиасы basis_name, contract) |
through_whom | через кого |
seller | организация-отправитель |
buyer | клиент (получатель) |
items | позиции; пустой массив печатает одну пустую строку |
currency | код валюты, по умолчанию 643 |
print_stamp | печать и подписи |
decimal_places | знаков после запятой в печати: 0–3; (алиасы decimals, znaki; см. Обзор) |
number_format | отображение сумм: apostrophe (1'500.00) или space (1 500,00); (см. Обзор) |
vat_correct | ручная сумма НДС в итоговой строке, например 1135.65. Если не передана, НДС считается по позициям |
response | file или json |
Учётная шапка
Одна строка над таблицей материалов — как на форме rfdk.ru.
| Поле | Описание |
|---|---|
table_date | дата составления |
table_kod_vida | код вида операции |
table_sender_division | отправитель, структурное подразделение |
table_sender_view | отправитель, вид деятельности |
table_recipient_division | получатель, структурное подразделение |
table_recipient_view | получатель, вид деятельности |
table_responsible_division | ответственный за поставку, структурное подразделение |
table_responsible_view | ответственный за поставку, вид деятельности |
table_responsible_kod | код исполнителя |
Подписи
Если поля не переданы, в печати берутся должность и ФИО руководителя отправителя / клиента.
| Поле | Описание |
|---|---|
m15_allowed_caption, m15_allowed_fio | отпуск разрешил (должность, Ф.И.О.) |
m15_release_caption, m15_release_fio | отпустил (должность, Ф.И.О.) |
m15_receive_caption, m15_receive_fio | получил (должность, Ф.И.О.) |
Шаблоны
template | Название |
|---|---|
410 | Накладная М-15 |
Актуальный список всегда в GET /api/v1/documents/m15/templates.
Позиция
| Поле | Описание |
|---|---|
name | наименование, сорт, размер, марка |
quantity | отпущено; обязательно, кроме пустой строки |
price | обязательно, кроме пустой строки |
vat | ставка НДС |
unit | ед. изм. |
unit_code | код единицы измерения |
product_code | номенклатурный номер |
account | счёт, субсчёт |
analytic_code | код аналитического учёта |
qty_requested | надлежит отпустить |
inventory_number | инвентарный номер |
passport_number | номер паспорта |
warehouse_card | порядковый номер записи по складской картотеке |
vat_value | игнорируется, считается на сервере |
sum | игнорируется, считается на сервере |
Строки is_header и is_subtotal принимаются, но в печатную форму М-15 не выводятся.
Для примера выше сумма будет 8330.00, НДС 1388.33.