One of the questions we’re often asked surrounds the tricky issue of ‘negative’ stock quantities, and how SQLWorks can help warehousing operations balance flexibility with security.
By default, SQLWorks does not allow what some companies choose to call a ‘negative’ stock quantity. Ordinarily, the only stock that can be invoiced is the actual quantity of stock you hold, the act of invoicing moves it out of stock, and you cannot invoice a customer for stock you don’t have.
This is our recommended model, because it helps ensure business keep an accurate stock valuation and acts as natural protection against errors. While promises can be made to customers about stock owed, these remain only promises, and do not influence the company financials.
This model also makes intuitive sense to end-users: the ‘actual’ quantity will never be less than zero – reflecting the ‘actual’ amount a member of staff will find in a warehouse if they perform a stock check in person (either ‘some’ or ‘none’, but never a negative.)
However there are some instances where this principle runs into real-world difficulties. For example:
• In fast-paced business operations or large factory sites, manufactured goods may need to be physically loaded for dispatch before a shopfloor member of staff or office team at another location are able to confirm in the system that the new stock quantity is completed. The negative stock restriction can then become a bottleneck, as a lack of stock quantity seen in the system holds up the dispatch & invoicing process, and delays the delivery of stock that was otherwise ready on time.
• Production runs may not be exact – in some industries (such as printing) including and invoicing a small excess quantity or overrun of finished goods is typical: once again this can create a delay: where dispatch is held up by a tiny excess quantity that isn’t recognised in stock without some minor adjustments to data, and so can’t be invoiced in full.
• Large production runs may have special contract terms or non ad-hoc invoicing arrangements agreed, where invoicing might sometimes run ahead of the production of stock. For this, a company would need to be able to invoice stock they ‘owe’ to a customer, and takes an acceptable level of risk for doing so.
SQLWorks offers three different solutions to this kind of ‘negative stock’ problem:
Solution #1 – Enabling the Dispatch Note System
Enabling the Dispatch Note system adds one extra step in the progression from Order to Invoice: the Dispatch Note. Before an invoice, the user must issue a dispatch note to a customer, which can contain stock lines selected from multiple orders, even those without stock quantity available to be invoiced yet.
The quantity ‘dispatched but not invoiced’ is logged separately under ‘Pending’ until enough ‘Actual’ stock quantity is identified. Once the user is ready to invoice, the company must invoice from the available lines listed on existing dispatch notes.
This system doesn’t allow stock to go ‘negative’, since the user must always ‘book in’ the actual quantity to eventually cover what was dispatched, before they can finally invoice the customer – but it does allow the customer to receive their goods promptly, while maintaining traceability over what was shipped. The Dispatch Note system is a good solution where the underlying issue is the time delay.
The authority to issue dispatch notes can also be optionally granted to warehousing staff, and this system also works in tandem with the Dispatch Planner.
Solution #2 – ‘Flexibility Mode’
The first of two ‘Advance Batch’ modes, this option permits SQLWorks to create synthetic batches of stock it doesn’t have physically available. Doing so allows a company to invoice for stock they don’t have yet – albeit with some important safeguards in place.
Firstly, these artificial advance batches are tagged as such behind the scenes to prevent any errors being introduced into the stock valuation. Secondly, when new stock quantity then arrives in from completed manufacturing or purchase order deliveries, this artificial stock quantity figure is absorbed first – reflecting the fact that the real stock was already invoiced out.
Thirdly, in this mode SQLWorks is only allowed to create as much artificial stock quantity as is already listed on outstanding Purchase Orders or Works Orders. While the user is now allowed to send an invoice for stock that isn’t quite ‘to hand’ yet, there has to be a corresponding entry on the system indicating from where the business was expecting that stock to materialise.
For example: Advance and Adjusted stock quantities shown above, and a marker showing that stock batch 1016576 is an advance batch of x10 quantity that has been created by the system.
If you have Advance Batches turned on, you can use a quick filter under the Search bar to see all the items that have active advance batches (i.e those with negative stock that will use up future incoming quantity). If you print a stock valuation, advance batches will be treated as a ‘negative’ quantity for valuation purposes.
Solution #3 – ‘Unrestricted Mode’
The second of two ‘Advance Batch’ modes, this option permits SQLWorks to create batches of stock it doesn’t have physically available, with fewer restrictions.
Firstly, these artificial batches are tagged as such behind the scenes to prevent any errors being introduced into the stock valuation. Secondly, when new stock quantity then arrives in from completed manufacturing or purchase order deliveries, this artificial stock quantity figure is absorbed first – reflecting the fact that the real stock was already invoiced out.
However, in this mode there is no upper-limit enforced by the quantity outstanding on existing Works Order or Purchase Orders – allowing the company complete freedom to invoice irrespective of actual stock quantity, or even potential stock quantity.
Adopting this setting has important stock valuation and tax implications, so should only be used with great caution.
For ERP and stock control expertise, please contact our team today.