Elbuz забирає з каси Dotykacka оплачені чеки й покупців у свій облік, а назад вивантажує категорії й товари: продажі не переносяться руками, а каса продає асортимент каталогу.
Коли це знадобиться:
- Є офлайн-точка на касі Dotykacka — кожен оплачений чек стає витратною накладною, прибутковим ордером і замовленням покупця.
- Клієнт купує і в залі, і на сайті — картотека покупців каси зводиться в ту саму базу контрагентів без дублів.
- Ціни й назви ведуться в Elbuz — окремий шаблон вивантаження заводить і оновлює товари на касі.
- Каса працює давно — продажі забираються лише з дня переходу.
З чого почати: візьміть ID хмари й refresh-токен у кабінеті Dotykacka і створіть шаблон «dotykacka.pl (POS)».
Що вміє підключення каси
- Завантаження оплачених чеків — з кожного чека три документи: списання товару, надходження грошей і продаж.
- Картки під нові товари — позиція, якої немає в каталозі, стає карткою у службовій категорії.
- Види оплати — готівка, картка, переказ і онлайн-оплата лягають у ваші види оплат.
- Картотека покупців — нові покупці каси заводяться контрагентами без дублів.
- Вивантаження в касу — категорії й товари з Elbuz з'являються й оновлюються на касі.
Де це і хто має доступ
- Меню
- Довідники → Операції → Завантаження даних
- Тип шаблону
- «dotykacka.pl (POS)»; для вивантаження в касу — шаблон вивантаження «dotykacka.pl»
- Право доступу
- вікно «Завантаження даних» у «Правах груп»
- Підготувати
- хмари (cloud ID) і refresh-токен з кабінету Dotykacka
Файл не потрібен. У картці «Підключення» заповнюються два поля:
| Поле | Що вписати |
|---|---|
| ID інстанса | Номер вашої хмари Dotykacka (cloud ID). Його видно в адресі кабінету після /cloud/ |
| Токен | Refresh-токен доступу до API, створений у кабінеті Dotykacka |
1
Поле «Токен»2
Поле «ID інстанса (api_instance_id)»- Токен — refresh-токен каси, який видає Dotykacka.
- ID інстанса (api_instance_id) — номер хмари каси.
Що потрібно від Dotykacka
Два значення: номер хмари (видно в адресі кабінету після /cloud/) і refresh-токен, створений у кабінеті хмари, в розділі налаштувань доступу до API.
Dotykacka видає довгоживучий refresh-токен, який сам по собі запитів не робить: ним отримують короткий робочий доступ. Elbuz робить цей обмін автоматично перед кожною операцією — тому в шаблоні зберігається саме refresh-токен, і жодних щоденних продовжень від вас не потрібно.
Документація каси: Dotykacka API.
Як підключити
- Створіть шаблон завантаження типу «dotykacka.pl (POS)» і заповніть поля «ID інстанса (api_instance_id)» і «Токен».
- Якщо історія каси довга, а продажі потрібні лише з певного дня, до першого запуску впишіть дату в поле «Завантаження замовлень починаючи з дати (РРРР-ММ-ДД)» розділу «Розширене» (сценарій). Порожнє поле — каса віддасть усю історію.
- Натисніть «Завантажити» тоді, коли можете відразу подивитися на результат: перший прогін найбільший.
- Перевірте журнал і документи (що там має бути), потім поставте шаблон на розклад.
- Якщо асортимент ведете в Elbuz, заведіть окремий шаблон вивантаження «dotykacka.pl» (як).
Які чеки й покупці забираються і що з них виходить
Elbuz бере з каси тільки оплачені продажні чеки. Усе інше — чернетки, службові документи, неоплачені рахунки — пропускається: в облік має потрапляти факт продажу, а не проміжні стани касової зміни.
При регулярних запусках забираються чеки, створені після минулого завантаження, із запасом у дванадцять годин назад — на випадок розбіжності годинників і затримок синхронізації каси з хмарою. Уже завантажені документи при цьому не дублюються.
Один чек — три документи
Продаж на касі має три наслідки для обліку: товар пішов зі складу, гроші прийшли в касу, продаж треба порахувати у виторзі. Тому з кожного чека Elbuz створює три документи:
| Документ | Навіщо |
|---|---|
| Витратна накладна | Списання проданого товару зі складу |
| Прибутковий ордер | Облік грошей, що надійшли за чеком |
| Замовлення покупця | Облік самого продажу: виторг і позиції |
Після першого завантаження документів утричі більше, ніж чеків, — так і має бути. Зв'язує трійку номер чека: у всіх трьох він стоїть у колонці «№ документа (сайт)» списку документів. Внутрішній ідентифікатор («ID документа зовнішній») у кожного свій — інакше програма вважала б їх одним документом і завела тільки перший.
Створюються всі три непроведеними: ознака в колонці «Статус проводки (підписи)» у них не стоїть. Саме завантаження жодних складських рухів не робить — списання зі складу й решта наслідків з'являються тоді, коли документ проводять.
Замовлення покупця з чека товар не резервує, навіть проведене й у статусі «Оплачено»: товар видано на касі в момент продажу, тримати його під покупця нема чого. Списує товар зі складу витратна накладна. Статуси й суми чеків від цього не змінюються, і аналітика продажів лишається тією самою. Що взагалі займає резерв — у статті про резерв.
Усі три документи заводяться на службового контрагента «Кінцевий споживач» — він створюється один раз, при першому завантаженні, якщо його ще немає в базі. Покупця з чека в документ Elbuz не переносить (чому це важливо).
Види оплати
Каса передає спосіб оплати кодом, і Elbuz розкладає основні у свої види оплат:
| Оплата на касі | Вид оплати в Elbuz |
|---|---|
| готівка | Готівка |
| платіжна картка | Банківська картка |
| банківський переказ | Банківський переказ |
| онлайн-оплата | Онлайн-оплата |
Крім них Dotykacka знає ще з пів сотні способів — талони на харчування, подарункові сертифікати, QR-код, а також оплати від служб доставки їжі (Glovo, Bolt Food, Wolt, Foodora та інших). Їхні назви Elbuz зберігає в документі як є, тож у звітах видно, звідки прийшли гроші. Статус оплати в усіх випадках — «Оплачено»: чек оплачений за визначенням.
Що відбувається з покупцями каси
Перед чеками Elbuz забирає картотеку покупців каси — тих, кого на касі заводять для знижок і програм лояльності. Приходять ім'я та прізвище, телефон, пошта, адреса, індекс, країна, місто, дата народження, накопичені бали й примітка.
Заводяться тільки нові покупці, у групу клієнтів. Elbuz звіряє картотеку каси зі своєю базою контрагентів за ідентифікатором покупця в касі, телефоном і поштою. Пошта порівнюється в канонічному вигляді, тож ivan.petrov+shop@gmail.com і ivanpetrov@gmail.com впізнаються як одна адреса, і клієнт, що купує і в залі, і на сайті, дублем не стане.
Номери з каси нормалізуються: дев'ять цифр без коду країни отримують польський код 48. Зроблено це під основний сценарій — торгову точку в Польщі. Номери інших країн вписуйте на касі повністю, з кодом країни: так вони збережуться без змін і коректно зіставляться з наявними контрагентами.
- Наявного покупця прогін не оновлює: змінений на касі телефон чи адреса в його картку не дописується — такі правки переносять у Elbuz руками.
- У документи покупець не потрапляє: картотека каси й документи продажів живуть поруч, але не зшиті. Щоб побачити покупки конкретного покупця, контрагента в документі проставляють вручну.
- Поле «Група контрагентів» у розділі «Розширене» шаблону задає групу лише для «Кінцевого споживача» в момент його створення, на нових покупців не впливає.
Як позиції чека знаходять товар
З кожного рядка чека беруться назва, кількість, ціна з ПДВ, сума рядка, відсоток знижки, одиниця виміру, номер товару в касі й номер його категорії в касі. Картку каталогу для рядка Elbuz шукає так:
- за номером товару в касі — він записується в картку після першого ж завантаження, тож знайома позиція знаходиться одразу;
- за точним збігом назви з назвою картки в каталозі.
Знайдена картка не змінюється: ні ціна, ні залишок, ні назва в ній від завантаження чека не зрушать.
Не знайшлося — заводиться нова картка: назва з чека, ціна з чека (з ПДВ, за якою продали), кількість із рядка як залишок і одиниця виміру. Картка створюється активною, зі станом «В наявності», але без прапорця «Вивантажувати у файл (на сайт)»: на вітрину й майданчики сама не поїде.
- Початок або кінець
- Дія або результат
- Розвилка: далі шлях залежить від відповіді
У рядку документа назавжди лишається те, що було пробито на касі: назва, кількість і ціна з чека. Змінена потім ціна каталогу вже завантажений чек не зачепить — документ фіксує факт продажу.
Куди лягають нові товари з каси
Категорію каса передає номером, а не назвою. Elbuz порівнює цей номер з полем зовнішнього ваших категорій і лише при збігу кладе товар у вашу гілку. Зворотне вивантаження це поле не заповнює — воно веде власний рядок зв'язку з касою. Тому зазвичай збігу немає, і нерозпізнані позиції складаються в одну службову категорію «Товари - ‹код джерела› - ‹назва вашого шаблону›».
Вона створюється вимкненою і без участі у вивантаженнях. Наступні завантаження складають нові позиції в ту саму категорію й її прапорці не чіпають — увімкнете їй вивантаження вручну, воно так і лишиться.
Переносьте картки звідти у свої категорії вільно: повторне завантаження місце товару в дереві не змінює, а рядок документа на категорію не посилається.
Видалення категорії забирає з бази всі товари, для яких вона основна, — разом з описами, фото, характеристиками й питаннями. Рядки вже завантажених документів лишаються, але картки, на яку вони посилаються, більше немає. Спершу перенесіть картки, потім видаляйте категорію; наступний прогін заведе її знову, щойно з каси приїде незнайома позиція.
Як вивантажити товари з Elbuz у касу
Окремим шаблоном вивантаження типу «dotykacka.pl» Elbuz заводить на касі категорії й товари з вашого каталогу. Спершу їдуть категорії, потім товари; нове створюється, наявне оновлюється. Зв'язок Elbuz запам'ятовує, тож повторне вивантаження не плодить дублікатів на касі.
- Запит або дія
- Відповідь
- alt — один із варіантів, залежно від умови
- loop — повторюється
- Примітка
- Що їде. Лише товари з прапорцем «Вивантажувати у файл (на сайт)», чия категорія теж увімкнена й позначена до вивантаження. Тому картки, заведені з чеків, у вивантаження не потрапляють.
- Ціна у двох варіантах. Каса зберігає ціну з ПДВ і без ПДВ окремо, тому Elbuz обчислює ціну без ПДВ за ставкою податку товару.
- Одиниці виміру. Dotykacka приймає лише свій закритий список (штука, кілограм, літр, метр і так далі); ваші позначення зіставляються з ним, нерозпізнане стає штукою.
- Що перезаписується на касі: назва, категорія, одиниця виміру, штрихкод, видимість, ставка ПДВ, ціна з ПДВ і без ПДВ, колір. Знижку каса щоразу отримує нульову, а ознаку «списувати зі складу» — знятою: залишки лишаються за Elbuz, і каса продасть позицію навіть за нульової кількості.
Категорії їдуть першими не для порядку: товар відправляється з номером своєї категорії в касі, а цей номер з'являється лише після вивантаження категорії. Тому в картці «Що вивантажувати» вмикайте обидві позначки — «Категорії» і «Товари».
Якщо каса відмовиться прийняти нові записи, її текст відмови лягає в журнал прогону. Відповідь каси на оновлення програма не перевіряє, тож невдале оновлення лишиться непоміченим. Перед оновленням Elbuz запитує в каси поточну версію пачки записів; не повернула — пачка пропускається з помаранчевим рядком у журналі (розбір).
Картку, яка приїхала з чека, вмикати у вивантаження не варто: на касі цей товар уже є. Зв'язок, записаний завантаженням чеків, вивантаження не бачить — воно шукає власний. Тому каса отримає таку картку як новий запис, і на касі з'явиться другий товар з тією самою назвою.
Оновлення за розкладом і повторний обмін
Каса не повідомляє Elbuz про нові чеки сама: їх забирає запуск шаблону — кнопкою «Завантажити» або за розкладом. Кожен запуск бере чеки від дати останнього завантаженого мінус 12 годин і після роботи сам пересуває цю дату. Як поставити шаблон на розклад і що робить вимкнення — в огляді завантаження даних.
Що перезаписує повторний обмін
Обмін іде в обидва боки, і правило тут несиметричне:
| Що | Що робить повторний прогін |
|---|---|
| Уже завантажений чек — три документи | Не чіпає взагалі: документ шукається за ідентифікатором чека в касі, ні статус, ні сума, ні рядки, ні контрагент не переписуються |
| Картки товарів в Elbuz | Не переписує ціну, назву, залишок і місце в дереві; оновлює лише кількість проданого — вона перераховується за всіма замовленнями покупця |
| Товари на касі | Вивантаження щоразу пише поверх: ціну, назву, категорію, ПДВ і видимість, змінені на касі, поверне до значень Elbuz без попередження |
Позиції, які ведете саме на касі, не пускайте у вивантаження — зніміть у картці «Вивантажувати у файл (на сайт)». Іншого захисту немає: перемикачі «Не оновлювати» і «Фіксована ціна» в картці товару стосуються завантажень у Elbuz, а не вивантаження з нього.
Коли чек скасували або товар зник
- Чека не стало на касі. Три документи в Elbuz лишаються як були: завантаження вміє тільки створювати документи й рядка про зниклий чек у журнал не пише. Прибирають такі документи руками (як).
- На касі оформили повернення. Приїде воно, лише якщо каса оформила його звичайним оплаченим чеком, — тоді такою самою трійкою документів. Інший тип запису відсіюється мовчки, і зворотний рух роблять у Elbuz самостійно. Уже завантажену трійку продажу повернення не змінює.
- Товару не стало в Elbuz. На касі він лишається таким, яким його відправили востаннє: команд на видалення вивантаження касі не шле. Так само буде, якщо зняти в картці «Вивантажувати у файл (на сайт)». Прибирають позицію в самій касі.
Межі прогону
- Скільки чеків за раз. Стелі немає. Покупці й чеки приїжджають сторінками по 200 записів, рядки чека — разом із чеком; сторінки добираються, доки каса каже, що є наступна.
- За який період. Чеки, створені пізніше за дату з поля «Завантаження замовлень починаючи з дати» мінус 12 годин. Поле порожнє — фільтра за датою немає, каса віддає всю історію, тому перший прогін помітно більший за наступні.
- Зворотне вивантаження шле пачками по 100 записів: спершу створення, потім оновлення. Перед кожною пачкою оновлення Elbuz запитує ті самі 100 записів у каси — без цього вона правку не приймає.
- У демонстраційному акаунті вивантаження обмежене першими 100 категоріями й 100 товарами; у робочому такої межі немає.
Як перевірити прогін і виправити помилку
Журнал прогону відкривається в Центрі операцій — правій панелі, яка не блокує роботу: картку шаблону можна закрити й стежити за прогоном звідки завгодно.
- Запит або дія
- Відповідь
- alt — один із варіантів, залежно від умови
- Примітка
Рядки в журналі йдуть у такому порядку:
- «Всього контрагентів завантажено: N» — скільки покупців з картотеки каси виявилися новими. Нових не було — рядка немає.
- «Запитуємо список замовлень» — початок роботи з чеками.
- «Отримано замовлень: N» — не кількість чеків, а кількість рядків, що приїхали з каси: по три на кожен чек, тобто утричі більше, і разом із чеками, що вже в базі.
- «Всього товарів завантажено: N» і слідом «Індексування товарів» — скільки нових карток заведено з позицій чеків. Нових не було — обох рядків немає.
- «Всього замовлень завантажено: N» — скільки документів реально створено. Це головне число прогону; немає нових чеків — рядка немає взагалі, і це нормально.
- «Оновлення значень на основі формул» і «Завантаження даних завершено!» з приписом «Витрачено часу».
Самі чеки шукайте у вікні «Документи»:
- «Джерело: назва» — назва вашого шаблону;
- «Тип документа» розділить трійку;
- «№ документа (сайт)» — номер чека з каси, однаковий у всіх трьох;
- «Дата додавання (джерело)» — час чека на касі.
Нові картки видно у вікні «Товари» за колонкою «Джерело: назва», нових покупців — у «Контрагентах» за колонкою «Джерело - назва». За довшу історію відповідає кнопка «Історія запусків» у шапці картки шаблону.
Якщо завантажили не те
Зупинити прогін на середині не можна. Кнопка «Стоп» ставить позначку зупинки, а обмін із касою перевіряє її лише один раз, на самому початку. Натиснута посеред роботи, вона запише в журнал «Операція перервана користувачем!», але завантаження дійде до кінця. Позначка знімається на початку наступного запуску.
Усе, що завів прогін, помічене джерелом, тож відбирається фільтром:
- Документи — вікно «Документи», колонка «Джерело: назва» дорівнює назві шаблону. Виділіть рядки й видаліть пачкою; проведені документи пачка не видаляє, програма покаже, скільки пропущено.
- Товари — вікно «Товари», та сама колонка. У відбір потраплять лише картки, які створило це завантаження; наявних воно й не змінювало.
- Контрагенти — вікно «Контрагенти», колонка «Джерело - назва»: покупці з картотеки каси.
Видалені документи 30 днів лежать у «Кошику документів», звідки пачку можна повернути цілком.
Видалення документів не відкочує позначку про те, звідки продовжувати. Наступний прогін почне з дати останнього завантаженого чека й ті самі чеки заново не забере. Щоб перезавантажити період, впишіть дату руками: картка шаблону, розділ «Розширене», поле «Завантаження замовлень починаючи з дати (РРРР-ММ-ДД)».
1
Дата початку завантаження замовлень2
Група контрагентів- Завантаження замовлень починаючи з дати (РРРР-ММ-ДД) — з якої дати прогін забирає чеки.
- Група контрагентів — група для «Кінцевого споживача».
Сценарії
Продажі офлайн-точки в тих самих документах, що й замовлення сайту
Задача: бачити продажі каси в Elbuz поруч із замовленнями інтернет-магазину.
Що налаштувати: шаблон завантаження типу «dotykacka.pl (POS)», у картці «Підключення» — поля «Токен» і «ID інстанса (api_instance_id)»; запуск — кнопкою «Завантажити».
Що вийде: кожен оплачений чек стане трьома документами — «Витратна накладна», «Прибутковий ордер», «Замовлення покупця» — на контрагента «Кінцевий споживач». Залишки наявних товарів зміняться лише після проведення документів; неоплачені чеки й записи інших типів не приїдуть.
Облік з певного дня, а не з усієї історії каси
Задача: каса працює давно, а в Elbuz потрібні продажі лише з дня переходу.
Що налаштувати: до першого запуску в картці шаблону, розділ «Розширене», впишіть дату в поле «Завантаження замовлень починаючи з дати (РРРР-ММ-ДД)».
Що вийде: приїдуть чеки, створені пізніше за цю дату мінус 12 годин. Після прогону дата в полі сама пересунеться на найпізніший завантажений чек, і наступний запуск продовжить звідти.
Постійні покупці каси — у базу контрагентів
Задача: покупці, заведені на касі для знижок і бонусів, мають бути в тій самій базі, що й покупці сайту.
Що налаштувати: окремо нічого — той самий шаблон «dotykacka.pl (POS)» забирає картотеку покупців на початку кожного прогону.
Що вийде: нові покупці заводяться в групу клієнтів; ті, кого Elbuz уже знає за ідентифікатором у касі, телефоном або поштою, дублем не стануть. Покупець без телефону й без пошти не заведеться зовсім, а в документи з чеків покупець не підставляється.
Асортимент з Elbuz — на касу
Задача: ціни й назви ведуться в Elbuz, і каса має продавати за ними.
Що налаштувати: окремий шаблон вивантаження типу «dotykacka.pl», у картці «Що вивантажувати» — позначки «Категорії» і «Товари». У товарів має стояти прапорець «Вивантажувати у файл (на сайт)», а їхня категорія — бути увімкненою й позначеною до вивантаження.
Що вийде: спершу на касі з'являться категорії, потім товари; наступні вивантаження оновлюють ті самі записи. Товар, прибраний з вивантаження чи видалений в Elbuz, з каси сам не зникне, а каса не списуватиме залишок при продажу.
Що робити, коли чеки не приходять
| Що ви бачите | Чому так | Що зробити |
|---|---|---|
| «Не вказано API токен» | Порожнє поле «Токен» або «ID інстанса» | Заповніть обидва поля (де взяти) |
| У журналі текст відмови від каси | Каса не прийняла токен | Створіть новий refresh-токен у кабінеті хмари й вставте в шаблон |
| Є «Отримано замовлень», але немає «Всього замовлень завантажено» | Нових чеків немає — усі отримані вже в базі | Нічого: це нормальний результат повторного запуску (журнал) |
| Завантажилися не всі чеки | Забираються лише оплачені продажні чеки й лише після дати з «Розширене» мінус 12 годин | Перевірте тип і оплату чека на касі та дату в шаблоні (які чеки) |
| На касі два товари з однаковою назвою | Картку, що приїхала з чека, увімкнули у вивантаження | Зніміть у картці «Вивантажувати у файл (на сайт)», зайвий запис видаліть на касі (вивантаження) |
| «Dotykačka: каса не повернула версію записів (ETag) — пачку оновлення пропущено, повтор при наступному прогоні.» | Каса не віддала поточну версію пачки, без неї правку не приймає | Дочекайтеся наступного вивантаження або запустіть його ще раз |
| «Операція перервана користувачем!», а документи однаково з'явилися | Зупинка перевіряється лише на початку обміну | Приберіть зайве фільтром за джерелом (як) |
| Телефони покупців отримали код 48 | Дев'ять цифр без коду країни нормалізуються до польського формату | Вписуйте на касі номери з кодом країни (покупці) |
Часті запитання
Де взяти ID інстанса й токен Dotykacka?
ID інстанса — номер вашої хмари, його видно в адресі кабінету після /cloud/. Токен створюється в кабінеті хмари, в розділі доступу до API: це refresh-токен, з якого Elbuz сам отримує робочий доступ.
Чому з одного чека створюються три документи?
Продаж на касі має три наслідки: списання товару, надходження грошей і виторг. Усі три документи мають однаковий номер чека в колонці «№ документа (сайт)» (детальніше).
Чи створюються товари з каси в правильній категорії?
Ні: каса передає категорію номером, і нові позиції лягають у службову категорію — вимкнену й поза вивантаженнями. Переносьте картки звідти у свої категорії (службова категорія).
Чи затре повторне завантаження мої правки в документах?
Ні. Уже завантажений чек прогін не чіпає взагалі, картки товарів теж не переписує. А зворотне вивантаження пише поверх каси (що перезаписується).
Чому в документах «Кінцевий споживач», а не покупець із каси?
Покупця з чека Elbuz у документ не переносить. Картотека каси приходить окремо, у контрагенти; щоб зв'язати продаж із покупцем, проставте контрагента в документі вручну.
Як прибрати помилково завантажені чеки?
У вікні «Документи» відберіть рядки за колонкою «Джерело: назва» і видаліть пачкою; видалене 30 днів лежить у «Кошику документів». Щоб завантажити період заново, впишіть дату в «Розширене» (покроково).
Суміжні теми
- Якщо потрібна загальна картина, як замовлення з різних систем стають документами, — Імпорт замовлень через API.
- Якщо документи з каси треба провести, щоб списати товар, — Замовлення покупця.
- Якщо треба зрозуміти загальну механіку завантаження й розкладу — Огляд завантаження даних.

