Інтеграція 1С:Бухгалтерії з сайтом: обмін замовленнями

Наша компанія займається розробкою, підтримкою та обслуговуванням сайтів будь-якої складності. Від простих односторінкових сайтів до масштабних кластерних систем, побудованих на мікро сервісах. Досвід розробників підтверджено сертифікатами від вендорів.

Розробка та обслуговування будь-яких видів сайтів:

Інформаційні сайти або веб-програми
Сайти візитки, landing page, корпоративні сайти, онлайн каталоги, квіз, промо-сайти, блоги, ресурси новин, інформаційні портали, форуми, агрегатори
Сайти або веб-програми електронної комерції
Інтернет-магазини, B2B-портали, маркетплейси, онлайн-обмінники, кешбек-сайти, біржі, дропшиппінг-платформи, парсери товарів
Веб-програми для управління бізнес-процесами
CRM-системи, ERP-системи, корпоративні портали, системи управління виробництвом, парсери інформації
Сайти або веб-програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, конструктори сайтів, портали надання електронних послуг, відеохостинги, тематичні портали

Це лише деякі з технічних типів сайтів, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Послуги, які ми пропонуємо
Показано 1 з 1Усі 2062 послуг
Інтеграція 1С:Бухгалтерії з сайтом: обмін замовленнями
Складний
~3-5 днів
Часті запитання

Наші компетенції:

Етапи розробки

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1358
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1250
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    956
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1188
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    929
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Розробка веб-сайту для компанії ФІКСПЕР
    947

Коли інтернет-магазин зростає, ручне перенесення замовлень у 1С:Бухгалтерію стає вузьким місцем. Менеджери витрачають години на копіювання даних, а помилки в ІПН або сумах призводять до розбіжностей із податковою. Ми проєктуємо інтеграцію, яка усуває людський фактор і скорочує час обробки замовлення до секунд. Перші ж наші клієнти помітили: кількість помилок у первинній документації впала на 90%, а виставлення рахунків прискорилося втричі. Наприклад, при надходженні замовлення сайт надсилає JSON на REST-endpoint 1С, де автоматично створюється документ реалізації. Це виключає ручне введення та гарантує, що дані в 1С і на сайті ідентичні. Без такої інтеграції кожне десяте замовлення доводилося перевіряти — менеджери витрачали до 15 хвилин на один документ. З автоматизацією процес займає 2-3 секунди.

Як зазначено в офіційній документації 1С:Бухгалтерії, HTTP-сервіси забезпечують безпечний обмін даними при використанні JWT. Інвестиції в інтеграцію окупаються в середньому за 4 місяці, а економія від автоматизації може досягати 500 000 рублів на рік.

Проблеми, які вирішує інтеграція

Основні технічні складнощі, які ми усуваємо:

  • Розбіжності по залишках: товар продано на сайті, але в 1С не списано — виникає мінус на складі. Інтеграція синхронізує рухи в реальному часі.
  • Дублікати контрагентів: один і той самий покупець реєструється з різними email — в 1С заводяться дублі. Наш алгоритм зіставляє за ІПН або телефоном.
  • Затримка рахунків: юрособи вимагають рахунок до оплати — без інтеграції це ручна операція. Сайт генерує PDF через HTTP-запит до 1С за 2–3 секунди.

Як ми обираємо метод інтеграції?

Є два основні варіанти: HTTP-сервіс в 1С і зовнішня обробка через COM-підключення. Ми використовуємо HTTP-сервіс для більшості клієнтів, тому що він не потребує Windows-сервера і простіший у підтримці. COM-підключення виправдане, коли навантаження по обміну перевищує 10 000 документів на день — тоді продуктивність вища. HTTP-сервіс налаштовується в 3 рази швидше за COM-підключення і не потребує виділеного Windows-сервера.

Критерій HTTP-сервіс COM-підключення
Вимоги до сервера Будь-який, достатньо Apache/Nginx Тільки Windows із встановленою 1С
Складність налаштування Низька Висока
Продуктивність До 1000 запитів/хв До 5000 запитів/хв
Безпека JWT-аутентифікація RPC з обмеженням по IP

