47 lines
2.1 KiB
Markdown
47 lines
2.1 KiB
Markdown
---
|
|
title: "Account"
|
|
type: OpenSpec
|
|
status: Draft
|
|
domain: Customer Management
|
|
---
|
|
|
|
# Account
|
|
|
|
## Requirement Definition
|
|
Manages customer account information, which is either sent from an external system to OLS or added by users manually via the OLS system.
|
|
|
|
## Process Flow
|
|
|
|
### Pre-Conditions
|
|
- Users must have access rights in the "Account" module.
|
|
- An account type must exist in OLS before an account of that type can be added.
|
|
- The user must select a customer to access the Account tab.
|
|
|
|
## Business Rules
|
|
|
|
### Data Schema
|
|
|
|
| Field Name | Description | Logic Type | Constraints / Rules |
|
|
|---|---|---|---|
|
|
| CIF Number | CIF number of selected customer. | String | Required. Read-only on creation. |
|
|
| Product Account Level (PAL) | Product Account Level. | Enum (Lookup) | Required. |
|
|
| Product Account Type (PAT) | Product Account Type. | Enum (Lookup) | Required. PAL + PAT = Account Type. |
|
|
| Account Number | Product Account Number. | String (20) | Required. Combination of Account No + Account Type must be unique. |
|
|
| Account Open Date | Open date of the account. | Date | Required. |
|
|
| Account Indicator | Personal [P] or Corporate [C]. | Enum (Lookup) | Required. |
|
|
| Account Block Code | Used to block transactions. | String (10) | Optional. |
|
|
| Block Code Reason | Reason for blocking. | String (100) | Optional. |
|
|
| Block Code Last Update Date | Date block was applied. | Date | Optional. |
|
|
| Cycle | Statement cycle date. | Integer (2) | > 0 if provided. |
|
|
| Account Status | Status of the account. | Enum (Lookup) | Required. |
|
|
|
|
### Execution
|
|
- Each account belongs to one Customer. The CIF number cannot be changed via this screen (requires CIF Merge batch).
|
|
- Records managed by OLSACCT batch cannot typically be changed from the admin screen.
|
|
- On Add: Rejected if Account No + Account Type already exists. Else, record added to PRODUCT_ACCOUNT and LOYALTY_ACCOUNT_PRODUCT created.
|
|
- On Update: Must exist in OLS. Original record moved to history.
|
|
- On Delete: Rejected if linked to an active Card record. Else, logical delete applied (moved to history).
|
|
|
|
## Exception Flow
|
|
- Input validation failures stop the action.
|