We have our own Openbravo version, and we need to add the following features:
1-Allow Customer partial payments:
(If A customer owes 3 invoices, then the system should show all pending invoice on the customer, and allows a partial payment of any selected invoice. Once the invoice is paid, the status should be changed
2- Unit of Measure:
(Box of water , and a single bottle) (same product different barcode)
(We need a product to accept more than one barcode (preferably three). For example, Water can be sold in single bottle, a pack of Six or a dozen. Thus, when adding this product the user, should be able to identify that the first barcode is a single item, the second is a pack of six, and the third is a pack of twelve. Each one of the barcodes should have its own price. This module need to be perfectly integrated with stocks
3- A4 receipt.
We need to be able to select, which user is allowed to print using thermal printer & which can print using A4 standard. A template will be provides once the project has been awarded
4- Supplier and purchase orders management
We need to be able to track our suppliers quotations and Purchase Orders. This module should be able to handle partial deliveries, so it can keep track of items that are still to be delivered on the existing orders. Also, it should be perfectly integrated with stock and sales.
Purchase Order status:
 In progress
 Received total
 Received partial
4.1 Inserting a PO in the system:
The user must enter the following before making a complete PO:
 Invoice Number: (This should be automatically generated)
 Reference Invoice Number: (Usually the user should be able to insert a number or a character or a combination of both)
 Provider or supplier: User select the supplier from the database
 Date: Automatically insert date + time
 Type of payment
After the user fills successfully the above information, he needs to add the products needed via a barcode scanner
Once the PO is completed, the PO should be printed (if necessary) and stored in the system for future references.
4.2 Delivery management:
Once the supplier delivers the PO, the user must be able to search for the PO in the system and determine to which warehouse the product must enter, then the system change the PO to received so that the products will be added in the stocks.
In some cases, only part of the PO will be received, thus, we need to take in account that situation
4.3 Supplier management:
The user must be able to add a supplier information in the database so that the information of the supplier can be shown on the PO. All require fields will be disclosed once the project has been awarded
4.4 Revising an order:
The use should be able to revise an order
5- Different prices:
Each product should be able to accept three prices as following:
The user adds the prices in the product panel.
One the sale screen, the user should be able to select which price level applies to the current sale.
All the GUI for the above moduls need to be in Arabic, and all new tables & fields need to be included in the initial database initialization script.