ERPNext in off-line mode

@javieralmancevo, HTML5 WebSQL is SQLite too! But if you have SQLite (that is embedable) you can give the full database to the user! The unique difference will be in the data accessor that dont will store in HTML5 WebSQL or IndexedDB, another detail, you can generate the database in the server side, instead of send various JSONs to the client. Will be a single file.

as much as i understand from html5 it save the data to the browser memory, which will be deleted when the browser is closed or the system goes to restart or shutdown, but if replace it with local DB it will stay until the internet comes back with no time limit on that…

1 Like

This is a very interesting use case which we are also looking into. On our part we are trying to create a solution for mobile workers. Where field service and sales people who travels with their mobile device to places with minimal and intermittent internet signal can still process important sales transactions. Then later on will auto sync the data to the cloud.

1 Like

i think you are referring to the sessionStorage. HTML5 localStorage does not delete the data when the browser is closed. You might want to read this.

1 Like

@jamesmedrano, I have a small idea about offline, but the major issue is: It will require skeletons to various platforms and the Python code, should be transcoded.

Do you will need a Skeleton to Android, iOS, Windows + Linux + Mac OS.

The basic idea is that each skeleton use a WebView (in mobile, and Electron in all desktops), and the skeletons provide some integrations, like Printer, WebCam or Camera, Local Network, Hardwares e etc.

Here in Brazil any invoice should be registered in a hardware that is in the Local Network or is plugged as a device, so Offline capabilities is required for me.

@ramielian
No, html5 storage is persistent. You can close the browser or shut down the computer, and when you turn it back on the data is still there.

@max_morais_dmm I did not know about HTML5 WebSQL, Ill have to look into it. As long as it does not require installing and maintaining an external database it is a good solution. Do not care if it is html5 webSQL or json in html5 storage.

1 Like

It would be really cool to build a native POS in electron

2 Likes

@rmehta, the issue still being what do with Python code? Supports eletron and offline with the webworkers are easy, but recode all the transactions controllers from Python to JavaScript will be a pain!

No batch and post to erpnext backend. POS to have restricted functionality

I am concerned when I read that the whole database would be on a sqlite db on a computer somewhere. How secure would the data be?
The whole point of the offline POS is for when connectivity is lost (usually less than an hours) or when connectivity is too slow.
I could foresee quite a lots of issues (in terms of privacy and integrity of data) with a duplicate db on a remote machine.

@Francois_Ifitwala A duplicate Db from my point of view would not be considered as a good behavior as we need to be able to work from mult location not only one location which will be limited when duplicating the Db…

HTML5 localSorage is used by many POS systems for their offline capability, including one of the most popular POS in Australia and New Zealand - Vend. http://www.vendhq.com

HTML5 localStorage works perfectly with one business having multiple retail sites, with each having multiple POS terminals. HTML5 localStorage stays on the computer forever. localStorage stays after shutting the computer down, it is still there after upgrading the operating system and browser.

The local database automatically synchronises changes with the remote once an internet connection is resumed. It works on all devices with no software required.

HTML5 localStorage is well proven for offline POS in multi-outlet multi-register businesses.

1 Like

i have a question, if lets say i have a ready POS but its PHP based, is there an API to link the sales to ERPnext POS to just make the sales?

@david_ Totally agreed with you. In all the POS software I have checked around that have offline capabilities, most of them are using html5.

That is exactly my concern. @ramielian.
Also as mentioned by @rmehta, the POS to be effective would have reduced functionality.

@Francois_Ifitwala Am not following, there is no API for POS module ???
But as I know frappe have rest API!!

I have created a github issue for a offline capable PoS within ERPNext: Offline mode for PoS · Issue #5123 · frappe/erpnext · GitHub I will let people make suggestions and comments before sending it to Bountysource(dot)com. Please feel free to make any comment or criticism, including any suggestion to the way I write since English is not my native language. If any part could be written in a better or more clear way I will appreciate if you let me know.

After any important issue has been dealt with I will post it in Bountysource(dot)com and add the first contribution, so we can get the ball rolling in this important improvement to ERPNext.

EDIT: Given that the developers have just announced a new PoS for the next release coming soon ("Develop" will be Frappe/ERPNext 7), it makes no sense to start in parallel a new one. So I think the best option is to wait for the new release and asses what is needed then.

2 Likes

Hello guys,

Which features are available in offline mode so far? Is it the POS and Docs?

BTW, it’s great to have the offline POS.

2 Likes

Is there any news regarding offline mode in ERPNext ? This would be very useful to have an offline mode in other modules than POS.

Any update on the POS Offline mode? Thanks.