diff --git a/vendor/magento/module-inventory-sales/Plugin/Sales/OrderManagement/DeductSourceItemQuantityOnRefundPlugin.php b/vendor/magento/module-inventory-sales/Plugin/Sales/OrderManagement/DeductSourceItemQuantityOnRefundPlugin.php index f9b27f80d9b..1f7137095eb 100644 --- a/vendor/magento/module-inventory-sales/Plugin/Sales/OrderManagement/DeductSourceItemQuantityOnRefundPlugin.php +++ b/vendor/magento/module-inventory-sales/Plugin/Sales/OrderManagement/DeductSourceItemQuantityOnRefundPlugin.php @@ -90,8 +90,7 @@ class DeductSourceItemQuantityOnRefundPlugin CreditmemoRepositoryInterface $subject, callable $proceed, CreditmemoInterface $entity - ) - { + ) { $isNewCreditMemo = !(bool)$entity->getEntityId(); $result = $proceed($entity); @@ -103,6 +102,8 @@ class DeductSourceItemQuantityOnRefundPlugin } /** + * Compensate reservation for creditmemo item + * * @param CreditmemoInterface $creditMemo * @return void */ @@ -146,6 +147,8 @@ class DeductSourceItemQuantityOnRefundPlugin } /** + * Validate if the compensation should be processed + * * @param string $sku * @param CreditmemoItem $item * @return bool @@ -165,6 +168,7 @@ class DeductSourceItemQuantityOnRefundPlugin return $this->isSourceItemManagementAllowedForProductType->execute($productType) && $item->getQty() > 0 - && !$item->getBackToStock(); + && !$item->getBackToStock() + && !$orderItem->getIsVirtual(); } }