diff --git a/src/tf/tf0200.cpp b/src/tf/tf0200.cpp
index 9a3eb387b..1be9d91d9 100644
--- a/src/tf/tf0200.cpp
+++ b/src/tf/tf0200.cpp
@@ -544,20 +544,24 @@ void TCom_liq_per_iva_msk::extractinator() // Per gli amici GTFO
 			real imp = cur_iva.get("25.IMPONIBILE").as_real();
 			real imposta = cur_iva.get("25.IMPOSTA").as_real();
 
-			if (tiporeg == iva_acquisti)
-			{
-        if ((start == 12 && month_reg != start) ||
-            (start != 12 && ((pas_dt_comp && month_reg != start && (month_liq == month_reg || month_liq == 0))
-                || (!pas_dt_comp && month_reg != start))))
+      if (tiporeg == iva_acquisti)
+      {
+        bool pt_nel_m_prec      = month_reg == start && month_liq != month_reg && month_liq != 0;
+        bool mese_succ_non_comp = month_reg != start && (month_liq == month_reg || month_liq == 0);
+        if ( (!pas_dt_comp && month_reg != start)
+            || (pas_dt_comp
+                && ((start == 12 || mese_succ_non_comp) || (start == 1 || pt_nel_m_prec))) )
           continue;
-			}
-			else
-			{
-        if ((start == 12 && month_reg != start) ||
-            (start != 12 && ((att_dt_comp && month_reg != start && (month_liq == month_reg || month_liq == 0))
-                || (!att_dt_comp && month_reg != start))))
+      }
+      else
+      {
+        bool pt_nel_m_prec      = month_reg == start && month_liq != month_reg && month_liq != 0;
+        bool mese_succ_non_comp = month_reg != start && (month_liq == month_reg || month_liq == 0);
+        if ((!att_dt_comp && month_reg != start)
+          || (att_dt_comp
+            && ((start == 12 || mese_succ_non_comp) || (start == 1 || pt_nel_m_prec))))
           continue;
-			}
+      }
 
 			// Se รจ un movimento IvaXCassa o LiqDiff
 			if (has_ixc && (cur_iva.get("23.IVAXCASSA").as_bool() || cur_iva.get("23.LIQDIFF").as_bool()))