AWRA OpsHub Search

A Label Is Not a Lock

Our system records the result of an incoming quality check properly — a status on the batch, a screen to set it, a summary and an analytics view built on it. What it does not do is stop you selling the goods that failed. Recording and enforcing live on two different tables, and nothing connects them.

Procurement Insights AWRA OpsHub Team 11 min read

The verdict

This is the most instructive gap we have found in our own product this month, because nothing in it is missing. The quality side is built. The hold side is built. Each demonstrates perfectly on its own, which is exactly why the seam between them survived — a demo of either half shows you a working feature, and only a demo that crosses from one to the other shows you that it does not. If your incoming inspection is a formality, this costs you nothing. If somebody audits it, ask us for the crossing demo rather than the feature tour, and ask every other vendor on your list for the same. It is two minutes and it is the only version of the question that cannot be answered with a screenshot.

Ask a contract manufacturer what happens between a lorry arriving and the material being usable and you will get a process, not an event. It is sampled. Somebody signs. Until they sign, the pallets are physically present, visible in the building, counted by anyone walking past — and unusable. The whole point of the arrangement is that presence and availability are different things.

Almost every stock system collapses them anyway. Goods are received, therefore goods are available. Ours does something more interesting and, in the end, more dangerous: it has both concepts, models both properly, and never joins them up.

Two status fields that have never met

There is a quality status, and it lives on the consignment. There is a screen to set it, a filter to search on it, a three-state summary on the purchase order — pending, ready, complete — and an analytics view built on top of that. Somebody thought about incoming inspection and built for it.

There is also an availability status, and it lives somewhere else entirely: on the stock in a given location. It has two states, a reason, a note, the person who set it and a disposition. It is what the system actually consults when goods are issued, checked out or allocated. It is a proper hold mechanism and it works.

The two halves, and the seam between them

What inspection writes

On the consignment

  • A quality status recorded against the batch that arrived
  • A screen for the person doing the checking
  • A pending / ready / complete summary on the order
  • A filter, so you can find everything in a given state
  • An analytics view built on the results

What issuing reads

On the stock, in a location

  • An availability status — available, or held
  • A reason, a note, and who placed the hold
  • A disposition once the hold is resolved
  • Consulted on every issue, check-out and allocation
  • Never once consulted alongside the quality result

Both sides are real and both are well built. The failure is not in either of them — it is that a result written on the left never reaches the right, so the only thing making a failed batch unavailable is a person remembering to go and place a hold by hand.

You can mark a consignment as having failed inspection, and then sell it the same afternoon. Nothing objects, because nothing on the selling side has ever heard of inspection.

What this means in the order it will bite you

  1. The goods arrive and are received

    The receipt records what physically turned up, counts it against the order, and refuses an over-delivery. All of that is correct and none of it waits for anybody.

  2. The stock becomes available immediately

    At the moment of receipt it is in a location, in the available state, and every issue and allocation path will hand it out. There is no intermediate state between arrived and usable.

  3. Inspection happens afterwards, if it happens

    The quality result is recorded against the consignment whenever the check is done. Nothing in the system was waiting for it, and nothing changes when it lands.

  4. A failed result changes nothing at all

    The status reads failed. The stock is still available. The only thing that will stop it moving is somebody separately, manually, placing a hold on it in a different screen.

  5. Which means the control is a person, not a system

    That works, right up until the day the person doing the inspection and the person picking the order are different people in a hurry — which is every busy week.

Why this lands hardest on a contract manufacturing economy

Because incoming inspection here is not an internal preference; it is frequently an obligation you have taken on for somebody else. When you are making to another company's specification, the material you accept is the first place their standard either holds or does not, and their auditor will ask how you prevent unreleased material reaching production. "We record the result and rely on people" is a true answer, and it is not the one they want.

It matters more here for a second reason that has nothing to do with standards. Where a plant runs on imported inputs against a shipping schedule, the pressure to consume material the moment it lands is enormous — the line is waiting, the container was late, and the inspection result is a formality that everyone expects to pass. That is exactly the circumstance in which an advisory status gets ignored and a hard stop earns its keep.

What is enforced, and what is merely recorded

At goods-in Recorded Enforced
The quantity that actually arrived Yes Yes
More arrived than was ordered Yes Yes
Less arrived than was ordered Yes No
Which consignment the goods belong to Yes Yes
The result of an incoming quality check Yes No
Stock held pending a decision Yes Partly — configurable by you
A failed batch kept out of production No No

Built and maintained Configurable by you, not maintained by us Not built

