Http-сервис для работы с ККТ

Публикация № 685375

Учет и отчетность - Кассовые операции

ККТ Python WEB-сервис HTTP-сервис чек Атол 54-ФЗ WSGI Apache Linux.

Пример работы с ККТ через HTTP запрос. В соответствии с 54-ФЗ продавец должен отправить электронный чек покупателю. В рабочее время это делает кассир, но как быть, если оплата произведена вне рабочего времени? Например, покупка на сайте. Для этого я разработал данный HTTP-сервис для взаимодействия сайта и ККТ в автоматическом режиме.

На сервис передается строка данных JSON POST-запросом, в которой содержатся данные чека. Вызывается wsgi-скрипт, который взаимодействуя с дравйером ТО пробивает чек на ККТ и чек отправляется покупателю. Смена открывается и закрывается автоматически. ККТ подключен по ethernet-интерфейсу. Параметры подключения задаются в файле conf.py. Модель ККТ: Атол 55Ф.

Для работы сервиса необходимо:

  1. Ubuntu + Apache web-сервер с установленным wsgi-mod.
  2. Драйвер АТОЛ ККТ 9.x (я работал с 9.10.1.5756) скачать можно тут http://fs.atol.ru -> Файловый архив -> Программное обеспечение - ДТО

Для установки wsgi-mod на web-сервере выполните: sudo apt install libapache2-mod-wsgi

Для проверки что mod-wsgi подгрузился выполните: sudo apache2ctl -M выведется список загруженных модулей, в котором должа присутствовть строка wsgi_module (shared)

АТОЛ драйвер ККТ распакуйте и скопируйте файлы из папки с подходящей архитектурой в папку где лежит wsgi-скрипт Файлы dto9base.py и dto9fptr.py из папки python в папку где лежит wsgi-скрипт В данном примере в папку /var/www/kkt

В файле conf.py пропишите параметры подключения к ККТ IP адрес, порт, путь к лог файлу и т.д. Параметр "Model" сотрим в Руководстве программиста приложение 7 модели ККМ Параметр "Test mode" - признак тестового режима. Если True, то метод на ККМ выполнен не будет (не будет ничего напечатано на чеке), но ее успешное выполнение (ResultCode = 0) сигнализирует о том, что при данном состоянии ККМ метод может быть выполнен без ошибок.

Создаем виртуальный хост apache /etc/apache2/sites-enabled/kkt

sudo nano /etc/apache2/sites-available/000-default.conf
Добавляем настройку:

<VirtualHost *:80>

    ServerName 192.168.x.x
    ServerAlias localhost
    DocumentRoot "/var/www/kkt"
    <Directory /var/www/kkt>
    AddDefaultCharset utf-8
    Order allow,deny
    Allow from all
    </Directory>

    WSGIScriptAlias /kkt /var/www/kkt/kkt.wsgi

    LogLevel info

</VirtualHost>

WSGIPythonPath /var/www/kkt

Выполняем команду sudo service apache2 restart

Заходим на страницу http://192.168.x.x/kkt. Должны увидеть результат выполнение команды GetStatus():

    Статус ККТ:
    (0, u'Ошибок нет', 0, u'Ошибок в параметрах нет')

Если возникли ошибки, смотрим /var/log/apache2/error.log и лог файл, путь к котрому указан в conf.py

Формирование POST-запроса к сервису. На сервис нужно отправить JSON данные чека.

    {"DocNumber": "ТР00-003655", # Номер документа
    "DocDate": "06.10.2017",    # Дата документа
    "DocSumm": 1950,            # Сумма документа
    "Goods": {                  # Товары
            "Position_1": {     # Позиция товара
                    "Name": "Наименование товара",  # Наименование товара
                    "Price": 325.12,                # Цена товара
                    "Quantity": 6,                  # Количество товара
                    "Tax": 18,                      # НДС
                    "PositionSumm": 1950            # Сумма по позиции
                    }
            }
    }

Сервис напечатает чек на ККТ и вернет JSON ответ, в котором будет номер чека, код результата и описание результата.

