ВерсионностьLink to Версионность

Номер версии протокола указывается в версии транспортной DLL (rkalcosh.dll или rkalcoex.dll) на втором месте.
Например, версия rkalcosh.dll 7.2.30.0, где:

  • 7 — всегда, так как r_keeper 7
  • 2 — версия протокола
  • 30 — версия DLL
  • 0 — подверсия, номер специального билда, как правило 0.

Текущая версия протокола — 6

В версии 2:

  • Добавлены команды MarkCloseBottle и MarkListOpened
  • Добавлен атрибут salePlaceGuid в тэг MarkPlaceInfo
  • Добавлены специально обрабатываемые ошибки ECODE_ALREADY_SALEDECODE_ALREADY_CANCELED

В версии 3

  • Добавлен атрибут localTime в корневой тэг MarkQuery

В версии 4

  • Добавлены атрибуты в MarkReceipt fiscDocNumber, fiscDeviceId,fiscShift

В версии 5

  • Добавлена команда MarkBlockMark

В версии 6

  • В MarkGetVersionResult добавлен атрибут protocolVersion 
  • В ServiceOptions в MarkGetVersionResult добавлены возможная опция OpenBottle 

КодировкаLink to Кодировка

Используется кодировка UTF-8

Общий формат корневых тэговLink to Общий формат корневых тэгов

Имена тэгов начинаются с больших букв. Имена атрибутов – с маленьких букв.

  • Корневой тэг на вход MarkQuery
    • localTime (начиная с версии 3) — локальная дата-время главного кассового сервера
  • Корневой тэг выхода MarkQueryResult
    • dllVersion — версия модуля связи с системой учёта, добавляется внутри r_ k 7, снаружи передавать не надо
    • status
      • Ok
      • Error
    • errorCode — числовой код ошибки. Отрицательные коды – предустановленные, могут иметь специфическую обработку в r_k 7
      • ECODE_UNKNOWN = -1 — неизвестная ошибка
      • ECODE_PARSE = -2 — ошибка разбора входных данных
      • ECODE_NOT_INITIALIZED = -3 — не был успешно инициализирован (нет связи с системой учёта)
      • ECODE_SHORTAGE = -4 — не хватает для списания
      • ECODE_ALREADY_SALED = -5 (с версии 2) — r_k 7, получив такую ошибку при MarkSale, выполнит MarkCancelSale, затем повторит MarkSale с новым номером транзакции
      • ECODE_ALREADY_CANCELED = -6 (с версии 2) — r_k 7 будет игнорировать такую ошибку на MarkCancelSale
      • положительные ошибки — ошибки от системы учёта, только логируются и/или отображаются оператору
    • errorText — текст ошибки, если была
    • errorModule — модуль, сгенерировавший ошибку, коды ошибок в рамках модуля
    • dateTime — дата-время окончания выполнения
    • workTime — время выполнения в миллисекундах
    • processed — количество успешно выполненных команд (пока возможны варианты 0 или 1).

MarkGetVersion — получение версии сервиса учёта алкоголяLink to MarkGetVersion — получение версии сервиса учёта алкоголя

вход

выход

MarkGetVersionResult

  • serviceVersion — версия системы учёта
  • protocolVersion - начиная с версии 6, версия поддерживаемого протокола
  • [ ServiceOptions ] — опционный подтэг, содержащий в тексте список опций, разделённых пробелами и/или переводом строки. Поддерживаемые тэги:
    • OpenBottle - начиная с версии 6 - опция, что сервис поддерживает команды MarkOpenedList, MarkOpen, MarkCloseBottle

Пример
Вызов

<?xml version="1.0" encoding="utf-8"?>
<MarkQuery>
    <MarkGetVersion/>
</MarkQuery>


Ответ

<?xml version="1.0" encoding="utf-8"?>
<MarkQueryResult dllVersion="12" status="Ok" errorCode="0" errorText="" errorModule="" processed="1" dateTime="2024-02-29T02:34:20" workTime="0">
    <MarkGetVersionResult serviceVersion="5.142.5.142"/>
</MarkQueryResult>

