Плагин «Подписка 3KL» часть 1. Интеграция с сервисами приема платежей

Сергей Гусев, Алексей Городков
28.11.2024
Описываемый в статье плагин enrol_otpay называется «Подписка 3КL» начиная с версии 4.1.11b.  Начиная с версии 3.9.18b он назывался «Платная подписка 3KL». В более ранних версиях используется название «OT Pay».
Связанные статьи:

Плагин «Подписка 3KL» часть 2. Глобальные настройки (глобальные настройки плагина в зависимости от выбранных эквайеров и типов оплаты)

1.  Общие настройки плагина
2.  Глобальные настройки способов оплаты (эквайеров)
2.1.  Настройки способа генерации формы
2.2.  Настройки способа оплаты ЮКаssа
2.3.  Настройки способа оплаты Сбер
2.4.  Настройки способа оплаты Epay (JSC Halyk bank)
3.  Настройка купонов
3.1. Общая информация по использованию купонов
3.2.  Панель управления купонами
4.  Глобальные настройки добровольной заморозки подписок

Плагин «Подписка 3KL» часть 3. Настройка платной подписки на курс  (добавление платной подписки в курс, настройка способа зачисления, решения)

1.  Настройка платной подписки в курсе
1.1.  Общие настройки платной подписки в курсе
1.2.  Настройки способа оплаты «Зачисление с подтверждением»
1.3.  Настройки способа электронной оплаты (ЮKassa, Сбербанк, Epay (JSC Halyk bank))
1.4.  Настройки способа «Бесплатный доступ»
1.5.  Настройки способа «Зачисление по купону»
2.  Настройки условий доступа
3.  Панель администрирования заявок
3.1.  Особенности администрирования заявок
3.2.  Настройка транслирования данных из поля «Комментарий» эквайеру
4.  Настройка добровольной заморозки подписок
5.  Примеры и решения
5.1.  Настройка сценария «Сквозная регистрация» (упрощенная процедура регистрации с мгновенной авторизацией)
5.2.  Применение добровольной заморозки подписки на курс
5.3.  Настройка доступа к подписке на курс по условию
5.4.  Типовые решения по настройке тарифов и льгот
5.4.1.  Единый тариф
5.4.2.  Льготный период подписки на курс
5.4.3.  Льготы на переподписку на текущий курс
5.4.4.  Льготы на подписку на второй курс
5.4.5.  Различные тарифы на первоначальную подписку на курс, продление и возобновление курса
5.4.6.  Разные тарифы в зависимости от срока подписки
5.4.7.  Разные тарифы в зависимости от доступных материалов и заданий (контента)
5.4.8.  Ознакомительный доступ: бесплатный доступ к первым двум секциям и платная переподписка для доступа к остальным секциям
5.4.9.  Один тариф для нескольких курсов
5.5.  Применение купонов
5.5.1.  Создание купона и способа записи для зачисления на курс по купону
5.5.2.  Купон на скидку
5.6.  Возможные проблемы с активацией плагина
Функционал, описанный в данной статье, в полном объеме доступен в СЭО 3КL начиная с версии 3.9.11b.
Если вы используете более раннюю версию системы — обратитесь с заявкой на проведение обновления в службу технической поддержки ООО «Открытые технологии».

1. Общая информация

1.1. Общая информация о плагине

