Документация LMS версия 0.1.0

Документация/Как пользоваться/Продажи

Этого ещё нет в продукте — описывать пока нечего

Продажи

Продаж в продукте ещё нет. Ни продуктов, ни тарифов, ни заказов, ни приёма платежей, ни возвратов, ни чеков. Это следующий крупный этап разработки.

Описывать их как работающие мы не будем: страница, описывающая несуществующее, — это тот же дефект, что «функция объявлена, а вызова нет», только в документации, где его не поймает тест.

Что уже решено #

Устройство спроектировано подробно, и решения на него уже приняты — они не изменятся от того, что код ещё не написан:

  • Продукт ≠ тариф. Продукт — то, что получает ученик. Тариф — условия продажи: набор продуктов, цена, срок доступа, правила. Один продукт продаётся несколькими тарифами, и это и есть тарифная сетка.
  • Заказ ≠ покупка. Заказ — намерение и деньги. Покупка — факт выданного доступа. Заказ может быть оплачен, а доступ выдан позже или отозван.
  • Деньги — целые числа в копейках, всегда парой с кодом валюты. Никаких дробных: у валют разный порядок, и число без кода валюты бессмысленно.
  • Состояние платежа берётся повторным запросом к провайдеру, а не из тела уведомления: у ЮKassa подписи уведомлений нет вообще, и тело можно подделать.
  • Идемпотентность с обеих сторон. Повтор уведомления не выдаёт доступ дважды, повтор запроса не создаёт второй платёж.

Что делать сегодня #

Доступ выдаётся руками — см. Доступы. Это не заглушка: тем же путём переносят учеников с другой платформы.

Приём оплаты — на стороне вашего лендинга или платёжного сервиса, доступ после оплаты выдаётся вручную или, когда появится API, автоматически.

Где следить #

Раздел Обновления — там будет сказано, когда это появится. Спроектированный состав операций виден в Проекте API, с той же пометкой: это замысел, а не работающий код.

Эта страница в Markdown