MarkGetConnected — получение статуса связиLink to MarkGetConnected — получение статуса связи

Вызывается внутри r_k 7, наружу не посылается

вход

выход

MarkGetConnectedResult

Пример
Вызов

<?xml version="1.0" encoding="utf-8"?>
<MarkQuery>
    <MarkGetConnected/>
</MarkQuery>


Ответ

<?xml version="1.0" encoding="utf-8"?> <MarkQueryResult dllVersion="12" status="Ok" errorCode="0" errorText="" errorModule="" processed="1" dateTime="2024-02-29T02:34:23" workTime="63">
    <MarkGetConnectedResult/>
</MarkQueryResult>


MarkOpen — вскрытие бутылкиLink to MarkOpen — вскрытие бутылки

вход

  • MarkPlaceInfo — информация о месте реализации
    • restaurantGuid
    • restaurantCode — полный 9-значный код ресторана
    • orderCategGuid — идентификатор места учёта внутри ресторана (категория заказа)
    • orderCategCode — код места учёта внутри ресторана (категория заказа)
    • kpp
    • inn
    • fiasId
    • salePlaceGuid — место реализации для SH в соответствии с параметром SH4SalePlace. Начиная с версии протокола 2
  • gtin - gtin/ean13 код
  • [ isOld ] — бутылка, вскрытая до 01.07.2024
  • [ restVolume ] — оставшийся объём в мл, необходимо задавать при isOld=true
  • MarkMark — просканированная марка в Base64

выход

  • MarkOpenResult 
    • shortName
    • fullName
    • volume    объём в миллилитрах

Пример
Вызов

<?xml version="1.0" encoding="utf-8"?>
<MarkQuery>
    <MarkOpen gtin="01234567890123">  
        <MarkPlaceInfo restaurantGuid="{7ECF69B1-CC42-4D1B-ADBB-9BCE82EB3D29}" restaurantCode="123456789" orderCategGuid="{FB1D53AA-5747-43C1-9144-89A7E4F5AFAA}" orderCategCode="123321" kpp="123321123321" inn="7897321987" fiasId="{DEFD4D32-0DCC-4878-A67C-3055218A0629}"/>    
        <MarkMark>ABCCBA==</MarkMark>
    </MarkOpen>
</MarkQuery>


Ответ

<?xml version="1.0" encoding="utf-8"?>
<MarkQueryResult dllVersion="1" status="Ok" errorText="" dateTime="2020-02-12T20:28:51" workTime="0" processed="1">
    <MarkOpenResult fullName="Российский коньяк пятилетний "Monte Choco" ("Шоколадная гора")" shortName="" volume="500"/>
</MarkQueryResult>

MarkCloseBottle — отмена вскрытия бутылки (если ещё не использовалась)Link to MarkCloseBottle — отмена вскрытия бутылки (если ещё не использовалась)

Начиная с версии протокола 2

вход

  • MarkMark — просканированная марка в Base64

выход

  • MarkCloseBottleResult 

Пример
Вызов

<?xml version="1.0" encoding="utf-8"?>
<MarkQuery>
    <MarkCloseBottle>  
        <MarkMark>ABCCBA==</MarkMark>
    </MarkCloseBottle>
</MarkQuery>


Ответ


<?xml version="1.0" encoding="utf-8"?>
<MarkQueryResult dllVersion="1" status="Ok" errorText="" dateTime="2020-02-12T20:28:51" workTime="0" processed="1">
    <MarkCloseBottleResult />
</MarkQueryResult>

MarkSale — продажа списка блюд с алкоголем, списание бутылокLink to MarkSale — продажа списка блюд с алкоголем, списание бутылок

