# 2. Payment Methods & Billing Settings — Test Cases

User Type: **Training Institute**
Source: *Mi Digital Academy - Education CRM Features Document*
Spec: payment_methods_billing_settings.md — every feature, sub-feature, and rule covered

## Test Execution Policy

- Zero tolerance: any deviation from the documented behavior is a defect.
- Every failed test is logged with a Bug ID, the feature, the sub-feature, the expected vs actual result, and the severity; 100% of bugs are fixed before the group passes.
- 100% pass rate is required for the group to be marked complete.

## Coverage Matrix

| Feature | Sub-feature / Rule | Test IDs |
|---------|--------------------|----------|
| 2.1 | Payment methods list | TC-TI-5-02-001 |
| 2.1 | Add a payment method | TC-TI-5-02-002 |
| 2.1 | Set a default method | TC-TI-5-02-003 |
| 2.1 | Remove a payment method | TC-TI-5-02-004 |
| 2.1 | Last four and expiry shown | TC-TI-5-02-005 |
| 2.1 | Method update supported | TC-TI-5-02-006 |
| 2.1 | Management available on web and mobile | TC-TI-5-02-007 |
| 2.1 | Management event logging (added, default set, removed) | TC-TI-5-02-008 |
| 2.1 | Audit logging of the payment method management | TC-TI-5-02-009 |
| 2.1 | Rule: The default method is used for recurring charges. | TC-TI-5-02-001 |
| 2.1 | Rule: A method with an active auto-renewal cannot be removed without reassignment. | TC-TI-5-02-002 |
| 2.1 | Rule: Management events (added, default set, removed) are logged with the account and the timestamp. | TC-TI-5-02-003 |
| 2.1 | Rule: The payment method management is audit-logged with the account and the timestamp. | TC-TI-5-02-004 |
| 2.2 | Billing contact view | TC-TI-5-02-010 |
| 2.2 | Edit billing contact name and email | TC-TI-5-02-011 |
| 2.2 | Edit billing address | TC-TI-5-02-012 |
| 2.2 | Details appear on new invoices | TC-TI-5-02-013 |
| 2.2 | Changes saved | TC-TI-5-02-014 |
| 2.2 | Billing available on web and mobile | TC-TI-5-02-015 |
| 2.2 | Billing event logging (updated) | TC-TI-5-02-016 |
| 2.2 | Audit logging of the billing contact and address | TC-TI-5-02-017 |
| 2.2 | Rule: The changes are reflected on new invoices only. | TC-TI-5-02-010 |
| 2.2 | Rule: The billing contact email receives the invoice copies. | TC-TI-5-02-011 |
| 2.2 | Rule: Billing events (updated) are logged with the account and the timestamp. | TC-TI-5-02-012 |
| 2.2 | Rule: The billing contact and address is audit-logged with the account and the timestamp. | TC-TI-5-02-013 |
| 2.3 | Billing cycle dates shown | TC-TI-5-02-018 |
| 2.3 | Next billing date shown | TC-TI-5-02-019 |
| 2.3 | Mid-cycle change proration | TC-TI-5-02-020 |
| 2.3 | Proration breakdown shown | TC-TI-5-02-021 |
| 2.3 | Proration applied to the next invoice | TC-TI-5-02-022 |
| 2.3 | Cycle available on web and mobile | TC-TI-5-02-023 |
| 2.3 | Cycle event logging (viewed) | TC-TI-5-02-024 |
| 2.3 | Audit logging of the billing cycle and proration | TC-TI-5-02-025 |
| 2.3 | Rule: The proration is for the remaining cycle days. | TC-TI-5-02-018 |
| 2.3 | Rule: The proration is applied to the next invoice. | TC-TI-5-02-019 |
| 2.3 | Rule: Cycle events (viewed) are logged with the account and the timestamp. | TC-TI-5-02-020 |
| 2.3 | Rule: The billing cycle and proration is audit-logged with the account and the timestamp. | TC-TI-5-02-021 |

## 2.1 Payment Method Management

### TC-TI-5-02-001 — Payment methods list
**Type:** Positive
**Covers:** 2.1 → Payment methods list; Rule: The default method is used for recurring charges.
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Payment methods list.
2. Observe the result and verify the full behavior: Payment methods list.
**Expected Result:** Payment methods list — delivered exactly as documented.
**Priority:** Critical

### TC-TI-5-02-002 — Add a payment method
**Type:** Positive
**Covers:** 2.1 → Add a payment method; Rule: A method with an active auto-renewal cannot be removed without reassignment.
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Add a payment method.
2. Observe the result and verify the full behavior: Add a payment method.
**Expected Result:** Add a payment method — delivered exactly as documented.
**Priority:** High

### TC-TI-5-02-003 — Set a default method
**Type:** Positive
**Covers:** 2.1 → Set a default method; Rule: Management events (added, default set, removed) are logged with the account and the timestamp.
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Set a default method.
2. Observe the result and verify the full behavior: Set a default method.
**Expected Result:** Set a default method — delivered exactly as documented.
**Priority:** High

### TC-TI-5-02-004 — Remove a payment method
**Type:** Positive
**Covers:** 2.1 → Remove a payment method; Rule: The payment method management is audit-logged with the account and the timestamp.
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Remove a payment method.
2. Observe the result and verify the full behavior: Remove a payment method.
**Expected Result:** Remove a payment method — delivered exactly as documented.
**Priority:** High

### TC-TI-5-02-005 — Last four and expiry shown
**Type:** Edge
**Covers:** 2.1 → Last four and expiry shown
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Last four and expiry shown.
2. Observe the result and verify the full behavior: Last four and expiry shown.
**Expected Result:** Last four and expiry shown — delivered exactly as documented.
**Priority:** High

### TC-TI-5-02-006 — Method update supported
**Type:** Positive
**Covers:** 2.1 → Method update supported
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Method update supported.
2. Observe the result and verify the full behavior: Method update supported.
**Expected Result:** Method update supported — delivered exactly as documented.
**Priority:** High

### TC-TI-5-02-007 — Management available on web and mobile
**Type:** Positive
**Covers:** 2.1 → Management available on web and mobile
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Management available on web and mobile.
2. Observe the result and verify the full behavior: Management available on web and mobile.
**Expected Result:** Management available on web and mobile — delivered exactly as documented.
**Priority:** High

### TC-TI-5-02-008 — Management event logging (added, default set, removed)
**Type:** Positive
**Covers:** 2.1 → Management event logging (added, default set, removed)
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Management event logging (added, default set, removed).
2. Observe the result and verify the full behavior: Management event logging (added, default set, removed).
**Expected Result:** Management event logging (added, default set, removed) — delivered exactly as documented.
**Priority:** High

### TC-TI-5-02-009 — Audit logging of the payment method management
**Type:** Positive
**Covers:** 2.1 → Audit logging of the payment method management
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, perform the payment method management action.
2. Open the audit log and verify the entry for the action.
**Expected Result:** The payment method management action is recorded in the audit log with the account and the timestamp.
**Priority:** Critical


## 2.2 Billing Contact & Address

### TC-TI-5-02-010 — Billing contact view
**Type:** Positive
**Covers:** 2.2 → Billing contact view; Rule: The changes are reflected on new invoices only.
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Billing contact view.
2. Observe the result and verify the full behavior: Billing contact view.
**Expected Result:** Billing contact view — delivered exactly as documented.
**Priority:** Critical

### TC-TI-5-02-011 — Edit billing contact name and email
**Type:** Positive
**Covers:** 2.2 → Edit billing contact name and email; Rule: The billing contact email receives the invoice copies.
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Edit billing contact name and email.
2. Observe the result and verify the full behavior: Edit billing contact name and email.
**Expected Result:** Edit billing contact name and email — delivered exactly as documented.
**Priority:** High

### TC-TI-5-02-012 — Edit billing address
**Type:** Positive
**Covers:** 2.2 → Edit billing address; Rule: Billing events (updated) are logged with the account and the timestamp.
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Edit billing address.
2. Observe the result and verify the full behavior: Edit billing address.
**Expected Result:** Edit billing address — delivered exactly as documented.
**Priority:** High

### TC-TI-5-02-013 — Details appear on new invoices
**Type:** Positive
**Covers:** 2.2 → Details appear on new invoices; Rule: The billing contact and address is audit-logged with the account and the timestamp.
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Details appear on new invoices.
2. Observe the result and verify the full behavior: Details appear on new invoices.
**Expected Result:** Details appear on new invoices — delivered exactly as documented.
**Priority:** High

### TC-TI-5-02-014 — Changes saved
**Type:** Positive
**Covers:** 2.2 → Changes saved
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Changes saved.
2. Observe the result and verify the full behavior: Changes saved.
**Expected Result:** Changes saved — delivered exactly as documented.
**Priority:** High

### TC-TI-5-02-015 — Billing available on web and mobile
**Type:** Positive
**Covers:** 2.2 → Billing available on web and mobile
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Billing available on web and mobile.
2. Observe the result and verify the full behavior: Billing available on web and mobile.
**Expected Result:** Billing available on web and mobile — delivered exactly as documented.
**Priority:** High

### TC-TI-5-02-016 — Billing event logging (updated)
**Type:** Positive
**Covers:** 2.2 → Billing event logging (updated)
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Billing event logging (updated).
2. Observe the result and verify the full behavior: Billing event logging (updated).
**Expected Result:** Billing event logging (updated) — delivered exactly as documented.
**Priority:** High

### TC-TI-5-02-017 — Audit logging of the billing contact and address
**Type:** Positive
**Covers:** 2.2 → Audit logging of the billing contact and address
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, perform the billing contact and address action.
2. Open the audit log and verify the entry for the action.
**Expected Result:** The billing contact and address action is recorded in the audit log with the account and the timestamp.
**Priority:** Critical


## 2.3 Billing Cycle & Proration

### TC-TI-5-02-018 — Billing cycle dates shown
**Type:** Positive
**Covers:** 2.3 → Billing cycle dates shown; Rule: The proration is for the remaining cycle days.
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Billing cycle dates shown.
2. Observe the result and verify the full behavior: Billing cycle dates shown.
**Expected Result:** Billing cycle dates shown — delivered exactly as documented.
**Priority:** Critical

### TC-TI-5-02-019 — Next billing date shown
**Type:** Positive
**Covers:** 2.3 → Next billing date shown; Rule: The proration is applied to the next invoice.
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Next billing date shown.
2. Observe the result and verify the full behavior: Next billing date shown.
**Expected Result:** Next billing date shown — delivered exactly as documented.
**Priority:** High

### TC-TI-5-02-020 — Mid-cycle change proration
**Type:** Positive
**Covers:** 2.3 → Mid-cycle change proration; Rule: Cycle events (viewed) are logged with the account and the timestamp.
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Mid-cycle change proration.
2. Observe the result and verify the full behavior: Mid-cycle change proration.
**Expected Result:** Mid-cycle change proration — delivered exactly as documented.
**Priority:** High

### TC-TI-5-02-021 — Proration breakdown shown
**Type:** Positive
**Covers:** 2.3 → Proration breakdown shown; Rule: The billing cycle and proration is audit-logged with the account and the timestamp.
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Proration breakdown shown.
2. Observe the result and verify the full behavior: Proration breakdown shown.
**Expected Result:** Proration breakdown shown — delivered exactly as documented.
**Priority:** High

### TC-TI-5-02-022 — Proration applied to the next invoice
**Type:** Positive
**Covers:** 2.3 → Proration applied to the next invoice
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Proration applied to the next invoice.
2. Observe the result and verify the full behavior: Proration applied to the next invoice.
**Expected Result:** Proration applied to the next invoice — delivered exactly as documented.
**Priority:** High

### TC-TI-5-02-023 — Cycle available on web and mobile
**Type:** Positive
**Covers:** 2.3 → Cycle available on web and mobile
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Cycle available on web and mobile.
2. Observe the result and verify the full behavior: Cycle available on web and mobile.
**Expected Result:** Cycle available on web and mobile — delivered exactly as documented.
**Priority:** High

### TC-TI-5-02-024 — Cycle event logging (viewed)
**Type:** Positive
**Covers:** 2.3 → Cycle event logging (viewed)
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Cycle event logging (viewed).
2. Observe the result and verify the full behavior: Cycle event logging (viewed).
**Expected Result:** Cycle event logging (viewed) — delivered exactly as documented.
**Priority:** High

### TC-TI-5-02-025 — Audit logging of the billing cycle and proration
**Type:** Positive
**Covers:** 2.3 → Audit logging of the billing cycle and proration
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, perform the billing cycle and proration action.
2. Open the audit log and verify the entry for the action.
**Expected Result:** The billing cycle and proration action is recorded in the audit log with the account and the timestamp.
**Priority:** Critical
