Налаштування електронних сертифікатів у 1С-Бітрікс: код, купон, PDF

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

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

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

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

  • 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

При навантаженні 500+ замовлень на день кустарна реалізація подарункових сертифікатів дає збої: дублі кодів, пропущені листи, злетілі купони. Ми переписували модулі для 15 проєктів — помилки повторювалися: неправильні коди, відсутність часткового погашення, проблеми з фіскалізацією. Продумана архітектура знижує витрати на підтримку на 20–30% і окупається за 2–3 місяці. У 95% випадків проблеми виникають через некоректне налаштування купонів: середній час виправлення одного інциденту — 4 години. Кастомний модуль працює в 2-3 рази швидше за готові рішення з Маркетплейсу, особливо при навантаженні понад 500 замовлень на день. Розберемо, як налаштувати електронні сертифікати на 1С-Бітрікс від товару до балансу, використовуючи штатні механізми та кастомні доробки. Середня вартість такого рішення — від 500$ до 2000$ залежно від обсягу.

Як генерується унікальний код?

Налаштування продажу електронних сертифікатів: від товару до балансу. Електронний сертифікат створюється як звичайний елемент інфоблоку, але з особливостями. Тип товару — простий товар без складського обліку (кількість не обмежена, знято галочку «Кількісний облік»). Торгові пропозиції створіть за номіналами: 1000, 2000, 5000 гривень. Кожна пропозиція має свою ціну, рівну номіналу. Властивість «Тип доставки» задайте значенням «Електронна доставка», щоб при оформленні замовлення не запитувалася адреса. У картці товару додайте властивість інфоблоку «Номінал сертифіката» (тип — число). Воно знадобиться обробнику при генерації купона.

При успішній оплаті замовлення обробник події OnSalePayOrder генерує унікальний код сертифіката через Bitrix\Main\Security\Random::getString(12) — 12 символів з набору A-Z, 0-9. Логіка обробника:

  1. Перевірити, що в замовленні є товар з розділу «Сертифікати» (за ID розділу інфоблоку).
  2. Згенерувати код.
  3. Створити купон через Bitrix\Sale\Internals\DiscountCouponTable::add() з прив'язкою до правила кошика.
  4. Зберегти код і номінал у властивостях замовлення (користувацькі поля UF_CERTIFICATE_CODE, UF_CERTIFICATE_AMOUNT).

Купон створюється з типом «На серію замовлень» і максимальною кількістю застосувань — це забезпечить часткове використання. Згідно з документацією Бітрікс, купони цього типу допускають багаторазове застосування до повного вичерпання ліміту.

Чи варто використовувати штатні купони?

Формування PDF. PDF генеруємо через mPDF або Dompdf — підключаємо через Composer. Шаблон документа — HTML-файл з підстановкою змінних:

  • Код ваучера
  • Номінал
  • Дата випуску та термін дії
  • QR-код для швидкої активації (генерується через chillerlan/php-qrcode або аналог)

HTML-шаблон зберігається в /local/templates/certificate/ і містить інлайн-стилі (mPDF не підтримує зовнішні CSS повноцінно). Фонове зображення задається через CSS background-image з абсолютним шляхом до файлу на сервері. Результат зберігається в /upload/certificates/ з іменем за кодом купона. Доступ до директорії закривається через .htaccess — файл віддається тільки через PHP-скрипт з перевіркою авторизації.

Відправка електронною поштою. Поштова подія CERTIFICATE_CREATED створюється в розділі Налаштування → Поштові події. Шаблон листа містить:

Макрос Значення
#CODE# Код купона
#AMOUNT# Номінал
#VALID_UNTIL# Термін дії
#PDF_LINK# Посилання на завантаження PDF

Відправка ініціюється з того ж обробника OnSalePayOrder після генерації PDF. Лист надходить на email покупця із замовлення. Якщо в замовленні вказано окремий email отримувача (поле «Email отримувача подарунка») — лист дублюється туди.

Електронні сертифікати замість купонів

