Сайт, размещающий курсы, построен на платформе Kajabi (kajabi.com). Выбор обусловлен наличием встроенного конструктора сайтов, лендингов, курсов и других необходимых инструментов.
Проблемы интеграции в РФ
Kajabi предоставляет PayPal и Stripe. Stripe не поддерживается в РФ. Использование Stripe через американский счёт сопряжено с налоговыми рисками.
Решение: Yandex.Kassa через Yandex Cloud Functions
Для приёма платежей в РФ интегрирована Yandex.Kassa через Yandex Cloud Functions.
Процесс оплаты
- Кастомная страница оплаты: HTML-форма с полями для email и скрытым полем с ID оффера (offer ID).
- Отправка данных на Yandex Cloud Functions: Данные (email и offer ID) отправляются через AJAX-запрос. Yandex Cloud Functions обеспечивают стабильность и отказоустойчивость.
- Генерация ссылки оплаты в Yandex.Kassa: Yandex Cloud Functions генерирует ссылку с данными о сумме, валюте, описании товара и метаданными (metadata).
- Перенаправление на Yandex.Money: Пользователь перенаправляется на страницу оплаты Yandex.Money.
- Оплата: Пользователь выбирает способ оплаты.
- Webhook и перенаправление на сайт: После оплаты Yandex.Kassa отправляет вебхук на Zapier.
- Zapier: Zapier обрабатывает вебхук и отправляет данные в Kajabi через API.
- Выдача доступа к курсу: Kajabi предоставляет доступ к курсу.
- Перенаправление на страницу благодарности: Пользователь перенаправляется на страницу благодарности.
Сложности и решения
Сложности возникли с настройкой Yandex Cloud Functions и обработкой вебхуков. Необходимо было настроить CORS для разрешения запросов на Yandex Cloud Functions, а также корректно обрабатывать данные от Yandex.Kassa и Zapier. Yandex Cloud Functions предпочтительнее собственного VPS-сервера. Zapier упростил интеграцию с Kajabi.
Выводы
Интеграция платежной системы — сложная задача, требующая понимания работы сервисов и API. Выбор подходящей платежной системы и использование облачных функций и сервисов интеграции, таких как Zapier, упрощают процесс и обеспечивают надёжную работу. Решение достигается поэтапно, тестированием и итерациями.