This project introduces a custom Point of Sale (POS) page built for ERPNext, specifically designed to work in offline mode. The default ERPNext POS system lacks robust offline support, so this custom solution allows sales transactions to continue smoothly even without internet connectivity.
The custom POS page comes pre-installed when you install the app, requiring no manual setup.
I’m working with a custom POS implementation in ERPNext, using offline storage by managing variables in memory (RAM) to simulate POS operations. I’m fetching necessary data (like customers, items, item prices, and warehouse lists) at the start, storing them in arrays and maps, and then operating offline with this data. My approach aligns well with handling offline functionality, especially in POS systems that need to operate without continuous server interaction.
| Tab | photo |
|—–|——-|
|POS Screen | |
|Select ItemGroup (Old version style) |
|
|Get All Item (Filtred by name,code bar or group) |
|
|Selecting items |
|
|select client and price list to detect item price |
|
|Item Details Cart : quantity Rate (can change it) , Discount persentage or amount calculated based on each other. price list rate just to show the base rate that came from price list. and we have the calculated field discount amount. |
|
|When Checkout : enter the paid amount , detect if the pos is Paid or Unpaid and calculate To change amount |
|
|Submit the pos invoice (if the pos is unpaid it will push it diractly to the server so the internet conection is required otherwise it will save on the local db) |
|
|after submit create new tab && make sync button orange showing unsynced pos |
|
|Sync with progress bar |
|
|after sync the button return green |
|
|menu options |
|
To install the Halfware App on your Frappe or ERPNext instance:
$ bench get-app https://github.com/RAYANaouf/ERPNEXT-POS
Go to the directory where your ERPNext instance is set up:
cd /path/to/frappe-bench
Then install the app into your ERPNext site:
bench get-app
bench --site [your-site-name] install-app ERPNEXT-POS