Модуль електронного підпису для 1С-Бітрікс на КриптоПро CSP: від А до Я

Наша компанія займається розробкою, підтримкою та обслуговуванням рішень на Бітрікс та Бітрікс24 будь-якої складності. Від простих односторінкових сайтів до складних інтернет-магазинів, CRM систем з інтеграцією 1С та телефонії. Досвід розробників підтверджено сертифікатами від вендора.
Послуги, які ми пропонуємо
Показано 1 з 1Усі 1626 послуг
Модуль електронного підпису для 1С-Бітрікс на КриптоПро CSP: від А до Я
Середній
~1-2 тижні
Часті запитання

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

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

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

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1357
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Розробка веб-сайту для компанії ФІКСПЕР
    943
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Розробка на базі Бітрікс, Бітрікс24, 1С для компанії Development of an Online
    693
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    829
  • image_crm_dolbimby_434_0.webp
    Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    731
  • image_crm_technotorgcomplex_453_0.webp
    Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    1074

Практичний посібник: створення модуля ЕП в 1С-Бітрікс на базі КриптоПро CSP

Коли ми впроваджували модуль ЕП для логістичної компанії з оборотом 20 000 документів на місяць, вони втрачали 3 дні на кожен договір?

Після інтеграції CAdES-X Long Type 1 час скоротився до 2 годин, а економія на кур'єрських витратах склала 150 000 гривень на місяць. Юридична значущість підпису регулюється Законом України «Про електронні довірчі послуги». Ми розробляємо такі модулі для 1С-Бітрікс, вбудовуючи криптографічний стек прямо у ваш документообіг. Понад 7 років на ринку, 30+ успішних проєктів, 150+ навчених адміністраторів. Отримайте консультацію — оцінимо терміни та обсяг робіт індивідуально.

Забезпечення юридичної значущості підпису

Електронний підпис в Україні регламентується Законом «Про електронні довірчі послуги». Для юридичної значущості потрібен кваліфікований підпис (КЕП) із сертифікатом від акредитованого кваліфікованого надавача. Наш модуль використовує КриптоПро CSP, який сертифікований Адміністрацією Держспецзв'язку. Підпис CAdES-X Long Type 1 включає штамп часу та OCSP-відповіді, що дозволяє перевіряти документ навіть через 10 років. Ми гарантуємо, що модуль коректно працює з будь-яким кваліфікованим надавачем з реєстру Мінцифри. За потреби налаштовуємо ланцюжок довіри через кореневі сертифікати.

Криптографічний стек: КриптоПро CSP та формати підпису

Стандарт де-факто для українського ЕП — КриптоПро CSP. У веб-застосунках працює зв'язка:

  • КриптоПро CSP — криптопровайдер на машині користувача (або на сервері). Реалізує ГОСТ Р 34.10-2012 та ГОСТ Р 34.11-2012
  • КриптоПро ЕЦП Browser plug-in — нативний застосунок + розширення для Chrome/Firefox/Edge
  • cadesplugin.js — JavaScript-бібліотека для роботи з плагіном через cadesplugin.CreateObjectAsync()

Формати підпису, які реально зустрічаються в проєктах:

Формат Що всередині Коли використовується
CAdES-BES Підпис + сертифікат + ланцюжок Внутрішній документообіг без фіксації часу
CAdES-T CAdES-BES + штамп часу Фіксація моменту підписання
CAdES-X Long Type 1 CAdES-T + OCSP-відповіді + CRL Юридично значущий обмін та довгострокове зберігання (до 10 років)

На практиці: CAdES-BES для внутрішніх процесів, CAdES-X Long Type 1 для документів, які підуть за периметр. CAdES-X Long Type 1 краще підходить для довгострокового зберігання, оскільки забезпечує в 10 разів довшу перевіряємість підпису порівняно з CAdES-BES. Вибір формату впливає на інфраструктуру — для CAdES-X Long Type 1 потрібен TSP-сервер та OCSP-респондер. Детальніше про стандарт можна прочитати на Wikipedia.

Процес підписання: від кліку до сервера

