diff --git a/models/sale_order.py b/models/sale_order.py
index 16ba61b0fa5e337ef2703fa901671705a6a3e2d5..266a9e253e210eebe3bc289da39b70e670ccc46c 100644
--- a/models/sale_order.py
+++ b/models/sale_order.py
@@ -45,13 +45,16 @@ class CoSavoirsSaleOrder(models.Model):
         :return: super action_confirm
         """
         for so in self:
-            digiforma_partner = so.digiforma_fetch_company()
-            if not digiforma_partner:
-                raise UserError(
-                    'Ce client n\'est pas configuré avec Digiforma')
-            else:
-                so.create_digiforma_sessions_so()
-                return super(CoSavoirsSaleOrder, so).action_confirm()
+            # check if product digiforma in SOL
+            digi_sol = so.order_line.filtered('product_id.is_formation_digi')
+            if digi_sol:
+                digiforma_partner = so.digiforma_fetch_company()
+                if not digiforma_partner:
+                    raise UserError(
+                        'Ce client n\'est pas configuré avec Digiforma')
+                else:
+                    so.create_digiforma_sessions_so()
+            return super(CoSavoirsSaleOrder, so).action_confirm()
 
     def show_digiforma_sessions_so(self):
         """