Я вызываю сервис из 1С таким способом:

    // Функция формирует POST-запрос для HTTP сервиса.
    // Возвращает ответ с номером пробитого на ККТ чека.
    // Константы.IPАдресHTTPСервисаККТ - IP адрес сервиса. Например 192.168.x.x.
    // Константы.ИмяHTTPСервисаККТ - Имя сервиса. Например kkt
    Функция ПробитьЧекНаККТ(ДокументОплаты) Экспорт

        Результат = 0;

        Если ДокументОплаты.НомерЧекаККМ <> 0 Тогда 
            Возврат Результат;
        КонецЕсли;
        
        // Формируем данные чека
        ПараметрыФискализацииЧека = ДенежныеСредстваВызовСервера.ПараметрыЧека(ДокументОплаты, "");
        СтруктураДанных = Новый Структура;
        СтруктураДанных.Вставить("DocNumber", ДокументОплаты.Номер);
        СтруктураДанных.Вставить("DocDate", Формат(ДокументОплаты.Дата, "ДФ=dd.MM.yyyy"));
        СтруктураДанных.Вставить("DocSumm", ДокументОплаты.СуммаДокумента);
        СтруктураТовары = Новый Структура;

        НомерСтрокиТовара = 0;
        Для Каждого СтрокаМассива Из ПараметрыФискализацииЧека.ПозицииЧека Цикл
            НомерСтрокиТовара = НомерСтрокиТовара + 1;
            СтруктураСтрокаТовара = Новый Структура;
            СтруктураСтрокаТовара.Вставить("Name", СтрокаМассива.Наименование);
            СтруктураСтрокаТовара.Вставить("Price", СтрокаМассива.Цена);
            СтруктураСтрокаТовара.Вставить("Quantity", СтрокаМассива.Количество);
            СтруктураСтрокаТовара.Вставить("Tax", СтрокаМассива.СтавкаНДС);
            СтруктураСтрокаТовара.Вставить("PositionSumm", СтрокаМассива.Сумма);
            СтруктураТовары.Вставить("Position_" + НомерСтрокиТовара, СтруктураСтрокаТовара);
        КонецЦикла;

        СтруктураДанных.Вставить("Goods", СтруктураТовары);

        // Сформируем JSON из данных чека
        ЗаписьJSON = Новый ЗаписьJSON;
        ЗаписьJSON.УстановитьСтроку(Новый ПараметрыЗаписиJSON(,Символы.Таб));
        НастройкиСериализации = Новый НастройкиСериализацииJSON();
        НастройкиСериализации.СериализовыватьМассивыКакОбъекты = Ложь;
        ЗаписатьJSON(ЗаписьJSON, СтруктураДанных, НастройкиСериализации);
        СтрокаДанных = ЗаписьJSON.Закрыть();        

        // Выполнение запроса HTTP к сервису.
        Попытка
            АдресСервера = СокрЛП(Константы.IPАдресHTTPСервисаККТ.Получить());
            Соединение = Новый HTTPСоединение(АдресСервера);
        Исключение
            ТекстОшибки = нСтр("ru='Отсутствует соединение с сервером'");
            ЗаписьЖурналаРегистрации("ККТ", УровеньЖурналаРегистрации.Ошибка,,, ТекстОшибки + Символы.ПС
                                    +ИнформацияОбОшибке());
            Возврат Результат;
        КонецПопытки;

        ИмяСервиса = Константы.ИмяHTTPСервисаККТ.Получить();
        Если Лев(ИмяСервиса, 1) <> "/" Тогда
            ИмяСервиса = "/" + ИмяСервиса;
        КонецЕсли;
        HTTPЗапрос = Новый HTTPЗапрос(ИмяСервиса);
        HTTPЗапрос.Заголовки.Вставить("Content-Type", "application/x-www-form-urlencoded;charset=utf-8");
        HTTPЗапрос.УстановитьТелоИзСтроки(СтрокаДанных, КодировкаТекста.UTF8,
                                            ИспользованиеByteOrderMark.НеИспользовать);
        HTTPОтвет = Соединение.ОтправитьДляОбработки(HTTPЗапрос);
        КодСостояния = HTTPОтвет.КодСостояния;
        ТелоОтвета = HTTPОтвет.ПолучитьТелоКакСтроку();
        Если ЗначениеЗаполнено(ТелоОтвета) Тогда
            ЧтениеJSON = Новый ЧтениеJSON;
            Попытка
                ЧтениеJSON.УстановитьСтроку(ТелоОтвета);
                Результат = ПрочитатьJSON(ЧтениеJSON);
                ЧтениеJSON.Закрыть();
            Исключение
                ЗаписьЖурналаРегистрации("ККТ", УровеньЖурналаРегистрации.Ошибка,,, "Ответ сервера: " + ТелоОтвета +
                                            Символы.ПС + "Ответ ожидается в JSON формате!");
                Возврат Результат;
            КонецПопытки;

            Если Результат.result_code <> 0 Тогда 
                ЗаписьЖурналаРегистрации("ККТ", УровеньЖурналаРегистрации.Ошибка,,, "Не пробит чек на оплату с сайта!" +
                                            Символы.ПС + Строка(ДокументОплаты));
            Иначе 
                ЗаписьЖурналаРегистрации("ККТ", УровеньЖурналаРегистрации.Информация,,, "Пробит чек. Номер чека: " +
                                            Результат.check_number + Символы.ПС + "Код ответа: " + 
                                            Результат.result_code + Символы.ПС + "Описание ответа: " +
                                            Результат.result_description);
                Возврат Число(Результат.check_number);
            КонецЕсли;
        Иначе 
            ЗаписьЖурналаРегистрации("ККТ", УровеньЖурналаРегистрации.Ошибка,,, "Нет ответа от HTTP-сервиса");
        КонецЕсли;

    КонецФункции

Приветствуются любые замечания и советы.

Ссылка на проект: https://github.com/parshin/kkt

