MPESA-POS: Open Source POS with MPESA, Airtel Money and Bank payments integration

Open Source POS with MPESA and Bank payment integrations

Tuma Payment Gateway has integrated ospos, one of the most popular open source POS and ERP solutions with MPESA, Airtel Money and banks in Kenya to automate mobile money payment reconciliations.

Features

The core features include

  • M-PESA, Airtel Money, and bank payment integration via Tuma Payments Gateway (supports 30+ Kenyan banks)
  • Stock management (items and kits with an extensible list of attributes)
  • VAT, GST, customer, and multi tiers taxation
  • Sale register with transactions logging
  • Quotation and invoicing
  • Expenses logging
  • Cash up function
  • Printing and emailing of receipts, invoices and quotations
  • Barcode generation and printing
  • Database of customers and suppliers
  • Multiuser with permission control
  • Reporting on sales, orders, expenses, inventory status and more
  • Receivings
  • Gift cards
  • Rewards
  • Restaurant tables
  • Messaging (SMS)
  • Multilanguage
  • Selectable Bootstrap based UI theme with Bootswatch
  • MailChimp integration
  • Optional Google reCAPTCHA to protect the login page from brute force attacks
  • GDPR ready

Supported Payment Methods

This works with:

  • M-PESA Paybill number / Buy Goods Till Number
  • Airtel Money
  • Equity Bank
  • Kenya Commercial Bank (KCB)
  • Cooperative Bank of Kenya
  • Diamond Trust Bank
  • NCBA
  • Loop
  • Family Bank
  • Stanbic Bank
  • I&M Bank
  • KWFT
  • Faulu Bank
  • Access Bank
  • Standard Chartered Bank
  • ABSA
  • SBM Bank Kenya
  • National Bank
  • Sidian Bank
  • And more…

Installation

Requirements

  • PHP version 8.1+ is required. Please note that PHP needs to have the extensions php-json, php-gd, php-bcmath, php-intl, php-openssl, php-mbstring, php-curl and php-xml installed and enabled.
  • MySQL 5.7 or MariaDB 10.x (MariaDB might offer better performance)
  • Apache 2.4 (Nginx should work fine too)
  • A domain name + hosting : You can get one here[Get affordable domain name+hosting]

Quick Start Installation

  1. Download the latest release and Import the Database
    • Download latest release here[Download Source code]
    • Import the SQL file: tuma_mpesa_pos.sql into your MySQL/MariaDB database
  2. Configure Database Credentials
    • Copy .env.example to .env
    • Edit .env and set your database credentials:database.default.hostname = localhost database.default.database = your_database_name database.default.username = your_username database.default.password = your_password
  3. Access the Application
    • Point your browser to: https://your_domain.co.ke/public
    • Login with default credentials:
      • Username: admin
      • Password: 12345678
  4. Sign Up for Tuma Merchant Account
  5. Configure Tuma API Keys
    • In the POS system, navigate to: Office > Configuration > Tuma
    • Enter your API keys generated from the merchant portal
Tuma API configuration

Testing a Sale with M-PESA

1) Go to Sales in the navigation menu

2) In the “Find item” search bar, type test and click on the test item

3) On the right side, under payment type, select M-PESA and click add payment button.

Pay with MPESA POS

4) A modal will appear – enter the M-PESA phone number

STK PUSH prompt on POS

5) Payment is initiated. A modal appears waiting for the customer to authorize the prompt on their phone

MPESA payment prompt for OSPOS


6) Once the customer completes the payment, a success message is displayed

MPESA confirmation on OSPOS

Live Demo

We’ve got a live version of our latest release running for you to play around with and test everything out.

You can check out the demo here and log in with these credentials.
Username guest
Password 12345678

Support

For inquiries, modifications or support, contact:

Tuma is a powerful payment gateway that automates billing workflows by connecting invoices, apps and sales with M-PESA and all banks in Kenya.