Orders and Deliveries
This page covers how to run the Supplier's side of OpenVPMS - ie how to generate orders and receive deliveries.
Note that the ESCI system is not covered here.
The first thing to do is to ensure that you have things set up so that ordering system will work. ie
- the suppliers have been created using Suppliers|Information|New
- products from that supplier set to use it and the supplier is set as preferred, and the ordering information is set in the product's Supplier Tab
- products have their stock location data set with current, ideal and critical quantities set in the product's Stock Locations Tab
The basic flow is:
- Use Suppliers|Orders to create an order to a given supplier for a given stock location, edit if necessary, and when satisfactory, finalise the order [and print and send off to the supplier]. You can either use the Generate Orders button to generate the order(s), or you can create the order by keying in the line items and quantities, or you can do both - ie use Generate Orders, and then edit the order to add more items.
- When stuff arrives, use Suppliers|Deliveries to create the delivery record to tell the system that stuff has arrived, edit if necessary, and when satisfactory, finalise the delivery. Note that the system makes it easy for you to create the delivery record - it will bring up a list of what is on order and you just tick off the items (or if all got delivered, the complete order). If an item was short-shipped (eg you ordered 10 and got 7), then tick the item to get it listed as one of the delivered line items, and then edit the delivery line item to record the lower actual quantity. If an item was over-shipped (eg you ordered 10 and got 15) and you are going to accept the extras (and not send them back to the supplier) just record the quantity actually received.
Note that when you press the Finalise button you are finalising THIS delivery - you are not necessarily indicating that the complete order has all been delivered - just the stuff that arrived today. The act of finalising the delivery updates the stock and and if you have Auto-Price update set, then the cost price (and hence your sell price) will be automatically updated.
If this was a part delivery, when more stuff arrives, create the delivery, edit if required, and finalise this delivery.
If you receive less than you ordered, and you know that there will be no more deliveries, then you need to edit the order (not the delivery) to indicate this. There are two ways to do this: either you can change the order's status to Cancelled, or (more correctly), for those line items that short-shipped, set the Quantity Cancelled equal to (Quantity Ordered - Quantity Received). In this second case, the order's delivery status will change to Full when all the line items have (Ordered - Received - Cancelled) less than or equal to zero.
We have now done all that is really required. However, if you want OpenVPMS to track the supplier financials, then you need to generate the supplier invoices and enter the payments. Note that you do not need to do this, and many practices use their accounting system to handle the supplier finances.
Invoices and payments are handled as follows:
- Select a finalised delivery on the Suppliers|Deliveries screen and press the Invoice button. The system will create the invoice to the supplier for all delivered items from that supplier. Hence if the order was delivered in three lots, then if you wait until you have three finalised deliveries, pressing Invoice will create just one invoice.
- Now use Suppliers|Charges to process the invoice - edit it if necessary, and then finalise it. Note that the Supplier will not want this invoice - he should have already sent you one. Hopefully the two will agree - in fact you should delay finalising the invoice until the two do agree. [You may have set the supplier's list price wrongly, so your order shows the widgets at $10 each, but the supplier is actually charging $11.50 each.]
- Having finalised the invoice, it will now appear in Suppliers|Accounts. After you pay the supplier, you can now use Supplier|Payments to tell the system that you have paid.
Given the above flow, when the system is running happily, you use the Generate Orders button on the Suppliers|Orders screen to generate the order (s). See the above link for the algorithm used.
In a startup situation, you will have orders outstanding that the system does not know about. You could use Suppliers|Orders|New to enter the order. However, this is not mandatory - you can simply create the delivery records as the stuff is delivered. Note that because you have not entered the order, when you press New on the Suppliers|Deliveries screen, the system will not find any orders to be delivered. Just OK this and it will generate an empty delivery record for you and you can manually add it all the line items that have been delivered. Finalising this delivery will cause the stock to be updated.