# 4. Billing Support & Disputes — Test Cases

User Type: **Training Institute**
Source: *Mi Digital Academy - Education CRM Features Document*
Spec: billing_support_disputes.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 |
|---------|--------------------|----------|
| 4.1 | Open a billing support ticket | TC-TI-5-04-001 |
| 4.1 | Topic and description | TC-TI-5-04-002 |
| 4.1 | Ticket status tracking | TC-TI-5-04-003 |
| 4.1 | Replies from support | TC-TI-5-04-004 |
| 4.1 | Ticket history | TC-TI-5-04-005 |
| 4.1 | Close a resolved ticket | TC-TI-5-04-006 |
| 4.1 | Support available on web and mobile | TC-TI-5-04-007 |
| 4.1 | Support event logging (opened, replied, closed) | TC-TI-5-04-008 |
| 4.1 | Audit logging of the billing support | TC-TI-5-04-009 |
| 4.1 | Rule: A closed ticket can be reopened. | TC-TI-5-04-001 |
| 4.1 | Rule: The ticket status is updated by support. | TC-TI-5-04-002 |
| 4.1 | Rule: Support events (opened, replied, closed) are logged with the account and the timestamp. | TC-TI-5-04-003 |
| 4.1 | Rule: The billing support is audit-logged with the account and the timestamp. | TC-TI-5-04-004 |
| 4.2 | Dispute a charge | TC-TI-5-04-010 |
| 4.2 | Select the invoice and reason | TC-TI-5-04-011 |
| 4.2 | Dispute submitted | TC-TI-5-04-012 |
| 4.2 | Dispute status shown | TC-TI-5-04-013 |
| 4.2 | Resolution shown | TC-TI-5-04-014 |
| 4.2 | Dispute history | TC-TI-5-04-015 |
| 4.2 | Disputes available on web and mobile | TC-TI-5-04-016 |
| 4.2 | Disputes event logging (submitted, resolved) | TC-TI-5-04-017 |
| 4.2 | Audit logging of the billing disputes | TC-TI-5-04-018 |
| 4.2 | Rule: A dispute is submitted against a specific invoice. | TC-TI-5-04-010 |
| 4.2 | Rule: The dispute is resolved by the billing team. | TC-TI-5-04-011 |
| 4.2 | Rule: Disputes events (submitted, resolved) are logged with the account and the timestamp. | TC-TI-5-04-012 |
| 4.2 | Rule: The billing disputes is audit-logged with the account and the timestamp. | TC-TI-5-04-013 |
| 4.3 | Billing documents list | TC-TI-5-04-019 |
| 4.3 | Tax invoices and receipts | TC-TI-5-04-020 |
| 4.3 | Annual summary | TC-TI-5-04-021 |
| 4.3 | Download a document | TC-TI-5-04-022 |
| 4.3 | Compliance status shown | TC-TI-5-04-023 |
| 4.3 | Documents by period | TC-TI-5-04-024 |
| 4.3 | Documents available on web and mobile | TC-TI-5-04-025 |
| 4.3 | Documents event logging (viewed, downloaded) | TC-TI-5-04-026 |
| 4.3 | Audit logging of the billing documents and compliance | TC-TI-5-04-027 |
| 4.3 | Rule: The documents are by period. | TC-TI-5-04-019 |
| 4.3 | Rule: The annual summary covers the fiscal year. | TC-TI-5-04-020 |
| 4.3 | Rule: Documents events (viewed, downloaded) are logged with the account and the timestamp. | TC-TI-5-04-021 |
| 4.3 | Rule: The billing documents and compliance is audit-logged with the account and the timestamp. | TC-TI-5-04-022 |

## 4.1 Billing Support

### TC-TI-5-04-001 — Open a billing support ticket
**Type:** Positive
**Covers:** 4.1 → Open a billing support ticket; Rule: A closed ticket can be reopened.
**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: Open a billing support ticket.
2. Observe the result and verify the full behavior: Open a billing support ticket.
**Expected Result:** Open a billing support ticket — delivered exactly as documented.
**Priority:** Critical

### TC-TI-5-04-002 — Topic and description
**Type:** Positive
**Covers:** 4.1 → Topic and description; Rule: The ticket status is updated by support.
**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: Topic and description.
2. Observe the result and verify the full behavior: Topic and description.
**Expected Result:** Topic and description — delivered exactly as documented.
**Priority:** High

