Для закрытия чека используется запрос closeOfdReceipt.
С 1 июля 2019 года владельцы онлайн-касс должны формировать чеки для зачёта и возврата предоплаты. Платёжный шлюз позволяет зарегистрировать второй чек (чек закрытия) без создания нового заказа с помощью запроса closeOfdReceipt.
В запросе должен присутствовать либо параметр orderNumber, либо mdOrder.
Содержимое чека закрытия зависит от того, передавалась ли в запросе на закрытие корзина заказа (orderBundle)
| Корзина передавалась | Корзина товаров будет передана в ОФД в том виде, в котором была передана в шлюз в запросе на закрытие чека. |
|---|---|
| Корзина не передавалась | Для завершённого заказа
Для возврата Закрытие чека может быть сделано, только если для заказа был осуществлён частичный, а не полный возврат.
|
В настоящем документе при описании параметров запросов и ответов используются следующие обозначения типов данных:
Параметры запроса представлены в таблице ниже.
| Название | Тип | Обязательно | Описание | Версия ФФД |
|---|---|---|---|---|
|
|
ANS..36 | Обязательно передать либо mdOrder, либо merchantOrderNumber |
Номер заказа в платёжном шлюзе. Уникален в пределах платёжного шлюза. |
Все версии. |
|
|
ANS..32 | Обязательно передать либо mdOrder, либо merchantOrderNumber |
Номер (идентификатор) заказа в системе магазина. |
Все версии. |
|
|
N..12 | Нет |
Сумма платежа в минимальных единицах валюты. |
Все версии. |
|
|
См. столбец с описанием. | Нет | В настоящее время не используется |
Все версии. |
|
|
Блок данных для передачи дополнительных параметров ОФД | Да |
Некоторые параметры блока Передача этого блока возможна только при использовании следующих ОФД:
| |
|
|
Не актуально | Да |
Блок, содержащий корзину товаров заказа. Описание его атрибутов представлено ниже. |
Все версии. |
orderBundle состоит из следующих элементов.
| Название | Тип | Обязательно | Описание | Версия ФФД |
|---|---|---|---|---|
|
|
ANS..21 | Нет |
Дата создания заказа в формате |
Все версии. |
|
|
Не актуально | Нет |
Блок с атрибутами данных о покупателе. Описание его атрибутов представлено ниже. |
Все версии. |
|
|
Не актуально | Да |
Блок с атрибутами товарных позиции корзины товаров. Описание его атрибутов представлено ниже. |
Все версии. |
|
|
массив ANS..19 | Нет | Ниже представлены параметры блока agent. (Перейти к описанию.) |
Все версии. |
|
|
массив ANS..19 | Нет |
Массив телефонов поставщика в формате +N. |
Все версии. |
| Название | Тип | Обязательно | Описание |
|---|---|---|---|
|
|
N..2 | Да (если передаётся блок) |
Тип агента, доступны следующие значения:
|
|
|
| Нет |
|
|
|
| Нет |
|
|
|
массив ANS..19 | Нет |
Массив телефонов оператора по приему платежей в формате +N. |
|
|
массив ANS..19 | Нет |
Массив телефонов оператора перевода в формате +N. |
|
|
ANS..64 | Нет |
Наименование оператора перевода. |
|
|
ANS..256 | Нет |
Адрес оператора перевода. |
|
|
N10..12 | Нет |
ИНН оператора перевода. |
customerDetails состоит из следующих элементов.
Обязательность параметров указана для использования в рамках блока. Если блок необязательный и отсутствует, то и параметры в него входящие не должны передаваться.
| Название | Тип | Обязательно | Описание | Версия ФФД |
|---|---|---|---|---|
|
|
ANS..40 | См. примечание ниже. |
Адрес электронной почты покупателя. Можно указать несколько адресов электронной почты через запятую и без пробелов - в этом случае чек будет отправлен на все указанные адреса. |
Все версии. |
|
|
NS..12 | См. примечание ниже. |
Номер телефона клиента. Примеры:
В случае передачи номера в отдельном параметре и в дополнительных параметрах, в качестве основного использоваться будет номер, указанный в настоящем параметре
При использовании АТОЛ фискализации параметр |
Все версии. |
|
|
ANS..40 | Нет |
Способ связи с покупателем. |
Все версии. |
|
|
| Нет |
Все версии. |
|
|
|
ANS..100 | Нет |
Фамилия, имя и отчество плательщика. |
1.05 и более поздние версии. |
|
|
ANS..100 | Нет |
Серия и номер паспорта плательщика в следующем формате: |
1.05 и более поздние версии. |
|
|
N..12 | Нет |
Идентификационный номер налогоплательщика. Допускается передавать 10 или 12 символов. |
1.05 и более поздние версии. |
Обязательно следует передать один из двух параметров: email или phone.
deliveryInfo состоит из следующих элементов.
| Название | Тип | Обязательно | Описание | Версия ФФД |
|---|---|---|---|---|
|
|
ANS..20 | Нет |
Способ доставки. |
Все версии. |
|
|
A..2 | Да |
Двухбуквенный код страны доставки. |
Все версии. |
|
|
ANS..40 | Да |
Город доставки. |
Все версии. |
|
|
ANS..255 | Да |
Адрес доставки. |
Все версии. |
Обязательность параметров указана для использования в рамках блока. Если блок необязательный и отсутствует, то и параметры в него входящие не должны передаваться.
cartItems состоит из следующих элементов.
Обязательность параметров указана для использования в рамках блока. Если блок необязательный и отсутствует, то и параметры в него входящие не должны передаваться.
| Название | Тип | Обязательно | Описание | Версия ФФД |
|---|---|---|---|---|
|
|
Не актуально | Да |
Тэг с параметрами, содержащими информацию по одной товарной позиции в Корзине.
Номер товарной позиции указывается в виде атрибута тэга:
По каждой товарной позиции в запросе должен передаваться отдельный тэг |
Все версии. |
items состоит из следующих элементов.
| Название | Тип | Обязательно | Описание | Версия ФФД |
|---|---|---|---|---|
|
|
ANS..12 | Да |
Уникальный идентификатор товарной позиции внутри корзины заказа. |
Все версии. |
|
|
ANS..100 | Да |
Наименование или описание товарной позиции в свободной форме.
Используйте |
Все версии. |
|
|
Не актуально | Нет |
Дополнительный блок с параметрами описания товарной позиции. Описание его атрибутов представлено ниже. Ограничение размера поля - 1024 байт. |
Все версии. |
|
|
N..18 | Да |
Элемент, описывающий общее количество товарных позиций одного |
Все версии. |
|
|
N..12 | Нет |
Сумма стоимости всех товарных позиций одного
При расчёте параметра |
Все версии. |
|
|
N3 | Нет |
Код валюты товарной позиции ISO 4217. Если не указан, считается равным валюте заказа. |
Все версии. |
|
|
ANS..100 | Да |
Номер (идентификатор) товарной позиции в системе магазина.
Во всех методах передача артикула |
Все версии. |
|
|
Не актуально | Только для магазинов с настройками фискализации |
Дополнительный тег с атрибутами описания налога. Описание вложенных тегов представлено ниже. |
Все версии. |
|
|
N..18 | Только для магазинов с настройками фискализации |
Стоимость одной товарной позиции одного
|
Все версии. |
|
|
См. описание. | Только для магазинов с настройками фискализации |
Тэг, предназначенный для передачи набора атрибутов товарной позиции. Атрибуты следует указывать следующим образом.
<attributes name="название_атрибута_1">значение_атрибута_1</attributes> <attributes name="название_атрибута_2">значение_атрибута_2</attributes> См. описание ниже. |
1.05 и более поздние версии. |
itemAttributes содержит в себе массив attributes, в этом массиве необходимо указать атрибуты товарной позиции (см. пример и таблицу ниже).
"itemAttributes":{"attributes":[{"name":"paymentMethod","value":"1"},{"name":"paymentObject","value":"1"}]}
| Название | Тип | Обязательно | Описание | Версия ФФД |
|---|---|---|---|---|
|
|
N..2 |
Да |
Тип оплаты возможны следующие значения:
Приоритизация передачи значения происходит по следующему принципу (указано в убывающем порядке приоритета):
Для paymentMethod значением по умолчанию является 1 (полная предварительная оплата до момента передачи предмета расчета). |
1.05 и более поздние версии. |
|
|
N..2 |
Да |
Тип оплачиваемой позиции, возможны следующие значения:
Указанные выше значения доступны для ФФД 1.05.
Приоритизация передачи значения происходит по следующему принципу (указано в убывающем порядке приоритета):
Для paymentObject значением по умолчанию является 1 (товар). |
1.05 и более поздние версии. |
|
|
ANS | да (если передан markQuantity) |
Код товарной позиции. Принимаются только первые 256 байт. Возможные форматы для передачи:
|
1.05 и более поздние версии. |
|
|
| Нет |
Дробное количество маркированного товара. |
1.2 и более поздние версии. |
|
|
N..2 | Обязателен, только если передан объект agent_info. |
Тип агента, возможно одно из следующих значений:
|
1.05 и более поздние версии. |
|
|
| Нет |
|
1.05 и более поздние версии. |
|
|
| Нет |
|
1.05 и более поздние версии. |
|
|
Массив ANS..19 | Нет |
Массив телефонов оператора по приёму платежей в формате +N. |
1.05 и более поздние версии. |
|
|
Массив ANS..19 | Нет |
Массив телефонов оператора перевода в формате +N. |
1.05 и более поздние версии. |
|
|
ANS..64 | Нет |
Наименование оператора перевода. |
1.05 и более поздние версии. |
|
|
ANS..256 | Нет |
Адрес оператора перевода. |
1.05 и более поздние версии. |
|
|
N10..12 | Нет |
ИНН оператора перевода. |
1.05 и более поздние версии. |
|
|
Maccив ANS..19 | Нет |
Массив телефонов поставщика в формате +N. |
1.05 и более поздние версии. |
|
|
ANS..256 | Нет |
Наименование поставщика. |
1.05 и более поздние версии. |
|
|
N10..12 | Нет |
ИНН поставщика. |
1.05 и более поздние версии. |
quantity состоит из следующих элементов.
| Название | Тип | Обязательно | Описание | Версия ФФД |
|---|---|---|---|---|
|
|
N..18 | Да |
Количество товарных позиций данного |
Все версии. |
|
|
ANS..20 | Да |
Мера измерения количества товарной позиции. |
Все версии. |
Если ФФД версии 1.2 и более поздней, то здесь передаются параметры:
| Название | Тип | Обязательно | Описание | Версия ФФД |
|---|---|---|---|---|
|
|
N1 | Да |
Количество товарных позиций данного positionId. Для версии ФФД 1.2+ значение всегда 1. |
1.2 и более поздние версии. |
|
|
N..3 | Да |
Единица измерения количества предмета расчета. При ФФД версии 1.2+ , если переданы параметры nomenclature и markQuantity, значение всегда 0. В остальных случаях принимает значения |
1.2 и более поздние версии. |
Возможные значения measure
| Значение | Описание |
|---|---|
| 0 | Применяется для предметов расчета, которые могут быть реализованы поштучно или единицами (а также в случае, если предметом расчета является товар, подлежащий обязательной маркировке средством идентификации (передан mark_code)) |
| 10 | Грамм |
| 11 | Килограмм |
| 12 | Тонна |
| 20 | Сантиметр |
| 21 | Дециметр |
| 22 | Метр |
| 30 | Квадратный сантиметр |
| 31 | Квадратный дециметр |
| 32 | Квадратный метр |
| 40 | Миллилитр |
| 41 | Литр |
| 42 | Кубический метр |
| 50 | Киловатт час |
| 51 | Гигакалория |
| 70 | Сутки (день) |
| 71 | Час |
| 72 | Минута |
| 73 | Секунда |
| 80 | Килобайт |
| 81 | Мегабайт |
| 82 | Гигабайт |
| 83 | Терабайт |
| 255 | Применяется при использовании иных мер измерения |
Параметры тэга markQuantity:
Обязательность параметров указана для использования в рамках тэга. Если тэг необязательный и в запросе отсутствует, то и входящие в него параметры не должны передаваться.
| Название | Тип | Обязательно | Описание |
|---|---|---|---|
|
|
N..12 | да |
Числитель дробной части предмета расчета. |
|
|
N..12 | да |
Знаменатель дробной части предмета расчета. |
itemDetails состоит из следующих элементов.
Обязательность параметров указана для использования в рамках блока. Если блок необязательный и отсутствует, то и параметры в него входящие не должны передаваться.
| Название | Тип | Обязательно | Описание | Версия ФФД |
|---|---|---|---|---|
|
|
ANS..255 | Да |
Параметр описывающий дополнительную информацию по товарной позиции. Описание его атрибутов представлено ниже. |
Все версии. |
itemDetailsParams состоит из следующих элементов.
| Название | Тип | Обязательно | Описание | Версия ФФД |
|---|---|---|---|---|
|
|
ANS..255 | Условно. Обязательно при наличии параметра itemDetailsParams. |
Дополнительная информация по товарной позиции. |
Все версии. |
|
|
ANS..255 | Условно. Обязательно при наличии параметра itemDetailsParams. |
Наименование параметра описания детализации товарной позиции. |
Все версии. |
tax состоит из следующих элементов.
| Название | Тип | Обязательно | Описание | Версия ФФД |
|---|---|---|---|---|
|
|
N..2 | Нет |
Ставка НДС, доступны следующие значения:
Если в запросе не передаётся корзина с данными фискализации, оператору фискальных данных передаются значения по умолчанию, указанные в настройках личного кабинета (подробнее см. инструкцию по работе с личным кабинетом). |
Все версии. |
|
|
N..18 | Нет |
Сумма налога, высчитанная продавцом. Указывается в минимальных единицах валюты. |
Все версии. |
additionalOfdParams состоит из следующих элементов.
| Название | Тип | Обязательно | Описание | Версия ФФД |
|---|---|---|---|---|
|
|
N..2 | Обязателен, только если передан объект agent_info. |
Тип агента, возможно одно из следующих значений:
|
1.05 и более поздние версии. |
|
|
| Нет |
|
1.05 и более поздние версии. |
|
|
| Нет |
|
1.05 и более поздние версии. |
|
|
Массив ANS..19 | Нет |
Массив телефонов оператора по приёму платежей в формате +N. |
1.05 и более поздние версии. |
|
|
ANS..256 | Нет |
Адрес оператора перевода. |
1.05 и более поздние версии. |
|
|
N10..12 | Нет |
ИНН оператора перевода. |
1.05 и более поздние версии. |
|
|
ANS..64 | Нет |
Наименование оператора перевода. |
1.05 и более поздние версии. |
|
|
Массив ANS..19 | Нет |
Массив телефонов оператора перевода в формате +N. |
1.05 и более поздние версии. |
|
|
Maccив ANS..19 | Нет |
Массив телефонов поставщика в формате +N. |
1.05 и более поздние версии. |
|
|
A..256 | Нет |
ФИО кассира. |
1.05 и более поздние версии. |
|
|
ANS..16 | Нет |
Дополнительный реквизит чека. |
1.05 и более поздние версии. |
|
|
ANS..24 | Нет |
Наименование дополнительного реквизита пользователя. |
1.05 и более поздние версии. |
|
|
ANS..24 | Нет |
Значение дополнительного реквизита пользователя. |
1.05 и более поздние версии. |
|
|
N..12 | Нет |
ИНН кассира |
1.2 и более поздние версии. |
|
|
ANS..256 | Нет |
Адрес покупателя (клиента). |
1.2 и более поздние версии. |
|
|
NS10 | Нет |
Дата рождения покупателя (клиента) в формате «dd.mm.yyyy» |
1.2 и более поздние версии. |
|
|
N3 | Нет |
Числовой код страны, гражданином которой является покупатель (клиент). Код страны указывается в соответствии с Общероссийским классификатором стран мира ОКСМ. |
1.2 и более поздние версии. |
|
|
N2 | Нет |
Числовой код вида документа, удостоверяющего личность (например, 21 - паспорт гр. РФ). |
1.2 и более поздние версии. |
|
|
NS11 | Нет |
Серия и номер паспорта плательщика: |
1.2 и более поздние версии. |
|
|
ANS..64 | Нет |
Электронный адрес покупателя. Обязательно должно быть заполнено строго одно из полей: |
1.2 и более поздние версии. |
|
|
NS..19 | Нет |
Телефон покупателя. Вместе с кодом страны без пробелов и дополнительных символов, кроме символа «+» (номер «+371 2 1234567» необходимо передать как «+37121234567»). Обязательно должно быть заполнено строго одно из полей: |
1.2 и более поздние версии. |
|
|
N12 | Нет |
ИНН покупателя. |
1.2 и более поздние версии. |
|
|
ANS..256 | Нет |
Наименование покупателя (клиента). |
1.2 и более поздние версии. |
|
|
| Нет |
|
1.2 и более поздние версии. |
|
|
| Нет |
|
1.2 и более поздние версии. |
|
|
| Нет |
|
1.2 и более поздние версии. |
|
|
| Нет |
|
1.2 и более поздние версии. |
|
|
NS10 | Нет |
Дата нормативного акта федерального органа исполнительной власти, регламентирующего порядок заполнения реквизита «значение отраслевого реквизита», в формате: |
1.2 и более поздние версии. |
|
|
ANS | Нет |
Идентификатор ФОИВ. Должно принимать одно из значений справочника ФОИВ. |
1.2 и более поздние версии. |
|
|
N..32 | Нет |
Номер нормативного акта федерального органа исполнительной власти, регламентирующего порядок заполнения реквизита «значение отраслевого реквизита» |
1.2 и более поздние версии. |
|
|
ANS..256 | Нет |
Состав значений, определенных нормативным актом федерального органа исполнительной власти |
1.2 и более поздние версии. |
Параметры ответа представлены в таблице ниже.
| Название | Тип | Обязательно | Описание | Версия ФФД |
|---|---|---|---|---|
|
|
A..5 | Да |
Указывает на успешность запроса. Доступны следующие значения:
|
Все версии. |
|
|
N..2 | Нет |
Код ошибки. |
Все версии. |
|
|
| Нет |
|
Все версии. |
| Код ошибки | Текст ошибки |
|---|---|
| 0 |
Обработка запроса прошла без системных ошибок. |
| 1 |
Заказ с таким номером уже обработан. |
| 1 |
Неверный номер заказа. |
| 3 |
Неизвестная валюта. |
| 4 |
Номер заказа не может быть пуст. |
| 4 |
Имя продавца не может быть пустым. |
| 4 |
Отсутствует сумма. |
| 4 |
URL возврата не может быть пуст. |
| 4 |
Пароль не может быть пуст. |
| 5 |
Доступ запрещён. |
| 5 |
Пользователь отключён. |
| 7 |
Системная ошибка. |
| 8 |
|
| 8 |
Доп. параметр |
| 8 |
|
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:mer="http://engine.paymentgate.ru/webservices/merchant">
<soapenv:Header>
<soapenv:Body>
<mer:closeOfdReceipt>
<request mdOrder="09fddf4a-fd30-76ca-ad2e-36f50128092a" amount="23500"/>
<orderBundle>
<customerDetails>
<phone>+79123456789</phone>
<inn>516974792202</inn>
<passport>4507 443564</passport>
</customerDetails>
<!-- Состав Корзины -->
<cartItems>
<!-- Zero or more repetitions: -->
<items positionId="1">
<name>"По-аджарски \"Лодочка"\" SMALL"</name>
<quantity measure="0">1</quantity>
<itemCode>270_235.00</itemCode>
<itemPrice>23500</itemPrice>
<tax>
<taxType>0</taxType>
<taxSum>0</taxSum>
</tax>
<itemAttributes>
<attributes name="nomenclature">010463003407001221CMK45BrhN0WLf</attributes>
<attributes name="paymentMethod">1</attributes>
<attributes name="paymentObject">30</attributes>
<attributes name="agent_info.type">7</attributes>
<attributes name="agent_info.paying.operation">testoperation</attributes>
<attributes name="agent_info.paying.phones">+79123456789</attributes>
<attributes name="agent_info.paymentsOperator.phones">+79123456789</attributes>
<attributes name="agent_info.MTOperator.phones">+79123456789</attributes>
<attributes name="agent_info.MTOperator.name">MT operator</attributes>
<attributes name="agent_info.MTOperator.address">Moscow</attributes>
<attributes name="agent_info.MTOperator.inn">8634330204</attributes>
<attributes name="supplier_info.phones">+79123456789</attributes>
<attributes name="supplier_info.name">Supplier</attributes>
<attributes name="supplier_info.inn">287381373424</attributes>
<attributes name="excise">10.0</attributes>
<attributes name="country_code">810</attributes>
<attributes name="declaration_number">12332234533</attributes>
<attributes name="userData">user data</attributes>
<attributes name="markQuantity.numerator">1</attributes>
<attributes name="markQuantity.denominator">2</attributes>
<attributes name="sectoralItemProps[0].federalId">001</attributes>
<attributes name="sectoralItemProps[0].date">10.10.2021</attributes>
<attributes name="sectoralItemProps[0].number">123/4567</attributes>
<attributes name="sectoralItemProps[0].value">value1</attributes>
<attributes name="sectoralItemProps[1].federalId">003</attributes>
<attributes name="sectoralItemProps[1].date">10.10.2021</attributes>
<attributes name="sectoralItemProps[1].number">321/4567</attributes>
<attributes name="sectoralItemProps[1].value">value2</attributes>
</itemAttributes>
</items>
</cartItems>
</orderBundle>
</mer:closeOfdReceipt>
</soapenv:Body>
</soapenv:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:mer="http://engine.paymentgate.ru/webservices/merchant">
<soapenv:Header/>
<soapenv:Body>
<mer:closeOfdReceipt>
<order merchantOrderNumber="78ds901234567890" description=" " amount="15000" currency=" " language=" " pageView="DESKTOP" sessionTimeoutSecs=" " bindingId=" " expirationDate="2014-09-08T14:14:14">
<params name="param1" value="valueParam1"/>
<params name="param2" value="valueParam2"/>
<orderId>666</orderId>
</order>
</mer:closeOfdReceipt>
</soapenv:Body>
</soapenv:Envelope>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ns1:closeOfdReceiptResponse xmlns:ns1="http://engine.paymentgate.ru/webservices/merchant">
<return>
<success>true</success>
</return>
</ns1:closeOfdReceiptResponse>
</soap:Body>
</soap:Envelope>