For the complete documentation index, see llms.txt. This page is also available as Markdown.

Для заказов

Примеры шаблонов документов для заказов на русском языке.

Инструкции:

1. Товарный чек

Тип шаблона: Заказы.

<!doctype html>
<html lang="ru">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Товарный чек</title>
</head>
<body>

<div class="container">

  {# ======================================================= #}
  {# БЛОК: ШАПКА — логотип и контакты магазина               #}
  {# Замените выделенный желтым текст на свои реальные данные #}
  {# ======================================================= #}
  <table class="width100">
    <tbody>
    <tr>
      {# Логотип: замените src на прямую ссылку на свое изображение #}
      <td class="logo-wrapper" valign="top">
        <img src="https://blog.keycrm.app/wp-content/uploads/2025/12/cropped-keycrm-logo-blue-on-transparent-160x53.png" style="width: 200px;" alt="">
      </td>
      {# Адрес и email магазина #}
      <td valign="top">
        <span style="background-color: yellow">г. Киев, ул. Крещатик, 1</span><br />
        <span style="background-color: yellow">demo@ukr.net</span><br />
      </td>
      {# Телефоны магазина #}
      <td valign="top">
        <span style="background-color: yellow">тел.: (011)777-77-77</span><br />
        <span style="background-color: yellow">тел.: (011)777-77-77</span><br />
        <span style="background-color: yellow">тел.: (011)777-77-77</span><br />
      </td>
    </tr>
    </tbody>
  </table>

  <br /><br /><br />

  {# ======================================================= #}
  {# БЛОК: РЕКВИЗИТЫ — поставщик и получатель                #}
  {# Левый столбец: ваши данные (заменить желтое)            #}
  {# Правый столбец: данные клиента из CRM (авто)            #}
  {# ======================================================= #}
  <table class="width100">
    <tbody>
    <tr>
      <td valign="top" class="label" style="width:50%">
        <span style="background-color: yellow">Поставщик: Test test</span><br />
        <span style="background-color: yellow">ФЛП Тест Т.Т.</span><br />
        <span style="background-color: yellow">г. Киев, ул. Крещатик, 1</span><br />
        <span style="background-color: yellow">тел.: (011)777-77-77</span><br />
      </td>
      <td valign="top" class="label">
        {# Данные клиента подтягиваются из CRM автоматически #}
        Получатель: {{ model.client_name }}<br />
        тел.: {{ model.client_phone | default('не указано') }}<br />
        {# Email выводится только если он заполнен в заказе #}
        {% if model.client_email %}
          email: {{ model.client_email }}
        {% endif %}
      </td>
    </tr>
    </tbody>
  </table>

  <br />

  {# ======================================================= #}
  {# БЛОК: НАЗВАНИЕ ДОКУМЕНТА — номер и дата заказа          #}
  {# Массив месяцев для вывода даты словами ("15 мая")       #}
  {# ======================================================= #}
  {% set mnths = ['','января','февраля','марта','апреля','мая','июня','июля','августа','сентября','октября','ноября','декабря'] %}

  <p class="big-text text-center" style="margin-bottom: 10px">
    Товарный чек №{{ model.id }} от {{ model.created_at|date("j") }} {{ mnths[model.created_at|date("n")] }} {{ model.created_at|date("Y") }} г.
  </p>

  {# ======================================================= #}
  {# БЛОК: ТАБЛИЦА ТОВАРОВ                                   #}
  {# thead автоматически повторяется на каждой странице      #}
  {# (CSS: display:table-header-group)                       #}
  {# Строки товаров не разрываются между страницами          #}
  {# (CSS: page-break-inside:avoid на tbody tr)              #}
  {# ======================================================= #}
  <table class="width100 border">
    <thead>
      <tr>
        <th class="text-center">№</th>
        <th>Артикул</th>
        <th class="name-col">Наименование товара</th>
        <th>Ед.</th>
        <th>Количество</th>
        <th>Цена</th>
        <th>Сумма</th>
      </tr>
    </thead>
    <tbody>
      {# Строки товаров — перебираем все позиции заказа #}
      {% for key, product in model.products %}
      <tr>
        <td class="text-center">{{ key + 1 }}</td>
        <td class="text-center">{{ product.product_sku }}</td>
        <td style="width:50%">{{ product.product_name }}</td>
        <td class="text-center">{{ product.product_unit_type }}</td>
        <td class="text-center">{{ product.product_quantity }}</td>
        <td class="text-center">{{ product.price_sold|format_currency('UAH', locale='uk') }}</td>
        <td class="text-right">{{ (product.product_quantity * product.price_sold)|format_currency('UAH', locale='uk') }}</td>
      </tr>
      {% endfor %}

      {# ======================================================= #}
      {# ИТОГИ — выводятся после всех строк товаров            #}
      {# ======================================================= #}

      {# "Всего за товары" — только если есть скидка или доставка #}
      {% if model.discount_amount or model.shipping_price %}
      <tr>
        <td colspan="6" class="text-right">Всего за товары:</td>
        <td class="text-right">{{ model.total_price|format_currency('UAH', locale='uk') }}</td>
      </tr>
      {% endif %}

      {# Скидка на заказ — только если есть #}
      {% if model.discount_amount %}
      <tr>
        <td colspan="6" class="text-right">Скидка:</td>
        <td class="text-right">{{ model.discount_amount|format_currency('UAH', locale='uk') }}</td>
      </tr>
      {% endif %}

      {# Доставка — только если есть #}
      {% if model.shipping_price %}
      <tr>
        <td colspan="6" class="text-right">Доставка:</td>
        <td class="text-right">{{ model.shipping_price|format_currency('UAH', locale='uk') }}</td>
      </tr>
      {% endif %}

      {# Итоговая сумма — отображается всегда #}
      <tr>
        <td colspan="6" class="text-right"><strong>Итого:</strong></td>
        <td class="text-right"><strong>{{ model.grand_total|format_currency('UAH', locale='uk') }}</strong></td>
      </tr>
    </tbody>
  </table>

  {# ======================================================= #}
  {# БЛОК: ПОДВАЛ — общее количество, сумма и подпись        #}
  {# ======================================================= #}
  <br /><br />
  <table class="table-sum width100">
    <tr>
      <td colspan="2">
        Всего наименований {{ model.products|length }}, на сумму {{ model.grand_total|format_currency('UAH', locale='uk') }}
      </td>
      <td></td>
    </tr>
    <tr>
      <td>Дата: <span class="label underline">{{ model.created_at|date("j") }} {{ mnths[model.created_at|date("n")] }} {{ model.created_at|date("Y") }} г.</span></td>
      <td>Подпись поставщика: &nbsp;&nbsp;&nbsp; ____________________</td>
      <td></td>
    </tr>
  </table>

</div>

</body>
<style>
  * {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
  }

  html, body {
    height: 100%;
  }

  body {
    font-size: 16px;
    line-height: 1.3;
    min-width: 320px;
    font-family: sans-serif;
    overflow-x: hidden;
  }

  .container {
    margin-right: auto;
    margin-left: auto;
  }

  .text-center {
    text-align: center;
  }

  .text-right {
    text-align: right;
  }

  .label {
    font-weight: bold;
  }

  .underline {
    text-decoration: underline;
    font-style: italic;
  }

  .big-text {
    font-size: 18px;
  }

  .width100 {
    width: calc(100% - 2px);
  }

  table {
    border-collapse: collapse;
    border-spacing: 0;
    height: auto;
  }

  table td {
    padding: 5px;
  }

  table th {
    background: #d4d4d4;
  }

  /* Границы для таблицы товаров */
  table.border thead th,
  table.border thead td,
  table.border tbody td {
    border: 1px solid black;
  }

  table.border th {
    padding: 20px 5px;
  }

  table.border td {
    padding: 5px;
  }

  table.table-sum {
    margin-top: 7px;
  }

  table.table-sum td {
    padding: 3px 5px 3px 15px;
  }

  /* =============================================
     РАЗБИЕНИЕ НА СТРАНИЦЫ
     ============================================= */

  /* Заголовок таблицы повторяется на каждой странице */
  table.border thead {
    display: table-header-group;
  }

  /* Строки tbody не разрываются между страницами */
  table.border tbody tr {
    page-break-inside: avoid;
    break-inside: avoid;
  }

  /* Подвал держим вместе, не отрывать от итогов */
  table.table-sum {
    page-break-inside: avoid;
    break-inside: avoid;
  }
</style>
</html>

2. Товарный чек 2

Тип шаблона: Заказы. QR-коды можно сгенерировать, например, здесь: https://www.qrcode-monkey.com/.

После создания нужно сохранить картинки на вашем сервере (сайте) и вставить в шаблон ссылки на них.

3. Расходная накладная

Тип шаблона: Заказы

4. Счет на оплату

Тип шаблона: Заказы.

5. "Письмо на таможню" (при отправке за границу)

Тип шаблона: Доставка

6. Proforma Invoice для отправки зарубеж (таможенный инвойс)

Тип шаблона: Доставка

Last updated