Product Costs
From NewHaven Software Wiki
"Costs" are discussed typically in three contexts:
- Cost of goods sold
- Value of inventory on hand
- Cost to be used when ordering from your vendor or receiving stock
This article will expand on each of these.
Contents |
Costs for Purchasing and Receiving
Purchasing
When adding an item to a PO, CMS will use costs in the following order based on the presence of data:
- Vendor SKU Cost
- Expected Cost
- Last Lot Cost
Vendor Cost: This is the Cost field found in the Vendor SKU record (click + button from the Inventory sub-tab under Price/Inventory.
Expected Cost: CMS will use this field when no Vendor SKU is associated with a product. Its primary purpose is for Drop ship and non-inventory items that would never have lots. This is field is updated by the closing of received PO's but is otherwise set and maintained manually.
Last Lot Cost: This cost is associated with the cost of the last lot received. If no Vendor or Expected cost is found, CMS will use the cost from the last lot found when adding the item to a PO. This field is updated and created when a lot is received its value is set by either the expected cost (if no vendor cost exists), by Vendor Cost, or hand entered when the lot is created.
PO Receiving
The receiving of a PO will create a lot for each item received and CMS will set the unit cost in the lot equal to the cost the PO was received at (which may differ from the cost ordered at and can include "landing fees" like shipping and tax.) The costs for all associated lots will be updated as it is common for actual costs to be set some time after the PO was received (e.g. invoice for the order arrives by mail to your accounting office days after the shipment was received.) Also worth noting is that in the PO the item cost can be padded with landing fees so the lot unit cost includes associated shipping or other charges. NOTE: As of 9.0.5, if you edit a closed PO, that cost will now update its corresponding lots and itemsord records (this only used to happen at the time you closed.)
Receiving (manually)
Using Stock Manager to receive stock, including increasing stock with 'Adjust All Inventory', CMS will set the unit cost based on the most recently received lot. This is our most recent and best known landed cost.
It will not consider Vendor or Expected cost as those two are designed to be used in conjunction with Purchasing and they do not include the landed/padded costs as Lot costs do (see paragraph above.)
Return Lots
Return lots are those lots created when stock is received via a merchandise return (a return against an order where the checkbox for "Restock' was checked.) If the lot that this item was originally pulled from is still active (meaning is has some quantity available) the return will simply restock that lot. If the lot is now inactive though (no quantity available) a return lot will be created using the same criteria as the old lot (cost, vendor, etc.)
In the case where you are cancelling an unshipped order, stock will always be returned to the original lot even if inactive. A return lot would never be created in this scenario.
Value of Inventory on Hand
This is figure is useful at the end of year or accounting period where you would need to tell your accountant the value of all of the inventory you have on hand. This value is shown in the Lot Summary and Order Processing Summary reports and is calculated but looking at the available quantity in each lot and multiplying that by the unit cost for that lot. (each lot may have a different cost). CMS does not use average costs as some other systems do and thus is a strength of CMS.
Cost of Goods Sold (COGS) in the database
These are set in the Itemsord record at the time the item was sold. The field is t_cost which represents the total cost for the line item (qty ordered x unit cost).
Stocked
The t_cost is equal to the sum of the lot_item records which detail what stock was pulled from which lots and at what cost.
Non-inv
If this item was non_inventory, CMS will instead set the itemsord.t_cost using the Expected Cost field from the Product setup.
Dropship
For dropships CMS will initially set the itemsord.t_cost to the Expected Cost value. If a dropship PO is created, that PO will use the cost as described in the section below. When the dropship PO is confirmed (received) it will update the itemord.t_cost to whatever cost was entered during confirming/receiving. This last step is provided to allow for a true cost to be set based on what invoice/confirmation you receive from the drop shipper, should it differ from the cost you ordered at.
Note: if the items is both stocked AND dropshipped, something CMS allows but we do not support, the t_cost will = SUM(lot + expected cost). This is true both before and after the po confirm.