Linnworks has the option to generate only invoices that were not yet printed when a batch of order invoices are sent to print. This can be set up in Settings > General Settings > Print Settings

With this setting, the system will check for the invoice printed tag, and will skip orders where this tag is present. However, if this tag is cleared, then the invoice can be printed again in batch. In order to clear the invoice printed tag, right-click on the order (or multiple selected orders) > Action > Bulk Change > Clear Invoice Printed Tags.

Please note! This option is only mean to work for batch invoice printing, that is when you select more than one order. If you select an order individually and tell the system to print an invoice for it, then it will be printed anyway, regardless of the setting and the invoice printed tag. 

Shipping Labels:

To avoid printing the same shipping labels for orders several times there is an option to configure a View in the Open Orders screen, which would display only orders which did not have their label printed yet (Label printed tag).

In order to create such a view, go to Open Orders > General Info column

Add a filter called 'Label printed' and select 'No' for it

You can also add this option in the full view settings (Edit View), where it will look like this:

The same setup can also be done for invoices.