Разработанный ООО «Открытые технологии» плагин «Подписка 3KL» предназначен для организации сценариев платной подписки и может применяться для автоматической записи слушателей на курс после онлайн-оплаты. Плагин позволяет:

  • устанавливать цены и сроки подписки с поддержкой скидочных купонов;
  • осуществлять интеграцию с сервисами платежей (эквайерами);
  • настраивать условный доступ к подписке и оплате;
  • создавать единый тариф для подписки на несколько курсов;
  • устанавливать разные тарифы на курс, в зависимости от:
    • общего срока подписки;
    • доступных материалов и заданий (контента);
    • количества обращений пользователя к курсу (первоначальная подписка на курс, продление и возобновление курса могут быть настроены на разную стоимость).
  • предоставлять пользователям возможность добровольной приостановки доступа к подписке (заморозки), для курсов, ограниченных по времени;
  • задавать льготный период подписки на курс;
  • устанавливать льготную стоимость при продлении или повторной подписке на курс;
  • организовывать ознакомительный доступ к курсу (бесплатный доступ к первым нескольким секциям и платная подписка для доступа к остальным секциям);
  • реализовывать сценарии бесплатной подписки (по купону, по запросу, по значениям полей профиля пользователя).

Плагин поддерживает следующие способы оплаты:

  • электронная (посредством интернет-эквайринга);
  • по сгенерированному счету, с последующей оплатой через банк;
  • купоном.

Для использования плагина нужно выполнить следующие действия:

  • проверить состояние активации плагина «Подписка 3KL»*;
  • выполнить глобальную настройку СЭО 3КL для организации приема платежей;
  • добавить и настроить способы записи на курс;
  • протестировать прохождение платежей.

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

-Вернуться к содержанию-

1.2. Общая информация об интернет-оплате

Интернет-эквайринг реализует возможность безналичной оплаты услуг и товаров, предоставляемых на вашем сайте, с помощью банковской карты; электронными деньгами (ЮMoney, WebMoney, Qiwi-кошелёк); через терминалы (Евросеть, Qiwi, Элекснет); а также посредством мобильных платежей через сотовых операторов.

В процессе электронной оплаты задействованы несколько участников:

  • пользователь, осуществляющий покупку (покупатель);
  • банковское учреждение, в котором открыт расчетный счет покупателя (эмитент);
  • банковское учреждение, в котором открыт расчетный счет продавца (банк-эквайер);
  • непосредственно продавец;
  • процессинговый центр системы платежей;
  • электронная система платежей;
  • расчетный банк системы платежей (с его помощью взаимодействуют участники платежной системы).

Для приема платежей через интернет, продавцу нужно:

  • заключить договор с эквайером;
  • подключить онлайн-кассу (согласно действующей редакции Закона № 54-ФЗ, для торговли через интернет необходимо подключить онлайн-кассу и выписывать чеки);
  • настроить технические средства своего ресурса (например, среды электронного обучения) для работы с выбранным эквайером.
Пример сценария оплаты картой:
1) В Системе (вашей СЭО 3КL) настроена подписка на курсы с возможностью оплаты картой.
2) Пользователь заходит на страницу описания интересующего его курса, видит информацию о стоимости и условиях подписки и, если его все устраивает, выбирает вариант оплаты банковской картой.
3) Система перенаправляет его на страницу Платежного сервиса эквайера, где пользователь вводит данные банковской карты.
4) Платежный сервис эквайера формирует запрос и направляет его в Банк-эмитент.
5) При успешной обработке запроса проводится авторизация в Платежной системе.
6) Если данные введенной карты верны, баланс (дебетовый или кредитный) по ней положителен и денежных средств достаточно для оплаты, то Банку-эквайеру поступает уведомление о том, что операция может быть проведена.
7) Банк-эквайер получает клиринговый файл.
8) Выполняется возмещение по операциям в пользу интернет-ресурса (Системы).
9) Формируется отчет о платеже, Пользователь перенаправляется обратно в Систему и подписывется на курс.
Обратите внимание: все этапы, связанные непосредственно с оплатой, проходят вне СЭО 3КL и обеспечиваются службами и программными средствами банков плательщика и получателя.

-Вернуться к содержанию-

1.3. Особенности интеграции СЭО 3КL с сервисами платежей

В текущей версии плагина «Подписка 3KL» реализована интеграция со следующими эквайерами: Сбер, ЮKassa, Quazkom.