### TC-TI-5-04-003 — Ticket status tracking
**Type:** Positive
**Covers:** 4.1 → Ticket status tracking; Rule: Support events (opened, replied, closed) 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: Ticket status tracking.
2. Observe the result and verify the full behavior: Ticket status tracking.
**Expected Result:** Ticket status tracking — delivered exactly as documented.
**Priority:** High

### TC-TI-5-04-004 — Replies from support
**Type:** Positive
**Covers:** 4.1 → Replies from support; Rule: The billing support 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: Replies from support.
2. Observe the result and verify the full behavior: Replies from support.
**Expected Result:** Replies from support — delivered exactly as documented.
**Priority:** High

### TC-TI-5-04-005 — Ticket history
**Type:** Positive
**Covers:** 4.1 → Ticket history
**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: Ticket history.
2. Observe the result and verify the full behavior: Ticket history.
**Expected Result:** Ticket history — delivered exactly as documented.
**Priority:** High

### TC-TI-5-04-006 — Close a resolved ticket
**Type:** Positive
**Covers:** 4.1 → Close a resolved ticket
**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: Close a resolved ticket.
2. Observe the result and verify the full behavior: Close a resolved ticket.
**Expected Result:** Close a resolved ticket — delivered exactly as documented.
**Priority:** High

### TC-TI-5-04-007 — Support available on web and mobile
**Type:** Positive
**Covers:** 4.1 → Support 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: Support available on web and mobile.
2. Observe the result and verify the full behavior: Support available on web and mobile.
**Expected Result:** Support available on web and mobile — delivered exactly as documented.
**Priority:** High

### TC-TI-5-04-008 — Support event logging (opened, replied, closed)
**Type:** Positive
**Covers:** 4.1 → Support event logging (opened, replied, closed)
**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: Support event logging (opened, replied, closed).
2. Observe the result and verify the full behavior: Support event logging (opened, replied, closed).
**Expected Result:** Support event logging (opened, replied, closed) — delivered exactly as documented.
**Priority:** High

### TC-TI-5-04-009 — Audit logging of the billing support
**Type:** Positive
**Covers:** 4.1 → Audit logging of the billing support
**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 support action.
2. Open the audit log and verify the entry for the action.
**Expected Result:** The billing support action is recorded in the audit log with the account and the timestamp.
**Priority:** Critical


## 4.2 Billing Disputes

### TC-TI-5-04-010 — Dispute a charge
**Type:** Positive
**Covers:** 4.2 → Dispute a charge; Rule: A dispute is submitted against a specific 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: Dispute a charge.
2. Observe the result and verify the full behavior: Dispute a charge.
**Expected Result:** Dispute a charge — delivered exactly as documented.
**Priority:** Critical

### TC-TI-5-04-011 — Select the invoice and reason
**Type:** Positive
**Covers:** 4.2 → Select the invoice and reason; Rule: The dispute is resolved by the billing team.
**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: Select the invoice and reason.
2. Observe the result and verify the full behavior: Select the invoice and reason.
**Expected Result:** Select the invoice and reason — delivered exactly as documented.
**Priority:** High

### TC-TI-5-04-012 — Dispute submitted
**Type:** Positive
**Covers:** 4.2 → Dispute submitted; Rule: Disputes events (submitted, resolved) 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: Dispute submitted.
2. Observe the result and verify the full behavior: Dispute submitted.
**Expected Result:** Dispute submitted — delivered exactly as documented.
**Priority:** High

### TC-TI-5-04-013 — Dispute status shown
**Type:** Positive
**Covers:** 4.2 → Dispute status shown; Rule: The billing disputes 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: Dispute status shown.
2. Observe the result and verify the full behavior: Dispute status shown.
**Expected Result:** Dispute status shown — delivered exactly as documented.
**Priority:** High

### TC-TI-5-04-014 — Resolution shown
**Type:** Positive
**Covers:** 4.2 → Resolution 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: Resolution shown.
2. Observe the result and verify the full behavior: Resolution shown.
**Expected Result:** Resolution shown — delivered exactly as documented.
**Priority:** High

### TC-TI-5-04-015 — Dispute history
**Type:** Positive
**Covers:** 4.2 → Dispute history
**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: Dispute history.
2. Observe the result and verify the full behavior: Dispute history.
**Expected Result:** Dispute history — delivered exactly as documented.
**Priority:** High