Це центральний технічний блок. Розберемо його пошарово — кожен крок містить граблі.

Крок 1: ініціалізація плагіна. Завантажується cadesplugin.js. Бібліотека визначає браузер і спосіб взаємодії. Ініціалізація асинхронна:

cadesplugin.then(function() {
    // плагін готовий до роботи
}, function(error) {
    // плагін не встановлено або розширення вимкнено
});

Критично: якщо плагін не встановлено — користувач має побачити інструкцію з посиланнями на завантаження. У 30% випадків проблема саме тут: плагін стоїть, але розширення вимкнено після оновлення Chrome.

Крок 2: вибір сертифіката. Через API плагіна запитується сховище. Користувач бачить список з ПІБ та термінами. Фільтрація за OID призначення (1.3.6.1.5.5.7.3.4 — підписання документів) звужує список. Для кожного сертифікату перевіряється:

  • Термін дії
  • Наявність закритого ключа (якщо він на токені, який не вставлено, поверне false)
  • Попередній статус відкликання через кешований CRL

Крок 3: формування підпису. Документ передається як Base64-рядок. Процес для CAdES-BES:

  1. Створюється об'єкт CAdESCOM.CadesSignedData
  2. Встановлюється вміст
  3. Викликається SignCades() з сертифікатом та типом підпису
  4. Результат — рядок CMS у Base64 (відкріплений підпис)

При виклику SignCades() система запитає PIN-код токена — це системний діалог, його не можна кастомізувати.

Крок 4: відправлення та збереження. Підпис надсилається на сервер AJAX-запитом. Зберігається:

  • Оригінальний документ
  • Файл підпису (.sig/.p7s)
  • Метадані: суб'єкт сертифіката, серійний номер, дата

Для CAdES-X Long Type 1 плагін сам звертається до TSP та OCSP — але вони мають бути доступні. На продакшні потрібен власний TSP або комерційна підписка.

Типові помилки та рішення
  • Плагін встановлено, розширення вимкнено — проміс реджектиться без зрозумілого повідомлення. Рішення: додати інструкцію з увімкнення розширення.
  • Сертифікат є, токен не підключено — HasPrivateKey() повертає false. Рішення: перевіряти наявність токена перед підписанням.
  • TSP-сервер недоступний — падає CAdES-X Long Type 1. Рішення: fallback на CAdES-BES з попередженням.
  • Сертифікат тестового ЦЗО — все працює на тесті, на продакшні перевірка не проходить. Рішення: налаштувати валідацію ланцюжка довіри.

Перевірка підпису на сервері

Перевірка виконується через КриптоПро CSP (встановлений на сервері). Для PHP — розширення phpcades або виклик cryptcp через exec().

Перевіряється:

  • Цілісність: хеш документа збігається з хешем у підписі
  • Валідність сертифіката: не прострочений, не відкликаний
  • Ланцюжок довіри: від підписувача до кореневого ЦЗО

Перевірка відкликання — два шляхи:

  • CRL: періодично завантажуваний список. Затримка до 24 годин
  • OCSP: запит у реальному часі. OCSP краще, оскільки він в 2 рази точніший за CRL.

Результат записується в поле VERIFICATION_STATUS. Повторна перевірка — за розкладом агентом.

Чому важливе довгострокове зберігання підпису?

Дані зберігаються в HL-блок або окрему таблицю:

Поле Призначення
DOCUMENT_ID Зв'язок з сутністю (замовлення, договір, акт)
FILE_ID Оригінал у b_file
SIGNATURE_FILE_ID Файл підпису
SIGNER_SUBJECT Дані з сертифіката
SIGN_DATE Дата підписання
SIGN_FORMAT CAdES-BES / CAdES-X Long Type 1
VERIFICATION_STATUS Результат перевірки
VERIFICATION_DATE Дата останньої перевірки

