# 5. Financial Reconciliation — Test Cases

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

---

## Test Execution Policy
- Zero tolerance: any deviation from documented behavior = FAILED = bug
- Every bug is immediately logged/reported (Bug ID, feature, sub-feature,
  expected vs actual, severity) and fixed 100% before the group passes
- Feature group passes only at 100% test pass rate

## Coverage Matrix
| Feature | Sub-feature / Rule | Test IDs |
|---------|--------------------|----------|
| 5.1 Financial Reconciliation Tools | Reconciliation tool: the tool (the tool, the reconciliation, the matching, the discrepancy) | TC-SA-16-05-001 |
| 5.1 Financial Reconciliation Tools | Reconciliation: the reconciliation (the reconciliation, the matching, the discrepancy) | TC-SA-16-05-002 |
| 5.1 Financial Reconciliation Tools | Matching: the matching (the matching of the transactions, the records) | TC-SA-16-05-003 |
| 5.1 Financial Reconciliation Tools | Discrepancy: the discrepancy (the discrepancy, the mismatch, the difference) | TC-SA-16-05-004 |
| 5.1 Financial Reconciliation Tools | Resolution: the resolution (the resolution of the discrepancy, the correction) | TC-SA-16-05-005 |
| 5.1 Financial Reconciliation Tools | Reconciliation record: the record (the reconciliation, the matching, the discrepancy, the date) | TC-SA-16-05-006 |
| 5.1 Financial Reconciliation Tools | Reconciliation view: the view (the reconciliations, the period) | TC-SA-16-05-007 |
| 5.1 Financial Reconciliation Tools | Audit logging of the financial reconciliation | TC-SA-16-05-008 |
| 5.1 Financial Reconciliation Tools | Rule: the reconciliation tool is the capability (the tool, the reconciliation, the matching, the discrepancy); the tool is the means | TC-SA-16-05-001 |
| 5.1 Financial Reconciliation Tools | Rule: the reconciliation is the process (the reconciliation, the matching, the discrepancy); the reconciliation is the action | TC-SA-16-05-002 |
| 5.1 Financial Reconciliation Tools | Rule: the matching is the alignment (the matching of the transactions, the records); the matching is the verification | TC-SA-16-05-003 |
| 5.1 Financial Reconciliation Tools | Rule: the discrepancy is the issue (the discrepancy, the mismatch, the difference); the discrepancy is the problem | TC-SA-16-05-004 |
| 5.1 Financial Reconciliation Tools | Rule: the reconciliation is visible (the reconciliations, the period); the tools are managed | TC-SA-16-05-007 |
| 5.1 Financial Reconciliation Tools | Rule: financial reconciliation is audit-logged with the reconciliation, discrepancy, and timestamp | TC-SA-16-05-008 |
| 5.2 Match Transactions Against Gateway Records | Transaction: the transaction (the transaction, the amount, the date) | TC-SA-16-05-009 |
| 5.2 Match Transactions Against Gateway Records | Gateway record: the record (the record, the gateway, the amount, the date) | TC-SA-16-05-010 |
| 5.2 Match Transactions Against Gateway Records | Matching: the matching (the matching of the transaction, the gateway record) | TC-SA-16-05-011 |
| 5.2 Match Transactions Against Gateway Records | Match status: the status (the matched, the unmatched, the mismatched) | TC-SA-16-05-012 |
| 5.2 Match Transactions Against Gateway Records | Matching record: the record (the transaction, the gateway record, the match status, the date) | TC-SA-16-05-013 |
| 5.2 Match Transactions Against Gateway Records | Matching view: the view (the matches, the period) | TC-SA-16-05-014 |
| 5.2 Match Transactions Against Gateway Records | Matching export: the export (the matches, the format, the period) | TC-SA-16-05-015 |
| 5.2 Match Transactions Against Gateway Records | Audit logging of the transaction matching | TC-SA-16-05-016 |
| 5.2 Match Transactions Against Gateway Records | Rule: the transaction is the entry (the transaction, the amount, the date); the transaction is the record | TC-SA-16-05-009 |
| 5.2 Match Transactions Against Gateway Records | Rule: the gateway record is the external proof (the record, the gateway, the amount, the date); the record is the verification | TC-SA-16-05-010 |
| 5.2 Match Transactions Against Gateway Records | Rule: the matching is the alignment (the matching of the transaction, the gateway record); the matching is the verification | TC-SA-16-05-011 |
| 5.2 Match Transactions Against Gateway Records | Rule: the match status is the state (the matched, the unmatched, the mismatched); the status is the control | TC-SA-16-05-012 |
| 5.2 Match Transactions Against Gateway Records | Rule: the transactions are visible (the transactions, the gateway records, the period); the matching is managed | TC-SA-16-05-014 |
| 5.2 Match Transactions Against Gateway Records | Rule: transaction matching is audit-logged with the transaction, gateway record, and timestamp | TC-SA-16-05-016 |
| 5.3 Identify and Resolve Discrepancies | Discrepancy: the discrepancy (the discrepancy, the mismatch, the difference, the amount) | TC-SA-16-05-017 |
| 5.3 Identify and Resolve Discrepancies | Discrepancy identification: the identification (the discrepancy is identified, the difference, the amount) | TC-SA-16-05-018 |
| 5.3 Identify and Resolve Discrepancies | Discrepancy resolution: the resolution (the resolution of the discrepancy, the correction, the date) | TC-SA-16-05-019 |
| 5.3 Identify and Resolve Discrepancies | Resolution status: the status (the identified, the resolved, the pending) | TC-SA-16-05-020 |
| 5.3 Identify and Resolve Discrepancies | Discrepancy record: the record (the discrepancy, the difference, the resolution, the date) | TC-SA-16-05-021 |
| 5.3 Identify and Resolve Discrepancies | Discrepancy view: the view (the discrepancies, the period) | TC-SA-16-05-022 |
| 5.3 Identify and Resolve Discrepancies | Discrepancy export: the export (the discrepancies, the format, the period) | TC-SA-16-05-023 |
| 5.3 Identify and Resolve Discrepancies | Audit logging of the discrepancy identification and resolution | TC-SA-16-05-024 |
| 5.3 Identify and Resolve Discrepancies | Rule: the discrepancy is the issue (the discrepancy, the mismatch, the difference, the amount); the discrepancy is the problem | TC-SA-16-05-017 |
| 5.3 Identify and Resolve Discrepancies | Rule: the discrepancy identification is the detection (the discrepancy is identified, the difference, the amount); the identification is the finding | TC-SA-16-05-018 |
| 5.3 Identify and Resolve Discrepancies | Rule: the discrepancy resolution is the fix (the resolution of the discrepancy, the correction, the date); the resolution is the action | TC-SA-16-05-019 |
| 5.3 Identify and Resolve Discrepancies | Rule: the resolution status is the state (the identified, the resolved, the pending); the status is the control | TC-SA-16-05-020 |
| 5.3 Identify and Resolve Discrepancies | Rule: the discrepancies are visible (the discrepancies, the period); the handling is managed | TC-SA-16-05-022 |
| 5.3 Identify and Resolve Discrepancies | Rule: discrepancy identification and resolution is audit-logged with the discrepancy, resolution, and timestamp | TC-SA-16-05-024 |