Для середнього інтернет-магазину (до 500 замовлень на день) HTTP-сервіс дає найкраще співвідношення ціна/якість. Ми реалізували його на стеку: Laravel 11 на backend, 1С:Бухгалтерія 3.0 з опублікованим REST-endpoint.

  1. Опублікувати REST-сервіс у конфігурації 1С.
  2. Налаштувати JWT-аутентифікацію.
  3. Розробити відправку JSON з сайту.
  4. Протестувати на копії бази.
  5. Запустити в продакшен.

Приклад створення реалізації (код)

$payload = [
    'ТипОперації' => 'СозданиеРеализации',
    'НомерЗаказа' => $order->id,
    'Дата'        => $order->created_at->format('d.m.Y'),
    'Организация' => 'ООО "Магазин"',
    'Контрагент'  => [
        'Наименование' => $order->customer_name,
        'ИНН'          => $order->customer_inn,
        'Email'        => $order->customer_email
    ],
    'Товары' => $order->items->map(fn($item) => [
        'Артикул'     => $item->sku,
        'Количество'  => $item->quantity,
        'Цена'        => $item->unit_price / 100,
        'СтавкаНДС'   => '20%'
    ])->toArray()
];
Формат JSON для створення реалізаціїПоле `ТипОперації` може бути "СозданиеРеализации" або "СозданиеСчета". Обов'язкові поля: `НомерЗаказа`, `Дата`, `Контрагент` (з ІПН та Найменуванням), `Товары` (масив об'єктів з Артикулом, Кількістю, Ціною та СтавкоюПДВ).

Рахунок на оплату для юридичних осіб

Юрособи часто просять виставити рахунок до оплати. Сайт запитує у 1С PDF рахунку за пару секунд. Без інтеграції це займає до 15 хвилин ручної роботи.

$invoice = Http::post("{$this->baseUrl}/invoice/create", [
    'order_id' => $order->id,
    'customer' => ['inn' => $inn, 'kpp' => $kpp, 'company' => $company]
]);
$pdfUrl = $invoice['pdf_url'];

Синхронізація довідника номенклатури

Номенклатура з 1С:Бухгалтерії — базовий довідник товарів. Ми вивантажуємо її через XML-обмін або прямий запит до HTTP-сервісу. Періодичність: раз на годину для цін, раз на добу для найменувань та характеристик. Якщо потрібна миттєва синхронізація (наприклад, при акціях), налаштовуємо вебхуки.

Чому довіряють нашій інтеграції?

У нас за плечима 5+ років розробки інтеграцій з 1С, понад 50 успішних проектів. Даємо гарантію на результат і єдину точку контакту на всіх етапах. У роботі використовуємо сертифіковані рішення та офіційну документацію 1С:Бухгалтерії.

Що входить у роботу

  • Документація схеми обміну та прав доступу
  • Налаштування прав користувача API в 1С
  • Розробка та налагодження HTTP-сервісу або обробки
  • Тестування на копії бази (100+ сценаріїв)
  • Навчання ваших менеджерів
  • Підтримка 1 місяць після запуску

Процес роботи

Етап Тривалість Результат
Аналіз конфігурації 1С 1-2 тижні Схема документів, вимоги до API
Проектування архітектури 3-5 днів Технічне завдання з описом методів
Розробка REST-сервісу 2-3 тижні Робочий HTTP-сервіс або зовнішня обробка
Тестування на копії БД 1 тиждень 100+ сценаріїв, відсутність помилок
Деплой та моніторинг 2-3 дні Інтеграція в продакшені, логування
Навчання та підтримка 1 місяць Документація, доступи, супровід

Терміни та вартість

Термін розробки — від 4 до 7 тижнів залежно від кастомізації 1С. Вартість розраховується індивідуально після аналізу вашої конфігурації. Замовте інтеграцію з 1С вже сьогодні — наш інженер зв'яжеться з вами протягом години. Щоб отримати оцінку, зв'яжіться з нами — надішлемо комерційну пропозицію протягом дня.

