01

Ръчният касов бон е отделен процес, който системата вече може да знае

Поръчката влиза в онлайн магазина, плащането е успешно, а след това служител отваря друга програма или устройство и въвежда същата информация още веднъж. При малък обем това е неудобство. При десетки или стотици операции дневно вече е системен проблем: време, двойно въвеждане, риск от грешка и липса на ясен статус кое е фискализирано.

В web-design.bg изграждаме интеграции между онлайн магазини, ERP, CRM, POS и custom бизнес системи и касови апарати или фискални принтери. Целта не е просто да „натиснем Print“, а продажбата, фискалната операция и резултатът да бъдат един проследим flow.

02

Касов апарат и фискален принтер не са едно и също

НАП посочва електронните касови апарати с фискална памет и фискалните принтери като видове фискални устройства. От техническа гледна точка обаче начинът на интеграция зависи от конкретния модел, производителя, наличния protocol, driver или SDK и средата, в която устройството работи.

Затова не обещаваме универсална интеграция по марка. Първо проверяваме точния модел и документацията му. Фискалният принтер често е естествен избор, когато продажбата вече се управлява от софтуер, но и касов апарат може да участва в автоматизиран flow, ако устройството и производителят предоставят подходящ интерфейс.

03

Как изглежда една реална интеграция

Системата вече знае артикулите, количествата, цените, ДДС групите, отстъпките, доставката, начина на плащане и номера на поръчката. Вместо оператор да преписва тези данни, integration layer-ът може да ги map-не към командите на конкретното фискално устройство, да получи отговор и да запише резултата обратно към поръчката.

При по-зряла архитектура пазим и operational state: издаден ли е документът, кога, от кое устройство, успешна ли е операцията, има ли грешка, трябва ли retry, имало ли е сторно и кой процес е задействал действието. Това позволява audit trail и защита срещу двойно изпълнение.

04

Cloud система и физическо устройство: local bridge

Често онлайн магазинът или ERP системата е в cloud, а фискалният принтер е физически в магазин, офис, ресторант или хотел. Ако устройството комуникира локално през USB, serial или LAN, не е разумно публичният сървър директно да управлява локалния порт.

В такива случаи можем да изградим защитен local bridge/service. Той работи в обекта, получава разрешени операции през контролиран API или queue, комуникира с устройството през неговия driver/protocol и връща резултата към cloud системата. Така физическото устройство остава локално, а бизнес логиката остава централизирана.

05

Какво става, ако устройството е изключено

Това е архитектурен въпрос, а не edge case. Лошата интеграция изпраща команда и се надява. Добрата интеграция знае статуса. Ако устройството не отговори, операцията може да бъде маркирана като pending или failed, да се предотврати дублиране, да се изпрати известие и да се позволи контролиран retry.

При системи с повече от един обект може да се добави routing към конкретно устройство, health status и централен журнал. Това е особено важно, когато фискалният процес е част от ERP или custom система и трябва да остава видим за екипа.

06

Сторно, връщане и анулиране трябва да бъдат част от дизайна

Фискализацията не приключва при успешната продажба. В eCommerce има отказани поръчки, частични и пълни връщания, корекции, неуспешни плащания и замени. Ако автоматизираме само първоначалната продажба, а всички изключения остават ръчни, системата бързо създава нов operational debt.

Затова още при discovery определяме кои order statuses и бизнес събития изискват фискално действие и как резултатът се записва обратно в ERP, CRM или поръчката.

07

При онлайн магазин режимът зависи и от начина на плащане

Не е коректно да се твърди, че всяка онлайн поръчка задължително изисква една и съща фискална операция. НАП описва различни режими според начина на плащане и организацията на продажбата. При електронен магазин при приложимите условия фискален или системен бон може да бъде генериран и в електронен вид, а за определени неприсъствени картови плащания съществува и алтернативен режим при изпълнение на нормативните изисквания.

Затова започваме от реалния payment flow, а не от кабела към принтера. При необходимост счетоводителят или данъчният консултант на клиента потвърждава приложимия режим, а ние реализираме техническата архитектура.

08

Как протича проектът при нас

Първо проверяваме точния модел устройство, къде се намира, как е свързано и каква система трябва да го управлява. След това описваме sales и return flow-а и определяме mapping-а между бизнес събитията и командите към устройството.

При нужда изграждаме middleware/local bridge, queue, retries, logging, permissions и audit trail. Накрая тестваме не само успешен бон, а продажба, offline устройство, грешка, повторен опит, сторно и връщане. След launch интеграцията може да остане под техническа поддръжка, защото драйвери, firmware, eCommerce платформа и бизнес процеси се променят.

09

Какво ни изпращате, за да преценим интеграцията

Най-полезната начална информация е точният модел и производител на касовия апарат или фискалния принтер, системата, която трябва да бъде свързана, физическото местоположение на устройството, начинът на връзка, начините на плащане и какво събитие трябва да задейства фискалната операция.

Ако имате повече от един обект, няколко устройства, сторно/връщания, ERP/CRM sync или налична SDK/protocol документация, включете и това. С този контекст можем да предложим конкретна архитектура вместо универсален plugin, който предполага, че всеки бизнес работи еднакво.

10

Нашият подход: системата трябва да знае дали операцията е приключила

Не продаваме „plugin за касов апарат“. Изграждаме връзката между реалния продажбен процес и конкретното устройство. Това може да е проста връзка към един фискален принтер или инфраструктура с множество обекти, централен ERP, локални bridge услуги и пълна проследимост.

Добрата интеграция премахва въпроса „Издадохме ли бона?“. Системата трябва да знае отговора. Ако искате да проверим вашия случай, изпратете модела на устройството и кратко описание на процеса през страницата за интеграция или проектния съветник.