This error message can pop up on items with an available level above 0 in two cases:

1. If the quantity for the listing is taken from a wrong location. In the number of cases, the location that had stock for the item was not enabled. To check which locations are enabled for the channel go to Settings > Channel Integration > Location Mapping . In the Sync inventory from locations menu look at which locations are enabled and which are disabled

2. If you have End when level higher than the number of items you actually have in stock. For example, you have End when set to 10 there are only 8 items left in your location. In this case, the system will not be able to create the listing and following error will be shown:

Status: Not listed

Messages: The quantity must be a valid number greater than 0

It can be seen when you hover over the Not listed status on the listing template.

It could mean you have an End when level set on your channel's config, in Settings > Channel Integration > Edit channel details, under the Inventory section.

If the End when level on the channel is 0, it could be set on the item's mapping. This can be seen from Settings > Channel Integration > Channel Mapping  if you add the End When column to the mapping screen, from the settings button in the top left corner > Choose columns > End When. This will show you an editable column of the End When level. 

A similar column is available from My Inventory > Product details (click on a SKU) > Channel SKU > Settings > Show additional columns. This will show you the End When setting among others, for this SKU only, across all of your channels.

Some more details can be found in this documentation. End When can also be changed in bulk with a Stock Item Linking import, with the End When Stock column.