Statement posting errors due to unavailable inventory or update conflicts
Error code: CannotPickWithEnoughInventory
This article provides workarounds for error messages that are related to inventory issues or update conflicts during the posting of Commerce transactions in Microsoft Dynamics 365 Commerce.
Statement posting error due to unavailable inventory
During the statement posting, you receive an error message like the following one:
xx cannot be picked because only yy is/are available from the inventory
Workaround
You can mitigate the error either by manually updating the inventory for the item or by enabling physical negative inventory for the item model group that's associated with the item in Commerce headquarters.
For a consistent posting experience, Microsoft recommends that you enable physical negative inventory for the item model group. In some scenarios, statements might not be able to be posted unless physical negative inventory is enabled.
For example, no inventory is available for an item, but a cashier returns the item and then adds it back to the same transaction at a reduced price to mimic a price match. In this case, both the return transaction and the sales transaction will be pulled into the same statement of the single customer order. However, because there's no guarantee that the return line (which increases the inventory) will be posted before the sales line (which reduces the inventory) is posted, inventory errors can occur. If physical negative inventory is enabled in this scenario, transaction posting isn't negatively affected, and the system correctly reflects the inventory.
To enable physical negative inventory for an item model group in Commerce headquarters, follow these steps:
Go to Inventory management > Setup > Inventory.
In the left navigation pane, select the item model group.
In the Inventory policies section, under Negative inventory, select the Physical negative inventory checkbox.
Statement posting errors due to update conflicts
An update conflict issue can occur when the inventory valuation method is either standard cost or moving average. Because both methods are perpetual costing methods, the final cost is determined at the time of posting.
If you're using the moving average method, you receive an error message like the following one:
Inventory value xx.xx is not expected after the proportional expense calculation
If you're using the standard cost method, you receive an error message like the following one:
The standard cost does not match with the financial inventory value after the update. Value = xx.xx, Qty = yy.yy, Standard cost = zz.zz
Workaround
To work around the errors, see An update conflict occurs when the inventory valuation method is either standard cost or moving average.
Note
For the update conflict error, you don't have to delete the customer orders that were generated by using the aggregation step of posting. After you implement the suggested workarounds, the statement should be posted if you reattempt the statement posting.