diff --git a/erpnext/selling/doctype/sales_order/sales_order.py b/erpnext/selling/doctype/sales_order/sales_order.py index 37d7ef1f162..34ab703d817 100755 --- a/erpnext/selling/doctype/sales_order/sales_order.py +++ b/erpnext/selling/doctype/sales_order/sales_order.py @@ -1612,12 +1612,14 @@ def make_purchase_order( def set_missing_values(source, target): target.supplier = supplier - target.currency = frappe.db.get_value( - "Supplier", filters={"name": supplier}, fieldname=["default_currency"] - ) company_currency = frappe.db.get_value( "Company", filters={"name": target.company}, fieldname=["default_currency"] ) + supplier_currency = frappe.db.get_value( + "Supplier", filters={"name": supplier}, fieldname=["default_currency"] + ) + + target.currency = supplier_currency if supplier_currency else company_currency target.conversion_rate = get_exchange_rate(target.currency, company_currency, args="for_buying")