## 5.1 Financial Reconciliation Tools

### TC-SA-16-05-001 — Reconciliation tool: the tool (the tool, the reconciliation, the matching, the discrepancy); the tool is the means
**Type:** Positive
**Covers:** 5.1 → Reconciliation tool: the tool (the tool, the reconciliation, the matching, the discrepancy); Rule: the reconciliation tool is the capability (the tool, the reconciliation, the matching, the discrepancy); the tool is the means
**Preconditions:** Super Admin is logged in; transactions and gateway records exist.
**Steps:**
1. Use the reconciliation tool: the tool (the tool, the reconciliation, the matching, the discrepancy), the reconciliation (the reconciliation, the matching, the discrepancy), and the period (the period of the reconciliation).
2. Verify the tool is the capability and is accessible.
3. Verify the tool provides the reconciliation, the matching, and the discrepancy views.
**Expected Result:** The reconciliation tool is available — the tool, the reconciliation, the matching, and the discrepancy are the means.
**Priority:** Critical

### TC-SA-16-05-002 — Reconciliation: the reconciliation (the reconciliation, the matching, the discrepancy); the reconciliation is the action
**Type:** Positive
**Covers:** 5.1 → Reconciliation: the reconciliation (the reconciliation, the matching, the discrepancy); Rule: the reconciliation is the process (the reconciliation, the matching, the discrepancy); the reconciliation is the action
**Preconditions:** Transactions and gateway records exist for a period.
**Steps:**
1. Run the reconciliation: the reconciliation (the reconciliation, the matching, the discrepancy) — verify the reconciliation is the process.
2. Verify the reconciliation completes and produces the matching and the discrepancy results.
3. Verify the reconciliation is recorded.
**Expected Result:** The reconciliation works — the reconciliation, the matching, and the discrepancy are the action.
**Priority:** Critical

