Skip to content

Simulating account aggregation and payment initiation using Django REST Framework.

License

Notifications You must be signed in to change notification settings

SilverbackOssi/Open-Banking-Api-Simulator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 

Repository files navigation

Open Banking API Simulator

📄 Project Overview

The Open Banking API Simulator is a Django-based application designed to replicate essential features of open banking systems. It allows developers to simulate account aggregation, payment initiation, and API interactions in a secure and controlled environment.


Key Features

  • Account Aggregation: Simulate fetching account balances, transaction history, and other financial data.
  • Payment Initiation: Use secure authentication protocols to Test fund transfers between accounts.
  • RESTful API: Well-documented and developer-friendly endpoints for seamless integration.
  • Secure Authentication: Implements token-based authentication to protect API access.
  • Database Integration: Uses PostgreSQL for efficient and scalable data management.

🔧 Technology Stack

  • Backend: Python, Django, Django REST Framework
  • Database: PostgreSQL
  • Frontend: Bootstrap (for a simple and responsive user interface)
  • Tools: Git, Postman
  • API Documentation: Swagger/OpenAPI (development in progress)

🛠️ Setup Instructions

Follow these steps to set up the project locally:

  1. Clone the Repository

    git clone https://github.com/SilverbackOssi/Open-Banking-Api-Simulator.git
    cd Open-Banking-Api-Simulator
  2. Install Dependencies

    pip install -r requirements.txt
  3. Setup the Database

    python manage.py makemigrations
    python manage.py migrate
  4. Run the Development Server

    python manage.py runserver
  5. Access the Application


📊 Screenshots/Demo (development in progress)

Dashboard: Dashboard Screenshot

API Documentation: Swagger API Docs


🚀 Challenges & Solutions

  • Challenge: Ensuring secure authentication.

    • Solution: Implemented token-based authentication with Django REST Framework.
  • Challenge: Simulating real-world payment flows.

    • Solution: Designed flexible API endpoints to mimic real banking workflows.
  • Challenge: Handling API downtime.

    • Solution: Implemented a retry mechanism and fallback procedures to ensure minimal disruption during outages.
  • Challenge: Maintaining data security.

    • Solution: Enforced encryption for sensitive data, secured API endpoints with rate limiting, and implemented thorough logging to monitor access patterns.

🚧 Future Enhancements

  • Add multi-currency support.
  • Integrate more advanced API testing tools.
  • Build a user-friendly front-end dashboard.

🌐 Live Demo

When deployed, I will add a live demo link here: Live Demo


📄 License

This project is licensed under the MIT License. See the LICENSE file for details.


🤝 Contributing

Contributions are welcome! Please fork the repository and submit a pull request with your changes.


📩 Contact

About

Simulating account aggregation and payment initiation using Django REST Framework.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published