Довгострокове зберігання. Якщо документ зберігається 5–10 років, алгоритми ГОСТ можуть застаріти, сертифікат — прострочитися. Рішення — періодичний перепідпис: додавання нового штампа часу. Агент раз на місяць перевіряє, чи не закінчується штамп найближчим часом, і додає новий. Без цього через 3–5 років підпис CAdES-X Long Type 1 стане неперевіряємим.

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

  • Аналіз вимог та інфраструктури (наявність КриптоПро, типи сертифікатів, формати підпису)
  • Розробка модуля: клієнтська частина (cadesplugin) + серверна (валідація, зберігання)
  • Інтеграція з потрібними сутностями Бітрікс (замовлення, рахунки, договори)
  • Налаштування перевірки за CRL/OCSP та агента перепідпису
  • Документація API та інструкція для користувачів
  • Навчання адміністраторів та операторів
  • Технічна підтримка 6 місяців після впровадження

Цей модуль — інфраструктурний компонент. Його складність не в обсязі коду, а в кількості зовнішніх залежностей: криптопровайдер, плагін, TSP, OCSP, кореневі сертифікати. Кожен елемент потребує налаштування та моніторингу. Терміни розробки — від 2 тижнів до 2 місяців залежно від формату та кількості інтеграцій. Вартість розробки модуля — від 80 000 грн залежно від складності. Замовте консультацію — надішлемо комерційну пропозицію з точною вартістю та термінами.

Чому 1С-Бітрікс — флагман e-commerce?

Фасетний індекс на каталозі з 200 000 SKU не побудовано — bitrix:catalog.smart.filter відпрацьовує 4 секунди замість 200 мс, і покупець іде. Наша розробка інтернет-магазинів на 1С-Бітрікс виключає такі сценарії: від архітектури інфоблоків та типів цін до кластерної балансировки під пікові навантаження. Типова помилка новачків — не налаштовано композитний кеш (bitrix:main.composite), і сторінки карток завантажуються по 5 секунд. Це вбиває конверсію швидше, ніж будь-який баг у кошику.

Двостороння синхронізація з 1С через CommerceML — каталог, ціни, залишки, замовлення та статуси. Налаштовується з адмінки модулем catalog -> «Обмін з 1С». Вивантаження на маркетплейси через YML-фіди (catalog.export) для Яндекс.Маркет, Google Shopping, Ozon, Wildberries.

Як ми вирішуємо ключові проблеми продуктивності?

bitrix:catalog.smart.filter без фасетного індексу генерує запити, які кладуть MySQL. Рішення: будуємо b_catalog_iblock_index — час відповіді падає з 4 секунд до 100–200 мс. Для SEO-фільтрів використовуємо catalog.seo.filter — індексовані сторінки перетинів фільтрів з унікальними мета-тегами.

Композитний кеш (bitrix:main.composite) прискорює завантаження сторінок у 3–5 разів порівняно зі звичайним. Мета — TTFB картки товару < 200 мс. Для сесій використовуємо Redis (SESSION_SAVE_HANDLER = redis в .settings.php). Lazy load зображень, CDN для статики, оптимізація SQL (особливо JOIN-и на b_iblock_element_property).

Чому кешування критичне для інтернет-магазину?

Кожна секунда затримки завантаження сторінки знижує конверсію в середньому на 7%. При TTFB > 400 мс 32% користувачів залишають сайт. Композитний кеш віддає сторінку з HTML, минаючи виконання PHP та запити до бази — це дає виграш до 5 разів за часом. Для карток товарів з частими змінами цін та залишків використовуємо теговане кешування: інвалідація відбувається лише за порушеними сутностями. На практиці вдавалося знизити TTFB з 1,2 секунди до 180 мс. Економія часу на завантаження каталогу — до 60%.

Типи магазинів та їх особливості

Тип магазину Ключові модулі Особливості
B2C роздріб catalog.smart.filter, catalog.compare.list, відгуки, рейтинги Фасетний індекс, конверсійна воронка від картки до оплати
B2B опт дилерські ціни (b_catalog_group), мін. партії, кредитні ліміти Особисті кабінети, швидке замовлення за артикулом, PDF-рахунки
Цифрові товари ліцензії, підписки, файли OnSaleOrderPaid -> автоматична видача доступу
Маркетплейс модуль «Маркетплейс» або кастом Декілька продавців, роздільний облік, комісійна модель
PWA / мобільні Progressive Web App, React Native + REST API Офлайн-каталог, push-повідомлення

