Skip to content

An Android mobile application designed to be used on Android Pos Terminals in sales workplaces.

License

Notifications You must be signed in to change notification settings

CampusCoders/PosTerminalApp

Repository files navigation

Pos Terminal App

It is a sample Android mobile application designed to be used on Android Pos Terminals in sales workplaces.

Features

  • The application was developed with MVVM design pattern.
  • There are two types of users in the application: Manager and Cashier (Manager is also a cashier with all powers.)
  • Users can log in to the system and carry out their transactions based on their accounts.
  • Users can change their passwords.
  • Sales transactions can be made and products can be offered to customers.
  • New products and categories can be easily added.
  • Business owners (managers) or cashiers (those with authority) can add new cashiers to the system.
  • It is possible to view past orders and filter orders according to the desired criteria.
  • When the credit card payment option is chosen, the payment transaction is made by card via the POS device.
  • Once the payment process is completed, a physical receipt is automatically generated.
  • The receipt content includes customer information, order information and the logo of the application.

Libraries

  • [Foundation]
    • Android KTX - It is used to make the application more readable and easier to use.
    • AppCompat - It is a library that ensures Android applications are compatible with material design.
  • [Architecture]
    • Room - It is a library used to create and manage local databases.
    • Lifecycles - It is used to facilitate lifecycle management of activities and fragments.
    • LiveData - It is used to manage and monitor data flow.
    • ViewModel - It is used for storing data and sharing data between UI components.
  • [UI]
    • Animations & Transitions - It is used to use animations in transitions between screens.
    • Fragment - It is used as a reusable UI component.
    • Layout - Widgets are used to design the user interface.
  • [Third Party]

Setup

Make sure to have the following pre-requisites installed:

  1. Java 17
  2. Android Studio
  3. Android 7.0+ Phone or Emulation setup

Fork and clone this repository and import into Android Studio

git clone https://github.com/CampusCoders/PosTerminalApp

Use one of the Android Studio builds to install and run the app in your device or a simulator.

Screenshots

Login Page Categories Page Products Page
Shopping Cart Page Cashiers Page Daily Report Page

Demo Video (Old)

pos_terminal.mp4

Designs

You can access the figma design here.

design

Database Schema

DatabaseSchema)

Sample Receipts

Authors

License

This project is licensed under the MIT License. For more information, please see the LICENSE file.

Important Notes

  1. The application requires users to perform an initial login on the first screen. The following information is needed for this process:
  • Terminal Identity Number (Terminal ID)
  • Turkish ID Number or Tax ID Number (TCKN or VKN)
  • Merchant Identification Number (Merchant ID)
  • Password

Typically, these details are provided by the distributor for each merchant. In the case of this mobile application example, the necessary information is stored statically in the Constants.kt file. You can modify these details if needed. To input the information easily on the screen, you can click the "test" radio button.

  1. The SDK for the POS device is not included in the project due to licensing issues.

About

An Android mobile application designed to be used on Android Pos Terminals in sales workplaces.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published