Использование плагина Jetpay для CMS «1С-Битрикс»

В этом разделе описана работа с плагином Jetpay версии 2.0. Этот плагин позволяет использовать платежные решения JetPay на сайтах, созданных на базе CMS «1С-Битрикс» в редакциях «Малый бизнес», «Бизнес» и «Энтерпрайз».

Схема работы

Взаимодействие с платежной платформой JetPay осуществляется через платежную страницу.

Рис.: Схема проведения платежа с использованием плагина



Запросы на открытие платежной страницы формируются автоматически (средствам плагина), когда пользователь выбирает для оплаты заказа метод Jetpay.

Если по какой-либо причине платеж не прошел, у пользователя есть возможность повторно ввести данные на платежной странице.

По результатам проведения платежей на сайт мерчанта в «1С-Битрикс» отправляются оповещения, которые автоматически обрабатываются плагином. В соответствии с результатом платежа плагин изменяет статус заказа в «1С-Битрикс». Соответствие результатов платежей и статусов заказов настраивается в параметрах CMS «1С-Битрикс».

Плагин также поддерживает обратную логику: при изменении статуса заказа в «1С-Битрикс» выполняются соответствующие действия в платежной платформе. В рамках двухстадийной оплаты платежи в статусе awaiting capture автоматически оплачиваются, когда заказ в «1С-Битрикс» переводится в статус Подтверждение оплаты. Аналогично, в процессе двухстадийной оплаты платежи в статусе awaiting capture автоматически отклоняются, когда заказ в «1С-Битрикс» переводится в статус Отмена оплаты.

Подключение

Установка плагина

  1. Загрузите архив с плагином Jetpay здесь.
  2. Откройте CMS «1С-Битрикс».
  3. Откройте папку с подключаемыми модулями «1С-Битрикс».

    Для этого перейдите на вкладку Контент, затем перейдите в раздел Структура сайта > Файлы и папки и щелкните папку bitrix > modules.

  4. Добавьте папку jetpay в папку bitrix/modules.

    Для этого последовательно щелкните Добавить > Добавить папку, после чего откроется следующая страница:



    На этой странице введите имя папки — jetpay — в поля Название раздела и Имя папки и убедитесь, что флажок Создать индексную страницу раздела снят. Подтвердите создание папки щелчком кнопки Сохранить.

  5. Извлеките содержимое архива с плагином в папку bitrix/modules/jetpay в следующей последовательности:
    1. Щелкните папку jetpay
    2. Щелкните кнопку Загрузить файл.
    3. На открывшейся странице щелкните Добавить файл.
    4. Выберите архив с плагином в файловой системе и щелкните кнопку Сохранить.
    5. Щелкните загруженный архив правой кнопкой и выберите Распаковать.
    6. В появившемся модальном окне щелкните Распаковать.

    Убедитесь, что структура папок и файлов после распаковки архива выглядит так:



    Если структура отличается, перенесите распакованные файлы и папки в папку /bitrix/modules/jetpay.

  6. Подключите установленный плагин.

    Для этого перейдите на вкладку Настройки, затем перейдите в раздел Настройки продукта > Модули и щелкните Установить в строке с модулем Jetpay.

    После установки плагина его статус должен измениться на Установлен.