Основная информация находится в документации к ККТ в руководстве программиста.

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. maks_20 138 12.10.17 09:36 Сейчас в теме
Интересное решение. Подобную задачу делали немного другим способом: создавался регистр сведений, который накапливал сообщения и регламентное задание, которое делало рассылку сообщений. Соответственно покупатель через интернет-ресурс делал заказ, заказ прилетал в 1с. Если заказ оплачен, то формировался документ оплаты, по нему печатался чек и записывались данные в регистр вместе с контактной информацией покупателя. А дальше регламентом сообщение отправлялось на е-майл или на телефон (или и туда и туда). А если пользователи уже закрыли смену - предусмотрено автоматическое открытие?
2. parshin 75 12.10.17 11:14 Сейчас в теме
(1) Да, смена открывается автоматически. Только бумага меняется руками )
3. zaoproxy 39 13.10.17 09:49 Сейчас в теме
вы используете обычное соединение (Соединение = Новый HTTPСоединение(АдресСервера);) что не совсем безопасно.
нет проверки на валидность как чека, так и на право пробития чека.
так же в качестве недоработки данной технологии могу отметить не полноту данных в чеке. Постараюсь расшифровать: не учтена возможность учета продаж товаров по разным системам налогооблажения, а самое главное - если речь идет про дистанционную печать (интернет магазин) в чеке отсутствует какое либо упоминание про адрес электронной почты или номер телефона.
Вот такая ложка дёгтя.....
5. parshin 75 17.10.17 06:28 Сейчас в теме
(3)Спасибо за конструктивную критику!
4. forev8 14.10.17 19:14 Сейчас в теме
Интересное решение согласен. А как настроен хттп сервис? какой указан url c параметрами?
6. parshin 75 17.10.17 06:32 Сейчас в теме
(4)Http-сервис настроен на Apache через WSGI. URL http://192.168.x.x/kkt. Параметры передаются POST запросом.
7. dance000 18.10.17 12:22 Сейчас в теме
А почему вы использовали именно эту модель ККТ?
Есть же модели без печатающих головок, которые только формируют фискальный признак. Тогда и бумагу не надо будет менять!
8. parshin 75 18.10.17 12:35 Сейчас в теме
(7)Мы ведем не только онлайн торговлю, поэтому парк ККТ с печатающими головками. Но и на данном ККТ можно не печатать бумажный чек. Наши клиенты иногда просят бумажный чек отправить вместе с водителем например. Поэтому печатаем.
dance000; +1 Ответить
9. infosoft-v 528 25.10.17 14:02 Сейчас в теме
Илья, добрый день.
Спасибо за отличную идею.

Помогите разобраться с двумя вопросами:
1. Как организована или как можно организовать очередь печати? Если одновременно интернет магазин и 1С отправят сервису запрос на печать чека, проблемы будут?

2. Если от сервиса нужно более одного метода, как лучше это реализовать? Сейчас нужно Печать чека продажи, Печать чека возврата, Закрытие смены. После ввода формата ОФД 1.05 количество методов, я думаю возрастет.
10. parshin 75 25.10.17 15:31 Сейчас в теме
(9)Добрый день!
1. Очередь печати в данном примере не реализована, соответственно проблемы будут. А очередь очень нужна. И в интернет-магазине может быть несколько покупок одновременно. Я планирую реализовать очередь в 1С, т.к. в нашей схеме работы все оплаты через сайт сразу попадают в 1С. Настроена интеграция сайта, 1С и эквайринга через веб-сервисы. Реализовать, например, можно так: сохранять документы оплаты в порядке поступления в регистр сведений, а из регистра брать и отправлять на печать. В случае успешного пробития удалять запись из регистра. Или на стороне скрипта для пробития чека можно реализовать подобную схему. Каждый поступивший запрос сохранять в файл или бд, например, а потом читать из файла и удалять файл в случае успеха.

2. При вызове сервиса можно добавить в отправляемые данные json название метода, который нужно выполнить, ну а дальше в скрипте вызывать соответствующий метод драйвера.
infosoft-v; +1 Ответить
11. infosoft-v 528 25.10.17 20:55 Сейчас в теме
Илья, спасибо за ответ.
По второму пункту я так же думал.
По первому пункту вы дали информацию для размышления. Буду думать.
12. vsaranov 03.11.17 16:33 Сейчас в теме
Илья, благодарю за то, что делитесь своими наработками. Пожалуйста, подскажите, что нужно изменить в скрипте, что бы просто вывести чек на печать (сделать не фискальный чек)? Хотел бы отладить вывод нужных позиций, текста, посмотреть как выглядит чек, а касса уже фискализирована и работает.
13. vsaranov 08.11.17 12:09 Сейчас в теме
Илья, я у же разобоался, что невозможно отладить вид чека на фискализированном аппарате.
Хотел бы поинтересоваться, как вы указываете атрибуты? Например, нужно в чеке ФИО кассира, в вашем проекте я не нашёл установку каких-либо атрибутов. Нашёл, что в ДТО8 - был метод WriteAttribute(), которого нет в ДТО9:
driver.AttrNumber = 1021;
driver.AttrValue = "Старший кассир Иванов И.И.";
driver.WriteAttribute();
, а как это делается в ДТО9 не понятно.
14. vsaranov 08.11.17 15:16 Сейчас в теме
Сам отвечу. Если никаких параметров не устанавливать, то должны печататься поля установленные в самом фискальном регистраторе. Эти параметры можно изменить используя утилиту "Тест драйвера ККМ" в параметрах ККМ. Добавление параметров в чек через ДТО9 описано тут http://forum.atol.ru/index.php?showtopic=32543
Отсутствие документации убивает, но в основном время :)
15. parshin 75 08.11.17 15:22 Сейчас в теме
(14)Добрый день!
Я не устанавливаю имя кассира, но предполагаю что метод driver.put_Operator(self, value) выполняет то что вам нужно.
Подробнее см. руководство программиста.
value - Номер оператора (кассира):
 1 – Кассир 1.
 ...


 28 – Кассир 28.
29 – Администратор.
30 – Системный администратор
16. vsaranov 20.11.17 10:18 Сейчас в теме
Для установки нужных параметров в чеке, в скрипт нужно добавить:

# Имя и должность кассира
driver.put_FiscalPropertyNumber(1021)
driver.put_FiscalPropertyPrint(1)
driver.put_FiscalPropertyType(5)
driver.put_FiscalPropertyValue(u'Кассир: Иванова Мария Ивановна)
driver.WriteFiscalProperty()

# Email покупателя (ОФД отправит электронный чек)
driver.put_FiscalPropertyNumber(1008)
driver.put_FiscalPropertyPrint(1)
driver.put_FiscalPropertyType(5)
driver.put_FiscalPropertyValue(check_data['DocEmail'])
driver.WriteFiscalProperty()

# Применяемая система налогооблажения в чеке:
# ОСН - 1
# УСН доход - 2
# УСН доход-расход - 4
# ЕНВД - 8
# ЕСН - 16
# ПСН - 32
driver.put_FiscalPropertyNumber(1055)
driver.put_FiscalPropertyValue(1)
driver.put_FiscalPropertyType(1)
driver.WriteFiscalProperty()
17. parshin 75 20.11.17 14:45 Сейчас в теме
18. user930254 06.03.18 18:52 Сейчас в теме
А если касса локально (USB) подключена, как будет выглядеть conf.py?
19. parshin 75 29.03.18 12:00 Сейчас в теме
(18) Не могу ответить т.к. нет оборудования под рукой для проверки. Возможно придется дописывать скрипт.
Не совсем понимаю зачем использовать http-сервис, если касса подключена локально. Или вы используете ПО, которое не может работать с торговым оборудованием? Хотя может у вас стоит одна касса, а пробивать чеки нужно с нескольких рабочих мест.
20. FreeArcher 111 19.10.20 04:48 Сейчас в теме
Подскажите выполняю запрос в PostMan из документации:
127.0.0.1:16732/api/v2/serverInfo
Получаю ошибку

<ht ml>

<head>
    <met a http-equiv="Content-Type" content="text/html;charset=utf-8" />
    <title>Error 404 Not Found</title>
</head>

<body>
    <h2>HTTP ERROR 404</h2>
    <p>Problem accessing /api/v2/serverInfo. Reason:
        <pre>    Not Found</pre>
    </p>
    <hr><noindex><a class="is-fancybox" href="/redirect.php?url=aHR0cDovL2VjbGlwc2Uub3JnL2pldHR5" target="_blank" rel="nofollow">Powered by Jetty:// 9.4.9.v20180320
    <hr />

</body>

</html>
Показать



На все запросы такая ошибка.
Драйвер стоит у меня локально, ККТ подключена по сети на адресс 192.168.0.121:5555.
Здесь (http://127.0.0.1:16732/settings) настройки прописал.

Адрес 192.168.0.121:5555 пингуется и драйвер находит ККТ.

Что-то упустил, но не могу понять что, подскажите?
Может ещё кроме драйвера и веб сервера нужно поставить?
21. parshin 75 19.10.20 08:31 Сейчас в теме
(20)Здравствуйте!
Вы используете веб-сервер от Атол. Эта статья не имеет к нему отношения. Она была написана до того как Атол сделали свой веб-сервер.
Вот тут есть примеры работы https://infostart.ru/1c/articles/974680/
Или обратитесь с вопросом на форум Атол.
Оставьте свое сообщение

См. также

Принципы учета номенклатуры в конфигурациях УТ11 и ERP. Ошибки расчета себестоимости Промо

Управленческий учет (прочее) Бухгалтерский учет Оптовая торговля Учет ТМЦ Оптовая торговля Учет ТМЦ v8 ERP2 УТ11 КА2 УУ Бесплатно (free)

Основные регистры, используемые для учета номенклатуры в конфигурациях УТ11, КА2, ERP. Для чего используются все эти регистры, какие из них основные и какие вспомогательные. Основные ошибки в учете товаров и расчет себестоимости. Как проще находить и исправлять ошибки в учете.

06.01.2016    163258    ekaruk    80    

Как я убирал отрицательные остатки на втором регистре ЕГАИС

Розничная торговля Розничная и сетевая торговля (FMCG) Россия Акцизы Бесплатно (free)

Как и у многих, из-за катавасии с марками старого образца у нас вылезли отрицательные остатки крепкого алкоголя на втором регистре. Информации в интернете очень мало, и она некорректна. Причин этому может быть несколько, опишу одну из них. Параллельно обнаружилась огромная дыра в ЕГАИС, через которую вам на баланс могут любой контрафакт запихать.

14.05.2021    1347    altaro    7    

УТМ 4.x на Атол-HUB20

Розничная торговля ККМ Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Россия Бесплатно (free)

В январе 2021 года компания АТОЛ прекратила развитие проекта «HUB-УТМ». На сайте появилась прошивка для Атол-Hub20 с возможностью установки УТМ 4.x , но УТМ не стартует. Дело, похоже, в том, что в пакете УТМ драйверы Рутокена и Java предназначены для 32х битной системы, а сборка Armbian 64х битная. Запускаем УТМ4 путем подмены бинарников и библиотек Java и библиотеки PKCS#11.

06.04.2021    1751    Drowsy    20    

Штрафы за неприменение онлайн-касс

Кассовые операции Россия Бесплатно (free)

В 2021 году вступают в силу новые поправки в Налоговом Кодексе РФ (НК РФ) о штрафах за неиспользование и неприменение онлайн касс. Уполномоченными органами было принято решение о переносе всех норм и правил работы с ККТ из № 54-ФЗ РФ от 22.05.2003 г. Новые поправки вступают в силу с 01 января 2021 года.

19.03.2021    465    Koder_Line    3    

Кубик-рубик для деклараций 11 и 12 по данным 1С.Розница, ЕГАИС и других программ и источников. (Сбор/разбор деклараций на части и их анализ) Промо

Регламентированная отчетность Бухгалтерский учет Розничная торговля Розничная торговля v8::ОУ Розница Россия БУ УУ Бесплатно (free)

Рассмотрены самые сложные ситуации(даже когда все данные утеряны). Алкогольные декларации 11 и 12 по данным 1С.Розница и других программ и источников.(Сбор/разбор деклараций на части и их анализ). "Приготовление" деклараций с учетом заданных/требующихся входных/выходных параметров. Рассматриваем самые сложные(изначально кажущиеся безвыходными) ситуации. Подходит тем, кто окончательно запутался в связи с введением ЕГАИСа в розничное звено.

09.12.2016    22880    liginrambler    7    

Установка запрета продажи алкоголя в рознице

Розничная торговля Розничная и сетевая торговля (FMCG) Россия Бесплатно (free)

Простой способ установки и снятия запрета на продажу алкогольной продукции.

22.12.2020    858    independ    24    

Frontol 6. Настройка авторизации пользователей по QR-коду

Фискальный регистратор Роли и права Розничная и сетевая торговля (FMCG) Бесплатно (free)

Инструкция, как сгенерировать qr-коды для пользователей и как настроить вход по ним во Frontol 6. Рассчитана на администраторов, которые знакомы с программой Frontol, знают, как создаются пользователи в программе и как назначаются права для профилей пользователей. В этой инструкции я хочу подчеркнуть нюансы, с которыми можно столкнуться. Схема в этой инструкции работает и на Frontol 5.

12.12.2020    928    sc_digital    0    

Автоматизация магазина на Oracle Apex. Обзор аналога 1С Промо

Интеграция Розничная торговля Розничная торговля Бесплатно (free)

Как известно 1С - лидер в автоматизации учета в постсоветском пространстве. Есть ли достойные альтернативы (не дорогие, с возможностью конфигурирования, простые) ? Однозначно да ! Предлагаю Вашему вниманию обзор "буржуйской" технологии Oracle Apex

17.05.2013    61361    avhrst    295    

Автоматизация логистики: кейс компании-поставщика зоотоваров

Управление взаимоотношениями с клиентами (СRM) Монитор заказов Оптовая торговля Управление услугами и сервисом Управление торговлей v8 Платформа 1C v8.2 1cv8.cf УУ Бесплатно (free)

Лояльность клиентов напрямую зависит от организации и качества бизнес-процессов компании. С каждым годом спрос на услугу доставки товара "до двери" возрастает. поэтому если курьеры опаздывают или вовсе переносят доставку на другой день компания рискует потерять клиента или пожертвовать своим имиджем. В статье представлен актуальный кейс об оптимизации процесса доставки с помощью модуля логиста на базе системы 1С.

10.12.2020    1279    RAU IT    5    

Маркировка лекарственных препаратов. Часть вторая "Регистраторы выбытия"

Розничная торговля v8 1cv8.cf Фармацевтика, аптеки Россия УУ Бесплатно (free)

Данная статья является второй статьей в цикле, посвященном маркировке лекарственных препаратов. В данной статья я постараюсь поделиться собственным опытом работы с РВ, описанием работы с АПИ (для разработчиков), интересные моменты выявленные в ходе эксплуатации и уделить часть статьи пользователям, а именно ошибочным ситуациям и что с ними делать.

02.11.2020    6860    IssakN    50    

Модуль логиста: как обычная доработка стала тиражным решением

Управление взаимоотношениями с клиентами (СRM) Монитор заказов Розничная торговля Управление услугами и сервисом v8::ОУ 1cv8.cf УУ Бесплатно (free)

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

18.08.2020    2585    RAU IT    2    

Продажи без дублей по маркам. Сведение остатков в магазинах с остатками в ЕГАИС. Декларации по Форме 11 и Форме 12 по данным 1С.Розница 2.2 и др. программ и источников. Промо

Бухгалтерский учет Розничная торговля Розничная торговля v8 Розница Розничная и сетевая торговля (FMCG) Россия БУ УУ Бесплатно (free)

Для выбора интересующего пункта используйте нажатие кнопок меню(внизу публикации) 1) Сводим остатки алкоголя в ЕГАИС без остановки продаж в магазинах. 2) Включаем онлайн-контроль дублей марок при продажах. 3) Алкогольные декларации по Форме 11 и Форме 12 по данным 1С.Розница 2.2 и других программ и источников.(Сбор/разбор деклараций на части и их анализ). "Приготовление" деклараций с учетом заданных/требующихся входных/выходных параметров. Рассматриваем самые сложные ситуации. Подходит тем кто окончательно запутался в связи с введением ЕГАИСа в розничное звено.