The short-delivery row is deliberate rather than a gap — refusing goods that are physically on the floor is how a control gets bypassed, so a shortfall is reported and never blocked. The hold row is marked partly because the mechanism is real and good; it is simply driven by hand rather than by the inspection result.

The workaround, and how far it actually goes

You can run this properly today, and some organizations do. The hold mechanism is genuinely capable: put received stock into a held state with a reason as a matter of routine, and release it only when the check passes. That gives you the behaviour you want, and the audit trail of who released what.

What it does not give you is a default. Every consignment depends on somebody performing an extra step at the moment of receipt, which is the busiest and least reflective moment in the process. A control that must be applied by hand, every time, under time pressure, is not a control — it is a habit, and habits have bad weeks.

If

you inspect nothing on arrival

None of this affects you and the receipt behaves exactly as you would want. Most distribution businesses are here, legitimately.

If

you inspect, but for your own purposes

The manual hold routine is workable. Write it into the receiving procedure rather than leaving it to judgement, and accept that it is a discipline rather than a guarantee.

If

somebody audits your incoming control

Ask us before you commit. "Recorded and relied upon" is what we can honestly say today, and if your customer needs "cannot be consumed until released", we are not there and we will tell you so in the meeting rather than in the implementation.

Four questions that separate a label from a lock

Mark a batch as failed, then try to sell it. What happens?

What a straight answer sounds like

A refusal, or a sale. Ours is a sale.

Why it matters

This is the entire test and it takes two minutes. Every vendor will tell you they support quality control; only the demonstration distinguishes recording it from enforcing it.

Is received stock available immediately, or is there a state in between?

What a straight answer sounds like

A named state, or an admission that there is none.

Why it matters

If there is no intermediate state, every quarantine process you run is a manual habit layered on top.

Who has to sign before material can be consumed, and can the system tell me they did not?

What a straight answer sounds like

A permission and an exception report.

Why it matters

A release step nobody can skip is the difference between a procedure and a control.

Show me an alert that fires when unreleased material is issued.

What a straight answer sounds like

A report or a notification. Ours does not exist.

Why it matters

Even where prevention is not built, detection usually can be — and its absence tells you the concept is not modelled at all.

What we would build

Two, and the first is mostly wiring

Both halves already exist. What is missing is the line between them, which is why the first of these is smaller than it sounds.

A quality result that places the hold

When an incoming check is recorded as failed or pending, put the stock into the held state that already exists, with the quality result as the reason. Releasing the batch releases the hold. This is joining two working mechanisms rather than building a third, and it would make the existing quality screen do what everyone already assumes it does.

Received-to-quarantine as a per-organization default

A setting that puts everything received into a held state pending release, so the safe behaviour is the default rather than a step somebody has to remember. It needs a release permission and an exception report for material issued without release, which together are what an auditor is actually asking to see.

We would ship the first before the second, because the first makes the screen honest and the second is a policy choice that not every organization wants. Neither is large. The reason they have not been built is that nobody joined the two halves up, and nobody noticed because both halves demo beautifully on their own.

Talk to us about incoming inspection

Incoming quality — what is and is not built

What AWRA OpsHub does today

  • A real quality status on each consignment, with a screen to set it and the result visible on the order it arrived against.
  • A pending / ready / complete summary per order, and an analytics view built on those results.
  • A genuine hold mechanism on stock — held or available, with a reason, a note, the person responsible and a disposition, and it is consulted on every issue and allocation.
  • Receipt controls that do work automatically — what arrived is counted rather than copied from the order, and an over-delivery is refused with a tolerance you set.

What it does not do

  • A failed quality result does not hold the stock. The two live on different records and nothing connects them.
  • No quarantine state at receipt. Goods are available the instant they are received; there is no step between arrived and usable.
  • No release step, so there is nobody the system requires a sign-off from before material can be consumed.
  • Four-way matching is therefore not achievable, since the inspection leg is advisory rather than a gate.
  • No alert when unreleased material moves, because nothing knows the material was unreleased.

Not ours, by choice

  • We name no certification scheme, standard or regulator, here or anywhere on this site, unless we can date and source it. What your customer or auditor requires of your incoming control is a question for them and for you.
  • We are not describing the quality check screen as cosmetic. It records a real result that real reports read. The claim is narrower and entirely checkable: nothing on the issuing side consults it.

Bring us your goods-in procedure

The actual one, including who signs and what happens when the line is waiting. We will show you what we enforce today, what depends on somebody remembering, and which of the two builds above closes the gap for your case.

Talk to us about goods-in

Help Center

Need a quick answer while you read?

Run inventory, procurement, assets, sales, and field work with approved AWRA guidance for setup, migration, integrations, security, pricing, and support.

Search all approved AWRA public help articles.

Open Help Center