### TC-SA-16-05-003 — Matching: the matching (the matching of the transactions, the records); the matching is the verification
**Type:** Positive
**Covers:** 5.1 → Matching: the matching (the matching of the transactions, the records); Rule: the matching is the alignment (the matching of the transactions, the records); the matching is the verification
**Preconditions:** A reconciliation has been run.
**Steps:**
1. View the matching: the matching (the matching of the transactions, the records) — verify the matching is the alignment.
2. Verify the matched transactions are shown with their corresponding records.
3. Verify the matching is the verification of the alignment.
**Expected Result:** The matching is shown — the matching of the transactions and the records is the verification.
**Priority:** High

### TC-SA-16-05-004 — Discrepancy: the discrepancy (the discrepancy, the mismatch, the difference); the discrepancy is the problem
**Type:** Negative
**Covers:** 5.1 → Discrepancy: the discrepancy (the discrepancy, the mismatch, the difference); Rule: the discrepancy is the issue (the discrepancy, the mismatch, the difference); the discrepancy is the problem
**Preconditions:** A reconciliation has been run with at least one mismatch.
**Steps:**
1. View the discrepancies: the discrepancy (the discrepancy, the mismatch, the difference) — verify the discrepancy is the issue.
2. Verify each discrepancy shows the mismatch and the difference.
3. Verify the discrepancy is flagged as the problem.
**Expected Result:** The discrepancy is shown — the discrepancy, the mismatch, and the difference are the problem.
**Priority:** Critical

### TC-SA-16-05-005 — Resolution: the resolution (the resolution of the discrepancy, the correction); the resolution is the fix
**Type:** Positive
**Covers:** 5.1 → Resolution: the resolution (the resolution of the discrepancy, the correction)
**Preconditions:** A discrepancy has been identified.
**Steps:**
1. Resolve a discrepancy: the resolution (the resolution of the discrepancy, the correction) — verify the resolution is the fix.
2. Verify the correction is applied and the discrepancy is marked resolved.
3. Verify the resolution is recorded.
**Expected Result:** The resolution works — the resolution of the discrepancy and the correction are the fix.
**Priority:** Critical

### TC-SA-16-05-006 — Reconciliation record: the record (the reconciliation, the matching, the discrepancy, the date); the record is the proof
**Type:** Positive
**Covers:** 5.1 → Reconciliation record: the record (the reconciliation, the matching, the discrepancy, the date)
**Preconditions:** A reconciliation has been run.
**Steps:**
1. Open the reconciliation record.
2. Verify it shows the reconciliation, the matching, the discrepancy, and the date.
**Expected Result:** The reconciliation is recorded — the reconciliation, the matching, the discrepancy, and the date are shown.
**Priority:** High

