Обмен iiko с 1С:Бухгалтерией: продажи, склад и справочники без ручного ввода
Содержание
Выгрузить данные из iiko в 1С можно тремя способами: модулем обмена от iiko или партнёра, обработкой в 1С, которая забирает данные через iiko API, или вручную — отчётом iikoOffice в Excel и загрузкой файла в документ 1С. Для ресторана с ежедневными продажами подходит только автоматический обмен, ручная загрузка годится для разового переноса справочников.
Главная боль — не сама выгрузка, а расхождения: одно блюдо заведено в двух программах под разными названиями, склады не совпадают, выручка в 1С не бьётся с кассой. Ниже — порядок настройки, при котором номенклатура, документы продаж и движения склада переходят в 1С без ошибок.
Подготовка к интеграции iiko и 1С: способ обмена и схема учёта
До настройки решите один вопрос: где ведётся складской учёт. От ответа зависит, какие документы вообще нужно переносить.
| Схема | Что ведёт iiko | Что получает 1С | Кому подходит |
|---|---|---|---|
| Склад в iiko | Техкарты, списание по продажам, себестоимость | Поступления, сводные продажи, акты списания с себестоимостью | Большинству ресторанов и сетей |
| Склад в 1С | Только касса и меню | Продажи блюд, всё остальное считает 1С по спецификациям | Производствам, где 1С — основная система |
| Только деньги | Всё | Выручка по видам оплат | Микропредприятиям на упрощёнке «доходы» |
Чаще всего выбирают первую схему. iiko уже знает, сколько граммов говядины ушло на стейк, и дублировать техкарты в 1С нет смысла.
Что подготовить заранее
- 🔑 Лицензию на модуль обмена или учётную запись iiko с правом доступа к API. Каждая авторизация в API занимает подключение к серверу iiko.
- 🖥️ Адрес сервера iiko: для локальной установки это имя компьютера и порт (часто 8080), для облачного — внешний адрес с HTTPS.
- 📚 Актуальную конфигурацию 1С. Пример ниже — 1С:Бухгалтерия предприятия 3.0, интерфейс «Такси».
- 📅 Дату начала обмена. Всё, что раньше, переносится один раз остатками.
Первую выгрузку делайте в копию базы 1С. Ошибка в сопоставлении создаёт сотни дублей номенклатуры, и чистить их в рабочей базе долго.
Сравнение способов выгрузки
| Способ | Когда | Риски |
|---|---|---|
| Модуль обмена iiko | Сеть, много точек, нужна поддержка вендора | Платная лицензия, ограниченная настройка правил |
| Обработка 1С + iiko API | Нужны свои правила: сводные документы, отбор по складам | Нужен программист 1С, поддержка при обновлениях |
| Excel из iikoOffice | Разовый перенос справочников или остатков | Ручной труд, ошибки при копировании |
Сопоставление номенклатуры, складов и контрагентов при выгрузке в 1С
Обмен ломается на справочниках, а не на документах. Пока товары, склады и поставщики не связаны, любой документ упадёт с ошибкой или создаст новые элементы.
Правило: связь по идентификатору, а не по названию
У каждого объекта iiko есть уникальный идентификатор (GUID). Сохраните его в 1С — в дополнительном реквизите номенклатуры или в отдельном регистре сопоставления. Дополнительные реквизиты включаются в Администрирование → Общие настройки → Дополнительные реквизиты и сведения.
Если связывать по наименованию, первое же переименование «Капучино 0,3» в «Капучино 300 мл» создаст в 1С новый товар. Остатки и себестоимость разъедутся.
Что сопоставлять
Тонкие места справочников
- 🧂 Единицы измерения. В iiko сырьё часто в килограммах, а поставщик возит в штуках или упаковках. Решите, в какой единице товар живёт в 1С, и задайте коэффициент один раз.
- 🍽️ Модификаторы. «Двойной сироп» или «без лука» в 1С отдельной строкой не нужны. Их стоимость уже входит в сумму блюда в продажах.
- 🏢 Контрагенты. Сопоставляйте по ИНН и КПП. У одного поставщика может быть несколько карточек в iiko — в 1С это один контрагент.
- 🧾 Ставки НДС. Ресторан на общей системе или на УСН с НДС должен видеть ставку в каждой строке продаж. Если в iiko ставка не заполнена у части блюд, исправьте это до запуска обмена.
Перед первым обменом выгрузите номенклатуру iiko в Excel и пройдитесь фильтром по пустым единицам и ставкам. Пустые поля, найденные сейчас, не всплывут потом ошибками проведения.
Выгрузка продаж из iiko в 1С за смену
Продажи переносят сводно за смену или за день по каждой точке, а не по чекам. Ресторан пробивает 300–800 чеков в день: если грузить каждый, база 1С распухнет, а проверять такой поток бессмысленно.
Какие документы получаются в 1С:Бухгалтерии
- Отчёт о розничных продажах (
Продажи → Отчёты о розничных продажах) — один документ на точку за смену. В табличной части — проданные позиции с количеством и суммой. - Оплаты картами — на вкладке безналичных оплат того же отчёта либо отдельной операцией в
Банк и касса → Операции по платёжным картам. Выручка по картам идёт через счёт 57.03. - Выемка наличных — расходный кассовый ордер на сдачу инкассации, если деньги сдаются в банк.
Склад в отчёте о розничных продажах должен иметь тип «Розничный магазин». Иначе программа не даст выбрать его в документе.
Порядок закрытия смены
- Закройте кассовую смену на всех кассах точки в iiko.
- Убедитесь, что в iiko нет чеков с незавершённой оплатой и неразнесённых возвратов.
- Запустите выгрузку за дату смены. Один день — один запуск, так проще найти сбой.
- Сверьте итог отчёта о розничных продажах в 1С с Z-отчётом кассы: общая сумма, наличные, карты.
- Проведите документ. Если склад ведётся в iiko, вместе с продажами выгружаются данные о себестоимости.
Пример сверки
За 12 октября касса показала 186 400 ₽: наличными 41 200 ₽, картами 145 200 ₽. В 1С отчёт о розничных продажах должен дать те же 186 400 ₽, а сумма оплат картами — 145 200 ₽. Расхождение на сумму одного чека почти всегда означает возврат, пробитый после закрытия смены.
Возвраты и скидки
Возврат в день продажи iiko сам вычитает из выручки смены. Возврат на следующий день — отдельная операция: в 1С это возврат от розничного покупателя, а не минус в отчёте другого дня.
Скидки и бонусы программ лояльности выгружайте уже вычтенными из суммы строки. 1С нужна фактическая выручка, а не прайсовая цена.
Синхронизация складских остатков и движений товаров
Если склад ведёт iiko, в 1С уходят только документы, которые меняют бухгалтерские остатки. Внутренняя кухонная жизнь — акты приготовления, перемещения между кухней и баром — нужна бухгалтерии не всегда.
| Документ iiko | Документ 1С | Выгружать |
|---|---|---|
| Приходная накладная | Поступление (акты, накладные, УПД) | Всегда |
| Возврат поставщику | Возврат товаров поставщику | Всегда |
| Акт списания (порча, бой, представительские) | Списание товаров | Всегда, с причиной |
| Внутреннее перемещение | Перемещение товаров | Если склады в 1С разделены |
| Инвентаризация | Инвентаризация товаров, затем оприходование или списание | По итогам, сводно |
| Списание по продажам (расход сырья по техкартам) | Списание или требование-накладная на себестоимость | Сводно за период |
Входящие накладные: главное правило
Поставщик присылает УПД через ЭДО прямо в 1С. Если тот же документ придёт ещё и из iiko, поступление задвоится. Выберите один источник:
- 📥 ЭДО — главный. Накладная приходит в 1С, а iiko получает приход своим путём. Из iiko накладные в 1С не выгружают.
- 📤 iiko — главный. Повар или управляющий принимает товар в iiko, и в 1С поступление создаёт обмен. Входящий документ ЭДО в 1С тогда связывают с уже созданным поступлением, а не создают новое.
Остатки на старте
На дату начала обмена сделайте инвентаризацию в iiko. Её результат перенесите в 1С вводом остатков или документом оприходования. Сверяйте остатки в 1С отчётом «Оборотно-сальдовая ведомость по счёту» по счетам 10 и 41 с разбивкой по складам.
Выгрузка из iiko через API: как устроен автоматический обмен
Сервер iiko отдаёт данные по HTTP. Обработка в 1С по расписанию забирает справочники и отчёты и создаёт документы. Это основа большинства самописных и партнёрских решений.
Схема запросов
- Авторизация:
GET /resto/api/auth?login=<логин>&pass=<SHA1 пароля>— в ответе приходит токен. - Запросы данных с параметром
key=<токен>: номенклатура —/resto/api/products, склады —/resto/api/corporation/stores, продажи и расход — OLAP-отчёт/resto/api/v2/reports/olap. - Выход:
/resto/api/logout?key=<токен>.
Обязательно закрывайте сессию logout. Незакрытые токены занимают подключения к серверу iiko, и в какой-то момент обмен или сами пользователи iikoOffice перестанут подключаться.
Пример авторизации из 1С
Функция ПолучитьТокенIiko(Сервер, Логин, Пароль) Экспорт
Хеширование = Новый ХешированиеДанных(ХешФункция.SHA1);
Хеширование.Добавить(Пароль);
ХешПароля = НРег(ПолучитьHexСтрокуИзДвоичныхДанных(Хеширование.ХешСумма));
Соединение = Новый HTTPСоединение(Сервер, 443, , , , 30, Новый ЗащищенноеСоединениеOpenSSL);
Адрес = "/resto/api/auth?login="
+ КодироватьСтроку(Логин, СпособКодированияСтроки.КодировкаURL)
+ "&pass=" + ХешПароля;
Ответ = Соединение.Получить(Новый HTTPЗапрос(Адрес));
Если Ответ.КодСостояния <> 200 Тогда
ВызватьИсключение СтрШаблон("iiko: авторизация не прошла, код ответа %1", Ответ.КодСостояния);
КонецЕсли;
Возврат СокрЛП(Ответ.ПолучитьТелоКакСтроку());
КонецФункции
Для локального сервера без HTTPS уберите параметр защищённого соединения и укажите порт сервера iiko. Полный список методов и форматов ответа — в документации iiko API у вендора.
Расписание
Обмен запускают регламентным заданием 1С ночью, после закрытия всех смен. Окно с 4:00 до 6:00 удобно: смены закрыты, бухгалтерия ещё не работает.
Храните в 1С дату последней успешной выгрузки по каждой точке. Если ночной обмен упал, следующий запуск сам догрузит пропущенные дни.
Ошибки обмена iiko с 1С и журнал выгрузки
Каждый запуск обмена должен оставлять след: дата, точка, сколько документов создано, что не загрузилось и почему. В 1С сообщения пишут в Администрирование → Обслуживание → Журнал регистрации или в отдельный регистр журнала обмена.
Что защищает от повторной выгрузки
- 🔁 Обмен ищет документ в 1С по идентификатору документа iiko и обновляет его, а не создаёт второй.
- 🔒 Закрытый период защищают датой запрета изменения данных. Тогда случайная перевыгрузка марта в июле не испортит сданную отчётность.
- 📝 Документы обмена помечают в комментарии: «Загружено из iiko, смена 12.10, точка Ленина 5». Так их легко найти отбором списка.
Выгрузка данных iiko в облачную 1С
Облачная 1С работает так же, но меняется вопрос «кто к кому подключается».
1С:Фреш и сервисы по модели SaaS
- 🌐 1С в облаке не видит ваш локальный сервер iiko. Серверу нужен внешний адрес с HTTPS — у облачной iiko он есть по умолчанию.
- 🧩 Своя обработка загружается через
Администрирование → Печатные формы, отчёты и обработки → Дополнительные отчёты и обработки. В сервисе провайдер может требовать проверку обработки перед подключением — закладывайте на это время. - ⏱️ Регламентное задание в SaaS запускается по расписанию сервиса, а не точно в назначенную минуту.
Аренда сервера с 1С (готовое рабочее место, свой VPS)
Здесь ограничений меньше: это обычная файловая или клиент-серверная база, только на удалённой машине. Обработка и регламентные задания работают так же, как в локальной 1С. Проверьте только доступ с сервера 1С к серверу iiko — это сетевой вопрос, а не вопрос 1С.
Логин и пароль iiko для обмена не храните в тексте обработки. Заведите в iiko отдельного пользователя только с правами на чтение, а пароль держите в безопасном хранилище 1С или в настройках обмена с ограниченным доступом.