вход

  •  MarkSale
    • transactionUni  уникальный по ресторану int64 номер транзакции, меняется при следующей попытке после отмены (например при ошибке печати), не пересекается между кассовыми серверами (ресторана)
    • MarkReceipt — информация о заказе
      • guid
      • visit — int32
      • uni — int32
      • fiscDocNumber — будущий номер фискального документа (с версии 4)
      • fiscDeviceId — номер фискального накопителя (с версии 4)
      • fiscShift — номер фискальной смены (с версии 4)
    • MarkShift — информация о смене (кассового сервера) 
      • restaurantGuid
      • restaurantCode — полный 9-значный код ресторана
      • logicDate — "YYYY-MM-DD"
      • serverNetName
      • shiftNum
      • guid
    • MarkPlaceInfo — информация о месте реализации
      • restaurantGuid
      • restaurantCode — полный 9-значный код ресторана
      • orderCategGuid — идентификатор места учёта внутри ресторана (категория заказа)
      • orderCategCode — код места учёта внутри ресторана (категория заказа)
      • kpp
      • inn
      • fiasId
      • fsrarId
      • salePlaceGuid — место реализации для SH в соответствии с параметром SH4SalePlace. Начиная с версии протокола 2
    • MarkItems — позиции заказа с алкоголем
      • MarkItem — позиция заказа
        • guid — идентификатор позиции заказа 
        • uni — целочисленный идентификатор позиции заказа в рамках визита
        • quantity — количество позиции. Например, если 2 стопки водки по 50 грамм, значит 2
        • kind — одно из следующих значений (на данный момент)
          • Alcohol — чистый алкоголь
          • Cocktail — коктейль, смесь ингредиентов с использованием алкогольных напитков
        • MarkMenuItem — информация об элементе справочника меню этой позиции заказа
          • guid
          • code
          • extCode
          • name
        • receiptItemValue — сумма соответствующей позиции фискального чека
        • volume — объём в миллилитрах, рассчитывается на основе свойства Объём из элемента меню, точнее объём из технологической карты

выход при успешном списании

  • MarkSaleResult
    • done = "1"
    • online = "1"
    • extTransactionId — строковый уникальный в рамках корпорации идентификатор транзакции в системе учёта алкоголя, может использоваться потом для подвязывания данных
    • MarkUTMSlip
      • url — атрибут, содержащий url, присланный УТМ
      • sign  атрибут, содержащий sign, присланный УТМ
      • ver — атрибут, содержащий ver, присланный УТМ
      • MarkUTMSlipText — в тексте этого подтэга можно передать произвольную информацию, которая может быть напечатана в чеке
    • MarkItemResult — таких подтэгов столько, сколько в вызове было чистого алкоголя (kind="Alcohol"), для коктейлей не возвращается
      • guid — идентификатор позиции заказа 
      • MarkItemSourceUsed — информация о части позиции, налитой из одной бутылки, таких частей может быть несколько (из разных бутылок)
        • gtin - gtin/ean13 код
        • volume — объём, налитый из конкретной бутылки, в миллилитрах
        • fullName — полное наименование закупленного товара, используемого при розливе порции или приготовлении коктейля
        • shortName — краткое наименование закупленного товара, используемого при розливе порции или приготовлении коктейля
        • MarkMark — тэг – марка, содержимое – марка в формате base64
        • isOld — boolean признак, что марка бутылки, которая вскрыта до 1.7.2024

выход при нехватке алкоголя для списании

Возвращается информация по тем позициям заказа, для которых не хватило алкоголя. Если существует позиция, для которой вообще нет информации по бутылкам, то тэг MarkItemShortage отсутствует, заполняется ошибка в корневом тэге.

  •  MarkSaleResult
    • done = "0"
    • online = "1"
    • MarkItemShortage
      • volume — недостающий объём, может быть равен запрошенному, если остаток 0.
      • fullName — полное наименование закупленного товара, используемого при розливе порции или приготовлении коктейля
      • shortName — краткое наименование закупленного товара, используемого при розливе порции или приготовлении коктейля

Примеры

  • вызов при отсутствии связи (марки обязательно заполнены для чистого алкоголя, но чистый алкоголь может в этом режиме превращаться в коктейли)


Вызов


