Initial commit: add .gitignore and README
This commit is contained in:
123
README.md
Normal file
123
README.md
Normal file
@@ -0,0 +1,123 @@
|
||||
# DBIS Core Lite - IBM 800 Terminal to Core Banking Payment System
|
||||
|
||||
Tier-1-grade payment processing system connecting an IBM 800 Terminal (web emulator) through core banking to ISO 20022 pacs.008/pacs.009 generation and raw TLS S2S transmission, with full reconciliation and settlement finality.
|
||||
|
||||
## Architecture
|
||||
|
||||
```
|
||||
IBM 800 Terminal (Web Emulator)
|
||||
↓
|
||||
Terminal Access Gateway (TAC)
|
||||
↓
|
||||
Payments Orchestration Layer (POL)
|
||||
↓
|
||||
Core Banking Ledger Interface
|
||||
↓
|
||||
ISO 20022 Messaging Engine
|
||||
↓
|
||||
Raw TLS S2S Transport Layer
|
||||
↓
|
||||
Receiving Bank Gateway
|
||||
```
|
||||
|
||||
## Key Features
|
||||
|
||||
- **Web-based 3270/TN5250 Terminal Emulator** - Modern operator interface
|
||||
- **Terminal Access Gateway** - Secure abstraction with RBAC
|
||||
- **Payments Orchestration** - State machine with dual control (Maker/Checker)
|
||||
- **Compliance Screening** - Pre-debit sanctions/PEP screening
|
||||
- **Core Banking Integration** - Adapter pattern for ledger posting
|
||||
- **ISO 20022 Messaging** - pacs.008/pacs.009 generation with UETR
|
||||
- **Raw TLS S2S Transport** - Secure message delivery with framing
|
||||
- **Reconciliation Framework** - End-to-end transaction matching
|
||||
- **Settlement Finality** - Credit confirmation tracking
|
||||
- **Audit & Logging** - Tamper-evident audit trail
|
||||
|
||||
## Technology Stack
|
||||
|
||||
- **Runtime**: Node.js with TypeScript
|
||||
- **Framework**: Express.js
|
||||
- **Database**: PostgreSQL (transactional), Redis (sessions/cache)
|
||||
- **Authentication**: JWT with RBAC
|
||||
- **Testing**: Jest
|
||||
|
||||
## Getting Started
|
||||
|
||||
### Prerequisites
|
||||
|
||||
- Node.js 18+
|
||||
- PostgreSQL 14+
|
||||
- Redis 6+ (optional, for sessions)
|
||||
|
||||
### Installation
|
||||
|
||||
```bash
|
||||
npm install
|
||||
```
|
||||
|
||||
### Configuration
|
||||
|
||||
Create a `.env` file:
|
||||
|
||||
```env
|
||||
NODE_ENV=development
|
||||
PORT=3000
|
||||
DATABASE_URL=postgresql://user:password@localhost:5432/dbis_core
|
||||
REDIS_URL=redis://localhost:6379
|
||||
JWT_SECRET=your-secret-key-change-this
|
||||
RECEIVER_IP=172.67.157.88
|
||||
RECEIVER_PORT=443
|
||||
RECEIVER_SNI=devmindgroup.com
|
||||
```
|
||||
|
||||
### Database Setup
|
||||
|
||||
```bash
|
||||
# Run migrations (to be created)
|
||||
npm run migrate
|
||||
```
|
||||
|
||||
### Development
|
||||
|
||||
```bash
|
||||
npm run dev
|
||||
```
|
||||
|
||||
### Build
|
||||
|
||||
```bash
|
||||
npm run build
|
||||
npm start
|
||||
```
|
||||
|
||||
### Testing
|
||||
|
||||
```bash
|
||||
npm test
|
||||
npm run test:coverage
|
||||
```
|
||||
|
||||
## Documentation
|
||||
|
||||
Comprehensive documentation is available in the [`docs/`](docs/) directory:
|
||||
|
||||
- [Architecture](docs/architecture.md) - System architecture and design
|
||||
- [API Reference](docs/api/reference.md) - Complete API documentation
|
||||
- [Deployment Guide](docs/deployment/deployment.md) - Production deployment
|
||||
- [Operations Runbook](docs/operations/runbook.md) - Day-to-day operations
|
||||
- [Export Feature](docs/features/exports/overview.md) - FIN file export functionality
|
||||
|
||||
See [docs/README.md](docs/README.md) for the complete documentation index.
|
||||
|
||||
## Security
|
||||
|
||||
- Operator authentication with JWT
|
||||
- RBAC with Maker/Checker separation
|
||||
- TLS for all external communication
|
||||
- Certificate pinning for receiver
|
||||
- Input validation and sanitization
|
||||
- Tamper-evident audit trail
|
||||
|
||||
## License
|
||||
|
||||
PROPRIETARY - Organisation Mondiale Du Numérique, L.P.B.C.A.
|
||||
Reference in New Issue
Block a user