НОВИНКА!
Занимательная математика от Трепачёва. Присоединяйтесь к нам!
146 of 152 menu

Таблица oc_recurring

Таблица oc_recurring предназначена для управления регулярными (рекуррентными) платежами в OpenCart. Она хранит информацию о подписках клиентов на товары с периодической оплатой.

Поля

Поле Тип данных Описание
recurring_id int Уникальный идентификатор профиля регулярного платежа (первичный ключ).
price decimal(10,4) Стоимость одного цикла подписки.
frequency enum('day','week','semi_month','month','year') Частота платежей: день, неделя, полмесяца, месяц, год.
duration int Продолжительность подписки в циклах. 0 означает бессрочную подписку.
cycle int Количество единиц frequency между платежами (например, 2 и month = раз в 2 месяца).
trial_status tinyint(1) Флаг наличия пробного периода: 1 - есть, 0 - нет.
trial_price decimal(10,4) Стоимость пробного периода.
trial_frequency enum('day','week','semi_month','month','year') Частота платежей в пробном периоде.
trial_duration int Продолжительность пробного периода в циклах.
trial_cycle int Количество единиц trial_frequency между платежами в пробном периоде.
status tinyint(4) Статус активности профиля: 1 - активен, 0 - неактивен.
sort_order int Порядок сортировки при отображении профилей в административной панели.

Как это работает

Таблица oc_recurring служит шаблоном для создания регулярных платежей. Когда клиент покупает товар с подпиской, система создает запись в таблице oc_order_recurring, которая ссылается на recurring_id из этой таблицы.

Профиль регулярного платежа определяет все параметры подписки: стоимость, частоту платежей, продолжительность и параметры пробного периода. Это позволяет гибко настраивать различные типы подписок для товаров.

Связь между товарами и профилями регулярных платежей осуществляется через таблицу oc_product_recurring, где указывается, какие профили доступны для конкретного товара.

Платежные модули (такие как PayPal Standard, Authorize.Net CIM и другие) используют информацию из этой таблицы для настройки регулярных платежей на стороне платежного шлюза.

Пример SQL-запроса

Получить все активные профили регулярных платежей с пробным периодом:

SELECT * FROM oc_recurring WHERE status = 1 AND trial_status = 1 ORDER BY sort_order;

Смотрите также

  • таблицу oc_order_recurring,
    которая хранит активные подписки клиентов
  • таблицу oc_product_recurring,
    которая связывает товары с профилями регулярных платежей
  • таблицу oc_order,
    которая хранит информацию о заказах
  • таблицу oc_product,
    которая содержит информацию о товарах
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить