diff --git a/src/OrderProcessor/ApplyCost.php b/src/OrderProcessor/ApplyCost.php
index c63958a..f0b0efc 100644
--- a/src/OrderProcessor/ApplyCost.php
+++ b/src/OrderProcessor/ApplyCost.php
@@ -37,9 +37,11 @@ class ApplyCost implements OrderProcessorInterface {
   public function process(OrderInterface $order) {
     $context = new Context($order->getCustomer(), $order->getStore());
     foreach ($order->getItems() as $orderItem) {
-      $cost = $this->chainCostResolver->resolve($orderItem->getPurchasedEntity(), $orderItem->getQuantity(), $context);
-      if ($orderItem->hasField('field_cost')) {
-        $orderItem->set('field_cost', $cost);
+      if (!empty($orderItem->getPurchasedEntity())) {
+        $cost = $this->chainCostResolver->resolve($orderItem->getPurchasedEntity(), $orderItem->getQuantity(), $context);
+        if ($orderItem->hasField('field_cost')) {
+          $orderItem->set('field_cost', $cost);
+        }
       }
     }
   }