Если у вас заключен договор с эквайером, который еще не поддерживается в СЭО 3КL, вы можете обратиться в техническую поддержку ООО «Открытые технологии», чтобы доработать плагин (доработка платная). Для этого необходимо создать в личном кабинете заявку в категории «Выделенный специалист/Разработчик или сисадмин». Типовая трудоемкость интеграции с новыми системами процессинга платежей составляет 32 нормо-часа. Перед началом работ специалисты технической поддержки выполнят проверку API сервиса и возможности реализации интеграции. Это обусловлено тем, что не все сервисы можно интегрировать с системой.

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

Некоторые сервисы могут иметь свои готовые плагины интеграции, которые можно поставить бесплатно, через заявку на сторонний плагин. Однако, они не будут покрываться гарантийной техподдержкой и у них отсутствует поддержка тех уникальных возможностей, которые предоставляет плагин «Подписка 3KL»: подписка с регистрацией в одно действие, скидочные купоны, отдельный тариф на продление, временная заморозка по инициативе слушателя и т. п.

-Вернуться к содержанию-

2. Возможности плагина

2.1. Сценарии оплаты

2.1.1. Сценарии «Зачисление на курс по купону»

Купон на бесплатное зачисление

  1. Администратор создает и настраивает в системе купоны для бесплатного зачисления.
  2. Пользователь вводит код купона на зачисление на курс.
  3. Система проверяет купон, и, если он действителен, тут же записывает пользователя на курс.
  4. Администратор просматривает статистику по использованным купонам.

Купон на скидку

  1. Администратор создает и настраивает в системе скидочные купоны.
  2. Пользователь вводит коды купонов на скидку.
  3. Система проверяет купоны и пересчитывает стоимость курса с учетом скидки по действующим купонам; отображает пользователю цену со скидкой и кнопку перехода к оплате.
  4. Администратор просматривает статистику по использованным купонам.

-Вернуться к содержанию-

2.1.2. Сценарий «Оплата по счету»
  1. Администратор добавляет в курс способ оплаты «Зачисление с подтверждением», настраивает простую оплату через банк и устанавливает цену подписки.
  2. Пользователь выбирает оплату по счету - «Сформировать счет».
  3. Система выдает пользователю форму с запросом Наименование/ФИО плательщика.
  4. Пользователь вводит Наименование/ФИО плательщика в форму и нажимает «Сформировать счет».
  5. Система формирует извещение-квитанцию в формате PDF.
  6. Пользователь распечатывает квитанцию и оплачивает счет в банке.
  7. Администратор в «Панели администрирования заявок» видит, что пользователь сформировал счет. При поступлении оплаты управляющий вручную изменяет статус заявки на «Оплачено».
  8. Система зачисляет пользователя на курс.

-Вернуться к содержанию-

2.1.3. Сценарий «Электронная оплата»
  1. Администратор добавляет в курс способ «Электронная оплата»  настроенного в системе эквайера и устанавливает цену подписки.
  2. Пользователь выбирает способ электронной оплаты - «Перейти на страницу оплаты».
  3. Система отображает форму ввода реквизитов карты/электронного кошелька/оплаты с мобильного и других доступных способов оплаты (в зависимости от настроек).
  4. Пользователь вводит необходимые данные и производит оплату.
  5. Система электронной оплаты передает информацию в СЭО 3КL об успешном платеже**.
  6. Система зачисляет пользователя на курс.
  7. Администратор просматривает статистику по поступившим оплатам.

_________________________________
** — Для соблюдения закона №54-ФЗ, при проведении электронных платежей покупателю должен выдаваться кассовый чек, подтверждающий оплату. Если у вас подключена облачная касса, вышеописанный сценарий дополняется под сценарием «Облачная касса»:

  1. Эквайер передает данные о платеже в облачную кассу.
  2. Облачная касса формирует чек и высылает его Пользователю.