### TC-SA-16-05-007 — Reconciliation view: the view (the reconciliations, the period); the tools are managed
**Type:** Positive
**Covers:** 5.1 → Reconciliation view: the view (the reconciliations, the period); Rule: the reconciliation is visible (the reconciliations, the period); the tools are managed
**Preconditions:** Reconciliations exist across a period.
**Steps:**
1. View the reconciliations: the reconciliations, the period — verify the reconciliation is visible.
2. Verify the view is complete for the period.
**Expected Result:** The reconciliation view works — the reconciliations for the period are visible.
**Priority:** High

### TC-SA-16-05-008 — Financial reconciliation is audit-logged with the reconciliation, discrepancy, and timestamp
**Type:** Positive
**Covers:** 5.1 → Audit logging of the financial reconciliation; Rule: financial reconciliation is audit-logged with the reconciliation, discrepancy, and timestamp
**Preconditions:** Reconciliations have been run and discrepancies have been resolved.
**Steps:**
1. Open the audit trail and filter by "reconciliation".
2. Verify entries show the reconciliation, the discrepancy, and the timestamp.
**Expected Result:** The financial reconciliation is audit-logged with the reconciliation, discrepancy, and timestamp.
**Priority:** Critical

## 5.2 Match Transactions Against Gateway Records

### TC-SA-16-05-009 — Transaction: the transaction (the transaction, the amount, the date); the transaction is the record
**Type:** Positive
**Covers:** 5.2 → Transaction: the transaction (the transaction, the amount, the date); Rule: the transaction is the entry (the transaction, the amount, the date); the transaction is the record
**Preconditions:** Transactions exist in the platform.
**Steps:**
1. Run the matching: the transactions (the transaction, the amount, the date), the gateway records (the record, the gateway, the amount, the date), and the period (the period of the matching).
2. Verify the transaction is the entry and is shown with the amount and the date.
3. Verify the transaction is the record.
**Expected Result:** The transaction is shown — the transaction, the amount, and the date are the record.
**Priority:** High

### TC-SA-16-05-010 — Gateway record: the record (the record, the gateway, the amount, the date); the record is the verification
**Type:** Positive
**Covers:** 5.2 → Gateway record: the record (the record, the gateway, the amount, the date); Rule: the gateway record is the external proof (the record, the gateway, the amount, the date); the record is the verification
**Preconditions:** Gateway records exist for the transactions.
**Steps:**
1. View the gateway records: the record (the record, the gateway, the amount, the date) — verify the record is the external proof.
2. Verify the gateway record is shown with the gateway, the amount, and the date.
3. Verify the record is the verification source.
**Expected Result:** The gateway record is shown — the record, the gateway, the amount, and the date are the verification.
**Priority:** High

### TC-SA-16-05-011 — Matching: the matching (the matching of the transaction, the gateway record); the matching is the verification
**Type:** Positive
**Covers:** 5.2 → Matching: the matching (the matching of the transaction, the gateway record); Rule: the matching is the alignment (the matching of the transaction, the gateway record); the matching is the verification
**Preconditions:** Transactions and gateway records exist for a period.
**Steps:**
1. Run the matching — verify the matching of the transaction and the gateway record is performed.
2. View the matched transactions: the match (the matched, the transaction, the gateway record) — verify the match is the alignment.
3. Verify the matching is the verification.
**Expected Result:** The matching works — the matching of the transaction and the gateway record is the verification.
**Priority:** Critical

### TC-SA-16-05-012 — Match status: the status (the matched, the unmatched, the mismatched); the status is the control
**Type:** Edge
**Covers:** 5.2 → Match status: the status (the matched, the unmatched, the mismatched); Rule: the match status is the state (the matched, the unmatched, the mismatched); the status is the control
**Preconditions:** Transactions exist in all three match statuses (matched, unmatched, mismatched).
**Steps:**
1. View the matched transactions: the match (the matched, the transaction, the gateway record) — verify the match is the alignment.
2. View the unmatched transactions: the unmatched (the unmatched, the transaction, the gateway record) — verify the unmatched is the gap.
3. View the mismatched transactions: the mismatched (the mismatched, the transaction, the gateway record, the difference) — verify the mismatched is the issue.
**Expected Result:** The match status is shown — the matched, the unmatched, or the mismatched state is visible for each transaction.
**Priority:** Critical

