diff --git a/addons/mrp_subcontracting/views/stock_location_views.xml b/addons/mrp_subcontracting/views/stock_location_views.xml
index f04b8c06464..aa3d9a9100c 100644
--- a/addons/mrp_subcontracting/views/stock_location_views.xml
+++ b/addons/mrp_subcontracting/views/stock_location_views.xml
@@ -6,7 +6,7 @@
-
+
diff --git a/addons/mrp_subcontracting_dropshipping/models/stock_rule.py b/addons/mrp_subcontracting_dropshipping/models/stock_rule.py
index 91dac0321b2..db4cf3e506d 100644
--- a/addons/mrp_subcontracting_dropshipping/models/stock_rule.py
+++ b/addons/mrp_subcontracting_dropshipping/models/stock_rule.py
@@ -8,7 +8,9 @@ class StockRule(models.Model):
_inherit = 'stock.rule'
def _prepare_purchase_order(self, company_id, origins, values):
- if 'partner_id' not in values[0] and self.location_dest_id.is_subcontracting_location:
+ if 'partner_id' not in values[0] \
+ and (company_id.subcontracting_location_id.parent_path in self.location_dest_id.parent_path
+ or self.location_dest_id.is_subcontracting_location):
values[0]['partner_id'] = values[0]['group_id'].partner_id.id
return super()._prepare_purchase_order(company_id, origins, values)