Для предварительного ознакомления с процессом оплаты можно использовать данные тестовых карт, предоставляемых некоторыми мерчантами, например ЮКасса, СберБанк.

-Вернуться к содержанию-

2.2. Сценарии управления подписками и доступа к ним

2.2.1. Сценарий «Заморозка подписки»
  1. Администратор включает в курсе функцию добровольной заморозки и настраивает ее параметры.
  2. У пользователя ограниченная по времени подписка на курс и, по объективным причинам, он не может некоторое время обучаться на курсе. Пользователь активирует добровольную заморозку на нужный ему период.
  3. Система проверяет, соответствует ли запрашиваемый период заморозки настройкам, и приостанавливает обучение пользователя в курсе.
  4. По окончанию срока заморозки Пользователь продолжает свое обучение, время подписки автоматически продлевается на время заморозки.

-Вернуться к содержанию-

2.2.2. Сценарий «Доступ по условию»
  1. Администратор добавляет в курс способ зачисления на основе плагина «Платная подписка 3KL» и настраивает в нем условия доступа.
  2. Пользователь заходит на страницу описания интересующего его курса.
  3. Система проверяет условия доступа к зачислению.
  4. Если пользователь соответствует условиям, ему становится доступна возможность быть зачисленным на курс.
Сценарий может быть применен как для платного, так и бесплатного доступа к курсу; позволяет сформировать сложную логику условий доступа; дает возможность настраивать видимость условий доступа (описания) в зависимости от соответствия условиям или авторизации пользователя в системе.

-Вернуться к содержанию-

2.3. Возможности настройки внешнего вида

Пользователь на странице описания курса будет видеть на плашках платных способов зачисления на курс: предлагаемый способ оплаты; стоимость курса (полную и со скидкой, если настроено); поле для ввода кода купона (если настроено); кнопку перехода к оплате (генерации счета). Внешний вид плашек будет зависеть от выбранных при настройке плагина способов оплаты в курсе (Рис. 2.3.1).

Рис. 2.3.1. Пример страницы описания курса с вариантами оплаты.

Настройки плагина позволяют добавить на плашку способа оплаты текстовое пояснение для пользователя (Рис. 2.3.2).

Рис. 2.3.2. Оформление комментариев к способам оплаты курса.
Дополнительная информация о настройке платной подписки в вебинаре:
Для привлечения внимания к платным курсам в Витрине курсов, можно использовать дополнительные элементы оформления самой витрины: стикеры с ценой курса; тематические наклейки (Акция, Скидка, Новинка и т. п.); информацию об уровне сложности и т. п. (Рис. 2.3.3).
При этом следует помнить, что никакие данные из плагина «Подписка 3KL» автоматически транслироваться в витрину не будут и такое оформление необходимо выполнять вручную.
Подробная информация в статье «Настройка отображения элементов «Витрины курсов 3КL» через дополнительные поля курса».

Рис. 2.3.3. Фрагмент Витрины курсов.

-Вернуться к содержанию-

3. Последовательность действий при интеграции с существующими сервисами платежей

Если удобного для вас эквайера еще нет в перечне доступных — инициируйте процедуру интеграции с ним.
Действие ЮKassa (бывшая Яндекс Касса***) Сбер Epay (JSC Halyk bank) (бывший «Казкоммерцбанк»****)

1) Выбрать подходящего вам эквайера.

Рейтинг эквайеров можно посмотреть здесь.

Доступны дополнительные инструменты: автоплатежи, оплата в рассрочку и др.

Поддерживает ряд партнерских онлайн-касс.

Комиссия — 3,5-6%.

Сайт сервиса.

Все платежи защищены по международным стандартам.

Для разрешения любых вопросов работает круглосуточная служба поддержки.

Платежи проводятся через собственную
онлайн-кассу.

Комиссия — 1,8-2%.

Описание услуги эквайринга.

Контакты.

Крупнейший в Казахстане коммерческий банк-эквайер.

