Логіка взаємодії з API погашення рецептів
-
На початку роботи фармацевта необхідно зробити авторизацію в сервісі Skarb Cloud + eHealth. Авторизація робиться один раз за зміну.
Для авторизації необхідно виконати запит API /account/login/, в якому передаються дані для авторизації від Skarb Cloud. У відповідь API надішле токен користувача та посилання для авторизації в eHealth.⚠️ Токен фармацевта потрібен для всіх, описаних нижче операцій.
-
Виконати запит API /medication/get-data з номером рецепта від покупця.
У відповідь ви отримаєте всю інформацію про рецепт (якщо він не відхилений, або не відпускається в іншій аптеці) та інформацію про позиції, які можна буде відпустити за даним рецептом. Також необхідно вивести список товарів із відповіді API. -
Вибрати потрібні позиції для відпуску (з кроку 2), додати їх відпускні ціни + тип оплати (готівка або картка), після цього виконати запит API /medication/get-payment-amount з цими даними для отримання фінальної ціни, яку має доплатити покупець. Показати суму до сплати покупцю.
-
Якщо покупець згоден з умовами угоди, потрібно відправити API запит з даними потрібних позицій + їхня ціна відпуску + код погашення (4-х значний пін код від покупця) + ціна яку має доплатити покупець + тип оплати.
a. Якщо підписання робиться силами клієнта необхідно виконати API запит /medication/init-dispense-form, який робить резерв рецепта та повертає посилання на сторінку підписання рецепта ЕЦП. Її треба відкрити у внутрішньому вікні браузера.
b. Якщо підписання здійснюється через автоматизований модуль підпису SmartSign за допомогою метода /medication/process-dispense-via-smart-sign – тоді резерв, підписання та погашення буде непомітним для касира. Якщо ключ не активовано – тоді прийде помилка, про те що необхідно повідомити користувача або викликати API запит /medication/init-dispense-form. -
Якщо покупець не згоден із ціною – треба натиснути кнопку скасування погашення рецепта та виконати метод /medication/reject-dispense.
-
Перевірити статус погашення рецепта за номером рецепта можна виконавши метод /medication/get-dispense-data.