feat: initialize project backend structure and document system specifications across all modules

This commit is contained in:
SonPhung
2026-07-24 09:05:41 +07:00
parent 506008c69f
commit 4534e4ecb8
74 changed files with 7989 additions and 44 deletions

View File

@@ -0,0 +1,51 @@
---
title: "No-Hit CP Transaction"
type: OpenSpec
status: Draft
domain: Customer Management
---
# No-Hit CP Transaction
## Requirement Definition
Tracks all incoming transactions that trigger a campaign rule but are not eligible (do not meet criteria) OR transactions that have no linked campaign rule. Helps in troubleshooting why a customer did not receive an expected reward.
## Process Flow
### Pre-Conditions
- Incoming transactions trigger campaigns but do not hit the rule criteria.
- Users must have access rights in the "No hit CP- Transaction" module.
## Business Rules
### Data Schema
#### Transaction Detail (Incoming request data)
| Field Name | Description | Logic Type | Constraints / Rules |
|---|---|---|---|
| CIF Number | CIF Number. | String | Read-only. |
| Product Account No | Product Account No. | String | Read-only. |
| Card Number | Card Number. | String | Read-only. |
| Invoice No | Generated unique incoming transaction ID. | String | Read-only. |
| Transaction Type | AWD / RED / ADJ. | Enum | Read-only. |
| OLS Transaction Code | Used to locate CP rule. | String | Read-only. |
| Transaction Amount | Gross amount or adjust point. | Decimal | Read-only. |
| Various | Store, Terminal, MCC, Currency, etc. | Various | Sourced from incoming transaction. |
#### CP Rule Listing (Error Details)
Displays details for each Campaign Rule the transaction triggered but failed to hit.
| Field Name | Description | Logic Type | Constraints / Rules |
|---|---|---|---|
| Campaign ID | Campaign ID. | String | Read-only. |
| Campaign Rule | Campaign Rule ID. | String | Read-only. |
| Pool ID | Reward pool. | String | Read-only. |
| Error Code | Error response code from OLS. | String | Read-only. |
| Error Descriptions | Detailed description of why criteria failed. | String | Read-only. |
### Execution
- **View-only screen.**
- Data is sourced from `OLS_ORPHAN_TXN_NO_HIT`.
- The error description should specify exactly which criteria failed (e.g., MCC didn't match, Minimum amount not met).
## Exception Flow
- N/A