# 3. Recurring Billing

User Type: **Super Administrator**
Source: *Mi Digital Academy - Education CRM Features Document*

---

## 3. Recurring Billing

### 3.1 Recurring Billing for Subscriptions
**What it does:** Sets the recurring billing for the subscriptions: the billing for the subscriptions (the recurring charge, the period, the amount) is set, so the subscriptions are billed (the charge is recurring). The Super Administrator configures the recurring billing (the subscription, the period, the amount, the charge date) so the billing is structured and the charges are explicit.

**Sub-features:**
- Recurring charge: the charge (the recurring charge, the amount)
- Billing period: the period (the period of the billing, e.g., the monthly, the annual)
- Charge date: the date (the date of the charge, e.g., the 1st of the month)
- Billing configuration: the configuration (the subscription, the period, the amount, the date)
- Billing execution: the execution (the charge is made per the configuration)
- Billing record: the record (the subscription, the charge, the period, the date)
- Audit logging of the billing configuration and the executions

**Super Administrator User Journey:**
1. Super Admin configures the recurring billing: the subscription (the subscription, the plan), the period (the period of the billing, e.g., the monthly, the annual), the amount (the amount of the charge), and the charge date (the date of the charge, e.g., the 1st of the month); the billing is explicit.
2. Sets the recurring charge: the charge (the recurring charge, the amount); the charge is the amount.
3. Sets the billing period: the period (the period of the billing, e.g., the monthly, the annual); the period is the frequency.
4. Sets the charge date: the date (the date of the charge, e.g., the 1st of the month); the date is the timing.
5. Saves; the recurring billing is live, and the subscriptions are billed (the charge is recurring).
6. The charge date arrives; the billing is executed (the charge is made, the amount is charged, the subscription is renewed); the billing is recorded.
7. For a billing change (the period, the amount, the date updated), Super Admin changes the billing (the new period, the new amount, the new date, the time); the change is recorded.
8. The billing configuration and the executions are audit-logged with the subscription, the charge, and the timestamp.

**Rules & Edge Cases:**
- The recurring charge is the amount (the recurring charge, the amount); the charge is the value.
- The billing period is the frequency (the period of the billing, e.g., the monthly, the annual); the period is the schedule.
- The charge date is the timing (the date of the charge, e.g., the 1st of the month); the date is the control.
- A billing change (the period, the amount, the date updated) is recorded (the new period, the new amount, the new date, the time); it is auditable.
- The recurring billing is visible (the subscriptions, the charges, the periods, the dates); the billing is managed.
- Billing configuration and executions are audit-logged with the subscription, charge, and timestamp.

### 3.2 Auto-Renewal Processing
**What it does:** Handles the auto-renewal processing: the auto-renewal of the subscriptions (the renewal, the charge, the notification) is processed, so the subscriptions are renewed automatically (the renewal is the continuity). The Super Administrator configures the auto-renewal (the renewal, the charge, the notification, the failure handling) so the renewals are structured and the processing is explicit.

**Sub-features:**
- Auto-renewal configuration: the configuration (the renewal, the charge, the notification, the failure handling)
- Renewal processing: the processing (the renewal is processed, the charge is made)
- Renewal notification: the notification (the notification to the user, the renewal)
- Failure handling: the handling (the handling of the failed renewal, e.g., the retry, the grace period)
- Renewal record: the record (the subscription, the renewal, the charge, the date)
- Renewal view: the view (the renewals, the period)
- Audit logging of the auto-renewal configuration and the processing

**Super Administrator User Journey:**
1. Super Admin configures the auto-renewal: the renewal (the renewal of the subscription), the charge (the charge for the renewal), the notification (the notification to the user, the renewal), and the failure handling (the handling of the failed renewal, e.g., the retry, the grace period); the auto-renewal is explicit.
2. Sets the renewal processing: the processing (the renewal is processed, the charge is made); the processing is the action.
3. Sets the renewal notification: the notification (the notification to the user, the renewal); the notification is the communication.
4. Sets the failure handling: the handling (the handling of the failed renewal, e.g., the retry, the grace period); the handling is the recovery.
5. Saves; the auto-renewal is live, and the subscriptions are renewed automatically.
6. The renewal date arrives; the auto-renewal is processed (the renewal is made, the charge is charged, the user is notified); the renewal is recorded.
7. For a configuration change (the charge, the notification, the failure handling updated), Super Admin changes the configuration (the new charge, the new notification, the new failure handling, the time); the change is recorded.
8. The auto-renewal configuration and the processing are audit-logged with the subscription, the renewal, and the timestamp.

**Rules & Edge Cases:**
- The auto-renewal configuration is the control (the renewal, the charge, the notification, the failure handling); the configuration is the logic.
- The renewal processing is the action (the renewal is processed, the charge is made); the processing is the execution.
- The renewal notification is the communication (the notification to the user, the renewal); the notification is the message.
- A configuration change (the charge, the notification, the failure handling updated) is recorded (the new charge, the new notification, the new failure handling, the time); it is auditable.
- The auto-renewals are visible (the renewals, the period); the processing is managed.
- Auto-renewal configuration and processing are audit-logged with the subscription, renewal, and timestamp.

### 3.3 Subscription Renewal and Upgrade Billing
**What it does:** Handles the subscription renewal and upgrade billing: the billing for the subscription renewals and upgrades (the renewal billing, the upgrade billing, the proration) is handled, so the renewals and upgrades are billed (the billing is the charge). The Super Administrator configures the renewal and upgrade billing (the renewal, the upgrade, the proration, the charge) so the billing is structured and the charges are explicit.

**Sub-features:**
- Renewal billing: the billing (the billing for the renewal, the amount)
- Upgrade billing: the billing (the billing for the upgrade, the amount, the proration)
- Proration: the proration (the proration of the upgrade, the remaining period)
- Billing configuration: the configuration (the renewal, the upgrade, the proration, the charge)
- Billing execution: the execution (the billing is made per the configuration)
- Billing record: the record (the subscription, the billing, the amount, the date)
- Audit logging of the billing configuration and the executions

**Super Administrator User Journey:**
1. Super Admin configures the renewal and upgrade billing: the renewal (the renewal of the subscription), the upgrade (the upgrade of the subscription), the proration (the proration of the upgrade, the remaining period), and the charge (the charge for the billing); the billing is explicit.
2. Sets the renewal billing: the billing (the billing for the renewal, the amount); the billing is the charge.
3. Sets the upgrade billing: the billing (the billing for the upgrade, the amount, the proration); the billing is the charge.
4. Sets the proration: the proration (the proration of the upgrade, the remaining period); the proration is the fairness.
5. Saves; the renewal and upgrade billing is live, and the renewals and upgrades are billed.
6. A subscription is renewed or upgraded; the billing is executed (the billing is made, the charge is charged, the proration is applied); the billing is recorded.
7. For a billing change (the amount, the proration updated), Super Admin changes the billing (the new amount, the new proration, the time); the change is recorded.
8. The billing configuration and the executions are audit-logged with the subscription, the billing, and the timestamp.

**Rules & Edge Cases:**
- The renewal billing is the charge (the billing for the renewal, the amount); the billing is the value.
- The upgrade billing is the charge (the billing for the upgrade, the amount, the proration); the billing is the value.
- The proration is the fairness (the proration of the upgrade, the remaining period); the proration is the control.
- A billing change (the amount, the proration updated) is recorded (the new amount, the new proration, the time); it is auditable.
- The renewal and upgrade billing is visible (the subscriptions, the billings, the amounts, the dates); the billing is managed.
- Billing configuration and executions are audit-logged with the subscription, billing, and timestamp.