### TC-TI-5-04-016 — Disputes available on web and mobile
**Type:** Positive
**Covers:** 4.2 → Disputes 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: Disputes available on web and mobile.
2. Observe the result and verify the full behavior: Disputes available on web and mobile.
**Expected Result:** Disputes available on web and mobile — delivered exactly as documented.
**Priority:** High

### TC-TI-5-04-017 — Disputes event logging (submitted, resolved)
**Type:** Positive
**Covers:** 4.2 → Disputes event logging (submitted, resolved)
**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: Disputes event logging (submitted, resolved).
2. Observe the result and verify the full behavior: Disputes event logging (submitted, resolved).
**Expected Result:** Disputes event logging (submitted, resolved) — delivered exactly as documented.
**Priority:** High

### TC-TI-5-04-018 — Audit logging of the billing disputes
**Type:** Positive
**Covers:** 4.2 → Audit logging of the billing disputes
**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 disputes action.
2. Open the audit log and verify the entry for the action.
**Expected Result:** The billing disputes action is recorded in the audit log with the account and the timestamp.
**Priority:** Critical


## 4.3 Billing Documents & Compliance

### TC-TI-5-04-019 — Billing documents list
**Type:** Positive
**Covers:** 4.3 → Billing documents list; Rule: The documents are by period.
**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 documents list.
2. Observe the result and verify the full behavior: Billing documents list.
**Expected Result:** Billing documents list — delivered exactly as documented.
**Priority:** Critical

### TC-TI-5-04-020 — Tax invoices and receipts
**Type:** Positive
**Covers:** 4.3 → Tax invoices and receipts; Rule: The annual summary covers the fiscal year.
**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: Tax invoices and receipts.
2. Observe the result and verify the full behavior: Tax invoices and receipts.
**Expected Result:** Tax invoices and receipts — delivered exactly as documented.
**Priority:** High

### TC-TI-5-04-021 — Annual summary
**Type:** Positive
**Covers:** 4.3 → Annual summary; Rule: Documents events (viewed, downloaded) 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: Annual summary.
2. Observe the result and verify the full behavior: Annual summary.
**Expected Result:** Annual summary — delivered exactly as documented.
**Priority:** High

### TC-TI-5-04-022 — Download a document
**Type:** Positive
**Covers:** 4.3 → Download a document; Rule: The billing documents and compliance 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: Download a document.
2. Observe the result and verify the full behavior: Download a document.
**Expected Result:** Download a document — delivered exactly as documented.
**Priority:** High

### TC-TI-5-04-023 — Compliance status shown
**Type:** Positive
**Covers:** 4.3 → Compliance status 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: Compliance status shown.
2. Observe the result and verify the full behavior: Compliance status shown.
**Expected Result:** Compliance status shown — delivered exactly as documented.
**Priority:** High

### TC-TI-5-04-024 — Documents by period
**Type:** Positive
**Covers:** 4.3 → Documents by period
**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: Documents by period.
2. Observe the result and verify the full behavior: Documents by period.
**Expected Result:** Documents by period — delivered exactly as documented.
**Priority:** High

### TC-TI-5-04-025 — Documents available on web and mobile
**Type:** Positive
**Covers:** 4.3 → Documents 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: Documents available on web and mobile.
2. Observe the result and verify the full behavior: Documents available on web and mobile.
**Expected Result:** Documents available on web and mobile — delivered exactly as documented.
**Priority:** High

### TC-TI-5-04-026 — Documents event logging (viewed, downloaded)
**Type:** Positive
**Covers:** 4.3 → Documents event logging (viewed, downloaded)
**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: Documents event logging (viewed, downloaded).
2. Observe the result and verify the full behavior: Documents event logging (viewed, downloaded).
**Expected Result:** Documents event logging (viewed, downloaded) — delivered exactly as documented.
**Priority:** High

### TC-TI-5-04-027 — Audit logging of the billing documents and compliance
**Type:** Positive
**Covers:** 4.3 → Audit logging of the billing documents and compliance
**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 documents and compliance action.
2. Open the audit log and verify the entry for the action.
**Expected Result:** The billing documents and compliance action is recorded in the audit log with the account and the timestamp.
**Priority:** Critical