### TC-SA-16-05-013 — Matching record: the record (the transaction, the gateway record, the match status, the date); the record is the proof
**Type:** Positive
**Covers:** 5.2 → Matching record: the record (the transaction, the gateway record, the match status, the date)
**Preconditions:** A matching has been run.
**Steps:**
1. Open the matching record.
2. Verify it shows the transaction, the gateway record, the match status, and the date.
**Expected Result:** The matching is recorded — the transaction, the gateway record, the match status, and the date are shown.
**Priority:** High

### TC-SA-16-05-014 — Matching view: the view (the matches, the period); the matching is managed
**Type:** Positive
**Covers:** 5.2 → Matching view: the view (the matches, the period); Rule: the transactions are visible (the transactions, the gateway records, the period); the matching is managed
**Preconditions:** Matches exist across a period.
**Steps:**
1. View the matches: the matches, the period — verify the transactions are visible.
2. Verify the view is complete for the period.
**Expected Result:** The matching view works — the matches for the period are visible.
**Priority:** High

### TC-SA-16-05-015 — Matching export: the export (the matches, the format, the period); the export is the record
**Type:** Positive
**Covers:** 5.2 → Matching export: the export (the matches, the format, the period)
**Preconditions:** Matches exist for a period.
**Steps:**
1. Export the matching: the export (the matches, the format, the period).
2. Verify the export is generated in the selected format.
3. Verify the exported data matches the matching view.
**Expected Result:** The matching is exported — the matches in the selected format for the period are generated.
**Priority:** Medium

### TC-SA-16-05-016 — Transaction matching is audit-logged with the transaction, gateway record, and timestamp
**Type:** Positive
**Covers:** 5.2 → Audit logging of the transaction matching; Rule: transaction matching is audit-logged with the transaction, gateway record, and timestamp
**Preconditions:** Transaction matching events have occurred.
**Steps:**
1. Open the audit trail and filter by "transaction matching".
2. Verify entries show the transaction, the gateway record, and the timestamp.
**Expected Result:** The transaction matching is audit-logged with the transaction, gateway record, and timestamp.
**Priority:** Critical

## 5.3 Identify and Resolve Discrepancies

### TC-SA-16-05-017 — Discrepancy: the discrepancy (the discrepancy, the mismatch, the difference, the amount); the discrepancy is the problem
**Type:** Positive
**Covers:** 5.3 → Discrepancy: the discrepancy (the discrepancy, the mismatch, the difference, the amount); Rule: the discrepancy is the issue (the discrepancy, the mismatch, the difference, the amount); the discrepancy is the problem
**Preconditions:** Discrepancies exist from a reconciliation.
**Steps:**
1. View the discrepancies: the discrepancies (the discrepancy, the mismatch, the difference, the amount), the statuses (the identified, the resolved, the pending), and the period (the period of the discrepancies).
2. Verify the discrepancy is the issue and is shown with the mismatch, the difference, and the amount.
3. Verify the discrepancy is the problem.
**Expected Result:** The discrepancy is shown — the discrepancy, the mismatch, the difference, and the amount are the problem.
**Priority:** Critical

### TC-SA-16-05-018 — Discrepancy identification: the identification (the discrepancy is identified, the difference, the amount); the identification is the finding
**Type:** Positive
**Covers:** 5.3 → Discrepancy identification: the identification (the discrepancy is identified, the difference, the amount); Rule: the discrepancy identification is the detection (the discrepancy is identified, the difference, the amount); the identification is the finding
**Preconditions:** A reconciliation has been run with mismatches.
**Steps:**
1. Identify a discrepancy: the identification (the discrepancy is identified, the difference, the amount) — verify the identification is the detection.
2. Verify the discrepancy is identified with the difference and the amount.
3. Verify the identification is the finding.
**Expected Result:** The discrepancy identification works — the discrepancy is identified with the difference and the amount.
**Priority:** Critical

