Файл чека (*.TCUDOC)
Файли чеків і касових документів являють собою файли з XML-структурою, описаною нижче. Перед передаванням торговому серверу файл упаковується в архів. Архіву присвоюється ім’я згідно із шаблоном DOC_D243_F16_P5_U2_2016-03-10_09-05-10.tcudoc.zip. У ньому після короткого позначення ідентифікатора вказується його значення. Ім’я завершується датою і часом створення документа:
- DOC - документ (чек). Може бути також DOC_RETURN (повернення), DOC_INVENTORY (інвентаризація) тощо.
- D243 - документ №243
- F16 - франчайзі №16
- P5 - у чеку товари по торговій точці №5
- U2 - чек створив користувач облікової системи (касир) №2
- 2016-03-10_09-05-10 - дата і час створення чека у форматі YYYY-MM-DD_HH-MM-SS
Приклад вмісту файлу чека наведено нижче.
Таблиця 1. Структура чека
| Ім’я елемента | Тип даних | Опис |
|---|---|---|
| Id | Long | Внутрішній номер документа (внутрішній номер у табл. nakl) |
| DocumentNumber | Long | Номер документа |
| DocumentGuid | String | Унікальний ідентифікатор документа |
| TopDocumentGuid | String | Унікальний ідентифікатор пов’язаного документа (використовується для повернень товарів, посилання на видаткову накладну) |
| DepartmentId | Long | ID торгової точки |
| DepartmentName | String | Назва торгової точки |
| FranchiseeId | Long | ID франчайзі |
| IsFiscal | Boolean | Фіскальний/нефіскальний 1/0 |
| FiscalRegisterId | String | ID фіскального реєстратора (серійний номер). Необов’язкове значення |
| UserID | Long | ID користувача (касира) |
| UserName | String | Ім’я користувача (касира) |
| UserFullName | String | Повне ім’я користувача (касира) |
| TransactionTypeId | Integer | ID статті |
| TopDocumentId | Long | Посилання на ID видаткової накладної в документі оплати |
| ContractorId | Long | ID клієнта. =0, якщо це клієнт франчайзі |
| FranchiseContractorId | Long | ID клієнта з бази франчайзера. =0, якщо це звичайний клієнт |
| FranchiseContractorBarcode | String | Штрихкод картки лояльності франч. клієнта |
| DeliveryPointId | Long | ID точки доставки |
| AgentId | Long | ID торгового агента (з довідника клієнтів) |
| DateOfApprove | Date | Дата проведення |
| DateOfCreate | Date | Дата створення |
| Status | StatusEnum | Проведено |
| Amount | Double | Сума за документом |
| AmountPaid | Double | Сума оплати |
| BonusPaid | Double | Сума оплати бонусами |
| CurrencyId | CurrencyEnum | Валюта оплати |
| CurrencyRate | Double | Курс валюти |
| PaymentMethod | Byte | Форма оплати. 0 - готівкова, 1 – безготівкова (картка) |
| GiftCertificateSumma | Integer | Номінал сертифіката |
| PointsFranch | Double | Бали, які нараховані за товарами франчайзера |
| PointsOther | Double | Бали за іншими товарами |
| SupportingDocument | String | Підстава |
| SourceDocumentId | Long | Звідки копія. =0 |
| DocumentType | DocumentTypeEnum | Тип документа, перелічення (див. нижче) |
| BonusCalculationPrinted | Boolean | Ознака того, що в чеку надруковано повідомлення про бонуси, нараховані на початку місяця |
| DetailsCollection | Collection | Колекція рядків із товарами для накладних (див. нижче) |
| MarketingActionRecordsCollection | Collection | Колекція записів щодо подарункових балів за акціями, умовам яких відповідає чек (див. нижче) |
| MarketingToolRecordDescriptionsCollection | Collection | Колекція записів щодо відображених повідомлень із Датацентру за акціями для клієнта (див. нижче) |
Таблиця 2. Колекція рядків із товарами для накладних
| Ім’я елемента | Тип даних | Опис |
|---|---|---|
| Id | Long | ID запису |
| DocumentId | Long | Посилання на документ, що містить запис |
| GoodId | Long | ID товару |
| FranchGoodId | Long | ID товару з бази CRM |
| GoodsCategoryId | Long | ID групи товару |
| InventoryRecordId | Long | Реєстровий запис |
| BarcodeId | Long | ID штрихкоду товару |
| Barcode | String | Штрихкод товару |
| GoodsItemName | String | Назва товару |
| CurrentQuantity | Double | Поточна кількість. =0 |
| Quantity | Double | Кількість у документі |
| QuantityInPack | Double | Кількість в упаковці (не використ.) |
| QuantityPack | Double | Кількість упаковок. =0 |
| SalePrice | Double | Фактична роздрібна ціна |
| PurchasePrice | Double | Закупівельна ціна |
| Discount | Double | Знижка як різниця між реєстровою ціною та роздрібною ціною в поточному документі |
| BonusSum | Double | Бонусна частка в оплаті за товар |
| MoneySum | Double | Сума оплати саме грошима (як різниця між сумою товару та бонусною часткою в оплаті) |
| PointsSum | Double | Бали, нараховані за товар |
| MarketingActionId | Long | ID акції, за якою товар додано в чек (подарунок) |
| MarketingToolId | Long | ID маркетингового інструмента, за яким товар додано в чек (подарунок) |
Таблиця 3. Колекція записів щодо подарункових балів за акціями, умовам яких відповідає чек
| Ім’я елемента | Тип даних | Опис |
|---|---|---|
| id | Integer | ID запису |
| MarketingActionId | Long | ID маркетингової акції, за якою нараховано бали |
| MarketingToolId | Long | ID маркетингового інструмента, за яким нараховано бали |
| MarketingPresentType | Integer | 1 |
| MarketingPresentedPoints | Long | Кількість подарованих балів за акцією |
Таблиця 4. Колекція записів щодо відображених повідомлень із Датацентру за акціями для клієнта
| Ім’я елемента | Тип даних | Опис |
|---|---|---|
| id | Long | ID MarketingToolRecord |
Таблиця 5. Перелічення типів документів DocumentTypeEnum
| Ім’я елемента | Опис |
|---|---|
| AnyDocument = 0 | Не використовується |
| SalesInvoice = 1 | Видаткова накладна |
| PurchaseInvoice = 2 | Прибуткова накладна |
| CustomerOrder = 4 | Замовлення від клієнта |
| PayInSlip = 8 | Прибутковий касовий ордер |
| PayOutOrder = 16 | Видатковий касовий ордер |
| PurchaseOrder = 32 | Замовлення постачальнику |
| CustomerReturnOrder = 64 | Повернення від покупця |
| SupplierReturnOrder = 128 | Повернення постачальнику |
| Correction = 256 | Перерахунок залишків |
Приклад чека продажу та його оплати
<?xml version="1.0" encoding="windows-1251"?>
<ArrayOfDocument xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
software="ShopDesk 4.9.365 ©ANDRIY.CO">
<Document>
<Id>74</Id>
<DocumentNumber>74</DocumentNumber>
<DocumentGuid>{59DA851A-FB38-4A4D-B86F-7B2BFBDE419E}</DocumentGuid>
<TopDocumentGuid></TopDocumentGuid>
<DepartmentId>1</DepartmentId>
<DepartmentName>01 Фрунзе</DepartmentName>
<FranchiseeId>1</FranchiseeId>
<IsFiscal>0</IsFiscal>
<FiscalRegisterId></FiscalRegisterId>
<UserId>1</UserId>
<UserName>1</UserName>
<UserFullName>BASE2BASE</UserFullName>
<TransactionTypeId>1</TransactionTypeId>
<TopDocumentId>74</TopDocumentId>
<ContractorId>0</ContractorId>
<FranchiseContractorId>9065</FranchiseContractorId>
<FranchiseContractorBarcode>2950000090632</FranchiseContractorBarcode>
<DeliveryPointId>0</DeliveryPointId>
<AgentId>0</AgentId>
<DateOfApprove>2015-07-09 14:42:58</DateOfApprove>
<DateOfCreate>2015-07-09 14:42:58</DateOfCreate>
<Status>1</Status>
<Amount>36.48</Amount>
<AmountPaid>36.48</AmountPaid>
<BonusPaid>0</BonusPaid>
<CurrencyId>0</CurrencyId>
<CurrencyRate>0</CurrencyRate>
<PaymentMethod>0</PaymentMethod>
<PointsFranch>9.48</PointsFranch>
<PointsOther>27</PointsOther>
<GiftCertificateSumma>0</GiftCertificateSumma>
<SupportingDocument></SupportingDocument>
<SourceDocumentId>0</SourceDocumentId>
<DocumentType>1</DocumentType>
<BonusCalculationPrinted>False</BonusCalculationPrinted>
<Detail>
<DocumentDetail>
<Id>1</Id>
<DocumentId>74</DocumentId>
<GoodId>800</GoodId>
<FranchGoodId>0</FranchGoodId>
<GoodsCategoryId>440</GoodsCategoryId>
<InventoryRecordId>535</InventoryRecordId>
<BarcodeId>0</BarcodeId>
<Barcode></Barcode>
<GoodsItemName>Спред рослинно-вершковий №1 Тульчинка</GoodsItemName>
<CurrentQuantity>0</CurrentQuantity>
<Quantity>2</Quantity>
<QuantityInPack>1</QuantityInPack>
<QuantityPack>0</QuantityPack>
<SalePrice>13.5</SalePrice>
<PurchasePrice>0</PurchasePrice>
<Discount>0</Discount>
<BonusSum>0</BonusSum>
<MoneySum>27</MoneySum>
<PointsSum>27</PointsSum>
<MarketingActionId>0</MarketingActionId>
<MarketingToolId>0</MarketingToolId>
</DocumentDetail>
<DocumentDetail>
<Id>2</Id>
<DocumentId>74</DocumentId>
<GoodId>723</GoodId>
<FranchGoodId>723</FranchGoodId>
<GoodsCategoryId>448</GoodsCategoryId>
<InventoryRecordId>546</InventoryRecordId>
<BarcodeId>0</BarcodeId>
<Barcode></Barcode>
<GoodsItemName>Грудка без шкури куряча охол.</GoodsItemName>
<CurrentQuantity>0</CurrentQuantity>
<Quantity>.174</Quantity>
<QuantityInPack>1</QuantityInPack>
<QuantityPack>0</QuantityPack>
<SalePrice>54.5</SalePrice>
<PurchasePrice>0</PurchasePrice>
<Discount>0</Discount>
<BonusSum>0</BonusSum>
<MoneySum>9.48</MoneySum>
<PointsSum>9.483</PointsSum>
<MarketingActionId>0</MarketingActionId>
<MarketingToolId>0</MarketingToolId>
</DocumentDetail>
</Detail>
</Document>
<Document>
<Id>74</Id>
<DocumentNumber>74</DocumentNumber>
<DocumentGuid>{7947A9F5-F232-4CFD-A844-3386E223BBB7}</DocumentGuid>
<TopDocumentGuid>{59DA851A-FB38-4A4D-B86F-7B2BFBDE419E}</TopDocumentGuid>
<DepartmentId>1</DepartmentId>
<DepartmentName>01 Фрунзе</DepartmentName>
<FranchiseeId>1</FranchiseeId>
<IsFiscal>0</IsFiscal>
<FiscalRegisterId></FiscalRegisterId>
<UserId>1</UserId>
<UserName>1</UserName>
<UserFullName>BASE2BASE</UserFullName>
<TransactionTypeId>1</TransactionTypeId>
<TopDocumentId>74</TopDocumentId>
<ContractorId>0</ContractorId>
<FranchiseContractorId>9065</FranchiseContractorId>
<FranchiseContractorBarcode>2950000090632</FranchiseContractorBarcode>
<DeliveryPointId>0</DeliveryPointId>
<AgentId>0</AgentId>
<DateOfApprove>2015-07-09 14:42:58</DateOfApprove>
<DateOfCreate>2015-07-09 14:42:58</DateOfCreate>
<Status>1</Status>
<Amount>36.48</Amount>
<AmountPaid>0</AmountPaid>
<BonusPaid>0</BonusPaid>
<CurrencyId>0</CurrencyId>
<CurrencyRate>0</CurrencyRate>
<PaymentMethod>0</PaymentMethod>
<PointsFranch>9.48</PointsFranch>
<PointsOther>27</PointsOther>
<GiftCertificateSumma>0</GiftCertificateSumma>
<SupportingDocument>Оплата накладної №74 від 2015-07-09 14:42:58</SupportingDocument>
<SourceDocumentId>0</SourceDocumentId>
<DocumentType>8</DocumentType>
<BonusCalculationPrinted>False</BonusCalculationPrinted>
</Document>
</ArrayOfDocument>
Структура чека, колекцій сутностей і формат імені файлу можуть незначно відрізнятися (можуть бути додані нові сутності, типи даних тощо) від описаних у цьому розділі довідки.
Останнє оновлення:
5/9/2026 8:20:55 PM
281