Комиссия — 2,5-4%.

Описание, тарифы, договор и регистрационная форма.

Контакты.

2) Заключить договор с выбранным эквайером.

Воспользоваться эквайрингом могут ИП или юридические лица. Для заключения договора с эквайером нужно подать заявку на его сайте (заявку на обратный звонок менеджера), в которой указать базовую информацию: Ф.И.О, контакты и ИНН.

Заявка на подключение. Заявка на подключение. Форма для регистрации.

3) Пойти проверку (в процессе заключения договора эквайер проводит проверку вашего ресурса)

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

Служба безопасности ЮKassa проверяет подключаемые площадки на соответствие требованиям:

  • наличие SSL-сертификата (для правильной работы интеграции);
  • наличие на подключаемом сайте товаров с конкретными ценами (например, стоимость платных курсов);
  • наличие тарифов и пользовательского соглашения, если предлагаются платные услуги;
  • наличие реквизитов организации и контактных данных;
  • отсутствие переадресации оплаты (оплата должна производиться исключительно на подключаемом сайте).

Интеграция со Сбербанком проходит проще чем с ЮKassa: проверка сайта на
товары и цены, обычно, не проводится.

Требования, предъявляемые к ресурсу магазина.

 Нет информации.

4) Подключить облачную кассу

Для соблюдения закона №54-ФЗ при проведении электронных платежей необходимо подключиться к облачной кассе, либо принять решение о формировании чеков вручную (для этого у вас должен дежурить кассир, который будет оперативно формировать и высылать чеки).

Чтобы открыть онлайн кассу, необходимо зарегистрироваться в личном кабинете на сайте поставщика услуги, заполнить данные организации, подписать Договор, оплатить счет, получить номера ККТ и зарегистрировать их в ФНС.

СЭО 3КL не отправляет кассовые чеки на почту слушателя, это осуществляют другие сервисы.

Предоставляет интеграционный сервис с онлайн-кассами:

Свой сервис.  Нет информации.

5) Выполнить настройку СЭО 3КL для работы с выбранным эквайером.

Здесь вам понадобятся:

Настройки способа оплаты ЮKassa.

Пример данных, которые сообщает ЮKassa пользователю сервиса:
Адрес сервера для запросов - https://money.yandex.ru/eshop.xml
ShopID xxxxxx
Scid xxxxxxx
ShopPassword 123456

Настройки способа оплаты Сбер.

Пример технической информации от Сбербанка:
Адреса серверов для API запросов:
Тестовый сервер - https://3dsec.sberbank.ru/
payment/rest/
Боевой сервер - https://securepayments.sberbank.ru

Настройки способа оплаты Epay (JSC Halyk bank).

6) Протестировать корректность оплаты из СЭО 3КL

После настройки и активации интеграции проводится проверка корректности оплаты с помощью тестового сервера эквайера и тестовых карт.

Далее, при успешном результате, тестируются реальные платежи.

Тестовые материалы ЮКасса Тестовые материалы Сбер  Нет информации.
*** — Компания «Яндекс.Деньги» объявила о ребрендинге сервиса с 15 декабря 2020г., изменив наименование на ЮMoney. Платежный сервис для бизнеса Яндекс.Касса теперь называется ЮKassa. В плагине «Подписка 3KL» обновлены платежные протоколы в связи с ребрендингом ЮKassa. После обновления СЭО 3KL все изменения применятся автоматически. Если используется устаревший способ подключения («протокол HTTP» или «старый платежный API»), во время обновления произойдет автозамена в настройке «Адрес сервера для запросов» со старого адреса на новый. В случае использования в этой настройке какого-либо нестандартного решения, необходимо вручную внести изменения так, чтобы в платежных запросах был прописан адрес https://yoomoney.ru/eshop.xml. Рекомендуем выполнить все необходимые настройки в Юkassa и переходить на использование способа подключения «Протокол API».
**** — В процессе слияния в июле 2018 года «Казкоммерцбанк» прекратил свое существование как юридическое лицо.  Объединённый банк стал самым крупнейшим в Казахстане и оставил название «Halyk Bank».  Изменение названия эквайера обеспечило актуальность информации в инструменте онлайн-оплаты для СЭО 3KL, используемых в учебных заведениях Казахстана. В плагине «Подписка 3KL» обновлены платежные протоколы в связи с изменением названия эквайера Epay (JSC Halyk bank) .

