Зачем
В связи с ФЗ 54 при использовании онлайн модулей и мобильных приложений возникает законный вопрос - как быть с онлайн платежами? Кто и как должен формировать фискальный чек? Как предоставить чек покупателю?
Для онлайн модулей, процессинговые системы предлагают производить фискализацию их силами (передача содержимого чека поддержана в Абонемент Онлайн для Робокассы), но это не всегда удобно.
Для онлайн приложений, не все процессинговые системы предлагают фискализацию.
Для подобных случаев были созданы различные предложения для облачной фискализации - когда фискальный регистратор находится в датацентре и работает через веб-интерфейс 24/7 на различных заказчиков. Такие как Атол-Онлайн и CloudKassir.
Как
В таком случае схема взаимодействия при оплате будет выглядеть как указано на рис.1.
|
Рис.1 Схема работы при интеграции с облачным решением для фискализации |
То есть, при проведении платежа через Абонемент Онлайн/мобильное приложение, платёж проводится в два этапа:
1. Мобильное приложение/Абонемент Онлайн перенаправляет клиента в процессинг, где он производит платёж, информация о платеже возвращается в модуль.
2. Модуль отправляет запрос на регистрацию платежа в Абонемент через API (Connecter). Для завершения регистрации платежа, API запросит формирование чека для данной операции у облачного ФР. Только после успешной фискализации платёж (чек) будет зарегистрирован в Абонемент.
Версии используемые при тестировании
- Абонемент - 1.136
- Connecter - 1.66.0.39
- URunPos.dll - 2.2.0.4
- fpCloudAtol.dll - 1.3.0.10
Как настраивается
//here lies copy paste from URunPos node
Данное решение настраивается через универсальный драйвер.
Для этого в connecter.ini необходимо в секцию [pos] добавить строку:
RunPosDllName=Urunpos.dll
Следующие файлы должны быть в папке с Connecter:
URunPos.dll (вер. не ниже 2.2.0.4), URunPos.ini, fpCloudAtol.dll (вер. не ниже v.1.3.0.10) и urunpos_frxml_CloudAtol.xml
Настройки файлов конфигурации:
URunPos.ini (fr.ini или urunpos_CloudAtol.ini)
[Main] ;Драйвер ФР R_keeper DriverName = fpCloudAtol.dll ;ХМL настроек драйвера ФР R_keeper ParamXMLFile = urunpos_frxml_CloudAtol.xml ;Код налога по умолчанию TaxIndexDef=6 ;Налоги передаваемые в чек ;Налог с кодом 1 RateValue1 =0 ;Налог с кодом 2 RateValue2 =1000 ;Налог с кодом 3 RateValue3 =2000 ;Налог с кодом 4 RateValue4 =11000 ;Налог с кодом 5 RateValue5 =12000 ;Налог с кодом 6 RateValue6 =-1 DocNumber = -1
Где ставки налогов могут принимать предопределённые значения из следующего списка:
| RateValue= | Передаваемый налог |
|---|---|
| 0 | НДС 0% |
| 1000 | НДС 10% |
| 2000 | НДС 20% |
| 11000 | НДС 10/110% |
| 12000 | НДС 20/120% |
| -1 | Без НДС |
Данная гибкость настройки позволяет настроить для онлайн фискализатора ставки налогов так же, как и в реальных фискальных регистраторах, используемых на объекте. Например, в приведённом выше примере ini файла, налоги установлены так же, как и в фискальных регистраторах Атол. Подробнее про работу универсального драйвера с налоговыми ставками можно узнать в статье.
init.xml
<Parameters>
<Company_INN>5544338819</Company_INN><!--ИНН компании, предоставленный в Атол-Онлайн-->
Все данные заполняемые в xml могут быть получены в Атол-Онлайн.
Регистрация чека, в зависимости от нагруженности могут варьироваться от 1-2 секунд до 2-3 минут, в связи с чем значение параметра DurationWaitProcessed рекомендуется устанавливать не менее 300.
ВАЖНО!!!
Для решений облачной фискализации наличие email или телефона клиента в чеке является обязательным, соответственно, должны быть установлены параметры "Общие параметры" - "Услуги и платежи" - "ФР может отправлять чеки на Email / через SMS". Соответствуюющие поля клиента должны быть заполнены.
Лицензирование
Интеграция защищёна лицензионным ключом Проект 5 модуль 1. Подробнее про лицензирование
ВАЖНО!!!
Для решений облачной фискализации наличие email или телефона клиента в чеке является обязательным, соответственно, должны быть установлены параметры "Общие параметры" - "Услуги и платежи" - "ФР может отправлять чеки на Email / через SMS". Соответствуюющие поля клиента должны быть заполнены.