18.11.2016    33378    liginrambler    12    

Использование новых драйверов ККТ в старых конфигурациях

Кассовые операции Россия Бесплатно (free)

Нужны новые драйвера ККТ, но нет возможности обновить 1С? Есть решение!

11.08.2020    2316    sivin-alexey    2    

Если ККМ Атол + 1С Розница тормозит при печати чеков по сети, или экономим на покупке ККТ и ФР

Розничная торговля Адаптация типовых решений ККМ v8 Розница УТ11 Россия Бесплатно (free)

Очень медленная работа с ККТ по Tcp/ip или Как заставить две клиентских Розницы 1С печатать чеки на одной кассе ККТ онлайн Предыстория и чем все закончилось.

01.07.2020    5233    lepihin    11    

Код транспортной упаковки (SSCC)

Оптовая торговля Оптовая торговля, дистрибуция, логистика Легкая промышленность, мода и одежда УУ Бесплатно (free)

Формирование серийного кода транспортной упаковки SSCC при маркировке обуви и текстиля.

27.06.2020    7211    rosi    9    

Будни автоматизации или "мне нужна программка для 3D упаковки" Промо

Практика программирования Математика и алгоритмы Оптовая торговля Оптовая торговля v8 1cv8.cf УУ Бесплатно (free)

