WASL (وَصْل) Digital Wallet
WASL is a bank-grade, secure P2P and merchant digital wallet platform tailored for Syria.
Tech Stack
- Backend: Laravel 11 + Laravel Octane (Swoole driver)
- Mobile: Flutter 3.x (Clean Architecture + BLoC/Cubit)
- Database: PostgreSQL 16 (with transaction audit ledgers)
- Cache / Queue: Redis 7
- Storage: MinIO (S3-compatible secure private storage)
- Deployment: Docker Compose
Architectural Core Principles
- ACID Compliance: Ensuring complete database integrity for all financial mutation queries.
- Double-Entry Ledger: Every transaction produces exactly 2 balancing ledger entries (debit and credit).
- Strict Minor Units: All monetary values stored and processed as
BIGINTminor units (e.g. SYP is stored as minor units to avoid floating-point inaccuracies). - Pessimistic Locking:
SELECT ... FOR UPDATEwith deterministic resource locking order to prevent deadlocks. - Data Encryption: AES-256 field-level encryption for sensitive PII (Phone number, National ID).
- Audit Logging: Immutable ledger tracking all authentication, registration, and transfer activities.
Directory Structure
Backend/: The Laravel API and administrator control panel.Mobile App/: The Flutter application codebase.wasl_concept.md: Complete details of the 4 phase implementation prompts.deploy.sh: Shell script to stage, commit, and push changes to the repository.
Description
Languages
PHP
95.9%
Dockerfile
3.8%
Shell
0.3%