{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://api13.arm20.com/v1/schemas/pos.checkout_close_sale.json","title":"pos.checkout_close_sale","description":"Атомарно закриває продаж: записує чек, позиції, оплати та консультантів.","type":"object","required":["request","response"],"additionalProperties":false,"properties":{"request":{"oneOf":[{"type":"object","required":["method","params"],"additionalProperties":false,"properties":{"method":{"const":"pos.checkout_close_sale"},"params":{"type":"object","additionalProperties":false,"properties":{"bonus_kf":{"type":"string","maxLength":4096,"default":"1","title":"Коефіцієнт бонусів","format":"decimal-string","example":"100.00","description":"Точне числове значення «Коефіцієнт бонусів» у JSON-рядку; десятковий роздільник — крапка, символ одиниці не додається.","x-api13-group":"Суми та кількості","x-api13-unit":"currency-of-operation"},"ch_discount":{"type":"string","maxLength":512,"title":"Змінювати знижку","example":"Приклад","description":"Поле «Змінювати знижку» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","x-api13-group":"Додаткові"},"com1":{"type":"string","maxLength":512,"default":"","title":"Основний коментар","example":"","description":"Основний текстовий коментар, який буде збережено разом з операцією.","x-api13-group":"Додаткові"},"com2":{"type":"string","maxLength":512,"default":"","title":"Додатковий коментар","example":"","description":"Додатковий коментар операції; використовуйте лише коли він потрібний відповідному сценарію Windows.","x-api13-group":"Додаткові"},"curcert":{"type":"string","maxLength":4096,"default":"","title":"Валюта сертифіката","example":"","description":"Поле «Валюта сертифіката» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","x-api13-group":"Додаткові"},"current_discount":{"type":"string","maxLength":512,"default":"","title":"Current discount","format":"decimal-string","example":"100.00","description":"Точне числове значення «Current discount» у JSON-рядку; десятковий роздільник — крапка, символ одиниці не додається.","x-api13-group":"Суми та кількості","x-api13-unit":"currency-of-operation"},"discount":{"type":"string","maxLength":512,"title":"Дисконтна картка або знижка","format":"decimal-string","example":"100.00","description":"Точне числове значення «Дисконтна картка або знижка» у JSON-рядку; десятковий роздільник — крапка, символ одиниці не додається.","x-api13-group":"Суми та кількості","x-api13-unit":"currency-of-operation"},"dolg_code":{"type":"string","maxLength":512,"default":"","title":"Dolg code","example":"990000001","description":"Поле «Dolg code» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","x-api13-group":"Додаткові"},"fil":{"type":"integer","minimum":-2147483648,"maximum":2147483647,"default":0,"title":"Номер філії","example":1,"description":"Поле «Номер філії» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","x-api13-group":"Додаткові"},"idfrow":{"type":"integer","minimum":-2147483648,"maximum":2147483647,"default":0,"title":"Ідентифікатор FIFO-рядка","example":1,"description":"Поле «Ідентифікатор FIFO-рядка» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","x-api13-group":"Додаткові"},"irestr":{"type":"integer","minimum":-2147483648,"maximum":2147483647,"default":0,"title":"Обмеження знижки","example":1,"description":"Поле «Обмеження знижки» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","x-api13-group":"Додаткові"},"is_nakl":{"type":"integer","minimum":-2147483648,"maximum":2147483647,"default":0,"title":"Пов’язано з накладною","example":1,"description":"Поле «Пов’язано з накладною» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","x-api13-group":"Додаткові"},"isbonus":{"type":"string","maxLength":4096,"default":"0","title":"Використовувати бонуси","example":"0","description":"Поле «Використовувати бонуси» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","x-api13-group":"Знижки, бонуси та борг"},"isetax":{"type":"integer","minimum":-2147483648,"maximum":2147483647,"default":0,"title":"Вхідний акциз","example":1,"description":"Поле «Вхідний акциз» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","x-api13-group":"Додаткові"},"kas_type":{"type":"string","maxLength":512,"default":"","title":"Тип каси","example":"","description":"Поле «Тип каси» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","x-api13-group":"Додаткові"},"kasm":{"type":"integer","minimum":-2147483648,"maximum":2147483647,"default":0,"title":"Номер каси","example":1,"description":"Числовий номер каси, налаштований у Windows Касі.","x-api13-group":"Додаткові"},"mixed":{"type":"integer","minimum":-2147483648,"maximum":2147483647,"default":0,"title":"Змішана оплата","format":"decimal-string","example":1,"description":"Точне числове значення «Змішана оплата» у JSON-рядку; десятковий роздільник — крапка, символ одиниці не додається.","x-api13-group":"Суми та кількості","x-api13-unit":"currency-of-operation"},"mixed_bn":{"type":"string","maxLength":4096,"title":"Mixed bn","format":"decimal-string","example":"100.00","description":"Точне числове значення «Mixed bn» у JSON-рядку; десятковий роздільник — крапка, символ одиниці не додається.","x-api13-group":"Суми та кількості","x-api13-unit":"currency-of-operation"},"mixed_bonus":{"type":"string","maxLength":4096,"title":"Mixed bonus","format":"decimal-string","example":"100.00","description":"Точне числове значення «Mixed bonus» у JSON-рядку; десятковий роздільник — крапка, символ одиниці не додається.","x-api13-group":"Суми та кількості","x-api13-unit":"currency-of-operation"},"mixed_card":{"type":"string","maxLength":512,"default":"","title":"Mixed card","format":"decimal-string","example":"100.00","description":"Точне числове значення «Mixed card» у JSON-рядку; десятковий роздільник — крапка, символ одиниці не додається.","x-api13-group":"Суми та кількості","x-api13-unit":"currency-of-operation"},"mixed_cert":{"type":"string","maxLength":4096,"title":"Mixed cert","format":"decimal-string","example":"100.00","description":"Точне числове значення «Mixed cert» у JSON-рядку; десятковий роздільник — крапка, символ одиниці не додається.","x-api13-group":"Суми та кількості","x-api13-unit":"currency-of-operation"},"mixed_com1":{"type":"string","maxLength":512,"default":"","title":"Mixed com1","example":"","description":"Поле «Mixed com1» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","x-api13-group":"Додаткові"},"mixed_debt":{"type":"string","maxLength":4096,"title":"Mixed debt","format":"decimal-string","example":"100.00","description":"Точне числове значення «Mixed debt» у JSON-рядку; десятковий роздільник — крапка, символ одиниці не додається.","x-api13-group":"Суми та кількості","x-api13-unit":"currency-of-operation"},"mixed_nal":{"type":"string","maxLength":4096,"title":"Mixed nal","format":"decimal-string","example":"100.00","description":"Точне числове значення «Mixed nal» у JSON-рядку; десятковий роздільник — крапка, символ одиниці не додається.","x-api13-group":"Суми та кількості","x-api13-unit":"currency-of-operation"},"mixed_ncert":{"type":"string","maxLength":4096,"default":"","title":"Mixed ncert","example":"","description":"Поле «Mixed ncert» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","x-api13-group":"Додаткові"},"nal":{"type":"string","maxLength":4096,"title":"Готівкова сума","format":"decimal-string","example":"100.00","description":"Точне числове значення «Готівкова сума» у JSON-рядку; десятковий роздільник — крапка, символ одиниці не додається.","x-api13-group":"Суми та кількості","x-api13-unit":"currency-of-operation"},"nal_equals_sum":{"type":"integer","minimum":-2147483648,"maximum":2147483647,"default":0,"title":"Готівка дорівнює сумі чека","example":1,"description":"Поле «Готівка дорівнює сумі чека» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","x-api13-group":"Додаткові"},"pref_disc":{"type":"string","maxLength":4096,"default":"","title":"Префікс дисконтної картки","example":"","description":"Префікс, за яким відсканований код розпізнається як дисконтна картка.","x-api13-group":"Додаткові"},"round":{"type":"string","maxLength":4096,"title":"Округлення","format":"decimal-string","example":"100.00","description":"Точне числове значення «Округлення» у JSON-рядку; десятковий роздільник — крапка, символ одиниці не додається.","x-api13-group":"Суми та кількості","x-api13-unit":"currency-of-operation"},"sk":{"type":"integer","minimum":-2147483648,"maximum":2147483647,"default":0,"title":"Номер складу або філії","example":1,"description":"Номер складу/філії відповідно до налаштувань бази; 0 зазвичай означає основний склад.","x-api13-group":"Додаткові"},"storage":{"type":"string","enum":["main","branch"],"default":"main","title":"Склад","example":"main","description":"Логічний склад: main — основний, branch — філіальний.","x-api13-group":"Основні","x-enumDescriptions":["основний склад","філіальний склад"],"x-api13-enum-labels":{"main":"основний склад","branch":"філіальний склад"}},"sum":{"type":"string","maxLength":4096,"title":"Сума","format":"decimal-string","example":"100.00","description":"Грошова сума як десятковий JSON-рядок без пробілів і символу валюти.","x-api13-group":"Суми та кількості","x-api13-unit":"currency-of-operation"},"payments":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"akas":{"type":"string","maxLength":190,"minLength":1,"pattern":"^[^\\x00-\\x1F\\x7F]{1,190}$","title":"Рахунок оплати","example":"Приклад","description":"Поле «Рахунок оплати» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","x-api13-group":"Додаткові"},"sum":{"type":"string","maxLength":32,"minLength":1,"pattern":"^(?:(?:0|[1-9][0-9]*)(?:\\.[0-9]{1,2})?|-(?:[1-9][0-9]*(?:\\.[0-9]{1,2})?|0\\.(?=[0-9]{0,1}[1-9])[0-9]{1,2}))$","x-api13-scale":2,"x-api13-numeric-minimum":0,"x-api13-exclusive-minimum":true,"x-api13-numeric-maximum":999999999999.99,"x-api13-exclusive-maximum":false,"description":"Грошова сума як десятковий JSON-рядок без пробілів і символу валюти. Decimal encoded as a JSON string; at most 2 fractional digits. Value > 0. Value <= 999999999999.99.","title":"Сума","format":"decimal-string","example":"100.00","x-api13-group":"Суми та кількості","x-api13-unit":"currency-of-operation"},"com1":{"type":"string","maxLength":512,"pattern":"^[^\\x00-\\x08\\x0B\\x0C\\x0E-\\x1F\\x7F]*$","title":"Основний коментар","example":"Приклад","description":"Основний текстовий коментар, який буде збережено разом з операцією.","x-api13-group":"Додаткові"},"com2":{"type":"string","maxLength":512,"pattern":"^[^\\x00-\\x08\\x0B\\x0C\\x0E-\\x1F\\x7F]*$","title":"Додатковий коментар","example":"Приклад","description":"Додатковий коментар операції; використовуйте лише коли він потрібний відповідному сценарію Windows.","x-api13-group":"Додаткові"},"tdoc":{"type":"string","maxLength":190,"minLength":1,"pattern":"^[^\\x00-\\x1F\\x7F]{1,190}$","title":"Тип документа","example":"Приклад","description":"Текстова назва або код виду документа, який зберігається у касовій операції.","x-api13-group":"Додаткові"}},"required":["akas","sum","tdoc"]},"minItems":1,"maxItems":8,"title":"Розподіл оплат","example":[],"description":"Розподіл загальної суми між готівкою, безготівковою оплатою, бонусами, боргом або сертифікатами.","x-api13-group":"Оплата"},"rows":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"code":{"type":"string","maxLength":190,"minLength":1,"pattern":"^[^\\x00-\\x1F\\x7F]{1,190}$","title":"Код товару","example":"1001","description":"Публічний код товару, картки або іншого запису, як він відображається у програмі.","x-api13-group":"Основні"},"quant":{"type":"string","maxLength":32,"minLength":1,"pattern":"^(?:(?:0|[1-9][0-9]*)(?:\\.[0-9]{1,3})?|-(?:[1-9][0-9]*(?:\\.[0-9]{1,3})?|0\\.(?=[0-9]{0,2}[1-9])[0-9]{1,3}))$","x-api13-scale":3,"x-api13-numeric-minimum":0,"x-api13-exclusive-minimum":true,"x-api13-numeric-maximum":1000000,"x-api13-exclusive-maximum":false,"description":"Кількість товару як десятковий рядок; для вагового товару дозволена дробова частина. Decimal encoded as a JSON string; at most 3 fractional digits. Value > 0. Value <= 1000000.","title":"Кількість","format":"decimal-string","example":"1.000","x-api13-group":"Суми та кількості","x-api13-unit":"product-unit"},"ei":{"type":"string","maxLength":32,"pattern":"^[^\\x00-\\x1F\\x7F]*$","title":"Ознака вагового товару","example":"Приклад","description":"Поле «Ознака вагового товару» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","x-api13-group":"Додаткові"},"disc_sprice":{"type":"string","maxLength":32,"pattern":"^(?:(?:(?:0|[1-9][0-9]*)(?:\\.[0-9]{1,2})?|-(?:[1-9][0-9]*(?:\\.[0-9]{1,2})?|0\\.(?=[0-9]{0,1}[1-9])[0-9]{1,2})))?$","x-api13-scale":2,"x-api13-numeric-minimum":0,"x-api13-exclusive-minimum":false,"x-api13-numeric-maximum":999999999999.99,"x-api13-exclusive-maximum":false,"description":"Точне числове значення «Базова ціна для знижки» у JSON-рядку; десятковий роздільник — крапка, символ одиниці не додається. Decimal encoded as a JSON string; at most 2 fractional digits. Value >= 0. Value <= 999999999999.99.","title":"Базова ціна для знижки","format":"decimal-string","example":"100.00","x-api13-group":"Суми та кількості","x-api13-unit":"currency-of-operation"},"disc_price":{"type":"string","maxLength":32,"pattern":"^(?:(?:(?:0|[1-9][0-9]*)(?:\\.[0-9]{1,2})?|-(?:[1-9][0-9]*(?:\\.[0-9]{1,2})?|0\\.(?=[0-9]{0,1}[1-9])[0-9]{1,2})))?$","x-api13-scale":2,"x-api13-numeric-minimum":0,"x-api13-exclusive-minimum":false,"x-api13-numeric-maximum":999999999999.99,"x-api13-exclusive-maximum":false,"description":"Точне числове значення «Ціна зі знижкою» у JSON-рядку; десятковий роздільник — крапка, символ одиниці не додається. Decimal encoded as a JSON string; at most 2 fractional digits. Value >= 0. Value <= 999999999999.99.","title":"Ціна зі знижкою","format":"decimal-string","example":"100.00","x-api13-group":"Суми та кількості","x-api13-unit":"currency-of-operation"},"disc_card":{"type":"string","maxLength":190,"pattern":"^[^\\x00-\\x1F\\x7F]*$","title":"Дисконтна картка","example":"990000001","description":"Поле «Дисконтна картка» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","x-api13-group":"Знижки, бонуси та борг"},"disc_percent":{"type":"string","maxLength":32,"pattern":"^(?:(?:(?:0|[1-9][0-9]*)(?:\\.[0-9]{1,4})?|-(?:[1-9][0-9]*(?:\\.[0-9]{1,4})?|0\\.(?=[0-9]{0,3}[1-9])[0-9]{1,4})))?$","x-api13-scale":4,"x-api13-numeric-minimum":0,"x-api13-exclusive-minimum":false,"x-api13-numeric-maximum":100,"x-api13-exclusive-maximum":false,"description":"Точне числове значення «Відсоток знижки» у JSON-рядку; десятковий роздільник — крапка, символ одиниці не додається. Decimal encoded as a JSON string; at most 4 fractional digits. Value >= 0. Value <= 100.","title":"Відсоток знижки","format":"decimal-string","example":"100.00","x-api13-group":"Суми та кількості","x-api13-unit":"percent"},"disc_type":{"type":"string","maxLength":32,"pattern":"^[^\\x00-\\x1F\\x7F]*$","title":"Тип знижки","example":"Приклад","description":"Поле «Тип знижки» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","x-api13-group":"Знижки, бонуси та борг"}},"required":["code","quant"]},"minItems":1,"maxItems":96,"title":"Рядки операції","example":[],"description":"Структурований масив рядків. Невідомі поля та порушення схеми відхиляються gateway.","x-api13-group":"Колекції"},"consultants":{"type":"array","items":{"type":"integer","minimum":1,"maximum":2147483647,"title":"Consultants item","example":1,"description":"Поле «Consultants item» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","x-api13-group":"Додаткові"},"minItems":0,"maxItems":32,"uniqueItems":true,"title":"Консультанти","example":[],"description":"Список «Консультанти». Структуру одного елемента, обов’язкові поля та межі кількості наведено нижче.","x-api13-group":"Колекції"}},"required":["payments","rows"]},"id":{"type":["string","integer","null"]}}}]},"response":{"oneOf":[{"type":"object","required":["ok","data","request_id"],"additionalProperties":false,"properties":{"ok":{"const":true},"data":{"type":"object","required":["method","result","id"],"additionalProperties":false,"properties":{"method":{"const":"pos.checkout_close_sale"},"result":{"type":"object","required":["upstream","status","rows"],"additionalProperties":false,"properties":{"upstream":{"type":"object","required":["name","version","resource"],"additionalProperties":false,"properties":{"name":{"const":"UPMAPI"},"version":{"type":"string"},"resource":{"type":"string"}}},"status":{"type":"object","required":["code","operation","value"],"additionalProperties":false,"properties":{"code":{"const":"OK"},"operation":{"type":"string"},"value":{"type":"string"}}},"rows":{"type":"array","items":{"type":"object","required":["check_number","bonus_before","bonus_after"],"additionalProperties":false,"properties":{"check_number":{"type":"string","title":"Номер чека","description":"Номер касового чека у базі поточного клієнта.","example":"Приклад"},"bonus_before":{"type":"string","title":"Бонуси до операції","description":"Точне повернене значення «Бонуси до операції» як десятковий рядок із крапкою.","format":"decimal-string","example":"100.00","x-api13-unit":"currency-of-operation"},"bonus_after":{"type":"string","title":"Бонуси після операції","description":"Точне повернене значення «Бонуси після операції» як десятковий рядок із крапкою.","format":"decimal-string","example":"100.00","x-api13-unit":"currency-of-operation"}}}}}},"id":{"type":["string","integer","null"]}}},"request_id":{"type":"string"}}}]}},"x-api13-operation":{"description":"Атомарно закриває продаж: записує чек, позиції, оплати та консультантів.","scope":"pos.write","params":{"bonus_kf":{"type":"string","max":4096,"default":"1","title":"Коефіцієнт бонусів","description":"Точне числове значення «Коефіцієнт бонусів» у JSON-рядку; десятковий роздільник — крапка, символ одиниці не додається.","group":"Суми та кількості","format":"decimal-string","unit":"currency-of-operation","example":"100.00"},"ch_discount":{"type":"string","max":512,"title":"Змінювати знижку","description":"Поле «Змінювати знижку» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","group":"Додаткові","example":"Приклад"},"com1":{"type":"string","max":512,"default":"","title":"Основний коментар","description":"Основний текстовий коментар, який буде збережено разом з операцією.","group":"Додаткові","example":""},"com2":{"type":"string","max":512,"default":"","title":"Додатковий коментар","description":"Додатковий коментар операції; використовуйте лише коли він потрібний відповідному сценарію Windows.","group":"Додаткові","example":""},"curcert":{"type":"string","max":4096,"default":"","title":"Валюта сертифіката","description":"Поле «Валюта сертифіката» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","group":"Додаткові","example":""},"current_discount":{"type":"string","max":512,"default":"","title":"Current discount","description":"Точне числове значення «Current discount» у JSON-рядку; десятковий роздільник — крапка, символ одиниці не додається.","group":"Суми та кількості","format":"decimal-string","unit":"currency-of-operation","example":"100.00"},"discount":{"type":"string","max":512,"title":"Дисконтна картка або знижка","description":"Точне числове значення «Дисконтна картка або знижка» у JSON-рядку; десятковий роздільник — крапка, символ одиниці не додається.","group":"Суми та кількості","format":"decimal-string","unit":"currency-of-operation","example":"100.00"},"dolg_code":{"type":"string","max":512,"default":"","title":"Dolg code","description":"Поле «Dolg code» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","group":"Додаткові","example":"990000001"},"fil":{"type":"int","min":-2147483648,"max":2147483647,"default":0,"title":"Номер філії","description":"Поле «Номер філії» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","group":"Додаткові","example":1},"idfrow":{"type":"int","min":-2147483648,"max":2147483647,"default":0,"title":"Ідентифікатор FIFO-рядка","description":"Поле «Ідентифікатор FIFO-рядка» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","group":"Додаткові","example":1},"irestr":{"type":"int","min":-2147483648,"max":2147483647,"default":0,"title":"Обмеження знижки","description":"Поле «Обмеження знижки» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","group":"Додаткові","example":1},"is_nakl":{"type":"int","min":-2147483648,"max":2147483647,"default":0,"title":"Пов’язано з накладною","description":"Поле «Пов’язано з накладною» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","group":"Додаткові","example":1},"isbonus":{"type":"string","max":4096,"default":"0","title":"Використовувати бонуси","description":"Поле «Використовувати бонуси» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","group":"Знижки, бонуси та борг","example":"0"},"isetax":{"type":"int","min":-2147483648,"max":2147483647,"default":0,"title":"Вхідний акциз","description":"Поле «Вхідний акциз» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","group":"Додаткові","example":1},"kas_type":{"type":"string","max":512,"default":"","title":"Тип каси","description":"Поле «Тип каси» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","group":"Додаткові","example":""},"kasm":{"type":"int","min":-2147483648,"max":2147483647,"default":0,"title":"Номер каси","description":"Числовий номер каси, налаштований у Windows Касі.","group":"Додаткові","example":1},"mixed":{"type":"int","min":-2147483648,"max":2147483647,"default":0,"title":"Змішана оплата","description":"Точне числове значення «Змішана оплата» у JSON-рядку; десятковий роздільник — крапка, символ одиниці не додається.","group":"Суми та кількості","format":"decimal-string","unit":"currency-of-operation","example":1},"mixed_bn":{"type":"string","max":4096,"title":"Mixed bn","description":"Точне числове значення «Mixed bn» у JSON-рядку; десятковий роздільник — крапка, символ одиниці не додається.","group":"Суми та кількості","format":"decimal-string","unit":"currency-of-operation","example":"100.00"},"mixed_bonus":{"type":"string","max":4096,"title":"Mixed bonus","description":"Точне числове значення «Mixed bonus» у JSON-рядку; десятковий роздільник — крапка, символ одиниці не додається.","group":"Суми та кількості","format":"decimal-string","unit":"currency-of-operation","example":"100.00"},"mixed_card":{"type":"string","max":512,"default":"","title":"Mixed card","description":"Точне числове значення «Mixed card» у JSON-рядку; десятковий роздільник — крапка, символ одиниці не додається.","group":"Суми та кількості","format":"decimal-string","unit":"currency-of-operation","example":"100.00"},"mixed_cert":{"type":"string","max":4096,"title":"Mixed cert","description":"Точне числове значення «Mixed cert» у JSON-рядку; десятковий роздільник — крапка, символ одиниці не додається.","group":"Суми та кількості","format":"decimal-string","unit":"currency-of-operation","example":"100.00"},"mixed_com1":{"type":"string","max":512,"default":"","title":"Mixed com1","description":"Поле «Mixed com1» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","group":"Додаткові","example":""},"mixed_debt":{"type":"string","max":4096,"title":"Mixed debt","description":"Точне числове значення «Mixed debt» у JSON-рядку; десятковий роздільник — крапка, символ одиниці не додається.","group":"Суми та кількості","format":"decimal-string","unit":"currency-of-operation","example":"100.00"},"mixed_nal":{"type":"string","max":4096,"title":"Mixed nal","description":"Точне числове значення «Mixed nal» у JSON-рядку; десятковий роздільник — крапка, символ одиниці не додається.","group":"Суми та кількості","format":"decimal-string","unit":"currency-of-operation","example":"100.00"},"mixed_ncert":{"type":"string","max":4096,"default":"","title":"Mixed ncert","description":"Поле «Mixed ncert» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","group":"Додаткові","example":""},"nal":{"type":"string","max":4096,"title":"Готівкова сума","description":"Точне числове значення «Готівкова сума» у JSON-рядку; десятковий роздільник — крапка, символ одиниці не додається.","group":"Суми та кількості","format":"decimal-string","unit":"currency-of-operation","example":"100.00"},"nal_equals_sum":{"type":"int","min":-2147483648,"max":2147483647,"default":0,"title":"Готівка дорівнює сумі чека","description":"Поле «Готівка дорівнює сумі чека» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","group":"Додаткові","example":1},"pref_disc":{"type":"string","max":4096,"default":"","title":"Префікс дисконтної картки","description":"Префікс, за яким відсканований код розпізнається як дисконтна картка.","group":"Додаткові","example":""},"round":{"type":"string","max":4096,"title":"Округлення","description":"Точне числове значення «Округлення» у JSON-рядку; десятковий роздільник — крапка, символ одиниці не додається.","group":"Суми та кількості","format":"decimal-string","unit":"currency-of-operation","example":"100.00"},"sk":{"type":"int","min":-2147483648,"max":2147483647,"default":0,"title":"Номер складу або філії","description":"Номер складу/філії відповідно до налаштувань бази; 0 зазвичай означає основний склад.","group":"Додаткові","example":1},"storage":{"type":"enum","values":["main","branch"],"default":"main","title":"Склад","description":"Логічний склад: main — основний, branch — філіальний.","group":"Основні","example":"main","enum_labels":{"main":"основний склад","branch":"філіальний склад"}},"sum":{"type":"string","max":4096,"title":"Сума","description":"Грошова сума як десятковий JSON-рядок без пробілів і символу валюти.","group":"Суми та кількості","format":"decimal-string","unit":"currency-of-operation","example":"100.00"},"payments":{"type":"array","required":true,"min_items":1,"max_items":8,"items":{"type":"object","fields":{"akas":{"type":"string","required":true,"max":190,"pattern":"/^[^\\x00-\\x1F\\x7F]{1,190}$/uD","title":"Рахунок оплати","description":"Поле «Рахунок оплати» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","group":"Додаткові","example":"Приклад"},"sum":{"type":"decimal","required":true,"max":32,"scale":2,"numeric_min":0,"exclusive_min":true,"numeric_max":999999999999.99,"title":"Сума","description":"Грошова сума як десятковий JSON-рядок без пробілів і символу валюти.","group":"Суми та кількості","format":"decimal-string","unit":"currency-of-operation","example":"100.00"},"com1":{"type":"string","max":512,"pattern":"/^[^\\x00-\\x08\\x0B\\x0C\\x0E-\\x1F\\x7F]*$/uD","title":"Основний коментар","description":"Основний текстовий коментар, який буде збережено разом з операцією.","group":"Додаткові","example":"Приклад"},"com2":{"type":"string","max":512,"pattern":"/^[^\\x00-\\x08\\x0B\\x0C\\x0E-\\x1F\\x7F]*$/uD","title":"Додатковий коментар","description":"Додатковий коментар операції; використовуйте лише коли він потрібний відповідному сценарію Windows.","group":"Додаткові","example":"Приклад"},"tdoc":{"type":"string","required":true,"max":190,"pattern":"/^[^\\x00-\\x1F\\x7F]{1,190}$/uD","title":"Тип документа","description":"Текстова назва або код виду документа, який зберігається у касовій операції.","group":"Додаткові","example":"Приклад"}}},"title":"Розподіл оплат","description":"Розподіл загальної суми між готівкою, безготівковою оплатою, бонусами, боргом або сертифікатами.","group":"Оплата","example":[]},"rows":{"type":"array","required":true,"min_items":1,"max_items":96,"items":{"type":"object","fields":{"code":{"type":"string","required":true,"max":190,"pattern":"/^[^\\x00-\\x1F\\x7F]{1,190}$/uD","title":"Код товару","description":"Публічний код товару, картки або іншого запису, як він відображається у програмі.","group":"Основні","example":"1001"},"quant":{"type":"decimal","required":true,"max":32,"scale":3,"numeric_min":0,"exclusive_min":true,"numeric_max":1000000,"title":"Кількість","description":"Кількість товару як десятковий рядок; для вагового товару дозволена дробова частина.","group":"Суми та кількості","format":"decimal-string","unit":"product-unit","example":"1.000"},"ei":{"type":"string","max":32,"pattern":"/^[^\\x00-\\x1F\\x7F]*$/uD","title":"Ознака вагового товару","description":"Поле «Ознака вагового товару» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","group":"Додаткові","example":"Приклад"},"disc_sprice":{"type":"decimal","max":32,"scale":2,"numeric_min":0,"numeric_max":999999999999.99,"title":"Базова ціна для знижки","description":"Точне числове значення «Базова ціна для знижки» у JSON-рядку; десятковий роздільник — крапка, символ одиниці не додається.","group":"Суми та кількості","format":"decimal-string","unit":"currency-of-operation","example":"100.00"},"disc_price":{"type":"decimal","max":32,"scale":2,"numeric_min":0,"numeric_max":999999999999.99,"title":"Ціна зі знижкою","description":"Точне числове значення «Ціна зі знижкою» у JSON-рядку; десятковий роздільник — крапка, символ одиниці не додається.","group":"Суми та кількості","format":"decimal-string","unit":"currency-of-operation","example":"100.00"},"disc_card":{"type":"string","max":190,"pattern":"/^[^\\x00-\\x1F\\x7F]*$/uD","title":"Дисконтна картка","description":"Поле «Дисконтна картка» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","group":"Знижки, бонуси та борг","example":"990000001"},"disc_percent":{"type":"decimal","max":32,"scale":4,"numeric_min":0,"numeric_max":100,"title":"Відсоток знижки","description":"Точне числове значення «Відсоток знижки» у JSON-рядку; десятковий роздільник — крапка, символ одиниці не додається.","group":"Суми та кількості","format":"decimal-string","unit":"percent","example":"100.00"},"disc_type":{"type":"string","max":32,"pattern":"/^[^\\x00-\\x1F\\x7F]*$/uD","title":"Тип знижки","description":"Поле «Тип знижки» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","group":"Знижки, бонуси та борг","example":"Приклад"}}},"title":"Рядки операції","description":"Структурований масив рядків. Невідомі поля та порушення схеми відхиляються gateway.","group":"Колекції","example":[]},"consultants":{"type":"array","min_items":0,"max_items":32,"unique":true,"items":{"type":"int","min":1,"max":2147483647,"title":"Consultants item","description":"Поле «Consultants item» відповідного документа або довідника ARM20. Передавайте значення так, як воно зберігається у Windows.","group":"Додаткові","example":1},"title":"Консультанти","description":"Список «Консультанти». Структуру одного елемента, обов’язкові поля та межі кількості наведено нижче.","group":"Колекції","example":[]}},"result":{"mode":"rows","columns":["check_number","bonus_before","bonus_after"],"field_specs":{"check_number":{"title":"Номер чека","description":"Номер касового чека у базі поточного клієнта.","type":"string","example":"Приклад"},"bonus_before":{"title":"Бонуси до операції","description":"Точне повернене значення «Бонуси до операції» як десятковий рядок із крапкою.","type":"string","format":"decimal-string","unit":"currency-of-operation","example":"100.00"},"bonus_after":{"title":"Бонуси після операції","description":"Точне повернене значення «Бонуси після операції» як десятковий рядок із крапкою.","type":"string","format":"decimal-string","unit":"currency-of-operation","example":"100.00"}}},"mutating":true,"idempotency_required":true,"since":"0.4.0","stability":"stable","deprecated":false,"aliases":["pos","checkout close sale","Атомарно закриває продаж: записує чек, позиції, оплати та консультантів.","Windows Каса"],"errors":[{"code":"INVALID_PARAMETER","http":422,"description":"Один із параметрів має неправильний тип, формат або значення.","retry":"Виправити запит; автоматично не повторювати."},{"code":"UPSTREAM_FAILURE","http":502,"description":"Сервер бізнес-операції недоступний або відхилив безпечний контракт.","retry":"Не створювати новий Idempotency-Key; перевірити журнал і бізнес-об’єкт."},{"code":"IDEMPOTENCY_KEY_REQUIRED","http":422,"description":"Для виконання запису не передано Idempotency-Key.","retry":"Створити ключ для цієї бізнес-операції та повторити."},{"code":"IDEMPOTENCY_RESULT_UNKNOWN","http":409,"description":"Результат попередньої спроби невідомий; gateway не виконав запис повторно.","retry":"Звірити документ, чек або платіж; не створювати новий ключ автоматично."}],"related_methods":["pos.checkout_create_check","pos.checkout_apply_sale_line","pos.reports_printed_check"]}}