Як вирішити проблеми синхронізації з 1С?

Ранок понеділка. Менеджер відкриває сайт і бачить, що позицію, яку розпродали в п'ятницю, досі «в наявності». Три клієнти вже оплатили товар, якого немає. Ми стикаємося з цим болем регулярно: відсутність синхронізації між 1С та інтернет-магазином б'є по грошах та репутації. Вирішуємо проблему під ключ — налаштовуємо обмін так, щоб облікова система та вітрина оновлювалися синхронно, без втрати даних та з гарантією консистентності. Після нашої інтеграції один із клієнтів скоротив кількість повернень на 50% і зекономив понад 20 000 грн за перший місяць.

1С — облікова система більшості українських компаній. Сайт — вітрина. Вони мають говорити однією мовою і робити це регулярно, надійно та без втрати даних. Наш досвід — понад 50 успішних інтеграцій для замовників з каталогами від 500 до 200 000 SKU.

Чому стандартний CommerceML не завжди рятує?

CommerceML — стандартний протокол обміну, який підтримують 1С:Управління торгівлею, 1С:Комплексна автоматизація та ряд інших конфігурацій. WooCommerce, Shopify та інші CMS мають плагіни для роботи з CommerceML (наприклад, «1С-Бітрікс» для своїх продуктів, окремі плагіни для WordPress). Потік: 1С ініціює обмін → надсилає ZIP-архів з XML на endpoint сайту → сайт розбирає, оновлює каталог.

Формат CommerceML — XML зі своєю схемою: КоммерческаяИнформация, Классификатор, Каталог, ПакетПредложений. Категорії, товари, характеристики, зображення, ціни, залишки. Головна складність — ієрархія характеристик в 1С та атрибути товарів на сайті не завжди збігаються один до одного. Потрібен мапінг. Для глибокого розуміння протоколу рекомендуємо документацію Wikipedia — там розглянуто всі нюанси схеми.

Як ми обходимо обмеження CommerceML

Для нестандартних конфігурацій 1С або коли CommerceML не підходить — пишемо HTTP-сервіс в 1С (вбудована можливість починаючи з версії 8.3) і взаємодіємо через REST JSON. Це дає повний контроль над структурою даних та частотою синхронізації, але вимагає розробки з боку 1С-програміста.

Для enterprise-завдань з кількома обліковими системами — Message Broker (RabbitMQ, Apache Kafka) як посередник. 1С публікує події в чергу, сайт підписується і обробляє. Гарантована доставка, буферизація при недоступності однієї зі сторін.

Що синхронізуємо і як

Каталог (товари, категорії, характеристики). Найоб'ємніша частина. Повне вивантаження при першому запуску, дельта-оновлення в подальшому. При імпорті CommerceML: парсимо XML через PHP SimpleXML або XMLReader (для великих файлів — тільки XMLReader, інакше memory limit). Зіставляємо товари за GUID з 1С, який зберігаємо в окремому полі БД. Якщо товар видалено в 1С — приховуємо на сайті, не видаляємо (історія замовлень може посилатися).

Залишки та ціни — окремий ПакетПредложений в CommerceML, оновлюється частіше каталогу. Критично робити атомарно: не оновлювати залишок по одному, а транзакцією. Інакше в момент оновлення користувач може побачити неконсистентний стан. Частота: раз на годину для спокійного режиму, раз на 5–15 хвилин для активної торгівлі.

Замовлення — двосторонній обмін. Сайт → 1С: нове замовлення передається з номенклатурою, кількістю, цінами, контактними даними покупця. 1С → сайт: статус замовлення (оплачено, зібрано, відвантажено, доставлено). Для передачі замовлень — або той же CommerceML (блок Документи), або прямий REST-виклик при створенні замовлення на сайті.

Типові проблеми, які вирішуємо

Дублювання товарів. 1С-оператор створив позицію з помилкою в артикулі, потім виправив. На сайті — два товари. Рішення: зіставлення за GUID з 1С (не за артикулом), GUID незмінний.

