diff --git a/models/account_move.py b/models/account_move.py
index f93c095125479d74f8095dea392f25e0bac4673c..99ccfce54d03a976b46476ea0f70040902520763 100644
--- a/models/account_move.py
+++ b/models/account_move.py
@@ -568,6 +568,8 @@ class AccountMove(models.Model):
                 char type_line : type de lignes ('sale' / 'accise')
         """
         domain = [("type", "=", type_line)]
+
+
         # Récupération des articles à utiliser sur la ligne de facture
         if type_line == "accise":
             product_id = self.env.ref("oacc_account.product_product_accise")
@@ -598,6 +600,14 @@ class AccountMove(models.Model):
                     ],
                 ],
             )
+            if not product_id:
+                raise UserError(
+                    _(
+                        f"Veuillez définir un article pour la catégorie "
+                        f"d'ACCISE {del_counter[0].accise_category_id.id}."
+                    )
+                )
+
         elif type_line == "sale":
             product_id = self.env.ref("oacc_account.product_product_sale")
             domain = expression.AND(
@@ -610,10 +620,12 @@ class AccountMove(models.Model):
                 [domain, [("acc_delivery_counter_id", "=", acc_delivery_counter_id)]]
             )
 
-        if not product_id:
-            raise UserError(
-                _("Veuillez définir un article pour le prix de vente et/ou ACCISE.")
-            )
+            if not product_id:
+                raise UserError(
+                    _(
+                        "Veuillez définir un article pour le prix de vente."
+                    )
+                )
 
         # Récupération des intervalles de prix par période
         # Dans le cas de l'ACCISE, les prix ne sont pas dépendants des points
@@ -624,13 +636,22 @@ class AccountMove(models.Model):
             self.start_date,
             self.end_date,
         )
-        if not interval_ids:
-            raise UserError(
-                _(
-                    "Veuillez définir des prix de vente / ACCISE "
-                    "pour la période renseignée."
-                )
-            )
+
+        if not interval_ids and type_line=='accise':
+            message = (f"Veuillez définir des prix d'ACCISE de la catégorie "
+                       f"{del_counter[0].accise_category_id.id} "
+                       f"pour la période renseignée.")
+            raise UserError(_(message))
+
+        if not interval_ids and type_line=='sale':
+            injection_counter = self.env["acc.counter"].browse(acc_injection_counter_id)
+            delivery_counter = self.env["acc.counter"].browse(acc_delivery_counter_id)
+            message = (f"Certains PRM n’ont pas de prix de vente pour la période "
+                       f"sélectionnée. A minima les PRM {injection_counter.name}"
+                       f"/{delivery_counter.name}.")
+
+            raise UserError(_(message))
+
         # Pour chaque intervalle de prix
         for interval in interval_ids:
             # Calcul des dates de l'intervalle à facturer