<?xml version="1.0" encoding="utf-8"?>
<MarkQuery>
    <MarkSale transactionUni="12321313">
        <MarkReceipt guid="{D9556A5C-DCE6-40D1-AB8B-09633C0A298C}" visit="12345" uni="12321"/>
        <MarkShift restaurantGuid="{7ECF69B1-CC42-4D1B-ADBB-9BCE82EB3D29}" restaurantCode="123456789" guid="{2F3F562D-95C6-44C7-ADA1-0A3C99D96D87}" serverNetName="XX_MIDSERV_YY" shiftNum="123" logicDate="2024-08-02"/>
        <MarkPlaceInfo restaurantGuid="{7ECF69B1-CC42-4D1B-ADBB-9BCE82EB3D29}" restaurantCode="123456789" orderCategGuid="{FB1D53AA-5747-43C1-9144-89A7E4F5AFAA}" orderCategCode="123321" kpp="123321123321" inn="7897321987" fiasId="{DEFD4D32-0DCC-4878-A67C-3055218A0629}" fsrarId="123321"/>
        <MarkItems>
            <MarkItem guid="{4BD73FC5-BACD-4FF7-8AF5-98586036FA4F}" uni="322" quantity="2" kind="Alcohol" volume="50" gtin="1234567890123" >
                <MarkMenuItem guid="{8C421861-2C82-4D07-960C-17998346D64B}" code="1234" extCode="4321" name="Водка 50 мл"/>
                <MarkMark>ABCCBA==</MarkMark>
            </MarkItem>
            <MarkItem uni="333" guid="{5B2B26E5-DB6B-468F-B108-B2B27B36F006}" quantity="2" kind="Cocktail">
                <MarkMenuItem guid="{CDAFA26C-6766-4114-9BF3-43A43DDE8D7C}" code="3457" extCode="546" name="Мохито"/>
            </MarkItem>
        </MarkItems>
    </MarkSale>
</MarkQuery>


Ответ

<?xml version="1.0" encoding="utf-8"?>
<MarkQueryResult dllVersion="1" status="Ok" errorText="" dateTime="2020-02-12T20:28:51" workTime="0" processed="1">
    <MarkSaleResult done="true" online="0"/>
</MarkQueryResult>

  • вызов в режиме с открытием бутылок


Вызов

<?xml version="1.0" encoding="utf-8"?>
<MarkQuery>
    <MarkSale transactionUni="12321313">
        <MarkReceipt guid="{D9556A5C-DCE6-40D1-AB8B-09633C0A298C}" visit="12345" uni="12321" fiscDocNumber="123321" fiscDeviceId="0012321321" fiscShift="12"/>
        <MarkShift restaurantGuid="{7ECF69B1-CC42-4D1B-ADBB-9BCE82EB3D29}" restaurantCode="123456789"  guid="{2F3F562D-95C6-44C7-ADA1-0A3C99D96D87}" serverNetName="XX_MIDSERV_YY" shiftNum="123" logicDate="2024-08-02"/>
        <MarkPlaceInfo restaurantGuid="{7ECF69B1-CC42-4D1B-ADBB-9BCE82EB3D29}" restaurantCode="123456789" orderCategGuid="{FB1D53AA-5747-43C1-9144-89A7E4F5AFAA}" orderCategCode="123321" kpp="123321123321" inn="7897321987" fiasId="{DEFD4D32-0DCC-4878-A67C-3055218A0629}">
        </MarkPlaceInfo>
        <MarkItems>
            <MarkItem guid="{4BD73FC5-BACD-4FF7-8AF5-98586036FA4F}" quantity="2" kind="Alcohol" volume="50" gtin="1234567890123" >
                <MarkMenuItem guid="{8C421861-2C82-4D07-960C-17998346D64B}" code="1234" extCode="4321" name="Алазанская долина 50 мл"/>
            </MarkItem>
            <MarkItem guid="{4A4D6186-AF49-44A1-A691-69D40F23182E}" quantity="1" kind="Alcohol" volume="1500" gtin="1234567890123" >
                <MarkMenuItem guid="{DEA93427-7CE4-4334-AAA4-7EEE6AA1E214}" code="124" extCode="321" name="Алазанская долина графин"/>
            </MarkItem>
            <MarkItem guid="{5B2B26E5-DB6B-468F-B108-B2B27B36F006}" quantity="2" kind="cocktail">
                <MarkMenuItem guid="{CDAFA26C-6766-4114-9BF3-43A43DDE8D7C}" code="3457" extCode="546" name="Мохито"/>
            </MarkItem>
        </MarkItems>
    </MarkSale>