Автоматизация отечественных предприятий, которой приходиться заниматься, это нужная и высокооплачиваемая, но довольно нервная работа. Выручает юмор. Например, при общении с требовательным клиентом можно вспомнить анекдот: "Держась руками за стену, на ногах еле стоит мужик. К нему пристает ребенок: "Ну, папа, пожалуйста, сделай мне кораблик!", папа отвечает: "Ага! - Сейчас все брошу и пойду делать тебе кораблик!". Про один такой сделанный для клиента "кораблик" и хочется рассказать. Надеюсь, совместное погружение в теплое ламповое (то есть клиентоориентированное) программирование доставит Вам положительные эмоции, да и задача попалась интересная. Поплыли?

24.03.2014    45920    ildarovich    116    

Маркировка лекарственных препаратов. Часть первая "Быстрая интеграция"

Интеграция Розничная торговля v8 1cv8.cf Фармацевтика, аптеки Россия УУ Бесплатно (free)

Данный цикл будет посвящен маркировке лекарственных препаратов (далее ЛП), нюансам работы с "1С: Библиотека интеграции с МДЛП", доступной для скачивания на сайте ИТС, методиками работы с регистраторами выбытия, и проблемам, с которыми пришлось столкнуться при интеграции. Эта статья будет представлять из себя краткую инструкцию, что делать, когда маркировка уже близко и необходимо быстро внедрить ее. Надеюсь, она станет подспорьем в данной задаче. Будут приведены рекомендации, как в короткие сроки с минимально необходимой функциональностью и минимумом чтения документации произвести интеграцию библиотеки МДЛП и выполнить начальные настройки. Также будут даны рекомендации по быстрым, но важным, на мой взгляд, доработкам.

23.06.2020    8189    IssakN    32    

Пошаговая инструкция для регистрации онлайн-кассы

ККМ Фискальный регистратор Бесплатно (free)

Начнем с того, что перед регистрацией онлайн-кассу нужно купить. Если вы только собираетесь сделать покупку, то обязательно проверьте наличие указанной модели в реестре контрольно-кассовой техники, также проверьте в реестре фискальных накопителей на сайте ФНС России модель фискального накопителя, входящего в состав кассы. Кроме всего прочего, вам понадобится договор с оператором фискальных данных (ОФД) и sim-карта, если вы приобрели так называемую «умную» кассу, например, на платформе Android.

13.06.2020    1772    Koder_Line    0    

Состояния заказов клиентов

Оптовая торговля Монитор заказов v8::ОУ УТ11 Россия УУ Бесплатно (free)

Конфигурация «Управление торговлей, редакция 11 (11.4.11.104)». Регистр сведений «Состояния заказов клиентов». Описание и устройство.

27.05.2020    5815    totchaz    15    

Практические вопросы внедрения и развития автоматизации склада. Часть 2 Промо

Управление бизнес-процессами (BPM) Оптовая торговля Оптовая торговля 1С:Франчайзи, автоматизация бизнеса УУ Бесплатно (free)

Слайды к докладу на секции "Складские технологии" в малом зале на IEE-2013. Пример автоматизации склада по "бюджетному" варианту с использованием ТСД+RDP.

26.03.2015    32101    CheBurator    34    

"Микро-WMS": базовая WMS с упрощенной архитектурой, открытым кодом на PostgreSQL и клиентами на SimpleUI

Учет ТМЦ Оптовая торговля Терминал сбора данных УУ Бесплатно (free)

В статье приведен обзор простой, но функциональной SQL-ориентированной WMS с открытым кодом, базирующейся на бесплатных платформах от инфраструктуры СУБД и до клиентов, которая может послужить базой для своих разработок и внедрений. Решение можно развернуть на своем сервере или облаке(развернуть как «облачную WMS»). Статья может быть полезна с той точки зрения, что показывает "анатомию" WMS - как все устроено.

12.05.2020    4407    informa1555    13    

Как разрешить продажу по нулевой цене, или 100%-ная скидка. Простые примеры (КА 2.4, а также ERP 2.2 и УТ 11.4)

Практика программирования Оптовая торговля Розничная торговля Ценообразование, анализ цен v8 ERP2 УТ11 КА2 Россия УУ Бесплатно (free)

Акции, бонусы, подарки, бесплатные буклеты... Это ограничено 1С и НК, но это очень хочется иметь в управленческой базе. При этом не хочется снимать программу с поддержки. Легко.

06.05.2020    6273    ne_en    18    

Расширение типового функционала работы с ККМ в 1с Розница 1.0 (добавление произвольного количества типов оплаты) Промо

ККМ v8 Розница Бесплатно (free)

У одного клиента,занимающегося розничной торговлей, появилась необходимость разделять продажи по типам оплаты в Z-отчете с бОльшим разнообразием,чем позволяет типовой функционал работы с ТО. Т.е. стандартную разбивку на наличную и безналичную оплату расширить до нал,оплата по платежным картам(безнал),банковским кредитам.В то же время исключить кредит из секции «оплата по безналу». Почему возникла такая потребность?Все просто,в бэк-офисе так проще сверять Отчет о розничных продажах с Z-отчетом.

28.02.2013    50951    ranger    17    

Видеоаналитика в магазинах. Маркетинговый тренд или необходимость в новом цифровом мире?

Розничная торговля Розничная и сетевая торговля (FMCG) УУ Бесплатно (free)