### TC-SA-16-05-019 — Discrepancy resolution: the resolution (the resolution of the discrepancy, the correction, the date); the resolution is the action
**Type:** Positive
**Covers:** 5.3 → Discrepancy resolution: the resolution (the resolution of the discrepancy, the correction, the date); Rule: the discrepancy resolution is the fix (the resolution of the discrepancy, the correction, the date); the resolution is the action
**Preconditions:** A discrepancy has been identified.
**Steps:**
1. Review the discrepancy: the discrepancy (the discrepancy, the mismatch, the difference, the amount) — verify the review is the evaluation.
2. Resolve the discrepancy: the resolution (the resolution of the discrepancy, the correction, the date) — verify the resolution is the fix.
3. Verify the correction is applied and the resolution is recorded.
**Expected Result:** The discrepancy resolution works — the resolution of the discrepancy, the correction, and the date are the action.
**Priority:** Critical

### TC-SA-16-05-020 — Resolution status: the status (the identified, the resolved, the pending); the status is the control
**Type:** Positive
**Covers:** 5.3 → Resolution status: the status (the identified, the resolved, the pending); Rule: the resolution status is the state (the identified, the resolved, the pending); the status is the control
**Preconditions:** Discrepancies exist in all three resolution statuses.
**Steps:**
1. View the resolution status: the status (the identified, the resolved, the pending) — verify the status is the state.
2. Verify each discrepancy shows its status (the identified, the resolved, or the pending).
3. Verify the status transitions are correct (identified → pending → resolved).
**Expected Result:** The resolution status is shown — the identified, the resolved, or the pending state is visible for each discrepancy.
**Priority:** High

### TC-SA-16-05-021 — Discrepancy record: the record (the discrepancy, the difference, the resolution, the date); the record is the proof
**Type:** Positive
**Covers:** 5.3 → Discrepancy record: the record (the discrepancy, the difference, the resolution, the date)
**Preconditions:** A discrepancy has been identified and resolved.
**Steps:**
1. Open the discrepancy record.
2. Verify it shows the discrepancy, the difference, the resolution, and the date.
**Expected Result:** The discrepancy is recorded — the discrepancy, the difference, the resolution, and the date are shown.
**Priority:** High

### TC-SA-16-05-022 — Discrepancy view: the view (the discrepancies, the period); the handling is managed
**Type:** Positive
**Covers:** 5.3 → Discrepancy view: the view (the discrepancies, the period); Rule: the discrepancies are visible (the discrepancies, the period); the handling is managed
**Preconditions:** Discrepancies exist across a period.
**Steps:**
1. View the discrepancies: the discrepancies, the period — verify the discrepancies are visible.
2. Verify the view is complete for the period.
**Expected Result:** The discrepancy view works — the discrepancies for the period are visible.
**Priority:** High

### TC-SA-16-05-023 — Discrepancy export: the export (the discrepancies, the format, the period); the export is the record
**Type:** Positive
**Covers:** 5.3 → Discrepancy export: the export (the discrepancies, the format, the period)
**Preconditions:** Discrepancies exist for a period.
**Steps:**
1. Export the discrepancies: the export (the discrepancies, the format, the period).
2. Verify the export is generated in the selected format.
3. Verify the exported data matches the discrepancy view.
**Expected Result:** The discrepancies are exported — the discrepancies in the selected format for the period are generated.
**Priority:** Medium

### TC-SA-16-05-024 — Discrepancy identification and resolution is audit-logged with the discrepancy, resolution, and timestamp
**Type:** Positive
**Covers:** 5.3 → Audit logging of the discrepancy identification and resolution; Rule: discrepancy identification and resolution is audit-logged with the discrepancy, resolution, and timestamp
**Preconditions:** Discrepancy identification and resolution events have occurred.
**Steps:**
1. Open the audit trail and filter by "discrepancy".
2. Verify entries show the discrepancy, the resolution, and the timestamp.
**Expected Result:** The discrepancy identification and resolution is audit-logged with the discrepancy, resolution, and timestamp.
**Priority:** Critical