</MarkQuery>


Ответ

<?xml version="1.0" encoding="utf-8"?>
<MarkQueryResult dllVersion="1" status="Ok" errorText="" dateTime="2020-02-12T20:28:51" workTime="0" processed="1">
    <MarkSaleResult done="true" extTransactionId="{2F3F562D-95C6-44C7-ADA1-0A3C99D96D87}:12321313">
        <MarkUTMSlip url="http://check.egais.ru?id=6e403cb0-e45c-40f8-ac7a-683952b39552&dt=2802241933&cn=030000682561" sign="820F682718B193B14283E138659A819689CA515637D406B9B7B6D8116598E6ACD5B5945D6568340A1E38BF1A0E9AA6FF933A111B0C8617AD982CCE532296BF53" ver="2">
            <MarkUTMSlipText>Ресторан Лютик
ИНН: 7701723040
КПП: 771401001
Смена: 17
Чек: 76
Дата: 28.02.2024 19:33:32</MarkUTMSlipText>
        </MarkUTMSlip>
        <MarkItemResult guid="{4BD73FC5-BACD-4FF7-8AF5-98586036FA4F}">
            <MarkItemSourceUsed gtin="4600001231111" fullName="Вино ординарное сортовое полусладкое белое "АЛАЗАНСКАЯ ДОЛИНА"" shortName="" volume="50" isOld="1">
            <MarkMark>MjM2MzAyNDg3OTAzMzIwODIwMDAxUkRPSlpNSkZNR05GNVpaSEpNT1ZISFJYT1U3N05PVURJNDRDRjZVQjVGV05MTTVRNkdKN1M3NFMzU1pYUEtMRlpaRE0yTzQzVFNCUjRWUjZWUklJMklMQU80RzMzVDRNREo3VkRRUlBSMlg2RDJNNlJXVVdKQjIzTlZHMzdVTE9Z</MarkMark>
            </MarkItemSourceUsed>
   </MarkItemResult>        
        <MarkItemResult guid="{4A4D6186-AF49-44A1-A691-69D40F23182E}">
            <MarkItemSourceUsed gtin="4600001231111" fullName="Вино ординарное сортовое полусладкое белое "АЛАЗАНСКАЯ ДОЛИНА"" shortName="" volume="150" isOld="1">
            <MarkMark>MjM2MzAyNDg3OTAzMzIwODIwMDAxUkRPSlpNSkZNR05GNVpaSEpNT1ZISFJYT1U3N05PVURJNDRDRjZVQjVGV05MTTVRNkdKN1M3NFMzU1pYUEtMRlpaRE0yTzQzVFNCUjRWUjZWUklJMklMQU80RzMzVDRNREo3VkRRUlBSMlg2RDJNNlJXVVdKQjIzTlZHMzdVTE9Z</MarkMark>
            </MarkItemSourceUsed>
            <MarkItemSourceUsed gtin="4600001231111" fullName="Вино ординарное сортовое полусладкое белое "АЛАЗАНСКАЯ ДОЛИНА"" shortName="" volume="500" isOld="1">
            <MarkMark>NjM2MzAyNDg3OTAzMzIwODIwMDAxUkRPSlpNSkZNR05GNVpaSEpNT1ZISFJYT1U3N05PVURJNDRDRjZVQjVGV05MTTVRNkdKN1M3NFMzU1pYUEtMRlpaRE0yTzQzVFNCUjRWUjZWUklJMklMQU80RzMzVDRNREo3VkRRUlBSMlg2RDJNNlJXVVdKQjIzTlZHMzdVTE9Z</MarkMark>
            </MarkItemSourceUsed>
            <MarkItemSourceUsed gtin="4600001231111" fullName="Вино ординарное сортовое полусладкое белое "АЛАЗАНСКАЯ ДОЛИНА"" shortName="" volume="500" isOld="0">
            <MarkMark>OjM2MzAyNDg3OTAzMzIwODIwMDAxUkRPSlpNSkZNR05GNVpaSEpNT1ZISFJYT1U3N05PVURJNDRDRjZVQjVGV05MTTVRNkdKN1M3NFMzU1pYUEtMRlpaRE0yTzQzVFNCUjRWUjZWUklJMklMQU80RzMzVDRNREo3VkRRUlBSMlg2RDJNNlJXVVdKQjIzTlZHMzdVTE9Z</MarkMark>
            </MarkItemSourceUsed>
            <MarkItemSourceUsed gtin="4600001231111" fullName="Вино ординарное сортовое полусладкое белое "АЛАЗАНСКАЯ ДОЛИНА"" shortName="" volume="350" isOld="0">
            <MarkMark>PjM2MzAyNDg3OTAzMzIwODIwMDAxUkRPSlpNSkZNR05GNVpaSEpNT1ZISFJYT1U3N05PVURJNDRDRjZVQjVGV05MTTVRNkdKN1M3NFMzU1pYUEtMRlpaRE0yTzQzVFNCUjRWUjZWUklJMklMQU80RzMzVDRNREo3VkRRUlBSMlg2RDJNNlJXVVdKQjIzTlZHMzdVTE9Z</MarkMark>
            </MarkItemSourceUsed>
   </MarkItemResult>
    </MarkSaleResult>
