Introducing POS Awesome

Have you defined the sales tax template?
And get the printed field accordingly.
Like you did here

I’m sorry that I don’t use POS so my suggestion might not be straightforward.

Sales Tax template is used at the time of Sales Invoice or POS Invoice.

I’ve added TAX - 5% in each item. So that at the time of Sales it should reflect in print format also.

In POS Awesome the taxes are coming, But in Print format nothing is coming. I want taxes in Print format to which is 10.56.

You can create a custom Print format as you need
I recommend you check these:


Why reading OFFLINE POS SETTINGS - Print format field as this is for Offline.
I have this field with a Custom Print format which is for Offline and when trying to load does not work.
Maybe just add a Print format field under POS AWESOME SETTINGS for Online Print format.

This what i get

And on the Browser shows only this
{{ body }}

Maybe add buttons for Cash payment like below

In which when user clicks on C to clear and on any button (e.g. 1,000) twice keeps on adding up.

Or like in the V13 (add by 50 or 100) or even better under settings allow four buttons to add bills as per each Country requirements.

Please review this :

Thanks for the reply will investigate but it’s strange because this custom POS print format works well on POS so why not when printing on yours!

Does it support cash drawer and pole display for showing the prices? If yes, please suggest how to connect pole display for showing the prices to customer.

Also, would like to know a few more feature can be added to POS -

  1. Item-wise taxes, if I have 5 line items in the order and they’re 5%, 12%, and 18% in nature. Then how to define those? As currently, it takes only one tax template defined on POS Profile only
  2. Currency Denominations while opening/closing of POS Shift?
  3. Capture Credit Card / Debit Card details like last 4 digits and transaction id.
  4. Payment via prepaid card and balance of the card shown in POS.
  5. Generation of gift vouchers at the time of making payment. For example - If you make the purchase of 1000 USD you get a coupon worth 10 USD free. Which can be used in the next purchase.
  6. Keyboard shortcuts if we can define in POS, as most of POS cashiers are friendly with keyboard and they have time to mouse to navigate.

Thanks in Advance!


Hi Youssef, thanks for your awesome work on POS Awesome!

I am wondering if I have corruption in my items database as when I load POS awesome it gives me the following error after enumerating products for some seconds:

Are you able to point in the direction of the item or items that may be causing this error. I had planed to install myphpadmin to do the same query that your python code was doing however in the mean time I thought you might have some insight. Will let you know how I go, once again thanks for your awesome effort with this.

Kind regards,


Hi @RapidIT
Can you check the browser’s console for the error log?

The drawer is usually attached to the printer and taking open order from it

Thanks for your suggestions, and I can use some help with adding these new features.
Have you tried removing the tax from the POS Profile and putting it only in the items?

Yes, it is working fine with printer.

Yes, I tried but it is not taking taxes from Item Tax Template.

Thanks for the great idea, here is the response:
Unable to handle success response
request.js:241 DOMException: Failed to execute ‘setItem’ on ‘Storage’: Setting the value of ‘items_storage’ exceeded the quota.
at Object.callback (
at Object.success [as success_callback] (
at 200 (
at Object. (
at i (
at Object.fireWith [as resolveWith] (
at z (
at XMLHttpRequest. (
(anonymous) @ request.js:241
i @ jquery.min.js:2
fireWith @ jquery.min.js:2
z @ jquery.min.js:4
(anonymous) @ jquery.min.js:4
jquery.min.js:4 POST 500 (INTERNAL SERVER ERROR)
send @ jquery.min.js:4
ajax @ jquery.min.js:4 @ request.js:219 @ request.js:91
update_items_details @ ItemsSelector.vue?rollup-plugin-vue=script.js:272
filtred_items @ ItemsSelector.vue?rollup-plugin-vue=script.js:157 @ libs.min.js?ver=1608522566.0:234
cn @ libs.min.js?ver=1608522566.0:234
(anonymous) @ libs.min.js?ver=1608522566.0:234
qe @ libs.min.js?ver=1608522566.0:234
Promise.then (async)
ze @ libs.min.js?ver=1608522566.0:234
Ye @ libs.min.js?ver=1608522566.0:234
(anonymous) @ libs.min.js?ver=1608522566.0:234
ln.update @ libs.min.js?ver=1608522566.0:234
ce.notify @ libs.min.js?ver=1608522566.0:234
set @ libs.min.js?ver=1608522566.0:234
fn.set @ libs.min.js?ver=1608522566.0:234
callback @ ItemsSelector.vue?rollup-plugin-vue=script.js:178
success @ request.js:76
200 @ request.js:114
(anonymous) @ request.js:237
i @ jquery.min.js:2
fireWith @ jquery.min.js:2
z @ jquery.min.js:4
(anonymous) @ jquery.min.js:4
request.js:355 Traceback (most recent call last):
File “/home/erp_administrator/erp_bench/apps/frappe/frappe/”, line 64, in application
response = frappe.api.handle()
File “/home/erp_administrator/erp_bench/apps/frappe/frappe/”, line 59, in handle
return frappe.handler.handle()
File “/home/erp_administrator/erp_bench/apps/frappe/frappe/”, line 24, in handle
data = execute_cmd(cmd)
File “/home/erp_administrator/erp_bench/apps/frappe/frappe/”, line 64, in execute_cmd
return, **frappe.form_dict)
File “/home/erp_administrator/erp_bench/apps/frappe/frappe/”, line 1064, in call
return fn(*args, **newargs)
File “/home/erp_administrator/erp_bench/apps/posawesome/posawesome/posawesome/api/”, line 355, in get_items_details
for batch in batch_list:
TypeError: ‘int’ object is not iterable

What versions do you have?

@youssef How to generate multi-currency transaction using POS Awesome?

I don’t think multi currencies feture is available in this.

@youssef @Muzzy s there any way we can generate POS Invoices in pos awesome instead of sales invoices?