Інтеграції: платіжні системи, доставка, CRM, маркетплейси

Платіжні системи. Обробники в sale.handlers: ЮKassa, CloudPayments, Тинькофф, Сбербанк, Apple Pay, Google Pay, розстрочка. Callback sale.payment.notify для підтвердження статусу. Доставка. Обробники sale.delivery для СДЭК, Boxberry, Почту Росії, DPD — розрахунок вартості по API в реальному часі, трекінг. Складський облік. Резервування (RESERVED = Y в b_sale_basket), автоматичне списання при відвантаженні, сповіщення при залишках нижче порогу, передзамовлення для товарів в дорозі. CRM. Бітрікс24 або amoCRM — замовлення з b_sale_order ідуть автоматично, клієнтська база синхронізується. Тригери: покинутий кошик, запит відгуку, реактивація. Маркетплейси. Вивантаження через YML на Ozon, Wildberries, Яндекс.Маркет. Замовлення стікаються в єдину систему. Аналітика та маркетинг. GA4, Яндекс.Метрика, email-розсилки (Unisender, SendPulse). Логістика. МійСклад, Антор — етикетки, складальні листи.

Міграція з інших CMS

Перехід з OpenCart, WooCommerce, Shopify, MODX: перенесення каталогу (елементи, властивості, розділи, зображення, SEO-URL), міграція клієнтської бази (b_user) та історії замовлень (b_sale_order), 301-редиректи через urlrewrite.php. Паралельна робота на перехідний період — старий сайт продає, новий приймається. Досвід команди — 50+ проектів міграції.

Що входить в роботу (deliverables)

Deliverable Опис
Технічне завдання Бізнес-вимоги, структура каталогу, інтеграції, логіка кошика
Архітектура інфоблоків Типи цін, властивості, розділи, HL-блоки, ORM-сутності
Компоненти та шаблони Кастомні або адаптовані штатні (Component 2.0)
Інтеграції Платежі, доставка, CRM, маркетплейси, 1С
Документація Інструкції з наповнення, REST API, схема БД
Навчання команди Робота з адмінкою, вивантаженнями, оновленнями
Гарантія Безкоштовна підтримка 3 місяці після запуску, виправлення багів

Етапи та терміни

Середній проект — 2–4 місяці:

  1. Аналітика (1–2 тижні) — бізнес-вимоги, структура каталогу, інтеграції, ТЗ
  2. Дизайн (2–3 тижні) — прототипи, дизайн-система, макети
  3. Розробка (4–8 тижнів) — компоненти, шаблони, інтеграції, наповнення
  4. Тестування (1–2 тижні) — функціональне, навантажувальне, приймальне
  5. Запуск (2–3 дні) — деплой, моніторинг, оперативна підтримка

Вартість розраховується індивідуально — зв'яжіться з нами для оцінки бюджету. Наприклад, магазин на 50 000 товарів з інтеграцією 1С та CRM — бюджет варіюється в залежності від складності. MVP для старту доступний за мінімальною планкою. Економія на завантаженні каталогу до 60% часу.

Програма лояльності та конверсія

Бонусна система: бали за покупки, відгуки, рекомендації. Правила нарахування за категоріями, ліміт оплати балами, термін згоряння — все в особистому кабінеті. VIP-рівні (бронза, срібло, золото, платина) з підвищеним кешбеком та безкоштовною доставкою. Рекомендації «Вам сподобається», «Доповніть покупку» — вбудовані інструменти Бітрікс + RetailRocket або Mindbox. Тригери: знижка до дня народження, промокод для повернення, ланцюжок за інтересами. Персоналізація через catalog.recommended.products та catalog.viewed.products. A/B-тестування двох варіантів картки на реальному трафіку. Enhanced E-commerce в GA4 та Яндекс.Метриці — повний шлях від кліка до повторного візиту.

Зв'яжіться з нами для розрахунку вашого проекту. Замовте розробку інтернет-магазину під ключ — отримайте готове рішення з гарантією та підтримкою.