/Mobile-Bank-Application

This is a mobile banking application developed for Android devices using Java. The application provides users with the ability to perform various banking operations and manage their accounts conveniently from their mobile devices.

Primary LanguageJava

1000_F_568833577_k5luNNetlu3hhAaTLmjNXjAsszNq8k8u

Overview

This is a mobile banking application developed for Android devices using Java. The application provides users with the ability to perform various banking operations and manage their accounts conveniently from their mobile devices.

Features

The mobile banking application offers the following features:

  1. User Authentication

    • Users can create an account and log in securely using their credentials.
    • Passwords are securely stored using encryption techniques.
  2. Account Management

    • Users can view their account balance and transaction history.
    • Users can transfer funds between their own accounts or to other users.
    • Users can manage their beneficiary list for easy fund transfers.
    • Users can request account statements and other account-related information.
  3. Bill Payment

    • Users can pay bills for various services such as electricity, water, etc.
    • Users can add and manage billers for quick bill payments.
  4. Mobile Recharge

    • Users can recharge their mobile phone balance.
    • Users can save their favorite mobile numbers for quick recharge.
  5. Notifications

    • Users receive notifications for successful transactions, bill payments, and other important account-related updates.
  6. Security

    • The application ensures secure communication using encryption protocols (e.g., HTTPS).
    • Appropriate user authentication measures are implemented to prevent unauthorized access.
    • Data is securely stored on the device and server.

Technologies Used

  • Java: Programming language used for Android application development.
  • Android Studio: Integrated Development Environment (IDE) for Android development.
  • XML: Markup language used for designing user interfaces.
  • SQLite: Database used for storing and managing user data.
  • Retrofit: HTTP client library for making API requests to the server.
  • JSON: Data interchange format used for API communication.
  • Gradle: Build system used for building and managing dependencies.
  • Parse database
  • Retrofit
  • Fragment
  • OOP
  • State Design Pattern

This app features:

Send money to another account
Send money between own accounts
Creating a bank account
Creation of credit card
Seeing the history of transactions
Change of loan amount and rate according to profession group
Loan payment
Purchase of top 25 cryptocurrencies at Current values
Storing the purchased crypto money (in this way, you can see the increase or decrease in value when you buy crypto money imaginary)
Adding and paying the invoice
Change user account settings
Admin panel

Getting Started

To run the mobile banking application locally, follow these steps:

  1. Clone the repository:

    git clone https://github.com/your-username/Mobile-Bank-Application.git
  2. Open the project in Android Studio.

  3. Build and run the application on an Android emulator or a physical device.

Contributing

Contributions to the mobile banking application are welcome! If you would like to contribute, please follow these steps:

  1. Fork the repository.

  2. Create a new branch:

    git checkout -b feature/your-feature-name
  3. Make your changes and commit them:

    git commit -m "Add your commit message"
  4. Push your changes to your forked repository:

    git push origin feature/your-feature-name
  5. Open a pull request to the main repository, describing your changes and the purpose of the pull request.

Screenshots

SignIn Page

5

Sign Up Page

4

Homepage

2

Log Out Page

1

License

This mobile banking application is open-source and is licensed under the MIT License

Contact

For any inquiries or feedback, please contact the development team at evansachie01@gmail.com

Feel free to update and customize this README file according to your specific project requirements and add relevant sections such as architecture, installation instructions, screenshots, etc.