Добрый день!
Вам нужен именно Drupal? Если да, то почему?
Когда-то пробовал интегрировать Moodle и Joomla при помощи Joomdle (https://www.joomdle.com/), но ничего толкового из этого не вышло... возможно, уже компонент допилили, но после знакомства с WordPress джумла совершенно разонравилась!
Я сейчас активно интегрирую Wordpress (Woocommerce) и Moodle...
В общем, занимаюсь онлайн-подготовкой специалистов в строительстве к квалификационному экзамену - https://podgotovka-att.by/. Направлений много - более ста, вопросов в онлайн-тестах тоже много - от 500 до 1250 в одной дисциплине. В настоящее время используется непосредственно сам Moodle и лендинг с ссылками на гугл формы, заполняя которые пользователям автоматически отправляются либо счета (юрлицам), либо квитанции (физлицам). Регистрацией и отправкой реквизитов доступа пользователям, оплатившим услуги, пока приходится заниматься своими руками, а хотелось бы этот процесс полностью автоматизировать... чтобы появилось время для масштабирования - добавления новых направлений и т.д. ;)
Использую следующие решения:
В качестве платежного шлюза - ЕРИП (Единое расчетное информационное платежное ) - автоматизированная система, позволяющая мгновенно оплачивать товары и услуги через интернет (актуально только для Беларуси). У одного из провайдеров есть плагин под WooCommerce, позволяющий автоматически изменять состояние заказа после обработки платежа.
Идеальный алгоритм
- Пользователь зашел на сайт, нашел карточку интересующего курса (-ов), выбрал необходимые параметры доступа (количество дней), и отправил их в корзину;
- Зарегистрировался (в WordPress), совершил оплату не покидая сайт;
- Дождался обработки платежа, в личном кабинете нашел ссылку на свой курс (при этом он уже автоматически зарегистрирован в Moodle и записан на соответствующий курс, на необходимый ему промежуток времени);
- При необходимости пользователь в личном кабинете может продлить доступ, доплатить;
Актуально, в моем случае, для физлиц. Юрлицам автоматически выставляются счета, которые они могут распечатать в личном кабинете. Единственно, после оплаты статус заказа придется менять руками, остальное все аналогично физлицам.
Пока не нашел решения, как настроить начало отсчета времени доступа к курсу с момента первой авторизации или захода на страницу курса. Т.е. пользователь купил доступ к курсу на неделю, но зашел первый раз через 3 дня... чтобы именно тут начинался отсчет времени доступа... это уже на закуску, плагины с похожим функционалом есть ;)
Пока все хорошо ;) Если интересно, то могу поделиться своими нароботками...