</MarkQueryResult>

MarkCancelSale — отмена продажи по заголовку чека (идентификатору транзакции)Link to MarkCancelSale — отмена продажи по заголовку чека (идентификатору транзакции)

вход

  •  MarkCancelSale
    • transactionUni — уникальный целый номер транзакции, меняется при следующей попытке после отмены (например, при ошибке печати)
    • MarkReceipt — информация о заказе
      • guid
      • visit — int32
      • uni — int32
      • fiscDocNumber — номер фискального документа (будущий)
      • fiscDeviceId — номер фискального накопителя
      • fiscShift — номер фискальной смены
    • MarkShift — информация о смене (кассового сервера) 
      • restaurantGuid
      • restaurantCode — полный 9-значный код ресторана
      • logicDate — "YYYY-MM-DD"
      • serverNetName
      • shiftNum
      • guid
    • MarkPlaceInfo — информация о месте реализации
      • restaurantGuid
      • restaurantCode — полный 9-значный код ресторана
      • orderCategGuid — идентификатор места учёта внутри ресторана (категория заказа)
      • orderCategCode — код места учёта внутри ресторана (категория заказа)
      • kpp
      • inn
      • fiasId
      • fsrarId
      • salePlaceGuid — место реализации для SH в соответствии с параметром SH4SalePlace. Начиная с версии протокола 2.

выход при успешном списании

  • MarkCancelSaleResult

Пример
Вызов

<?xml version="1.0" encoding="utf-8"?>
<MarkQuery>
    <MarkCancelSale transactionUni="12321313">
        <MarkReceipt guid="{D9556A5C-DCE6-40D1-AB8B-09633C0A298C}" visit="12345" uni="12321"/>
        <MarkShift restaurantGuid="{7ECF69B1-CC42-4D1B-ADBB-9BCE82EB3D29}" restaurantCode="123456789" guid="{2F3F562D-95C6-44C7-ADA1-0A3C99D96D87}" serverNetName="XX_MIDSERV_YY" shiftNum="123" logicDate="2024-08-02"/>
        <MarkPlaceInfo restaurantGuid="{7ECF69B1-CC42-4D1B-ADBB-9BCE82EB3D29}" restaurantCode="123456789" orderCategGuid="{FB1D53AA-5747-43C1-9144-89A7E4F5AFAA}" orderCategCode="123321" kpp="123321123321" inn="7897321987" fiasId="{DEFD4D32-0DCC-4878-A67C-3055218A0629}">
        </MarkPlaceInfo>
    </MarkCancelSale>
</MarkQuery>


Ответ

