This repository implements a banking system built with ASP.NET Core that enables users to create bank accounts, manage cards, transfer funds internally and between banks via a central API, and process payments. The system features a modular architecture with separate projects for the main bank web application, central API for inter-bank communication, and a demo shop showcasing payment integrations. Key capabilities include user authentication with 2FA, email notifications via SendGrid, security measures like reCAPTCHA and request encryption, and role-based administration. The solution follows layered architecture patterns with separation of concerns between presentation, service, and data access layers, utilizing Entity Framework Core for ORM and AutoMapper for DTO mapping.