diff --git a/bom2grouped_csv_jlcpcb/bom2grouped_csv_jlcpcb.xsl b/bom2grouped_csv_jlcpcb/bom2grouped_csv_jlcpcb.xsl
index c1fb59d385a9601bbe9dba33e26d1b2ceaaded2b..c837f8473fd66938a4e1a01243923f6860a580f3 100644
--- a/bom2grouped_csv_jlcpcb/bom2grouped_csv_jlcpcb.xsl
+++ b/bom2grouped_csv_jlcpcb/bom2grouped_csv_jlcpcb.xsl
@@ -56,6 +56,7 @@
 	    <!-- for Muenchian grouping of footprint and value combination -->
 	    <xsl:for-each select="comp[count(. | key('partTypeByValueAndFootprint', concat(footprint, '-', value))[1]) = 1]">
 		<xsl:sort select="@ref" />
+		<xsl:if test="not(fields/field[@name='DNP']/text() = '1') and not(fields/field[@name='DNP']/text() = 'PCBA') and not(libsource/@lib = 'Jumper' and starts-with(libsource/@part, 'SolderJumper_'))">
 		<xsl:text>&nl;</xsl:text>
 		<xsl:text>"</xsl:text><xsl:value-of select="value"/><xsl:text>","</xsl:text>
 		<!-- list of all references -->
@@ -69,6 +70,7 @@
 		
 		<xsl:value-of select="footprint"/><xsl:text>","</xsl:text>
 		<xsl:value-of select="fields/field[@name='LCSC']"/><xsl:text>"</xsl:text>
+		</xsl:if>
 	    </xsl:for-each>
 	</xsl:template>