Видеоаналитика – это интеллектуальный анализ видеопотока с камер при помощи методов компьютерного зрения. Как применять систему видеоаналитики для повышения эффективности торгового предприятия, в своем докладе на конференции Infostart Event 2019 Inception рассказал директор по развитию CVizi Алексей Осипов.

20.04.2020    4055    osipov_cvizi    3    

Переход на поштучный учет алкогольной продукции, оклеенной старыми марками. Почему необходима одноразовая постановка старых марок на баланс в пределах одной Справки А?

Оптовая торговля Розничная торговля Рестораны, кафе и фаст-фуд Пищевая промышленность Россия БУ УУ Акцизы Бесплатно (free)

В целях полного перехода на поштучный учет алкогольной продукции в ЕГАИС, Росалкогольрегулирование сообщает, что с 01.07.2020 учет оборота всей маркируемой алкогольной продукции будет возможен только в поштучном режиме. Какие проблемы ожидают программистов и пользователей, если выполнять операцию регистрации старых марок частями?

16.04.2020    4877    EvgeTrofi    19    

Подключение ККТ РИТЕЙЛ-01Ф к приложению Delphi

Фискальный регистратор Россия Бесплатно (free)

В далеком 2011 году была написана программа для кассы в Delphi 7. Функционал незначительно за это время изменился, но вдруг бухгалтерия решила приобрести ККТ РИТЕЙЛ-01Ф. Переходить на другой программный продукт не было ни, желания ни времени. Было принято решение привязать данный аппарат к готовому ПО.

19.03.2020    1849    GubinDenis    2    

5 шагов по изменению резервирования товаров в УТ 11.4

Оптовая торговля Практика программирования v8::ОУ v8::УФ УТ11 Россия УУ Бесплатно (free)

Планируйте, меняйте подходы, делайте качественно и регулярно, и получите результат.

19.03.2020    5278    Igorro82IT    16    

Программирование в Штрих-М Кассир 5

Практика программирования Розничная торговля v8 1cv8.cf Бесплатно (free)

Методы и свойства для программирования в Штрих-М Кассир 5.

13.03.2020    4189    Ignatov_mu    2    

Маркировка товаров. Что важно знать?

Оптовая торговля Розничная торговля Россия Бесплатно (free)

В последнее время всё большее внимание уделяется вопросу организации маркировки товаров. Связано это преимущественно с тем, что всё большее количество товаров требует наличие обязательной маркировки. В этой публикации мы обсудим вопрос обязательной маркировки, грядущие изменения в этом вопросе со стороны законодательства и технологии, которые используются сегодня.

26.02.2020    4026    VachKirp    4    

Интеркампани в УТ 3.0 для Украины Промо

Комиссионная торговля Оптовая торговля Розничная торговля Бухгалтерский учет Комиссионная торговля Оптовая торговля Розничная торговля v8 УТ10 Украина УУ Бесплатно (free)

Вот, вот уже скоро выйдет долгожданная конфигурация «Управление торговлей для Украины» третьей редакции. Одной из фишек, которую ждут пользователи версии 2.3, является интеркампани, которую и будем обсуждать в нижележащей статье. Господа, кому интересно - прошу под кат.

31.01.2013    25123    akomar    10    

Маркировка лекарств - как передать код маркировки при продаже через ККТ Штрих-М

Практика программирования ККМ v7.7 Здравоохранение, медицина, стоматология Фармацевтика, аптеки Россия Бесплатно (free)

Пример программного кода для вывода чеков на ККМ Штрих-М с передачей информации о маркированных товарах (лекарства).

10.02.2020    11738    vovaapril    34    

Маркировка обуви и других нетабачных и немолочных категорий товаров. Без паники

Оптовая торговля Розничная торговля Россия УУ Бесплатно (free)

Тезисно. Для тех, кто с этим связан. Разбираемся вместе. Добавлен раздел для разработчика

08.02.2020    48057    Rustig    143    

Про маркировку обуви БЕЗ подробностей и чётких инструкций для небольшого розничного магазина - мнение НЕ эксперта :-)

Розничная торговля Розничная и сетевая торговля (FMCG) Россия Бесплатно (free)

Наша организация импортёр обуви, клиенты есть разные и крупные типа wildberries и небольшие розничные магазины ИП на пару сотрудников. Вот для небольших розничных магазинов я и написал эту статью, при этом у нас всё сделано "по серьёзному", а пишу я про то, чем ни разу не пользовался :-)

28.01.2020    8726    Mx00    58    

Сложное ранжирование клиентов по классам Промо

Управление взаимоотношениями с клиентами (СRM) Оптовая торговля Розничная торговля Управленческие Управление взаимоотношениями с клиентами (СRM) Оптовая торговля Розничная торговля v8 УТ10 Россия УУ Бесплатно (free)

Пример реализации усложненной ABC-классификации клиентов. Данная статья написана для конфигурации "1С: Управление торговлей, ред. 10.3", но, я думаю, предложенный метод подойдет и для других конфигураций, имеющих механизм ABC-классификации.

28.03.2012    23873    charushkin    9    

Одна ККТ для розничного магазина и Интернет-сайта

Розничная торговля ККМ WEB v8 Россия Бесплатно (free)

Опыт использования одной онлайн-кассы для приема платежей в розничном магазине и на Интернет-сайте: технические подробности.

23.01.2020    8334    sivin-alexey    15    

ККТ не зарегистрирована с указанной СНО. Не фискализированная ККТ!

ККМ Бесплатно (free)

Если не фискализированный ККТ выдает ошибку. "ККТ не зарегистрирована с указанной СНО." Как решить?

18.11.2019    32417    Torin    48    

Простая модель товародвижения