<?xml version="1.0" encoding="utf-8"?>
<MarkQueryResult dllVersion="1" status="Ok" errorText="" dateTime="2020-02-12T20:28:51" workTime="0" processed="1">
    <MarkCancelSaleResult status="Ok"/>
</MarkQueryResult>

MarkCloseShift — закрытие сменыLink to MarkCloseShift — закрытие смены

вход

  • MarkShift — информация о смене (кассового сервера) 
    • restaurantGuid
    • restaurantCode — полный 9-значный код ресторана
    • logicDate — "YYYY-MM-DD"
    • serverNetName
    • shiftNum
    • guid

выход

  • MarkCloseShiftResult

Пример
Вызов

<?xml version="1.0" encoding="utf-8"?>
<MarkQuery>
    <MarkCloseShift>
        <MarkShift restaurantGuid="{7ECF69B1-CC42-4D1B-ADBB-9BCE82EB3D29}" restaurantCode="123456789"  guid="{2F3F562D-95C6-44C7-ADA1-0A3C99D96D87}" serverNetName="XX_MIDSERV_YY" shiftNum="123" logicDate="2024-08-02"/>
    </MarkCloseShift>
</MarkQuery>


Ответ

<?xml version="1.0" encoding="utf-8"?>
<MarkQueryResult dllVersion="1" status="Ok" errorText="" dateTime="2020-02-12T20:28:51" workTime="0" processed="1">
   <MarkCloseShiftResult status="Ok"/>
</MarkQueryResult>

MarkListOpened — запрос списка открытых бутылокLink to MarkListOpened — запрос списка открытых бутылок

Начиная с версии протокола 2

вход

  • MarkPlaceInfo — информация о месте реализации
    • restaurantGuid
    • restaurantCode — полный 9-значный код ресторана
    • orderCategGuid — идентификатор места учёта внутри ресторана (категория заказа)
    • orderCategCode — код места учёта внутри ресторана (категория заказа)
    • kpp
    • inn
    • fiasId
    • fsrarId
    • salePlaceGuid — место реализации для SH в соответствии с параметром SH4SalePlace. Начиная с версии протокола 2

выход

  • MarkListOpenedResult

    • MarkOpenedRest
      • gtin - gtin/ean13 код
      • volume — объём целой бутылки в миллилитрах
      • fullName — полное наименование товара, используемого при розливе порции или приготовлении коктейля
      • shortName — краткое наименование товара, используемого при розливе порции или приготовлении коктейля
      • MarkMark — тэг – марка, содержимое – марка в формате base64
      • isOld — boolean признак, что марка бутылки, которая вскрыта до 01.07.2024
      • restVolume  — неизрасходованный объём бутылки целый в миллилитрах
      • openDateTime — дата-время открытия бутылки ISO
      • isBlocked — boolean признак, что марка бутылки заблокирована

Пример
Вызов

<?xml version="1.0" encoding="utf-8"?>
<MarkQuery>
    <MarkListOpened>
        <MarkPlaceInfo restaurantGuid="{FC1BBB36-4D7F-4EF9-80C2-33B78ADBDB6A}" restaurantCode="199990373" orderCategGuid="{1E113335-9F76-4CDF-A860-96ADB5D33E77}" orderCategCode="1" inn="7701723040" kpp="771401001" fiasId="" fsrarId=""/>
    </MarkListOpened>
</MarkQuery>


Ответ

