Skip to main content
Back to Blog
Automation5 min read16.08.2026Sophera Consulting

Discontinued items stay in your item master, which is why the order still goes through

An item lookup asks whether a number exists, not whether it is still sellable. Successor numbers rarely map one to one, and the substitution your staff used to make in their heads is the step the automation quietly dropped.

This article was generated by AI. Labelled in accordance with Article 50 of the EU AI Act. Responsible for publication: Sophera Consulting.

Nobody orders from your live catalogue

They order from a PDF someone saved eighteen months ago, a favourites list in your portal, a spreadsheet on a shared drive, a photo of a label, or a sheet taped to a shelf on a ward. Every one of those copies ages on its own schedule, and none of them is yours to update.

That was survivable while a person keyed orders in. Type a dead part number into an ERP and it shouts at you. Nobody would have called that a data quality control. They saw a warning, picked the current number, and got on with the day.

Automating order entry removed the warning. It did not replace it.

Existence is not the same as sellable

An item lookup asks one question: does this number return a record? It does, and it will keep doing so for years. Manufacturers renumber, ranges get rationalised, suppliers change, and the old records stay exactly where they are, because deleting them would take your order history with them.

What changes is a status field. Depending on the system it is called status, blocked, discontinued, or a set of separate flags for purchasing, sales and planning, since an item can be closed for reordering while the remaining stock is still allowed to sell.

That field almost always comes back in the same response your workflow already reads. It just does not get looked at.

Nothing errors, which is the problem

A blocked item does not return a 4xx. It returns a valid record with a status you ignored, so the order line is created, the confirmation goes out, and the pick list comes back short.

Monitoring does not help here. Your alerts watch for failed executions, and this execution succeeded. Every step did what it was told.

One distributor we worked with ran like this for nine days before anyone noticed, and only then because a customer picked up the phone. Nine days is not unusual. It is roughly how long it takes for someone downstream to run out of the thing they thought was coming.

Successors are messier than a lookup table

Sometimes one number is replaced by exactly one other, and even then the case pack often changes with it.

Sometimes one item splits into three variants because the manufacturer decided to differentiate. Which one the customer meant is not in the purchase order.

Sometimes two old numbers collapse into one new one. And sometimes there is no successor at all, only an alternative from a different supplier at a different price, outside whatever contract pricing you agreed.

A workflow with two outcomes, found and not found, cannot express any of that. It needs three: active, superseded by, no replacement.

In hospital supply, the successor is a different product

Anyone selling into clinical settings has an extra layer that pure distribution does not.

A medical device carries an approval. Infection control assessed it, staff were trained on it, it sits in a written standard and often in a pre-packed tray. A successor with different materials or different handling is a different product, even if it fits the same gap on the shelf.

An automation that silently rewrites the number has just made a clinical decision it has no business making. This is the one case where we do not build automatic substitution at all. It goes to a person.

Five changes, roughly in order of payoff

Read the status field. Your lookup step should branch three ways instead of stopping at "record found". This is one condition and about half an hour of work.

Keep the successor link in the item master, not in a mapping table inside the workflow. Those tables get populated once and never touched again, and two years later nobody can explain why a particular row is in there. Your ERP has a field for this.

Never substitute silently. If the workflow swaps a number, put both on the order line and both on the confirmation: you ordered X, you are getting Y. Customers who see that eventually fix their own list, which is the only version of this problem that stays fixed.

Route the exceptions to a named person. Orders with dead numbers otherwise land in a folder or a channel that nobody opens after week three.

Then run the query backwards once. Which customers ordered items in the last twelve months that are now flagged discontinued? That takes an hour and is the only item on this list that prevents bad orders rather than repairing them.

How to check yours

Open the step that looks up the part number. Does the filter constrain status, or does it only match the number? If it only matches the number, you have this.

Then look at the no-match branch. Does it stop, does it zero the quantity, or does it create the order without that line? The third one is worst, because it leaves nothing behind to find.

Last, search your execution log for a substitution. If your workflow swaps numbers and the log has no record of it, you cannot reconstruct what the customer actually asked for. That conversation goes badly.

#Nachfolgeartikel#Artikelnummer#Auslaufartikel#Artikelstamm#Stammdaten#Großhandel#Klinik#ERP#Make#n8n