-Вернуться к содержанию-

4. Часто задаваемые вопросы по интеграции с платежными сервисами

  • ЮKassa

1) Где найти адрес сервера для запросов, пароль магазина и номер витрины для передачи в техническую поддержку?

Адрес сервера для запросов, пароли (в том числе и пароль магазина shop password) и номера витрины выдаются ЮKassa. Проверьте входящие электронные письма или обратитесь в техподдержку ЮKassa.


2) В процессе заключения договора от ЮКаssа приходят сообщения:
«На сайте https://ваш_сайт(СЭО) нет платных товаров/услуг. Разместите цены и сообщите нам» или
«На сайте нет цен. Необходимо разместить на сайте подробную информацию о своих товарах и услугах (опубликуйте каталог). Сообщите нам, когда всё будет готово».
Как ответить и что делать?

Предоставьте техподдержке ЮKassa ссылку на курс из СЭО 3КL в таком виде, чтобы было видно, что имеется платная услуга. Например, отправьте ссылку на страницу описания курса, где указано, что курс платный (размещена цена).


3) Нам пришло письмо от техподдержки ЮKassa:
«Обращаем Ваше внимание, что для проверки подключаемого сайта нашей службой безопасности необходимо чтобы сайт соответствовал следующим требованиям:
- На сайте обязательно наличие хотя бы одного товара. Если на сайте представлено несколько разделов, обязательно наполнение каждого из разделов хотя бы одним товаром с актуальной информацией и реальной ценой.
- Если на сайте принимается оплата за услуги, то должны быть размещены тарифы и пользовательское соглашение.
- Необходимо указание реквизитов организации и контактных данных.
- Оплата должна производиться на подключаемом сайте, без переадресаций.
Просьба сообщить по факту завершения наполнения сайта».
Что делать и как на него ответить?

В ответном письме ЮKassa необходимо предоставить ссылки на страницы с описаниями платных курсов. В самой же среде электронного обучения в основном меню можно расположить/настроить пользовательское соглашение и прайс-лист (тарифы), в блоке html/подвале/шапке указать реквизиты организации. Расположить ссылки на эти страницы через элементы док-панели.


4) Как правильно заполнить техническую анкету API?

Рис. 4.1. Пример технической анкеты от ЮKassa.
  • Наименование магазина. То название, которое будет видеть пользователь во время платежа.
  • Адрес сайта. Указывается адрес (URL) ресурса (например, https://moodle.opentechnology.ru).
  • CMS. Система управления контентом сайта (движок).
  • Адрес для уведомлений. Адрес интеграции, отвечающей на запросы эквайера (https://ваш_сайт_СЭО/enrol/otpay/plugins/yandex/request./notification.php).
  • Email для реестров. Адрес электронной почты, на которую будут приходить реестры платежей.

  • Сбер

1) Как создать кнопку для оплаты курса, если у нас есть бланк квитанции сбербанка с QR-кодом? Можем ли мы сделать так, чтобы слушатель мог выбрать способ оплаты по QR-коду?

На текущий момент, функционала для квитанции с QR-кодом в плагине «Платная подписка 3KL» нет. В рамках расширенной технической поддержки за нормочасы мы можем рассмотреть возможность разработки данного функционала.


-Вернуться к содержанию-

Теги: интеграция, подписка
Рейтинг ответа: 5 (2 оценок)

Комментарии запрещены