Openbravo POS/User guide


Run start.bat (win32) or (Unix) to start the Application.

This starts the application in a maximised window. It is possible to start the application in fullscreen mode as would likely be required in a deployment scenario. See below for further details.

The lower part of the screen lists all of the current valid accounts. By default, these are

  • Administrator
  • Manager
  • Employee
  • Guest

You can log in as any of these users by selecting the relevant icon. You will not be prompted for a password since all of the default accounts are created without a password.

Sales Workflow


Choose the sales window from the left hand menu options.

Using a Barcode Scanner


Simply scan the barcode. Each item scanned which has an entry in the stock table will add an entry to the sales ticket.

If you have sold more than one item of a product, you can press the '+' sign to increase the amount of items. You can also use the '-' sign to decrease the quantity. If the quantity is one and you press '-' it will erase the item.

When all of the items have been scanned, press the equals '=' sign on the screen and the payment options dialog will appear.

The dialog has options for cash, cheque, electronic payment. Choose the relevant option e.g. cash and type in the amount handed over by the customer. LibrePOS will calculate the change. Press the printer button to print the receipt and open the till. Press OK to complete the transaction and return to the sales screen.

Using a Keyboard or the On Screen Keypad


This functions much as the barcode scanner does. Simply type in the barcode number and LibrePOS will lookup the barcode item in the stock table. Then when return on the keyboard or the green tick on the screen is pressed, the item will be added to the sales ticket.

Using the Catalog


LibrePOS maintains a catalog of current stock items, if icons have been added in the stock management screen they are displayed on the bottom right of the sales screen using images loaded into the database at the time of the stock update. If the images are not added to the stock items, the items will not appear in the catalog window.

To use these icons to make a sales transaction, select the category the stock item is in. Type in the number of items to be sold on the on screen keypad, press the multiply button '*' and only then choose the item itself from the catalog window. If only one item is to be sold, don't bother with the number or the multiply button, simply press the item's screen icon. The required number of items will be added to the sales ticket. When all of the items are added, complete the transaction as per the barcode scanner.

Selling General items which don't have barcodes/stock entries


You can type the price and then press the '+' sign. It will add a line with the price to the ticket.

Previously add a "General Item" entry to the stock database with an icon and with £0.00 as the price. When selling such an item, choose the general item from the catalog to add the item to the sales ticket. Then select the "General Item" on the sales ticket and press the pencil button to change the price and number of units being sold.

Closing cash


Closing cash allows you to see the sales of the day and prints a report for the day's sales.

  1. Under Main go to Close cash
  2. Click on close cash. A message box will appear and will ask you if you are sure. click yes.
  3. A report will print on the default printer for the payments and sales

Manage cash closings


You can see the cash closings on a certain time frame. To do that go to Main->Cash closed and select a start and end time. A report with the data will appear



Notice: message.nosave


After completing a sale you get a message box and this error: (with or without the psql/postgresql words) 
ERROR: duplicate key violates unique constraint "tickets_pkey"


There are sales stored in the database with the same ticket ID that the ticket you are trying to save (pressing =).



If the result of:


is greater than:

SELECT last_value from ticketsnum

Do this:

SELECT setval('ticketsnum', (select max(TICKETID) FROM TICKETS))


if the result of:


is greater than:


Do this: