Supplier catalogs

How to remove YML offers with zero price

2026-06-29
Task

The supplier keeps YML products where price is 0 or empty. These items should not enter the import.

Short answer

Add an export condition to offer: price must match ^(?:[1-9][0-9]*(?:[,.][0-9]+)?|0[,.][0-9]*[1-9][0-9]*)$ (matches a positive number: an integer part greater than zero or a 0.xx decimal with a non-zero decimal part).

How to do it in Eofferix

  1. In the XML/YML snapshot, select the repeated offer node.

  2. Open the node settings.

    Opening offer settings
    The animation shows opening settings for the repeated product node.
  3. Add an export condition for price: price ^(?:[1-9][0-9]*(?:[,.][0-9]+)?|0[,.][0-9]*[1-9][0-9]*)$.

    Export condition
    The condition is applied to the whole item.

Before / after

Before

source data
<yml_catalog date="2026-06-29 10:00">
  <shop>
    <offers>
      <offer id="YML-12001" available="true"><name>Hudson lamp</name><price>1290.00</price><currencyId>USD</currencyId></offer>
      <offer id="YML-12002" available="true"><name>Parker chair</name><price>0</price><currencyId>USD</currencyId></offer>
      <offer id="YML-12003" available="true"><name>Harbor shelf</name><price></price><currencyId>USD</currencyId></offer>
    </offers>
  </shop>
</yml_catalog>

After

result
<yml_catalog date="2026-06-29 10:00">
  <shop>
    <offers>
      <offer id="YML-12001" available="true"><name>Hudson lamp</name><price>1290.00</price><currencyId>USD</currencyId></offer>
    </offers>
  </shop>
</yml_catalog>

What to keep in mind

  • Place the condition on offer so the whole item is removed.
  • If zero price is valid for gifts or bundles, create a separate rule for those SKUs.

Process data faster with Eofferix

Create a free account to automate catalogs and price lists around your own rules.

Sign up