# Фискальные чеки

Порядок следования параметров в запросах не важен.&#x20;

Регистр символов в url‑адресах и параметрах запросов — важен.

Ответ на запрос передается в формате JSON, кодировка UTF‑8.

{% hint style="warning" %}
Ответы API сервиса могут содержать незадокументированные поля. При обработке ответов такие поля должны игнорироваться клиентским кодом.
{% endhint %}

### Receipt

Запрос выдачи чека.

**URL запроса:** [https://{host}.payler.com/kkt/v2/Receipt](about:blank)

**Content-Type:** application/json

**Метод отправки запроса:** <mark style="color:green;background-color:green;">**`POST`**</mark>

**Параметры запроса:**

<table data-header-hidden><thead><tr><th width="157.7142857142857"></th><th width="150"></th><th width="150"></th><th></th></tr></thead><tbody><tr><td><strong>Название</strong></td><td><strong>Тип</strong></td><td><strong>R/O</strong></td><td><strong>Описание</strong></td></tr><tr><td>key</td><td>A..100</td><td>R</td><td>Идентификатор мерчанта. Выдается с параметрами доступа</td></tr><tr><td>type</td><td>A</td><td>R</td><td><p>Тип операции, которая должна быть выполнена. Возможные значения:</p><p><strong>sell</strong> — чек «Приход»,</p><p><strong>sell_refund</strong> — чек «Возврат прихода»,</p><p><strong>sell_correction</strong> — чек «Коррекция прихода»,</p><p><strong>buy</strong> — чек «Расход»,</p><p><strong>buy_refund</strong> — чек «Возврат расхода»,</p><p><strong>buy_correction</strong> — чек «Коррекция расхода»</p></td></tr><tr><td>order_id</td><td>A..100</td><td>R</td><td>Идентификатор заказа в системе мерчанта. Соответствует значению, переданному при создании платежа</td></tr><tr><td>items</td><td>Ar..100</td><td>R</td><td>Продаваемые товары. Ограничение по количеству — от 1 до 100. Список полей в каждом товаре см. ниже</td></tr><tr><td>email</td><td>A..100</td><td>О</td><td>Адрес электронной почты пользователя. Должен присутствовать по крайней мере один из параметров email или phone</td></tr><tr><td>phone</td><td>A..15</td><td>О</td><td>Номер телефона пользователя. Должен присутствовать по крайней мере один из параметров — email или phone</td></tr><tr><td>client_name</td><td>A..256</td><td>О</td><td>Наименование покупателя (клиента)</td></tr><tr><td>client_inn</td><td>N12</td><td>О</td><td>ИНН покупателя (клиента)</td></tr><tr><td>sno</td><td>A</td><td>О</td><td><p>Система налогообложения.</p><p><strong>osn</strong> — общая СН,</p><p><strong>usn_income</strong> — упрощенная СН (доходы),      <strong>usn_income_outcome</strong> — упрощенная СН (доходы минус расходы),</p><p><strong>envd</strong> — единый налог на вмененный доход,</p><p><strong>esn</strong> — единый сельскохозяйственный налог,</p><p><strong>patent</strong> — патентная СН</p></td></tr><tr><td>payments</td><td>Ar..10</td><td>О</td><td>Оплаты. Список полей в каждом товаре см. ниже</td></tr><tr><td>vats</td><td>Ar</td><td>О</td><td>Атрибуты налогов на чек. Ограничение по количеству от 1 до 6. Необходимо передать либо сумму налога на позицию, либо сумму налога на чек. Если будет переданы и сумма налога на позицию и сумма налога на чек, сервис учтет только сумму налога на чек.<br>Список полей см. ниже</td></tr><tr><td>supplier_info</td><td>Ar</td><td>О</td><td>Телефоны поставщика. См. описание ниже</td></tr><tr><td>agent_type</td><td>A</td><td>О</td><td><p>Признак агента по предмету расчёта (ограничен агентами, введенными в ККТ при фискализации).</p><p>Возможные значения:</p><p><strong>bank_paying_agent</strong> — банковский платежный агент. Оказание услуг покупателю (клиенту) лицом, являющимся банковским платежным агентом;</p><p><strong>bank_paying_subagent</strong> — банковский платежный субагент. Оказание услуг покупателю (клиенту) лицом, являющимся банковским платежным субагентом;</p><p><strong>paying_agent</strong> — платежный агент. Оказание услуг покупателю (клиенту) лицом, являющимся платежным агентом;</p><p><strong>paying_subagent</strong> — платежный субагент. Оказание услуг покупателю (клиенту) лицом, являющимся платежным субагентом;</p><p><strong>attorney</strong> — поверенный. Осуществление расчета с покупателем (клиентом) лицом, являющимся поверенным;</p><p><strong>commission_agent</strong> — комиссионер. Осуществление расчета с покупателем (клиентом) лицом, являющимся комиссионером;</p><p><strong>another</strong> — другой тип агента. Осуществление расчета с покупателем (клиентом) лицом, являющимся агентом и не являющимся банковским платежным агентом (субагентом), платежным агентом (субагентом), поверенным, комиссионером</p></td></tr><tr><td>cashier</td><td>A..64</td><td>O</td><td>Ф. И. О.  кассира</td></tr><tr><td>group_code</td><td>A..50</td><td>O</td><td>Код группы касс.<br>Ограничение от 1 до 50 символов.<br>Предназначен для передачи выбранной группы касс для формирования чеков.</td></tr></tbody></table>

**Поля товаров (массив items):**

<table data-header-hidden><thead><tr><th width="219.6153846153846"></th><th width="150"></th><th width="150"></th><th></th></tr></thead><tbody><tr><td><strong>Название</strong></td><td><strong>Тип</strong></td><td><strong>R/O</strong></td><td><strong>Описание</strong></td></tr><tr><td>name</td><td>A..256</td><td>R</td><td>Наименование товара</td></tr><tr><td>price</td><td>F</td><td>R</td><td>Цена в рублях. Целая часть — не более 8 знаков; дробная часть — не более 2 знаков</td></tr><tr><td>quantity</td><td>F</td><td>R</td><td><p>Количество/вес. Целая часть — не более 8 знаков;</p><p>дробная часть — не более 3 знаков</p></td></tr><tr><td>sum</td><td>F</td><td>R</td><td><p>Сумма позиции в рублях. Целая часть — не более 8 знаков;</p><p>дробная часть — не более 2 знаков. Если значение sum меньше значения (price*quantity), то разница является скидкой на позицию</p></td></tr><tr><td>measurement_unit</td><td>A..16</td><td>О</td><td>Единица измерения товара, работы, услуги, платежа, выплаты, иного предмета расчета</td></tr><tr><td>nomenclature_code</td><td>A</td><td>О</td><td><p>Код товара в шестнадцатеричном представлении с пробелами. Максимальная длина – 32 байта.</p><p>Пример: 00 00 00 01 00 21 FA 41 00 23 05 41 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 12 00 AB 00</p></td></tr><tr><td>payment_method</td><td>A</td><td>R</td><td><p>Признак способа расчета. Возможные значения:</p><p><strong>full_prepayment</strong> — предоплата 100%. Полная оплата до момента передачи предмета расчета;</p><p><strong>prepayment</strong> — предоплата. Частичная предварительная оплата до момента передачи предмета расчета;</p><p><strong>advance</strong> — аванс;</p><p><strong>full_payment</strong> — полный расчет. Полная оплата, в том числе с учетом аванса;</p><p><strong>partial_payment</strong> — частичный расчет и кредит. Частичная оплата предмета расчета в момент его передачи с последующей оплатой в кредит;</p><p><strong>credit</strong> — передача в кредит. Передача предмета расчета без его оплаты в момент его передачи с последующей оплатой в кредит;</p><p><strong>credit_payment</strong> — оплата кредита. Оплата предмета расчета после его передачи с оплатой в кредит</p></td></tr><tr><td>payment_object</td><td>A</td><td>R</td><td><p>Признак предмета расчета. Возможные значения:</p><p><strong>commodity</strong> — товар. О реализуемом товаре, за исключением подакцизного товара (наименование и иные сведения, описывающие товар);</p><p><strong>excise</strong> — подакцизный товар. О реализуемом подакцизном товаре (наименование и иные сведения, описывающие товар);</p><p><strong>job</strong> — работа. О выполняемой работе (наименование и иные сведения, описывающие работу);</p><p><strong>service</strong> — услуга. Об оказываемой услуге (наименование и иные сведения, описывающие услугу);</p><p><strong>gambling_bet</strong> — ставка азартной игры. О приеме ставок при осуществлении деятельности по проведению азартных игр;</p><p><strong>gambling_prize</strong> — выигрыш азартной игры. О выплате денежных средств в виде выигрыша при осуществлении деятельности по проведению азартных игр;</p><p><strong>lottery</strong> — лотерейный билет. О приеме средств при реализации лотерейных билетов, электронных лотерейных билетов, приеме ставок при осуществлении деятельности по проведению лотерей;</p><p><strong>lottery_prize</strong> — выигрыш лотереи. О выплате денежных средств в виде выигрыша при осуществлении деятельности по проведению лотерей;</p><p><strong>intellectual_activity</strong> — предоставление результатов интеллектуальной деятельности. О предоставлении прав на использование результатов интеллектуальной деятельности или средств индивидуализации;</p><p><strong>payment</strong> — платеж. Об авансе, задатке, предоплате, кредите, взносе в счет оплаты, пени, штрафе, вознаграждении, бонусе и ином аналогичном предмете расчета;</p><p><strong>agent_commission</strong> — агентское вознаграждение. О вознаграждении пользователя, являющегося платежным агентом (субагентом), банковским платежным агентом (субагентом), комиссионером, поверенным или иным агентом;</p><p><strong>property_right</strong> — имущественное право. О передаче имущественных прав;</p><p><strong>non-operating_gain</strong> — внереализационный доход. О внереализационном доходе;</p><p><strong>insurance_premium</strong> — страховые взносы. О суммах расходов, уменьшающих сумму налога (авансовых платежей) в соответствии с пунктом 3.1 статьи 346.21 Налогового кодекса Российской Федерации;</p><p><strong>sales_tax</strong> — торговый сбор. О суммах уплаченного торгового сбора;</p><p><strong>resort_fee</strong> — курортный сбор. О курортном сборе;</p><p><strong>composite</strong> — составной предмет расчета. О предмете расчета, состоящем из предметов, каждому из которых может быть присвоено значение вышеперечисленных признаков;</p><p><strong>another</strong> — иной предмет расчета. О предмете расчета, не относящемуся к вышеперечисленным предметам расчета</p></td></tr><tr><td>vat</td><td>Ar</td><td>R</td><td>Атрибуты налога на позицию. Необходимо передать либо сумму налога на позицию, либо сумму налога на чек. Если будет переданы и сумма налога на позицию и сумма налога на чек, сервис учтет только сумму налога на чек. Список полей см. ниже</td></tr><tr><td>supplier_info</td><td>Ar</td><td>О</td><td>Данные поставщика. Список полей см. ниже</td></tr></tbody></table>

**Оплаты (массив payments):**

<table data-header-hidden><thead><tr><th width="150"></th><th width="150"></th><th width="150"></th><th></th></tr></thead><tbody><tr><td><strong>Название</strong></td><td><strong>Тип</strong></td><td><strong>R/O</strong></td><td><strong>Описание</strong></td></tr><tr><td>type</td><td>N</td><td>R</td><td><p>Вид оплаты. Возможные значения:</p><p>1 — безналичный;<br>2 — предварительная оплата (зачет аванса и (или) предыдущих платежей);<br>3 — постоплата (кредит);<br>4 — иная форма оплаты (встречное предоставление);<br>5–9 — расширенные виды оплаты. Для каждого фискального типа оплаты можно указать расширенный вид оплаты</p></td></tr><tr><td>sum</td><td>F</td><td>R</td><td>Сумма к оплате в рублях. Целая часть не более 8 знаков, дробная часть не более 2 знаков</td></tr></tbody></table>

&#x20;**Налоги (массив vats и объект items.vat):**

<table data-header-hidden><thead><tr><th width="150"></th><th width="150"></th><th width="150"></th><th></th></tr></thead><tbody><tr><td><strong>Название</strong></td><td><strong>Тип</strong></td><td><strong>R/O</strong></td><td><strong>Описание</strong></td></tr><tr><td>sum</td><td>F</td><td>R/O</td><td><p>Сумма налога в рублях.<br><em>Необязателен в объекте items.vat. В массиве vats обязателен.</em></p><p>Целая часть — не более 8 знаков;<br>дробная часть — не более 2 знаков</p></td></tr><tr><td>type</td><td>A</td><td>R</td><td><p>Устанавливает номер налога в ККТ.</p><p>Возможные значения:</p><p><strong>none</strong> — без НДС;</p><p><strong>vat0</strong> — НДС по ставке 0%;</p><p><strong>vat5</strong> — НДС чека по ставке 5%;</p><p><strong>vat7</strong> — НДС чека по ставке 7%;</p><p><strong>vat10</strong> — НДС чека по ставке 10%;</p><p><strong>vat18</strong> — НДС чека по ставке 18%;</p><p><strong>vat105</strong> — НДС чека по расчетной ставке ставке 5/105;</p><p><strong>vat107</strong> — НДС чека по расчетной ставке ставке 7/107;</p><p><strong>vat110</strong> — НДС чека по расчетной ставке 10/110;</p><p><strong>vat118</strong> — НДС чека по расчетной ставке 18/118;</p><p><strong>vat120</strong> — НДС чека по расчетной ставке 20/120;</p><p><strong>vat20</strong> — НДС чека по ставке 20%;<br><strong>vat22</strong> — НДС чека по ставке 22%;<br><strong>vat122</strong> — НДС чека по расчетной ставке 22/122.</p></td></tr></tbody></table>

&#x20;**Поставщик (массив supplier\_info в массиве items):**

<table data-header-hidden><thead><tr><th width="168.81894632388685"></th><th width="150"></th><th width="150"></th><th></th></tr></thead><tbody><tr><td><strong>Название</strong></td><td><strong>Тип</strong></td><td><strong>R/O</strong></td><td><strong>Описание</strong></td></tr><tr><td>phones</td><td>Ar</td><td>О</td><td><p>Номера телефонов поставщика. Каждый элемент массива — A..19.<br>Номер  необходимо передать вместе с кодом страны без пробелов и дополнительных символов, кроме символа «+». Если номер начинается с символа «+», то максимальная длина одного элемента массива — 19 символов.</p><p>Если номер относится к РФ (префикс «+7»), то значение можно передать без префикса (номер «+7 925 1234567» можно передать как «9251234567»). Максимальная длина одного элемента массива в таком случае – 17 символов</p></td></tr><tr><td>name</td><td>A</td><td>О</td><td>Наименование поставщика</td></tr><tr><td>inn</td><td>A</td><td>О</td><td>ИНН поставщика</td></tr></tbody></table>

&#x20;**Поставщик (массив supplier\_info):**

<table data-header-hidden><thead><tr><th width="186.7142857142857"></th><th width="150"></th><th width="150"></th><th></th></tr></thead><tbody><tr><td><strong>Название</strong></td><td>Тип</td><td><strong>R/O</strong></td><td><strong>Описание</strong></td></tr><tr><td>phones</td><td>Ar</td><td>О</td><td>Соответствует описанию supplier_ phones в массиве items (см. выше)</td></tr></tbody></table>

&#x20;**Пример запроса:**

<details>

<summary><strong>Пример</strong></summary>

```json
{
    "key": "d37232ca-cf1d-42f2-a4c3-fb59690e581a",
    "order_id": "0e0c0d63-9e29-4d32-a2a3-3c94fb93dace",
    "client_name": "some name",
    "client_inn": "123456",
    "items": [
        {
            "name": "колбаса Клинский Брауншвейгская с/к в/с ",
            "price": 1000.00,
            "quantity": 0.6,
            "sum": 600.00,
            "measurement_unit": "кг",
            "payment_method": "full_payment",
            "payment_object": "commodity",
            "nomenclature_code": "00 00 00 01 00 21 FA 41 00 23 05 41 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 12 00 AB 00",
            "vat": {
                "type": "vat20"
            },
            "supplier_info": {
                "phones": [
                    "8-111-111-11-11"
                ],
                "name": "ООО «Лютик»",
                "inn": "956839506500"
            }
        }
    ],
    "payments": [
        {
            "type": 1,
            "sum": 500.0
        }
    ],
    "vats": [
        {
            "type": "vat20",
            "sum": 45.76
        }
    ],
    "type": "sell",
    "email": "test@example.com",
    "phone": "9268448477",
    "sno": "osn",
    "supplier_info": {
        "phones": [
            "8-111-111-11-11"
        ]
    },
    "agent_type": "commission_agent",
    "cashier": "Голева А. С."
}
```

</details>

&#x20;**Параметры ответа:**&#x20;

В ответ возвращается идентификатор чека.

<table data-header-hidden><thead><tr><th></th><th width="150"></th><th width="150"></th><th></th></tr></thead><tbody><tr><td><strong>Название</strong></td><td><strong>Тип</strong></td><td><strong>R/O</strong></td><td><strong>Описание</strong></td></tr><tr><td>receipt_id</td><td>A</td><td>R</td><td>Идентификатор чека</td></tr></tbody></table>

**Пример ответа:**

```json
{
         "receipt_id": "123"
}
```

### GetReceiptStatus <a href="#getreceiptstatus" id="getreceiptstatus"></a>

Запрос получения информации по чекам. В данном запросе возвращается массив со всеми чеками, зарегистрированными в рамках одного заказа.

**Формат запроса:** [https://{host}.payler.com/kkt/v2/GetStatus](about:blank)

**Content-Type:** application/json

**Метод отправки запроса:** <mark style="color:green;background-color:green;">**`POST`**</mark>

**Параметры запроса:**

<table data-header-hidden><thead><tr><th width="150"></th><th width="150"></th><th width="150"></th><th></th></tr></thead><tbody><tr><td><strong>Название</strong></td><td><strong>Тип</strong></td><td><strong>R/O</strong></td><td><strong>Описание</strong></td></tr><tr><td>key</td><td>A..100</td><td>R</td><td>Идентификатор мерчанта. Выдается с параметрами доступа</td></tr><tr><td>order_id</td><td>A..100</td><td>R</td><td>Идентификатор заказа в системе мерчанта. Соответствует значению, переданному при создании платежа</td></tr></tbody></table>

**Пример запроса:**

```json
{
         "key": "d37232ca-cf1d-42f2-a4c1-fb59690e581a",
         "order_id": "0e0c0d63-9e29-4d32-a2a3-3c94fb93dace"
}
```

**Параметры ответа:**

В ответ возвращается массив Receipts с информацией по каждому чеку, выданному по данной сессии.

**Поля каждого объекта в массиве:**

<table data-header-hidden><thead><tr><th></th><th width="150"></th><th width="150"></th><th></th></tr></thead><tbody><tr><td><strong>Название</strong></td><td><strong>Тип</strong></td><td><strong>R/O</strong></td><td><strong>Описание</strong></td></tr><tr><td>receipt_id</td><td>A</td><td>R</td><td>Идентификатор чека. Равен возвращённому в ответ на запрос <a href="#receipt">Receipt</a></td></tr><tr><td>items</td><td>Ar..100</td><td>R</td><td><p>Продаваемые товары. Список полей в каждом товаре см. выше. В случае создания чека через /kkt/v2/Receipt поля payment_method, payment_object и vat будут присутствовать в ответе.</p><p>В случае создания чека через /kkt/v1/Receipt поля tax, tax_sum будут присутствовать в ответе</p></td></tr><tr><td>email</td><td>A..100</td><td>О</td><td>Адрес электронной почты пользователя</td></tr><tr><td>phone</td><td>A..100</td><td>О</td><td>Номер телефона пользователя</td></tr><tr><td>uuid</td><td>A..100</td><td>O</td><td>Уникальный идентификатор</td></tr><tr><td>status</td><td>A</td><td>R</td><td><p>Статус обработки чека:</p><p><strong>created</strong> — создан,</p><p><strong>wait</strong> — ожидание,</p><p><strong>done</strong> — готово,</p><p><strong>fail</strong> — ошибка</p></td></tr><tr><td>fn_number</td><td>A</td><td>O</td><td>Номер ФН</td></tr><tr><td>shift_number</td><td>N</td><td>O</td><td>Номер смены</td></tr><tr><td>receipt_date_time</td><td>A</td><td>O</td><td>Дата и время документа из ФН в формате «yyyy-MM-dd HH:mm:ss»</td></tr><tr><td>fiscal_receipt_number</td><td>N</td><td>O</td><td>Номер чека в смене</td></tr><tr><td>fiscal_document_number</td><td>N</td><td>O</td><td>Фискальный номер документа</td></tr><tr><td>ecr_registration_number</td><td>A</td><td>O</td><td>Регистрационный номер ККТ</td></tr><tr><td>fiscal_document_attribute</td><td>N</td><td>O</td><td>Фискальный признак документа</td></tr><tr><td>error_code</td><td>N</td><td>О</td><td>Код ошибки. Присутствует, если произошла ошибка при обработке чека</td></tr><tr><td>error_text</td><td>A</td><td>О</td><td>Текст ошибки. Присутствует, если произошла ошибка при обработке чека</td></tr><tr><td>error_type</td><td>A</td><td>О</td><td>Тип ошибки. Присутствует, если произошла ошибка при обработке чека</td></tr><tr><td>vats</td><td>Ar</td><td>О</td><td>Атрибуты налогов на чек</td></tr><tr><td>client_name</td><td>A..256</td><td>О</td><td>Наименование покупателя (клиента)</td></tr><tr><td>client_inn</td><td>N12</td><td>О</td><td>ИНН покупателя (клиента)</td></tr><tr><td>payments</td><td>Ar..10</td><td>О</td><td>Оплаты</td></tr><tr><td>agent_type</td><td>A</td><td>О</td><td>Признак агента по предмету расчёта</td></tr><tr><td>supplier_info</td><td>Ar</td><td>О</td><td>Данные поставщика. Список полей см. выше</td></tr><tr><td>sno</td><td>A</td><td>О</td><td><p>Система налогообложения.</p><p><strong>osn</strong> — общая СН,</p><p><strong>usn_income</strong> — упрощенная СН (доходы),</p><p><strong>usn_income_outcome</strong> — упрощенная СН (доходы минус расходы),</p><p><strong>envd</strong> — единый налог на вмененный доход,</p><p><strong>esn</strong> — единый сельскохозяйственный налог,</p><p><strong>patent</strong> — патентная СН</p></td></tr><tr><td>cashier</td><td>A...64</td><td>O</td><td>Ф. И. О. кассира</td></tr></tbody></table>

**Пример ответа:**

<details>

<summary><strong>Пример</strong></summary>

```json
{
    "receipts": [
        {
            "receipt_id": "754",
            "vats": [
                {
                    "type": "vat20",
                    "sum": 45.76
                }
            ],
            "items": [
                {
                    "name": "колбаса Клинский Брауншвейгская с/к в/с ",
                    "price": 1000,
                    "quantity": 0.3,
                    "sum": 500,
                    "measurement_unit": "кг",
                    "payment_method": "full_payment",
                    "payment_object": "commodity",
                    "vat": {
                        "type": "vat20"
                    },
                    "nomenclature_code": "00 00 00 01 00 21 FA 41 00 23 05 41 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 12 00 AB 00",
                    "supplier_info": {
                        "phones": [
                            "8-111-111-11-11"
                        ],
                        "name": "ООО «Лютик»",
                        "inn": "956839506500"
                    }
                }
            ],
            "type": "sell",
            "email": "test@example.com",
            "phone": "9268448477",
            "uuid": "4660a2df-d421-4839-a0bb-dfdb3dbe4bcf",
            "status": "done",
            "fn_number": "9999078900006369",
            "shift_number": 18,
            "receipt_date_time": "2019-08-29 18:04:00",
            "fiscal_receipt_number": 863,
            "fiscal_document_number": 19236,
            "ecr_registration_number": "0000000005038476",
            "fiscal_document_attribute": 101672832,
            "error_text": "",
            "error_type": "",
            "client_name": "some name",
            "client_inn": "123456",
            "payments": [
                {
                    "type": 1,
                    "sum": 500
                }
            ],
            "agent_type": "commission_agent",
            "supplier_info": {
                "phones": [
                    "8-111-111-11-11"
                ]
            },
            "sno": "osn",
            "cashier": "Голева А. С."
        }
    ]
}
```

</details>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.payler.com/ru-api/metody-api/fiskalnye-cheki.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