Кирилиця в XML та кодування. 1С історично працює з Windows-1251. CommerceML файл може прийти в CP1251, PHP очікує UTF-8. mb_convert_encoding() або iconv() в перших рядках парсера — обов'язково.

Тайм-аути при великому вивантаженні. Каталог з 100 000 позицій — це 50–200MB XML. PHP default execution time 30s не вистачить. Рішення: CLI-команда (Laravel Artisan або Symfony Console), запускається через cron, без HTTP timeout. Або chunked processing через XMLReader з частковими комітами в БД. Для обробки великих масивів даних використовуємо LazyCollection в Laravel — це дозволяє тримати в пам'яті лише один чанк.

Зображення. 1С може передавати зображення Base64 всередині XML (роздуває файл в 1.3 рази) або посиланнями на файли. Другий варіант кращий. Скачуємо асинхронно, конвертуємо в WebP, кладемо в медіабібліотеку.

Кейс: інтернет-магазин запчастин, 85 000 SKU

Синхронізація через CommerceML кожні 30 хвилин. Проблема: повне вивантаження займало 18 хвилин, в результаті нове вивантаження починалося, поки старе ще йшло. Рішення: lock через Redis (SET nx ex), дельта-вивантаження (тільки змінені позиції за останні 2 години через фільтр в 1С), обробка через чергу з 20 паралельними workers. Час синхронізації: 18 хвилин → 2.5 хвилини, конфліктів немає. Економія ресурсів сервера — до 40% навантаження CPU.

Як відбувається синхронізація даних з 1С?

Порівняння методів інтеграції

Метод Швидкість синхронізації Гнучкість налаштування Ресурсоємкість
CommerceML Висока (бінарний XML) Низька (фіксована схема) Низька (майже не тисне на сервер)
REST API напряму Середня (JSON) Висока (будь-яка модель) Середня (потрібні два HTTP-сервери)
Message Broker (RabbitMQ/Kafka) Дуже висока (асинхронно) Середня (подійна архітектура) Висока (потрібен кластер брокера)

CommerceML в типових сценаріях швидше REST для синхронізації каталогу в 2-3 рази за рахунок бінарної упаковки XML та компактного формату. Однак, якщо потрібна кастомна логіка обміну, REST дає повну гнучкість.

Процес і терміни

Покроковий алгоритм налаштування інтеграції:

  1. Аудит конфігурації 1С (версія, тип конфігурації, можливості вивантаження).
  2. Проектування мапінгу даних — узгодження полів 1С та атрибутів сайту.
  3. Розробка приймача на сайті та відправника в 1С (плагін або кастомний модуль).
  4. Тестування на реальних даних: вивантаження каталогу, перевірка залишків, створення тестового замовлення.
  5. Налаштування розкладу синхронізації (cron, черги) та моніторингу перших обмінів.
  6. Документування схеми мапінгу та логіки обробки помилок.

Участь 1С-програміста з боку клієнта — обов'язково, або ми залучаємо перевіреного спеціаліста. Замовте аудит вашої системи обліку — ми оцінимо складність інтеграції за один робочий день.

Сценарій Термін
CommerceML, каталог + залишки, WooCommerce 2–4 тижні
Двосторонній обмін замовленнями +2–3 тижні
Кастомна конфігурація 1С, REST API 4–8 тижнів
Enterprise: кілька баз 1С, шина даних 2–4 місяці

Що входить в результат (deliverables)

  • Документація: схема мапінгу, формати даних, логіка обробки помилок.
  • Налаштований розклад синхронізації з логами виконання.
  • Доступ до моніторингу (Grafana/ELK — за домовленістю).
  • Навчання менеджерів: як запускати ручний обмін, як читати логи.
  • Гарантійна підтримка після запуску — 2 тижні (виправлення інцидентів).

Отримайте консультацію

Вартість інтеграції розраховується індивідуально після аудиту — залиште заявку на консультацію. Зв'яжіться з нами, щоб отримати детальний план інтеграції для вашого бізнесу. Понад 7 років досвіду в інтеграціях з 1С — гарантуємо стабільну синхронізацію без сюрпризів.