Создание платежного обработчика

  1. Создайте новый платежный обработчик:

    Откройте вкладку Магазин, перейдите в раздел Настройки > Платежные системы и щелкните Добавить платежную систему.

  2. Настройте отображение платежного обработчика, заполнив следующие поля:
    • Обработчик — выберите Jetpay из выпадающего списка.
    • Название — название, которое будет отображаться пользователю при открытии платежной страницы.
    • Описание — описание платежного обработчика, необязательное поле.

    При необходимости загрузите логотип платежного обработчика, который будет отображаться пользователю при открытии платежной страницы.

  3. Настройте работу платежного обработчика, заполнив следующие поля:
    • ID проекта — идентификатор проекта, полученный от JetPay при интеграции;
    • Секретная соль проекта — значение параметра secret_key, полученного от JetPay при интеграции;
    • Язык платежного терминала — код языка в соответствии с ISO 639-1 alpha-2. Если оставить это поле пустым, язык будет определяться автоматически по IP-адресу устройства пользователя;
    • Дополнительные параметры — дополнительные параметры в соответствии с Payment Page API. При указании двух или более параметров используйте "&" в качестве разделителя. Подробнее о возможных параметрах Payment Page см. Параметры открытия платежной страницы Payment Page;
    • Тестовый режим — поле определяет возможность проведения тестовых платежей. Возможные значения: Да и Нет. Если оставить это поле пустым, тестовый режим не будет задействован;
    • Модальное окно — поле позволяет задать, нужно ли открыть платежную форму в модальном окне. Если оставить это поле пустым, платежная форма будет открываться в режиме iframe.
    • Отображать страницу выбора способа оплаты — позволяет определить, нужно ли отображать страницу с выбором платежного метода. Если оставить это поле пустым, пользователю будет предложено оплатить с использованием платежной карты;
    • Передавать идентификатор покупателя — флажок, который определяет, будет ли плагин передавать в запросе на проведение платежа идентификатор пользователя. Для корректной работы плагина этот флажок надо установить;
      Прим.: Если платеж инициируется неавторизованным пользователем, то идентификатор пользователя в запросе не передается.
  4. Настройте поля в разделе Status. Поля в этом разделе определяют, как должен меняться статус заказа в «1С-Битрикс» при изменении статуса платежа в JetPay.
    • Статус "Оплачен" — в этом поле выберите статус, который должен автоматически присваиваться заказу после подтверждения оплаты, например Оплачен.

      Иначе говоря, когда платеж перейдет в статус success, статус заказа в «1С-Битрикс» изменится на тот, который указан в этом поле. Параметр применяется в одностадийной оплате.

    • Статус авторизованного платежа (двухстадийные платежи) — в этом поле выберите статус, который должен автоматически присваиваться заказу после подтверждения блокировки средств в рамках двухстадийной оплаты, например Авторизован.

      Когда платеж перейдет в статус awaiting capture, статус заказа в «1С-Битрикс» изменится на тот, который выбран в этом поле. Параметр применяется в двухстадийной оплате.

    • Статус подтверждения авторизации платежа (двухстадийные платежи) — в этом поле выберите статус, который должен автоматически присваиваться заказу после подтверждения списания средств в рамках двухстадийной оплаты, например Оплата подтверждена.

      Когда платеж перейдет в статус success, статус заказа в «1С-Битрикс» изменится на тот, который выбран в этом поле. Параметр применяется в двухстадийной оплате.

    • Статус отмена авторизованного платежа (двухстадийные платежи) — в этом поле выберите статус, который должен автоматически присваиваться заказу после отмены блокировки средств в рамках двухстадийной оплаты, например Оплата отменена.

      Когда платеж перейдет в статус canceled, статус заказа в «1С-Битрикс» изменится на тот, который выбран в этом поле. Параметр применяется в двухстадийной оплате.

    • Статус ошибки платежа — в этом поле выберите статус, который должен автоматически присваиваться заказу в случае отмены платежа из-за ошибки, например Ошибка оплаты.

      Когда платеж перейдет в статус internal_error или external_error, статус заказа в «1С-Битрикс» изменится на тот, который выбран в этом поле. Параметр применяется в двухстадийной оплате.

  5. Щелкните Сохранить.

Настройка приема оповещений

Автоматическое изменение платежного статуса заказа обеспечивается с помощью приема оповещений от JetPay.

