Кодовые идентификаторы (
CourseType, ProductPrice, Permission и т. п.) приводятся как есть — они
помогают сопоставить понятие из интерфейса с тем, что упоминается в API и настройках.Школа и организация
| Термин | Определение |
|---|---|
| Школа | Отдельное образовательное пространство внутри платформы: свой домен, дизайн, курсы, ученики и настройки. Каждая школа изолирована и открывается на собственном адресе (*.exode.biz или собственный домен). См. Регистрация школы. |
| Продавец (seller) | Сущность монетизации, создаваемая вместе со школой. Отвечает за продажи, финансы, эквайринг и команду менеджеров. |
Сегмент (SchoolSegment) | Фундаментальный тип школы: Commerce (коммерческая — продажа курсов) или Corporate (корпоративное обучение без продаж). Задаётся при подготовке школы, через обычный интерфейс не меняется. См. Тип школы. |
Возможности (SchoolFeatures) | Набор функций и лимитов школы, который задаётся тарифом (флаги вроде courseCreation, onlinePayments, gamification и числовые лимиты maxUsers, maxActiveProducts). См. Подписка и тарифы. |
| Подписка школы | Тариф школы, хранящийся как «доступ к продукту» (access) с ценой; из него берётся набор SaaS-возможностей. Не путать с real-time подписками (WebSocket-события). |
Курсы и продукты
| Термин | Определение |
|---|---|
| Курс | Основная учебная единица: программа обучения из модулей и уроков. |
| Продукт | Монетизируемая обёртка над курсом (product): именно у продукта есть валюта, запуски, цены и группы. Курс продаётся через свой продукт. |
Тип курса (CourseType) | Формат обучения, выбирается один раз при создании: VideoCourse, TextCourse, Webinar, Assessment, PersonalLesson, Bundle (пакет). См. Типы курсов. |
Пакет (Bundle, isBundle) | Особый тип курса: не содержит собственных уроков, а объединяет несколько других курсов и продаётся как единый продукт. |
Запуск / поток (ProductLaunch) | Отдельный поток курса со своими датами продаж (saleStartAt, saleFinishAt) и тарифами. Один курс может иметь несколько запусков. См. Запуск и тарифы. |
Тариф (ProductPrice) | Конкретный вариант оплаты внутри запуска, который видит ученик: цена, срок доступа (accessDays), группа после оплаты (groupId). Тип задаётся ProductPriceType. |
Структура обучения
| Термин | Определение |
|---|---|
| Модуль | Раздел верхнего уровня в курсе, группирующий уроки. Может быть «папкой» или «модулем с содержанием» (withContent) со своими блоками и практикой. |
Урок (CourseLessonEntity) | Единица обучения внутри модуля: теория (контент-блоки) и/или практика. Имеет статус (Draft, OnCheck, Published) и тип доступа (Participant, Demo). См. Создание уроков и модулей. |
Практика (CourseLessonPracticeEntity) | Набор заданий в уроке, которые ученик выполняет и сдаёт. Состоит из вариантов; параметры прохождения — порог сдачи (passThreshold), лимит попыток (maxAttempts). См. Практика в уроке. |
Вариант практики (CourseLessonPracticeVariantEntity) | Независимый набор заданий внутри практики. При повторной попытке ученику может выдаваться другой вариант (retryVariantMode). |
Попытка (CourseLessonPracticeAttemptEntity) | Факт сдачи практики учеником со своим статусом (Created, OnReview, AutoVerified, Verified, OnCorrection, Failed, Stacked). См. Проверка практики. |
Задания
| Термин | Определение |
|---|---|
Задание (TaskEntity) | Отдельный вопрос/упражнение с формулировкой, вариантами и правильными ответами. Имеет тип ответа, сложность (complexity) и теги. |
| База заданий | Общий банк заданий школы (/manage/tasks, видимость Organization). Одно задание переиспользуется в разных уроках без повторного набора; шаблоны помечаются isTemplate. См. Создание заданий. |
Тип ответа (TaskAnswerType) | Формат задания: Single, Multiple, SingleWithAttachment, MultipleWithAttachment, Boolean, Short, Detailed, FillSpaces, Arrange, Mapping. Определяет, автоматическая или ручная проверка. См. Типы заданий. |
Продажи и оплаты
| Термин | Определение |
|---|---|
| Эквайринг (Acquiring) | Подключение к конкретному платёжному провайдеру с вашими реквизитами. Можно подключить несколько; провайдер выбирается из PaymentProviderType (Payme, Click, Uzum, Тинькофф и др.). См. Настройка кассы. |
| Счёт (Invoice) | Документ оплаты, созданный из корзины; содержит продукты, цены и скидки. К счёту привязывается платёж. См. Приём платежей. |
| Платёж (Payment) | Проведение оплаты по счёту через эквайринг. Статус — PaymentStatus (Created, WaitingPay, Processing, Completed, Canceled и др.). |
Рассрочка (Installment) | Оплата продукта частями по графику (ProductAccessBilling) с автосписанием по привязанной карте. Управляется в /manage/installments. См. Рассрочка и автосписания. |
Подписка (Subscription) | Регулярные автоматические списания с карты; при отмене доступ теряется. Тип биллинга наравне с рассрочкой. |
Промокод / скидка (DiscountEntity) | Снижение цены продукта: фиксированное (Amount) или процентное (Percent). Имеет код, лимит применений (maxApplies) и период действия. См. Промокоды и скидки. |
| Возврат (Refund) | Возврат средств ученику. Раздел /manage/refunds пока представляет собой заготовку интерфейса. |
Роли и доступ
| Термин | Определение |
|---|---|
| Роль | Именованный набор прав. Жёсткого списка ролей в системе нет — роль складывается из выданных прав. Типовые роли: владелец, администратор, преподаватель, куратор, менеджер продаж, менеджер продукта. См. Роли пользователей. |
Право (Permission) | Отдельное разрешение вроде CourseManage, CourseCurator, SellerSales, SchoolManageSettings. Из прав собирается роль сотрудника. |
| RBAC | Role-Based Access Control — управление доступом на основе ролей/прав. Маршруты объявляют требуемые права (auth), доступ открыт при наличии любого из них (canAny). См. Права доступа. |
Менеджер (SellerManagerType) | Сотрудник школы: глобальный (Seller, права на всю школу) или продукта (Product, права на один курс). |
Роль в обучении (ProfileRole) | Роль человека в учебном контексте: Student (ученик), Parent (родитель), Tutor (репетитор). |
| Группа | Учебный поток внутри курса: объединяет учеников и кураторов, имеет свой чат, расписание открытия уроков и правила доступа. Привязана к продукту курса (productId). См. Создание групп. |
Сертификаты и маркетинг
| Термин | Определение |
|---|---|
Сертификат (CertificateEntity) | Документ о завершении курса, выдаётся автоматически при полном прохождении. Веб-страница по публичной ссылке verify.exode.biz/certificate/<uuid> с QR-кодом. См. Сертификаты: обзор. |
| Снимок данных (snapshot) | Замороженные на момент выдачи значения сертификата (имя, курс, дата, оформление). Дальше сертификат строится только из снимка и не меняется. |
Шаблон сертификата (CertificateTemplateEntity) | HTML-дизайн сертификата; сами шаблоны хранятся в облачном хранилище Cloudflare R2. На старте — 5 системных оформлений. |
| UTM-метки | Параметры источника трафика (UtmParamsItemInput), по которым можно фильтровать счета в /manage/invoices и отслеживать, откуда пришла оплата. |
| Вебхук (Webhook) | Исходящее уведомление во внешнюю систему о событиях школы. Endpoint’ы настраиваются в разделе вебхуков школы (WebhookEndpoint). |