Оптовая торговля УУ Бесплатно (free)

Предлагается простая модель товародвижения оптово-розничной торговой фирмы в 3+1 "стандартных" цветах RGB+D для построения своих бизнес-моделей для последующего "превращения" их в объекты 1С.

12.11.2019    3248    Serg O.    0    

Облачные кассы и 1С. Интеграция, которой не было

Интеграция Кассовые операции Россия Бесплатно (free)

В кейсе расскажем о сценариях работы с арендованными онлайн-кассами (облачными кассами). Приведем общую схему работы, удовлетворяющую требованиям закона. Опишем интересное нетиповое решение интеграции с 1С.

24.09.2019    10431    antonovintervolga    17    

Подключение АТОЛ 91/92Ф к 1С:Касса

ККМ Кассовые операции Кассовые операции v8 1cv8.cf Россия Бесплатно (free)

Т.к. я не нашел данной информации в гугле (возможно, плохо искал), решил, что нужно оставить эту статью здесь, может, поможет кому.

10.09.2019    15369    rule_2    8    

Информационные системы в оптовой торговле. Часть 5. Казначейский учет

Управленческий учет (прочее) Банковские операции Финансовый учет и бюджетирование (FRP) Дебиторская и кредиторская задолженность Кассовые операции Оптовая торговля Банковские операции Финансовый учет и бюджетирование (FRP) Дебиторская и кредиторская задолженность Кассовые операции Оптовая торговля Россия БУ УУ Бесплатно (free)

Учет денежных средств - это раздел, в котором, усиливая меры контроля, нельзя перегнуть палку. Соблазны украсть такие сильные, а последствия неприятные, что проще тщательно следить, чем исправлять возникшие проблемы.

09.09.2019    4310    Ликреонский    12    

Создание номенклатуры в 1С: Розница 8. Ювелирный магазин

Пользователю системы Бухгалтерский учет Розничная торговля Розничная торговля v8 Розница Ювелирная промышленность и торговля Россия УУ Бесплатно (free)

Создание номенклатуры в Розница 8. Ювелирный магазин, редакция 2.2 (2.2.13.11) с использованием правил именования номенклатуры.

02.09.2019    9251    StAn1988    0    

ЕГАИС от А до Я

Пользователю системы Оптовая торговля Розничная торговля Оптовая торговля Розничная торговля Россия БУ Акцизы Бесплатно (free)

Данная статья описывает не очевидное и не документированное поведение ЕГАИС. То, чего нет в документации по УТМ.

28.08.2019    34929    goleaff2006    19    

Решение проблем с сетевым ключом защиты для Штрих-М: Торговое предприятие 5

Администрирование данных 1С Розничная торговля Розничная торговля v8 1cv8.cf Розничная и сетевая торговля (FMCG) Россия УУ Бесплатно (free)

Штрих-М: Торговое предприятие 5 имеет свой ключ защиты, который проверяет сразу после запуска базы. Если вы увидели сообщение "ключ не найден", материал в этой статье может помочь решить вашу проблему.

21.08.2019    10770    Van2507    7    

Информационные системы в оптовой торговле. Часть 4. Склад

Бухгалтерский учет Оптовая торговля Учет ТМЦ Оптовая торговля Учет ТМЦ Оптовая торговля, дистрибуция, логистика Россия УУ Бесплатно (free)

Хранение товаров и их учет позволяет добиться успеха и избежать неприятностей, связанных с хищением товаров.

12.08.2019    5339    Ликреонский    2    

Чеки ККМ для расчетов с ИП по безналу. Новые обязательные реквизиты в чеке

Практика программирования ККМ Оптовая торговля Оптовая торговля Разработка v8 v8::ОУ УТ11 УУ Бесплатно (free)

Новые требования законодательства по пробитию чеков ККМ при расчетах с индивидуальными предпринимателями по безналу. Нюансы подключения интеграционной компоненты ДТО 10.5.0 на примере кассы ККТ АТОЛ 11Ф и конфигурации 1С УТ 11.4. Необходимые доработки типовой конфигурации УТ 11.4 для вывода на печать новых обязательных реквизитов: покупатель, ИНН, ГТД, страна происхождения.

22.07.2019    17343    ids79    16    

Маркировка табака. Формирование тега 1162 "код товара" для передачи в ККТ и ОФД

Практика программирования Розничная торговля Розничная торговля Разработка v8 1cv8.cf Розничная и сетевая торговля (FMCG) Россия Бесплатно (free)

С 01.07.2019 стартует новый этап маркировки сигарет. Теперь в кассе обязательно надо будет считывать марку с пачек табака, если она там есть. Считывать и передавать в ОФД через тег 1162 в онлайн-кассе. А как сформировать данные этого тега? Не все так просто...

27.06.2019    16632    kirlog    59    

Система питания в офисе: как совместить вендинговые автоматы, 1С, облачную кассу и веб-технологии

Интеграция Розничная торговля Розничная торговля v8 1cv8.cf Розничная и сетевая торговля (FMCG) Россия УУ Бесплатно (free)

В начале 2019 года тенденция развития автоматов питания в России привела к появлению проекта нового формата питания на работе — МикроМаркета “Го!Поедим”. Потребовалось создать новый формат зоны питания сотрудников: интегрировать в офисные кухни полноценные МикроМаркеты с бесконтактной оплатой, кофе-машинами, лаунж-зоной. Если правильно совместить вендинговые автоматы, облачную кассу, 1С и веб-технологии, то в результате будут не только сытые сотрудники, но и корректная работа всей системы офисного питания.

22.06.2019    7233    antonovintervolga    6