Интеграция «Подели» в 1С-Битрикс#
Модуль podeli.bnpl добавляет в интернет-магазин на 1С-Битрикс оплату через
«Подели», управление заявками из административной панели, возвраты и
информационные виджеты для каталога, карточки товара и страницы оформления
заказа.
Подключение выполняется в четыре этапа:
Установка модуля.
Настройка платёжной системы.
Настройка параметров модуля.
Подключение виджетов, если они нужны на сайте.
Что потребуется#
Что нужно |
Описание |
|---|---|
Архив модуля |
|
Сертификат и приватный ключ |
|
Учётные данные |
Логин и пароль от сервиса «Подели». |
Доступ к серверу |
Нужен для размещения файлов модуля, сертификата и ключа. |
Установка модуля#
Распакуйте архив
bitrix.zipв каталог:<site_path>/local/modulesПосле распаковки должен получиться путь:
<site_path>/local/modules/podeli.bnplЕсли каталога
local/modulesнет, создайте его.Разместите на сервере сертификат и приватный ключ:
Рекомендуется хранить эти файлы вне публичной директории сайта, чтобы они не были доступны по прямой ссылке из браузера.
Примеры безопасного размещения:
/var/www/secure/podeli/client.crt/var/www/secure/podeli/client.key/etc/podeli/client.crt/etc/podeli/client.key
Не рекомендуется размещать сертификат и ключ в публичных каталогах сайта, например в
upload,bitrix,localили других папках внутриDOCUMENT_ROOT, если к ним возможен доступ из браузера.Рекомендуемые права на файлы —
640. Пользователь, под которым работает PHP, должен иметь доступ на чтение.Внимание
Если разместить файлы можно только внутри директории сайта, дополнительно ограничьте к ним веб-доступ на уровне сервера. Для Apache можно использовать
.htaccess, для Nginx — правила в конфигурации виртуального хоста.В административной панели Битрикс откройте:
Marketplace → Установленные решения
Найдите модуль «Подели», откройте меню рядом с ним и выберите Установить.
После установки переходите к настройке платёжной системы.
Настройка платёжной системы#
Откройте раздел:
Магазин → Настройки → Платёжные системы
Нажмите Добавить платёжную систему.
В форме создания платёжной системы заполните основные параметры:
Обработчик — выберите «Подели».
Тип оплаты — выберите «Эквайринговая операция».
Открывать в новом окне — снимите флажок.
Настройте параметры обработчика.
Примечание
Если поля недоступны для редактирования, снимите флажки По умолчанию.
Заполните обязательные поля.
Номер заказа
В выпадающем списке выберите Заказ, затем справа выберите Номер заказа.
Логин и пароль
Укажите учётные данные, полученные от «Подели».
Пути к сертификату и ключу
Укажите абсолютные пути к файлам
client.crtиclient.keyна сервере.
Подсказка
Если нужно узнать корневой путь сайта, откройте:
Настройки → Командная PHP-строка
Выполните команду:
echo $_SERVER['DOCUMENT_ROOT'];К полученному пути добавьте каталог, в который вы положили сертификат и ключ.
Внимание
Сертификат и ключ должны быть доступны на чтение пользователю, под которым работает PHP.
Ссылки успешной и неуспешной оплаты
Укажите адреса страниц, на которые покупатель будет перенаправлен после успешной или неуспешной оплаты.
Остальные поля оставьте без изменений и нажмите Сохранить.
Настройка параметров модуля#
Откройте раздел:
Настройки → Настройки продукта → Настройки модулей → Подели — модуль оплаты покупок
Настройку модуля рекомендуется выполнять в таком порядке:
Включить тестовый режим.
Проверить оплату тестового заказа.
Выполнить тестовый возврат.
После успешной проверки отключить тестовый режим.
Перейти к приёму реальных оплат.
Важно
При первой установке модуля обязательно включите Тестовый режим. Перед запуском реальных оплат создайте тестовый заказ, проведите оплату и выполните возврат. Только после успешной проверки отключите тестовый режим.
Режим работы и диагностика#
Параметр |
Описание |
|---|---|
Тестовый режим |
Включает проверочный режим без реальной оплаты. Используется при первичной настройке и тестировании. |
Писать файл лога в корень сайта |
Записывает лог обращений к сервису в файл |
Использовать cURL для отправки запросов |
Отправляет запросы к сервису через cURL. |
Очищать таблицу модуля в БД при удалении |
Удаляет данные модуля из базы при деинсталляции. |
Примечание
Логирование удобно использовать на этапе настройки и диагностики. После запуска реальных оплат его можно отключить, если постоянная запись логов не требуется.
Оплата и заявки#
Параметр |
Описание |
|---|---|
Разрешить автоматическое подтверждение оплаты магазином |
Если включено, оплата подтверждается автоматически после оформления заказа. Если отключено, администратор подтверждает заявку вручную. |
Разрешить создание повторных заявок на оплату |
Позволяет создать повторную заявку на оплату по одному заказу. |
Удалить товары из заказа при возврате |
При возврате удаляет возвращённые позиции из заказа. |
Список страниц без автоматического перехода на оплату |
Список адресов, с которых не выполняется автоматический переход на оплату. Каждый адрес указывается с новой строки. |
Подсказка
По умолчанию в список страниц без автоматического перехода обычно добавляют:
/personal/order/payment//order/payment//personal/order/make/
Изменяйте список только если это требуется для логики оформления заказа на вашем сайте.
Товары и суммы заказа#
Параметр |
Описание |
|---|---|
Название свойства для артикула товара |
Код свойства товара, из которого модуль получает артикул. |
Минимальная цена заказа |
Минимальная сумма заказа, при которой доступна оплата через «Подели». |
Максимальная цена заказа |
Максимальная сумма заказа, при которой доступна оплата через «Подели». |
Примечание
Если в каталоге используется стандартное свойство артикула, оставьте значение
ARTNUMBER. Если артикул хранится в другом свойстве, укажите его код.
Виджеты#
Параметр |
Описание |
|---|---|
Добавить виджет «Подели» на страницу оплаты |
Показывает информационный виджет на странице оплаты. |
Тема виджета в корзине |
Задаёт цветовую тему виджета в корзине. |
Тип виджета бейдж |
Определяет вид бейджа-виджета. |
Тема виджета бейдж |
Задаёт цветовую тему бейджа. |
Показать виджет в хедере |
Показывает виджет в шапке сайта. |
Анимировать виджет в хедере |
Включает анимацию виджета в шапке сайта. |
Тема виджета в хедере |
Задаёт цветовую тему виджета в шапке. |
Добавить скидку на виджет |
Показывает скидку в виджете. |
Внимание
Отображение скидки в виджете необходимо предварительно согласовать с «Подели». Не включайте этот параметр без согласования.
Статусы заказа#
Параметр |
Описание |
|---|---|
Привязать статус выполненного заказа |
Если статус выбран, после успешной оплаты заказ автоматически переводится в указанный статус. |
Привязать статус отмены заказа |
Если статус выбран, после отмены платежа заказ автоматически переводится в указанный статус. |
Примечание
Привязку статусов настраивайте в соответствии с процессом обработки заказов в вашем магазине. Если автоматическая смена статусов не нужна, оставьте привязку неустановленной.
Права доступа#
В этом же разделе можно настроить права групп пользователей на работу с модулем.
Настройка тестового режима#
Включите параметр Тестовый режим.
Создайте тестовый заказ на сайте.
Проведите тестовую оплату.
Проверьте, что заявка появилась в разделе:
Магазин → Подели
Выполните тестовый возврат по заявке.
Если оплата и возврат прошли успешно, отключите Тестовый режим.
Внимание
Не отключайте тестовый режим до проверки полного сценария: создание заказа, оплата, отображение заявки в административной панели и возврат.
Виджет на странице оплаты#
Если нужно показывать покупателю информацию о способе оплаты «Подели», включите параметр Добавить виджет «Подели» на страницу оплаты.
Отмена заказа при отказе#
Снимите флажок с параметра Отменять заказ при отказе в заявке.
Управление заявками#
Заявки по заказам, оплаченным через «Подели», находятся в разделе:
Магазин → Подели
В списке отображаются заявки, их статусы и доступные действия.
Подтверждение оплаты#
Если автоматическое подтверждение отключено, оплату нужно подтвердить вручную.
Также заявку можно отклонить.
После подтверждения статус должен измениться на Заявка оплачена.
Если статус не обновился автоматически, нажмите кнопку обновления статуса.
Возврат по заявке#
В списке заявок нажмите Возврат.
В форме возврата выберите позиции и укажите количество.
Нажмите Возврат.
По одной заявке можно выполнить несколько возвратов, пока есть доступные к возврату товарные позиции.
Тестирование#
Для проверки оплаты используйте тестовые данные:
Перед запуском реальных оплат проверьте полный сценарий:
Создайте тестовый заказ.
Проведите тестовую оплату.
Убедитесь, что заявка появилась в разделе Магазин → Подели.
Выполните возврат.
Отключите Тестовый режим после успешной проверки.
Обновление модуля#
Скачайте актуальный архив модуля:
Удалите старую версию в разделе Marketplace.
Распакуйте новую версию в каталог:
<site_path>/local/modulesУстановите модуль по инструкции из раздела Установка модуля.
Виджеты «Подели»#
Виджеты можно показывать в каталоге, карточке товара, корзине, шапке сайта и на странице оформления заказа.
Подсказка
Виджеты подготовлены для стандартных шаблонов интернет-магазина Битрикс. При необходимости их можно адаптировать под другой шаблон.
Настройка виджетов#
Включите отображение виджетов в настройках метода оплаты «Подели».
Если используется скидка в виджете, предварительно согласуйте её с «Подели».
Инициализация виджетов уже добавлена в файл
script.js.Если шаблон сайта отличается от стандартного или виджет нужен только на отдельных страницах, измените код инициализации:
Для визуальной доработки используйте параметр
widgetCustomClass. Он добавляет CSS-класс к контейнеру виджета.
Варианты виджетов#
1. Виджет для каталога
Небольшая строка с ценой и логотипом сервиса.
2. Виджет для карточки товара
Блок с ценой и датами платежей.
3. Виджет для оформления заказа
Блок с ценой и графиком платежей на странице оформления заказа.
Ручная интеграция виджета#
Если автоматическая вставка не подходит, виджет можно добавить вручную.
Создайте экземпляр класса:
const podeli = new PodeliWidget();Инициализируйте виджет:
podeli.init({ containerNodeSelector: "#bx-soa-order-form", widgetContainerNodeSelector: "#bx-soa-paysystem .bx-soa-pp-desc-container", insertMethod: "append", type: "checkout", priceNodeSelector: ".bx-soa-cart-total-line-total .bx-soa-cart-d", widgetCustomClass: "custom_css_class", });Добавьте виджет на страницу:
podeli.add();Чтобы удалить виджет со страницы, используйте:
podeli.remove();
Параметры метода init#
Параметр |
Обязательный |
Описание |
|---|---|---|
|
Да |
Селектор контейнера, внутри которого находится цена и размещается виджет. |
|
Да |
Селектор элемента, в который будет вставлен виджет. |
|
Нет |
Способ вставки: |
|
Нет |
Тип виджета: |
|
Нет |
Селектор элемента с ценой. |
|
Нет |
Дополнительный CSS-класс для кастомизации виджета. |