This project is a robust simulation of a banking system designed to handle various types of transactions, including deposits, withdrawals, transfers, payments, and POS purchases. It incorporates realistic financial mechanics such as currency conversion, bank charges, and account balance checks. The system is built using Python and MongoDB, demonstrating expertise in backend development, database management, and financial modeling.Â
CORE FEATURES
Transaction Simulation: Supports multiple transaction types (e.g., deposits, withdrawals, cheque handling, transfers).
Currency Conversion: Automatic conversion for multi-currency transactions using real-time exchange rates stored in the database.
Bank Charges: Dynamically calculates and applies transaction fees.
Error Handling: Logs failed transactions with detailed reasons, ensuring financial accuracy.
Transaction History: Generates unique transaction IDs with detailed metadata (amount, charge, timestamp, etc.).
Account Management: Updates and maintains account balances across primary and secondary accounts for each operation.
Realistic Data Generation: Uses randomization for transaction amounts, account selection, and merchant interaction for a dynamic simulation.
CURRENT COLLECTION IMAGES
TECHNOLOGIES USED
Python: Core logic and application development.
MongoDB: NoSQL database for managing accounts, transactions, and merchants.
Libraries: Includes pymongo for database operations and Faker for synthetic data generation.
FULL PROJECT
This project is currently in progress but you can find it here (in code).