Назначение

Добавляет предоплату в указанном заказе

Тип запросаасинхронный/синхронный
Поддерживаемая версия агента, SH

WSA v2.8.5.8

PluggetSystemTypeRKMid
ФОРМАТ ЗАПРОСА
Запрос

{
    "taskType": "AddPrepayOrder",
    "params": {
        "sync": {
            "objectId": number,
            "timeout": number
        },
        "cashStationId": number,
        "orderGuid": "string",
        "amount": 500,
        "currencyGuid": "16D72549-14D8-4F31-9E2A-0A833D4F5EED",
        "cardCode": "string",
        "promised": boolean
    }
}

Параметр

Тип

Обязательный

Описание

taskTypestring+Тип задачи (AddPrepayOrder)
sync

Синхронный вызов метода (либо синхронный, либо асинхронный. Для этого изменить на "async") 
|-timeoutint-Время ожидания ответа от агента в секундах, по умолчанию 120 секунд
|-objectIdint+Код ресторана в системе лицензирования
orderGuidguid+Guid заказа в r_keeper
amountdouble+Сумма предоплаты
currencyGuidguid-

Guid валюты, которой делается предоплата. Если не указана, то используется валюта, указанная в параметрах создания заказа. 

Если валюта не указана и не передана в запросе, возвращается ошибка.

В настройках указанной валюты должна быть разрешена предоплата.

cardCodestring-

Код карты лояльности

promisedboolean-

false - обещанный платеж, true - предоплата 

cashStationIdint-

Id кассовой станции, если не указан, берется из параметров ресторана установленных в административной панели WS.

При указании кассовой станции с mid, отличного от выбранного в "параметрах создания заказа", указываем этот mid в поле systemName Маршрутизация запросов

ФОРМАТ ОТВЕТА
Успешный ответ

{
    "taskResponse": {
        "prepayId": "guid"
    },
    "responseCommon": {
        "taskGuid": "string",
        "taskType": "AddPrepayOrder",
        "objectId": number,
        "agentGuid": "string"
    }
}

ПараметрТипОбязательныйОписание
prepayIdstring (guid)+

Идентификатор предоплаты (line_guid в r_keeper)


Ответ с ошибкой

{
  "responseCommon": {
    "taskGuid": "string",
    "taskType": "AddPrepayOrder",
    "objectId": number
  },
  "error": {
    "wsError": {
      "code": "string",
      "desc": "string"
    },
    "agentError": {
      "code": "string",
      "desc": "string"
    }
  }
}


ПараметрТипОписание
taskGuidguidУникальный код этой задачи используется при получении задачи через очередь
taskTypestringТип задачи
objectIdintКод ресторана в системе лицензирования
errorstring enumКонтейнер ошибок, см Описание ошибок


wsError
Ошибка от сервера
agentError
Ошибка от агента
ПРИМЕРЫ СТРУКТУРЫ ЗАПРОСОВ
{
    "taskType": "AddPrepayOrder",
    "params": {
        "sync": {
            "objectId": "199990246",
            "timeout": 120
        },
        "orderGuid": "8fcf1323-a26c-4afc-a8a4-7023372b4ebb",
        "amount": 500,
        "currencyGuid": "16D72549-14D8-4F31-9E2A-0A833D4F5EED"
    }
}
{
    "taskResponse": {
        "prepayId": "7847984c-29b3-400a-b272-8ce8e06635ac"
    },
    "responseCommon": {
        "taskGuid": "d1a8efab-996b-4be1-9964-7e8696115ac9",
        "taskType": "AddPrepayOrder",
        "objectId": 199990246,
        "agentGuid": "d564619a-50c3-3d87-0816-de67ed9c8e18"
    }
}