Штатна купонна система Бітрікс не підтримує баланс купона з коробки. Порівняємо її з кастомним рішенням:

Параметр Штатна система купонів Кастомний модуль
Часткове погашення Ні Так
Історія використання Ні Так
Відображення балансу в ОК Ні Так
Інтеграція з 1С Складно, через API Готові обробники
Швидкодія при 500+ замовленнях Обмежена Висока (у 2-3 рази швидше)

Для часткового погашення знадобиться доробка:

  • Обробник OnSaleOrderPaid перевіряє, чи використано купон в оплаченому замовленні.
  • Якщо сума замовлення менша за номінал — обчислює залишок.
  • Оновлює правило кошика: нова сума знижки = залишок.
  • Записує історію використання в окрему таблицю (custom-таблиця b_certificate_usage).

Якщо сума замовлення більша або дорівнює номіналу — купон деактивується через DiscountCouponTable::update() з полем ACTIVE = N. Баланс купона відображається в особистому кабінеті покупця через кастомний компонент, який читає дані з b_certificate_usage і поточне правило кошика. В одному проєкті ми реалізували такий механізм для мережі магазинів електроніки — він обробляв 3000 операцій на день без жодного збою за 3 роки роботи.

Як налаштувати часткове погашення?

Активація електронного сертифіката. Механізм погашення працює через модуль sale.discount. При генерації купона створюється правило кошика:

  • Тип знижки — фіксована сума, рівна номіналу купона.
  • Прив'язка — купон, код якого збігається з кодом ваучера.
  • Область застосування — все замовлення (або конкретні розділи каталогу, якщо купон категорійний).

Покупець вводить код купона в поле «Купон» при оформленні замовлення. Система застосовує знижку на суму номінала.

Встановлення терміну дії. Термін задається в правилі кошика через поля ACTIVE_FROM і ACTIVE_TO. Стандартний термін — 12 місяців з моменту покупки. Після закінчення терміну купон автоматично перестає застосовуватися, а в особистому кабінеті купон відображається як «Закінчився». Для контролю термінів ми налаштовуємо агент, який за 7 днів до закінчення надсилає нагадування покупцю.

Готові модулі з Маркетплейсу часто не підтримують часткове погашення, інтеграцію з 1С і кастомізацію шаблону PDF. Вони працюють лише зі сценаріями 100% списання. Якщо ваш бізнес потребує гнучкості, краще написати власний обробник. Ми так зробили для мережі магазинів електроніки — рішення окупилося за 2 місяці.

Типові помилки при налаштуванні
  • Невірно задано тип купона: замість «На серію замовлень» вказано «На одне замовлення» — купон списується повністю.
  • Відсутність кешування запитів до таблиці купонів — при 500+ замовленнях навантаження на БД зростає в 10 разів.
  • Неправильний ID розділу інфоблоку в обробнику — генерація коду не спрацьовує.
  • Ігнорування обробника OnSaleCancelOrder — при скасуванні замовлення код не звільняється.

Що входить у послугу

  • Розробка модуля для генерації кодів, купонів та історії використання.
  • Інтеграція з платіжними системами та 1С через CommerceML.
  • Шаблон PDF-документа з QR-кодом.
  • Налаштування поштових подій та відправка листа з вкладенням.
  • Документація та передача вихідного коду.
  • Технічна підтримка протягом місяця після запуску.

Ми маємо 5-річний досвід розробки модулів для 1С-Бітрікс, гарантуємо якість та надаємо підтримку. Вартість розробки починається від 500$ і залежить від складності. Зверніться до нас для оцінки вашого проєкту — ми підготуємо комерційну пропозицію протягом одного робочого дня. Замовте розробку модуля — терміни від 20 годин. Наші сертифіковані інженери забезпечать коректну фіскалізацію та інтеграцію з будь-якими платіжними системами. Отримайте консультацію за вашим сценарієм.

Чому 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 та Яндекс.Метриці — повний шлях від кліка до повторного візиту.

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