Оплата за обслуговування
Загальна інформація
Для забезпечення роботи оплати за послуги обслуговуваня на ФОП рахунок ресторану необхідно завести в Poster окремий продукт - Expirenza Обслуговування
.
Після цього, якщо у ресторана активована опція сплати за послуги обслуговування на ФОП і клієнт залишає оплату за обслуговування, плагін, отримавши цю інформацію від backend, перевірить поточний чек в Poster. Якщо в чеку ще не було додано позицію Expirenza Обслуговування
на оплачену суму, плагін отримає з Poster дані про заведений продукт.
Якщо він є і відповідає всім вимогам, плагін зробить спробу додати позицію в чек. Якщо продукт не заведено, або заведено не правильно, плагін поверне помилку на backend, а в фоні спробує оновити продукт Expirenza Обслуговування, якщо він був заведений.
Якщо продукт не заведений, то він автоматично не створиться.
У випадку, коли плагін перевіряє чек і вже бачить що продукт Expirenza Обслуговування був доданий і сума збігається з тією, що вказав клієнт, то чек буде закритий, без додаткових дій. Якщо сума не збігається - плагін поверне помилку.
Параметри продукту “Expirenza Обслуговування”
Для того, щоб плагін зміг успішно додати позицію для переказу оплати за обслуговування на ФОП - Expirenza Обслуговування, він має бути заведений в Poster з наступними параметрами:
Мати назву
Expirenza Обслуговування
, зі збереженням регістру, без інших символів (пробіли на початку, в кінці, точки, коми, тощо)Страва має бути вагова
Страва доступна на споті який використовується рестораном
Ціна за 100 грамм - 100 копійок для споту який використовується рестораном


Фонове оновлення продукту “Expirenza Обслуговування”
Процес фонового оновлення запускається в двох випадках:
Отримання плагіном параметру налаштування про включення в ресторані оплати за обслуговування на фоп
При закритті рахунку, якщо продукт Expirenza Обслуговування не проходить валідацію.
При цьому плагін отримує інформацію, чи був у ресторана раніше заведений продукт і чи відомий його Id в Poster.
Якщо так, то по АПІ menu.getProduct
отримуєм продукт, якщо його вже немає - видаляємо раніше збережений Id продукта в плагіні і процес оновлення завершується помилкою.
Якщо продукт є і він проходить валідацію - додаткових дій не потрібно. Якщо ж валідацію не проходить - параметри продукту буде оновлено до необхідних (через АПІ - menu.updateProduct
).
Якщо ж плагін не має Id продукту Expirenza Обслуговування, то спробує отримати всі продукти з Poster ( АПІ - menu.getProducts
) і знайти по імені продукту. Якщо продукт буде знайдено, то його id буде збережено в плагіні та так само плагін провалідує і якщо необхідно оновить продукт в Poster).
АПІ Poster, які використовуються в процесі
Отримати продукт по id - Документація по API Poster
Зміна параметрів продукту - Документація по API Poster
Отримати список продуктів - Документація по API Poster
Додати позицію в чек - Документація по API Poster
Last updated