diff --git a/InvenTree/part/models.py b/InvenTree/part/models.py
index 604d384a67..fde9c80720 100644
--- a/InvenTree/part/models.py
+++ b/InvenTree/part/models.py
@@ -29,6 +29,8 @@ from markdownx.models import MarkdownxField
 
 from django_cleanup import cleanup
 
+from djmoney.contrib.exchange.exceptions import MissingRate
+
 from mptt.models import TreeForeignKey, MPTTModel
 from mptt.exceptions import InvalidMove
 from mptt.managers import TreeManager
@@ -1832,9 +1834,14 @@ class Part(MPTTModel):
 
     def get_purchase_price(self, quantity):
         currency = currency_code_default()
-        prices = [convert_money(item.purchase_price, currency).amount for item in self.stock_items.all() if item.purchase_price]
+        try:
+            prices = [convert_money(item.purchase_price, currency).amount for item in self.stock_items.all() if item.purchase_price]
+        except MissingRate:
+            prices = None
+
         if prices:
             return min(prices) * quantity, max(prices) * quantity
+
         return None
 
     @transaction.atomic
diff --git a/InvenTree/part/views.py b/InvenTree/part/views.py
index 4304d2a95d..dc6b8a9632 100644
--- a/InvenTree/part/views.py
+++ b/InvenTree/part/views.py
@@ -20,6 +20,7 @@ from django.contrib import messages
 
 from moneyed import CURRENCIES
 from djmoney.contrib.exchange.models import convert_money
+from djmoney.contrib.exchange.exceptions import MissingRate
 
 from PIL import Image
 
@@ -425,7 +426,11 @@ class PartDetail(InvenTreeRoleMixin, DetailView):
                     continue
 
                 # convert purchase price to current currency - only one currency in the graph
-                price = convert_money(stock_item.purchase_price, default_currency)
+                try:
+                    price = convert_money(stock_item.purchase_price, default_currency)
+                except MissingRate:
+                    continue
+
                 line = {
                     'price': price.amount,
                     'qty': stock_item.quantity
@@ -487,7 +492,11 @@ class PartDetail(InvenTreeRoleMixin, DetailView):
                 if None in [sale_item.purchase_price, sale_item.quantity]:
                     continue
 
-                price = convert_money(sale_item.purchase_price, default_currency)
+                try:
+                    price = convert_money(sale_item.purchase_price, default_currency)
+                except MissingRate:
+                    continue
+
                 line = {
                     'price': price.amount if price else 0,
                     'qty': sale_item.quantity,