Чтобы обеспечить прием оповещений:

  1. Откройте вкладку Контент и перейдите в раздел Структура сайта > Файлы и папки.
  2. Создайте файл приемщика оповещений.

    Для этого последовательно щелкните Добавить > Добавить файл.

    Откроется страница создания файла.

    На этой странице в поле Имя файла введите jetpay.php, а в текстовом поле введите следующий программный код:

    <?php
    require($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_before.php");
     
    $APPLICATION->IncludeComponent(
        "bitrix:sale.order.payment.receive",
        "",
        Array(
            "PAY_SYSTEM_ID" => "22",
            "PAY_SYSTEM_ID_NEW" => "22"
        )
    );
     
    require($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/epilog_after.php");
    ?>

    В параметрах PAY_SYSTEM_ID и PAY_SYSTEM_ID_NEW укажите значение идентификатора платежной системы JetPay, который можно найти на вкладке Магазин > Настройки > Платежные системы в столбце ID.

  3. Сообщите службе технической поддержки JetPay URL-адрес для приема оповещений.

    Если файл jetpay.php расположен в корневом каталоге сайта, то URL-адрес для приема оповещений имеет вид:

    https://<полное_доменное_имя>/jetpay.php

    Если файл jetpay.php расположен не в корневом каталоге сайта, то URL-адрес для приема оповещений имеет вид:

    https://<полное_доменное_имя>/<путь_каталога>/jetpay.php

Тестирование

После активации плагина можно перейти в тестовый режим. Этот режим позволяет ознакомиться с работой плагина на сайте, к которому он подключен, без проведения реальных операций. В тестовом режиме можно настраивать и проверять работу плагина, совершать тестовые платежи и просматривать информацию по ним. При оплате в тестовом режиме на платежной странице отображается соответствующее сообщение.

Настройка плагина для работы в тестовом режиме

Чтобы настроить параметры работы плагина в тестовом режиме:
  1. На вкладке Настройка > Модули убедитесь, что статус модуля — Установлен.
  2. Перейдите на вкладку Магазин > Настройки > Платежные системы.
  3. Выберите в списке Jetpay и щелкните Изменить.
  4. Задайте необходимые настройки в разделе (см. далее).
  5. Выберите Да в поле Тестовый режим.
  6. Щелкните Сохранить.
Параметры работы плагина могут настраиваться по умолчанию для всех типов плательщиков или отдельно для каждого типа плательщиков. У плагина есть следующие параметры работы:
  • Параметры отображения платежной страницы JetPay:
    • Поле Язык платежного терминала — язык платежной страницы. При заполнении этого поля необходимо выбрать Значение и задать код языка в соответствии со стандартом ISO 639-1 alpha-2.
    • Поле Дополнительные параметры — дополнительные параметры работы платежной страницы.

      Список дополнительных параметров доступен здесь. При заполнении этого поля необходимо выбрать Значение, а для определения нескольких параметров использууйте разделитель «&».

    • Модальное окно — поле позволяет задать, нужно ли открыть платежную форму в модальном окне. Если оставить это поле пустым, платежная форма будет открываться в режиме iframe.
    • Поле Отображать страницу выбора способа оплаты служит для настройки отображения страницы выбора платежного метода перед переходом к оплате.
  • Поля ID проекта и Секретная соль проекта необходимы для подключения к платежным решениям и в тестовом режиме не используются.
  • Флажок Передавать идентификатор покупателя определяет, будет ли плагин передавать в запросе на проведение платежа идентификатор пользователя. Для корректной работы плагина этот флажок надо установить.
    Прим.: Если платеж инициируется неавторизованным пользователем, то идентификатор пользователя не в запросе не передается.

Выполнение тестовых заказов

После настройки параметров работы плагина следует выполнить тестовые заказы на сайте и проверить информацию по этим заказам в «1С-Битрикс», на вкладке Магазин > Заказы.

Запуск

После проверки работы плагина с использованием всех планируемых способов оплаты его можно переводить в рабочий режим. Для этого необходимо получить рабочие параметры и скорректировать настройки.

Получение рабочих параметров

  1. Свяжитесь со службой технической поддержки JetPay и сообщите следующую информацию:
    • название и URL сайта,
    • валюту платежной страницы,
    • URL-адрес для приема оповещений.
  2. Получите в службе технической поддержки JetPay значения следующих параметров:
    • ID проекта — идентификатор проекта в JetPay,
    • Секретная соль проекта — уникальный секретный ключ, который JetPay передает мерчанту.

Настройка рабочих параметров

  1. Откройте CMS «1С-Битрикс».
  2. Перейдите на вкладку Магазин > Настройки > Платежные системы.
  3. Выберите в списке JetPay и щелкните Изменить.
  4. Задайте рабочие параметры:
    • Выберите Нет в поле Тестовый режим.
    • Заполните поля Секретная соль проекта и ID проекта в соответствии со значениями, полученными от службы технической поддержки JetPay.
    • Убедитесь, что для остальных параметров заданы необходимые значения.
    • Убедитесь, что флажок Передавать идентификатор покупателя установлен.
  5. Щелкните Сохранить.

Использование

После запуска плагин работает самостоятельно и дополнительной настройки не требует.

Мы рекомендуем контролировать проведение заказов на вкладке Магазин > Заказы, а также следить, чтобы номера заказов были уникальными в рамках сайта. При дублировании номера заказа платежная страница не открывается.

Если после запуска плагина появляется необходимость переключить его в тестовый режим, следует обратить внимание на отображение метода оплаты на сайте. При выборе Да в поле Тестовый режим метод оплаты с помощью платежной страницы JetPay отображается на сайте, но все платежи проводятся как тестовые. Предупреждение о проведении платежа в тестовом режиме отображается на платежной странице.

Перед переводом плагина обратно в рабочий режим, необходимо убедиться, что поля ID проекта и Секретная соль проекта заполнены значениями, полученными от службы технической поддержки JetPay.

При возникновении вопросов по работе плагина обращайтесь в службу технической поддержки JetPay по адресу support@jetpay.kz.