Inventory Cost for Orders
1) If there isn't a cost assigned in inventory for an item, the system will use the one manually entered for the order.
2) If an inventory item has a cost assigned, then the cost for the item at the time it is shipped will be used for the order. This will overwrite any manually entered costs. This is necessary to keep the item's total inventory value in line with the GL inventory value. If manually entered costs on orders were used instead of automatic costs taken at the time of shipping, the GL might deduct too much or not enough to match the actual value of the item in inventory.
If you'd like to have the static cost for items be the default cost that shows for quotes and orders so that the profit margin that shows won't fluctuate as much if you happen to get discounts when purchasing items, you can turn on the setting Admin -> Billing -> Company Options -> General -> Default Item Costs On Orders To Static Cost But Override During Shipping. When the order ships, the system will still pull in the current inventory cost for items, but the initial profit margin that will be displayed for quotes and orders will use the fixed static cost.
If an item is an Other Charges item, then the cost will always be pulled from the Static Cost field for the item. The cost won't be overwritten during shipping because Other Charges items don't maintain inventory levels and costs.