API для внешних касс Set Retail 10
API сохранения документов внешних касс на сервере Set Retail 10
Access
Methods
Table of Contents
ExtPOSDocuments
POST /v1/documents/importPurchase
ExtPOSDocuments
Блок кода |
---|
POST /v1/documents/importPurchase |
Импортировать чек внешней кассы (importPurchase)
Импорт чека внешней кассы, валидация, добавление в очередь для сохранения в БД
Consumes
This API call consumes the following media types via the Content-Type request header:
application/json; charset=utf-8
Request body
body ImportPurchaseRequest (required)
Body Parameter — Чек
Формат данных
This API call produces the following media types according to the Accept request header; the media type will be conveyed by the Content-Type response header.
application/json; charset=utf-8
Responses
200
Документ проверен и добавлен в очередь для сохранения в БД
422
Документ некорректен, сохранен в очередь, но обработан не будет ErrorResponse
Models
[ Jump toMethods]
Методы
BankCardPayment
BankCardPaymentTransaction
BankTypeEnum
Card
CardAddedTypeEnum
CardStatusEnum
CardTypeEnum
CashOperationTypeEnum
CashPayment
ClientTypeEnum
Document
ErrorResponse
ExciseBottle
FiscalData
GenderEnum
ImportPurchaseRequest
KeyValue
Measure
OperationTypeEnum
Payment
PaymentTransaction
Position
PositionSprits
ProductType
Purchase
PurchaseStatusEnum
ReportShift
Seller
Session
Slip
User
BankCardPayment
Up
Оплата банковской картой
number
Long Порядковый номер оплаты в чеке format: int64
sumPay
BigDecimal Сумма совершенной оплаты
example: 99.99
dateCreate (optional)
Date Дата-время начала оплаты format: date-time
dateCommit (optional)
Date Дата-время завершения оплаты format: date-time
currency (optional)
String Код валюты
example: RUB
transactions (optional)
array[PaymentTransaction] Транзакции оплаты
properties (optional)
array[KeyValue] Дополнительные свойства оплаты в виде списка <ключ, значение>
originalPaymentNumber (optional)
BigDecimal Номер оплаты из чека продажи (для чеков возрата)
cardNumber (optional)
String Маскированный номер карты
example: 123456******0000
cardHash (optional)
String Дополнительный хэш номера карты. Используется, например, в качестве идентификатора бонусного счета в "спасибо от сбербанка".
cardType (optional)
String Тип карты
example: Visa Debit
date (optional)
Date Дата-время транзакции format: date-time
refNumber (optional)
String Номер ссылки на транзакцию (используется при отмене)
hostTransId (optional)
Long Идентификатор транзакции в комуникационном сервере format: int64
cashTransId (optional)
Long Уникальный номер транзакции на стороне кассы format: int64
operationCode (optional)
Long Код операции format: int64
example: 1
terminalId (optional)
String Номер терминала
example: N1234567
merchantId (optional)
String Идентификатор продавца
responseCode (optional)
String Код ответа процессингового центра
example: 000
resultCode (optional)
String Код ответа авторизационного сервера
status (optional)
Boolean Статус порведения транзакции (да/нет)
authCode (optional)
String Код авторизации
example: 4NF18T
message (optional)
String Сообщение
example: УСПЕШНО
bankType (optional)
bankId (optional)
String Код банка эквайринга
example: ВТБ
BankCardPaymentTransaction
Up
Транзакция оплаты банковской картой
cashNum (optional)
Long Номер кассы format: int64
createTime (optional)
Date Дата-время транзакции format: date-time
sumPay (optional)
BigDecimal Сумма оплаты
example: 199.99
numShift (optional)
Long Номер смены в которой создана транзакция format: int64
cashGuid (optional)
Long GUID транзакции сформированный на кассе format: int64
shopIndex (optional)
Long Номер магазина format: int64
annulling (optional)
Boolean Является ли транзакция отменой оплаты
slips (optional)
array[Slip] Слипы транзакции
authCode (optional)
String Код авторизации
example: 4NF18T
cardNumber (optional)
String Маскированный номер карты
example: 123456******0000
cardHash (optional)
String Дополнительный хэш номера карты. Используется, например, в качестве идентификатора бонусного счета в "спасибо от сбербанка".
cardType (optional)
String Тип карты
example: Visa Debit
cashTransId (optional)
Long Уникальный номер транзакции на стороне кассы format: int64
cashTransDate (optional)
Date Дата-время транзакции format: date-time
hostTransId (optional)
Long Идентификатор транзакции в комуникационном сервере format: int64
merchantId (optional)
String Идентификатор продавца
message (optional)
String Сообщение
example: УСПЕШНО
operationCode (optional)
Long Код операции format: int64
example: 1
refNumber (optional)
String Номер ссылки на транзакцию (используется при отмене)
responseCode (optional)
String Код ответа процессингового центра
example: 000
currency (optional)
String Код валюты
example: RUB
resultCode (optional)
String Код ответа авторизационного сервера
status (optional)
Boolean Статус проведения транзакции (да/нет)
terminalId (optional)
String Номер терминала
example: N1234567
bankId (optional)
String Код банка эквайринга
example: ВТБ
bankType (optional)
BankTypeEnum
Up
Тип банка. Необходимо для работы бонусных систем, например "Спасибо от Сбербанка".
Card
Up
Сущность, описывающая примененные в чеке карты, купоны и пр.
number (optional)
String Номер карты
displayNumber (optional)
String Отображаемый номер карты, в каком виде она показывается пользователю
guid (optional)
String Идентификатор карты
cardType (optional)
addedBy (optional)
counterparty (optional)
String Cочетание 'ИНН;КПП;Полное наименование'
debitorType (optional)
String Тип дебитора
processingName (optional)
String Наименование эмитента карты/купона
phoneNumber (optional)
String Номер телефона, по которому нашли карту при добавлении ее в чек
positionNumber (optional)
Long Номер позиции чека, к которому применена карта/купон format: int64
PAN (optional)
String <ul> <li>PAN со второй дорожки MSR (если номер карты на 3й). * По-сути номер банковской карты, в то время когда cardNumber номер бонусной карты.</li> </ul>
properties (optional)
array[KeyValue] Дополнительные свойства карты
cardStatus (optional)
CardAddedTypeEnum
Up
Способы добавления карты в чек: * 'HAND' - Вводом вручную * 'SCANNER' - Сканированием штрихкода * 'MSR' - Прокатыванием через магнитный карт ридер * 'PHONE' - Через мобильный телефон владельца * 'ECARD' - Сканированием электронной карты * 'ECOUPON' - Сканированием электронного купона
CardStatusEnum
Up
Статус карты: * 'Create' - Создана * 'Active' - Активирована * 'Blocked' - Заблокирована * 'Inactive' - Неактивна * 'Used' - Купон использован, карта просрочена или устарела * 'NeedReturn' - Необходимость вернуть карту/купон покупателю * 'NeedTakeAway' - Необходимость забрать карту у покупателя
CardTypeEnum
Up
Тип карты: * 'CardNotFound' - Неопределённый тип карты * 'InternalCard' - Внутренняя карта (Set10) * 'ExternalCard' - Внешняя карта * 'PresentCard' - Подарочная карта * 'BonusCard' - Бонусная карта * 'CardCoupon' - Обычный купон, создаётся на сервере * 'ChequeCoupon' - Чековый купон без контроля повторного применения * 'ProcessingCoupon' - Возвратный купон с префиксом 2999, создаётся на кассе, скидка расчитывается * 'UniqueCoupon' - Несерийный купон * 'ExternalCoupon' - Купон внешней системы
CashOperationTypeEnum
Up
Кассоавя операция: * 'INCOME' - Операция Приход * 'EXPENSE' - Операция Расход
CashPayment
Up
Оплата наличными
number
Long Порядковый номер оплаты в чеке format: int64
sumPay
BigDecimal Сумма совершенной оплаты
example: 99.99
dateCreate (optional)
Date Дата-время начала оплаты format: date-time
dateCommit (optional)
Date Дата-время завершения оплаты format: date-time
currency (optional)
String Код валюты
example: RUB
transactions (optional)
array[PaymentTransaction] Транзакции оплаты
properties (optional)
array[KeyValue] Дополнительные свойства оплаты в виде списка <ключ, значение>
originalPaymentNumber (optional)
BigDecimal Номер оплаты из чека продажи (для чеков возрата)
change (optional)
BigDecimal Сумма сдачи
example: 1.99
ClientTypeEnum
Up
Тип клиента: * 'PRIVATE' - Физическое лицо * 'JURISTIC_PERSON' - Юридическое лицо
Document
Up
Базовая сущность кассовго документа
fiscalData (optional)
number (optional)
Long Номер документа format: int64
shiftNumber (optional)
Long Номер смены фискального регистратора format: int64
dateCommit (optional)
Date Дата сохранения документа в ISO 8601 format: date-time
dateCreate (optional)
Date Дата создания документа в ISO 8601 format: date-time
session (optional)
user (optional)
ErrorResponse
Up
Причины ошибок сохранения документа
causes (optional)
array[String] Список причин ошибок
ExciseBottle
Up
Бутылка алкоголя с акцизной маркой
positionNumber (optional)
Long Номер позиции чека, к которому относится данная акцизная бутылка (если позиция является промонабором) format: int64
item (optional)
String Артикул товара, если бутылка из промонабора
bottleItem (optional)
String Артикул бутылки. Только, если эта бутылка является компонентом промонабора, иначе null.
barcode (optional)
String Штрихкод бутылки
exciseBarcode (optional)
String Акцизная марка бутылки
price (optional)
BigDecimal Цена бутылки
volume (optional)
BigDecimal Объем бутылки
example: 0.5
alcoCodes (optional)
String Алко коды
alcoholicContent (optional)
BigDecimal Процент содержания спирта
example: 13.5
name (optional)
String Наименование
alcoholicType (optional)
String Код вида алкогольной продукции
excise (optional)
Boolean Признак акцизности бутылки
count (optional)
Long Количество бутылок (для безакцизного) format: int64
FiscalData
Up
Фискальные данные
regNumber (optional)
String Регистрационный номер фискального регистратора
fnNumber (optional)
String Регистрационный номер фискального накопителя
fiscalDocNumber (optional)
String Номер фискального документа
fiscalSign (optional)
Long Фискальный признак документа format: int64
qrCode (optional)
String QR-код ОФД
GenderEnum
Up
Пол человека: * 'UNDEFINED' - Неопределенный (в некоторых странах это важно) * 'MALE' - Мужской * 'FEMALE' - Женский
ImportPurchaseRequest
Up
Запрос на импорт чека
shopIndex
Long Номер магазина format: int64
example: 65535
cashNumber
Long Номер кассы format: int64
example: 42
purchase
KeyValue
Up
Ключ-значение
key (optional)
String Ключ значения
value (optional)
String Значение
Measure
Up
Единица измерения
code (optional)
String Код единицы измерения
example: 1
name (optional)
String Наименование единицы измерения
example: шт.
OperationTypeEnum
Up
Тип - продажа или возврат: * 'SALE' - Продажа * 'REFUND' - Возврат
Payment
Up
Базовая сущность оплаты чека
number
Long Порядковый номер оплаты в чеке format: int64
sumPay
BigDecimal Сумма совершенной оплаты
example: 99.99
dateCreate (optional)
Date Дата-время начала оплаты format: date-time
dateCommit (optional)
Date Дата-время завершения оплаты format: date-time
currency (optional)
String Код валюты
example: RUB
transactions (optional)
array[PaymentTransaction] Транзакции оплаты
properties (optional)
array[KeyValue] Дополнительные свойства оплаты в виде списка <ключ, значение>
originalPaymentNumber (optional)
BigDecimal Номер оплаты из чека продажи (для чеков возрата)
PaymentTransaction
Up
Транзакция оплаты
cashNum (optional)
Long Номер кассы format: int64
createTime (optional)
Date Дата-время транзакции format: date-time
sumPay (optional)
BigDecimal Сумма оплаты
example: 199.99
numShift (optional)
Long Номер смены в которой создана транзакция format: int64
cashGuid (optional)
Long GUID транзакции сформированный на кассе format: int64
shopIndex (optional)
Long Номер магазина format: int64
annulling (optional)
Boolean Является ли транзакция отменой оплаты
slips (optional)
array[Slip] Слипы транзакции
Position
Up
Базовая сущность позиции чека
productType (optional)
number (optional)
Long Порядковый номер позиции в чеке format: int64
price (optional)
BigDecimal Цена позиции
example: 99.99
quantity (optional)
BigDecimal Количество товара в позиции
example: 1
sumDiscount (optional)
BigDecimal Сумма скидки на позицию
example: 1
sumEnd (optional)
BigDecimal Сумма позиции
example: 199.99
precision (optional)
BigDecimal Мерность продажи товара, обычно для штучных товаров = 1.0, для весовых = 0.001
example: 1
nds (optional)
BigDecimal Ставка НДС в процентах
example: 18
ndsSum (optional)
BigDecimal Сумма НДС
example: 0.05
barCode (optional)
String Штрихкод товара
item (optional)
String Артикул товара
erpCode (optional)
String ERP код товара
name (optional)
String Наименование товара
measure (optional)
properties (optional)
array[KeyValue] Дополнительные свойства позиции в виде списка <ключ, значение>
exciseToken (optional)
String Акцизная марка товара
serialNumber (optional)
String Серийный номер метки RFID, с которой добавлена позиция
gtdNumber (optional)
String Номер Грузовой Таможенной Декларации, по которой был ввезен товар. Формат: XXXXXXXX/XXXXXX/XXXXXXX, где X - цифра.
rccw (optional)
String Код страны происхождения товара. Код должен задаваться согласно Общероссийскому Классификатору Стран Мира (ОКСМ). Например, код России согласно ОКСМ это 643.
calculationMethod (optional)
Long Признак способа расчета format: int64
calculationSubject (optional)
Long Признак предмета расчета format: int64
dateCommit (optional)
Date Дата-время добавления позиции в чек format: date-time
returnRestricted (optional)
Boolean Признак запрета возврата позиции
barcodeType (optional)
String Признак штрихкода товара(GTIN)
goodsFeature (optional)
String Признак товара (услуга - service)
seller (optional)
saleSlip (optional)
String Слип продажи позиции
returnSlip (optional)
String Слип возврата позиции
PositionSprits
Up
Транзакция оплаты банковской картой
productType (optional)
number (optional)
Long Порядковый номер позиции в чеке format: int64
price (optional)
BigDecimal Цена позиции
example: 99.99
quantity (optional)
BigDecimal Количество товара в позиции
example: 1
sumDiscount (optional)
BigDecimal Сумма скидки на позицию
example: 1
sumEnd (optional)
BigDecimal Сумма позиции
example: 199.99
precision (optional)
BigDecimal Мерность продажи товара, обычно для штучных товаров = 1.0, для весовых = 0.001
example: 1
nds (optional)
BigDecimal Ставка НДС в процентах
example: 18
ndsSum (optional)
BigDecimal Сумма НДС
example: 0.05
barCode (optional)
String Штрихкод товара
item (optional)
String Артикул товара
erpCode (optional)
String ERP код товара
name (optional)
String Наименование товара
measure (optional)
properties (optional)
array[KeyValue] Дополнительные свойства позиции в виде списка <ключ, значение>
exciseToken (optional)
String Акцизная марка товара
serialNumber (optional)
String Серийный номер метки RFID, с которой добавлена позиция
gtdNumber (optional)
String Номер Грузовой Таможенной Декларации, по которой был ввезен товар. Формат: XXXXXXXX/XXXXXX/XXXXXXX, где X - цифра.
rccw (optional)
String Код страны происхождения товара. Код должен задаваться согласно Общероссийскому Классификатору Стран Мира (ОКСМ). Например, код России согласно ОКСМ это 643.
calculationMethod (optional)
Long Признак способа расчета format: int64
calculationSubject (optional)
Long Признак предмета расчета format: int64
dateCommit (optional)
Date Дата-время добавления позиции в чек format: date-time
returnRestricted (optional)
Boolean Признак запрета возврата позиции
barcodeType (optional)
String Признак штрихкода товара(GTIN)
goodsFeature (optional)
String Признак товара (услуга - service)
seller (optional)
saleSlip (optional)
String Слип продажи позиции
returnSlip (optional)
String Слип возврата позиции
alcoholicContent (optional)
BigDecimal Процент содержания спирта
example: 13.5
volume (optional)
BigDecimal Объем (в литрах), в которой продается этот алкогольный товар
example: 0.5
kit (optional)
Boolean Признак набора
alcoholicType (optional)
String Код вида алкогольной продукции
example: 441
alcoMinPrice (optional)
BigDecimal Минимальная розничная цена акцизного алкоголя (если промонабор - то сумма АМРЦ компонентов)
ProductType
Up
Тип товара: * 'PIECE' - Штучный * 'WEIGHT' - Весовой * 'PIECE_WEIGHT' - Штучно-весовой * 'SPIRITS' - Алкогольный * 'CIGGY' - Табачный
Purchase
Up
Сущность чека
fiscalData (optional)
number (optional)
Long Номер документа format: int64
shiftNumber (optional)
Long Номер смены фискального регистратора format: int64
dateCommit (optional)
Date Дата сохранения документа в ISO 8601 format: date-time
dateCreate (optional)
Date Дата создания документа в ISO 8601 format: date-time
session (optional)
user (optional)
sumEnd (optional)
BigDecimal Итоговая сумма чека с налогами
example: 199.99
discountValueTotal (optional)
BigDecimal Сумма скидки на чек
example: 9.99
operation (optional)
cashOperation (optional)
payments (optional)
array[Payment] Оплаты чека
positions (optional)
array[Position] Позиции чека
transactions (optional)
array[PaymentTransaction] Транзакции (отмененные, неудачные, без привязки к оплатам)
properties (optional)
array[KeyValue] Дополнительные свойства чека в виде списка <ключ, значение>
clientGUID (optional)
Long GUID Клиента format: int64
clientType (optional)
cards (optional)
array[Card] Карты чека
exciseBottles (optional)
array[ExciseBottle] Акцизные бутылки чека
purchaseStatus (optional)
inn (optional)
String ИНН юридического лица продавца
onDay (optional)
Boolean Для чека возврата, поле определяет признак возврата "День в день."
vetInspection (optional)
Boolean Признак необходимости вет. контроля
PurchaseStatusEnum
Up
Статус чека: * 'Registered' - Зарегистрирован * 'Cancelled' - Аннулирован * 'Deferred' - Отложен * 'NonFiscal' - Нефискальный документ
ReportShift
Up
Сменный отчет
fiscalData (optional)
number (optional)
Long Номер документа format: int64
shiftNumber (optional)
Long Номер смены фискального регистратора format: int64
dateCommit (optional)
Date Дата сохранения документа в ISO 8601 format: date-time
dateCreate (optional)
Date Дата создания документа в ISO 8601 format: date-time
session (optional)
user (optional)
Seller
Up
Продавец
code (optional)
String Код продавца
shopIndex (optional)
Long Номер магазина продавца format: int64
lastName (optional)
String Фамилия
firstName (optional)
String Имя
middleName (optional)
String Отчество
Session
Up
Сессия кассира
dateBegin (optional)
Date Дата и время начала сессии работы кассира format: date-time
dateEnd (optional)
Date Дата и время окончания сессии работы кассира format: date-time
Slip
Up
Слип
number (optional)
Integer Порядковый номер слипа format: int32
textData (optional)
String Текст слипа
User
Up
Пользователь (кассир)
tabNumber (optional)
String Табельный номер кассира
lastName (optional)
String Фамилия
firstName (optional)
String Имя
middleName (optional)
String Отчество
inn (optional)
String ИНН кассира
gender (optional)
jobTitle (optional)
...
Плавающий фрейм | ||||||||
---|---|---|---|---|---|---|---|---|
|