<?xml version="1.0" encoding="utf-8"?>
<MarkQueryResult dllVersion="29" status="Ok" errorCode="0" errorText="" errorModule="" processed="1" dateTime="2024-06-13T23:01:20" workTime="6953">
    <MarkListOpenedResult>
        <MarkOpenedRest fullName="Вино защищенного географического указания "Роучи" сухое красное" shortName="" gtin="4600001231111" isOld="0" isBlocked="0" volume="750" restVolume="750" openDateTime="2024-06-11T00:00:00">
            <MarkMark>MjM2MjAzMDM2NzczNzMwOTE5MDAxUlhHU1c3SDZHUE5SNllHU01JRVZWQ0VNUlVFRk1ETFZNVVJFWVhJTlhVRjVJT1oyS000UDQ2REdFTk0yNUlRNTVPT1ZXS0FDSlpKRFFNVTNDV0s2RllRSzNIWVRGU0g3VUxEM0xaWFdCNDQ3TjRWMjM3UE5ZSUkzRzVSNDIyMzg2</MarkMark>
        </MarkOpenedRest>
        <MarkOpenedRest fullName="Вино ординарное сортовое полусладкое белое "АЛАЗАНСКАЯ ДОЛИНА"" shortName="" gtin="4600001231111" isOld="0" isBlocked="0" volume="750" restVolume="750" openDateTime="2024-06-11T00:00:00">
            <MarkMark>MjM2MzAyNDg3OTIxNTEwODIwMDAxN1hISFNGT0pCTFpaV0M0RUE2U1A1QVY2WUVEUUtMNUJZWEFTTTJaRzNDWVVXWk9QQ1A0SVhWQ0RVWVdRT043SVlRQ09QT1pLNjNHTDRUWlVKS0ZLSkFLQ1VOTkxGWEozRzRDWlFESFBMQjQ1TVBHRFE3VktRS002QkI2N01NUkZB</MarkMark>
        </MarkOpenedRest>
         <MarkOpenedRest fullName="Крепленое (ликерное) вино с ЗГУ «Крым» коллекционное десертное белое «Токай Алушта» урожая 1938 года" shortName="" gtin="4600001231118" isOld="0" isBlocked="0" volume="750" restVolume="0" openDateTime="2114-02-22T00:00:00">
            <MarkMark>MTk0MzAwMDQwMTU5MDQxMTIwMDAxRjVSR1BKSlpIR0JVUE81S1dNVE43UENPTUVKV1JNUEFKV09YQ0FRSUMyMjNWQkNXVFNGWUE2U0lKTjJYSlQ2RjNZUjNGNUtTWFBHWlpYTEZJREdXSFpRUldQN1lTTTRPWEIzWjI0Sk4yTDYyR1lXVDJYSlNZWEJFQ0RDUjJLQk1Z</MarkMark>
        </MarkOpenedRest>
        <MarkOpenedRest fullName="Вино столовое полусладкое красное Монте Гароа" shortName="" gtin="4600001231113" isOld="1" isBlocked="0" volume="750" restVolume="270" openDateTime="2114-02-22T00:00:00">
            <MarkMark>MjM2MjAyODAxMDg1MTAwNzE5MDAxU0NSRUZIMktON1pBVEhJWVBGSTYyU1lRQklXVVBLVzNTMkRYU1hGV1lVRlJTRUVCU0RBM0FERlg3WUZSQUs3V1JBS01JWElHU1RGWlRSM1pQR1dVWkRIWTNURjVWRzRJUTY3VDVVUlNTRkpLNVlBVUNLVjI0WUxTNDU0RlFKS09B</MarkMark>
        </MarkOpenedRest>
      
    </MarkListOpenedResult>
</MarkQueryResult>

MarkBlockMark - блокировка марки вскрытой бутылки (по ошибке от ЕГАИС)Link to MarkBlockMark - блокировка марки вскрытой бутылки (по ошибке от ЕГАИС)

Начиная с версии протокола 5

вход

  • MarkMark - марка в Base64

выход

  • MarkBlockMarkResult 

    • shortName
    • fullName
    • volume - объём в миллилитрах
    • restVolume - оставшийся объём в миллилитрах

Пример

Вызов


<?xml version="1.0" encoding="utf-8"?>
<MarkQuery>
    <MarkBlockMark>  
        <MarkMark>ABCCBA==</MarkMark>
    </MarkBlockMark>
</MarkQuery>


Ответ


<?xml version="1.0" encoding="utf-8"?>
<MarkQueryResult dllVersion="1" status="Ok" errorText="" dateTime="2020-02-12T20:28:51" workTime="0" processed="1">
    <MarkBlockMarkResult fullName="Российский коньяк пятилетний "Monte Choco" ("Шоколадная гора")" shortName="" volume="500" restVolume="150"/>
</MarkQueryResult>

XCD схемыLink to XCD схемы