Files

124 lines
2.9 KiB
Markdown
Raw Permalink Normal View History

# 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.