# Receiving Log

This is the log your receiver fills in at the dock as each delivery lands: what
arrived, from whom, on which lot code, and whether it passed the checks that decide if
it goes into inventory or onto a hold. Set it up once for your materials, then fill one
row per shipment so nothing enters production without a recorded check.

The receiving check is the first gate in both your traceability and your food safety,
and every row records four things at once: what the material is and who it came from, the
supplier's lot code, whether the paperwork and the cold chain held, and the call on
whether to accept it. Record the supplier lot code — the code the supplier stamps on a
production lot of their material, the anchor that lets you trace it back to them and
forward into every batch you make with it — exactly as it appears on the label, because it
is the one thing that later ties a finished lot back to its ingredients.

Two of the columns only apply to some materials. A COA (Certificate of Analysis — a
document from the supplier certifying that a specific lot was tested and meets its agreed
specification) is expected only where the material's spec calls for one; mark the rest
N/A. The temperature column is for TCS food (Time/Temperature Control for Safety food — a
material that needs temperature control to keep pathogens from growing to unsafe levels)
only; leave it blank for anything shelf-stable. Anything that fails a check does not go
into inventory — it goes on a QA hold (held out of production until quality decides whether
to accept, return, or reject it) and onto the disposition log below.

The example acceptance values here are not yours. The temperature benchmark, the COA
calls, and the condition thresholds in the sample rows are illustrations to make the
columns legible. Your acceptance temperatures come from your own specs and your HACCP
plan, and which materials require a COA comes from your suppliers' agreed specifications —
not from the numbers shown here. Set your own criteria before this log goes to the dock.

---

## The receiving log

One row per incoming shipment. If a delivery brings several materials, or several lots of
the same material, give each its own row so every lot code is recorded on its own line.
Leave the temperature column blank for shelf-stable materials — it applies only to TCS
items.

| Date received | Supplier | Material | Supplier lot # | COA received? (Y / N / N/A) | Temp on arrival (if TCS) | Condition (packaging, seal, date, pests) | Accept / Hold | Receiver initials |
| --- | --- | --- | --- | --- | --- | --- | --- | --- |
| (example) 07/15/2026 | Bay State Dairy | Cultured butter, salted | BSD-24107 | Y | 39°F | Cartons intact, within date | Accept | ML |
| (example) 07/15/2026 | Northwind Flour Co. | Organic wheat flour, 50 lb | NW-0714-B | N/A | — | Bags sound, seals intact, no pest evidence | Accept | ML |
| (example) 07/15/2026 | Coastal Seafood | Frozen shrimp, 16/20 | CS-6631 | Y | ~34°F, soft to the touch | Partial thaw, no longer frozen solid | Hold | ML |
| (example) 07/15/2026 | Sunrise Sweeteners | Cane sugar, 25 kg | — (no label on pallet) | N/A | — | Pallet sound, but no lot code found | Hold | ML |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |

## Setting your accept-or-hold rule

Accept a shipment only when every check on its row passes. A single failure sends it to a
hold, not into inventory. The usual triggers for a hold:

- No lot code, or one you can't read — you cannot trace what you cannot identify. Hold
  until the supplier confirms the lot in writing.
- A required COA missing — if the material's spec calls for a COA and it did not arrive,
  hold until it does.
- A cold-chain fail on a TCS item — the common benchmark is refrigerated TCS received at
  41°F (5°C) or below and frozen received frozen solid, but your own spec and HACCP plan
  set the limit you actually enforce. A reading above your limit, or clear signs of thaw
  and refreeze, is a hold.
- Bad condition — damaged packaging, broken seals, pest evidence, or a material already
  past its date is a hold on condition alone.

Anything you hold stays out of production until quality releases or rejects it, and the
decision goes on the log below.

## Hold and disposition log

Every Hold row above gets a line here, so the decision is recorded rather than remembered.
A hold is closed only when quality has made the call — accept with a note, return to the
supplier, or reject — and written down what happened to the material.

| Date held | Supplier / material | Lot # | Reason held | Decision (accept / return / reject) | Disposition detail | Decided by | Date closed |
| --- | --- | --- | --- | --- | --- | --- | --- |
| (example) 07/15/2026 | Coastal Seafood / frozen shrimp | CS-6631 | Received partly thawed, above frozen spec | Reject | Returned to supplier, credit requested; nothing entered inventory | RQ | 07/15/2026 |
| (example) 07/15/2026 | Sunrise Sweeteners / cane sugar | (none on pallet) | No lot code on the delivery | Accept | Supplier confirmed lot SS-9920 by email; recorded on the receiving row and released | RQ | 07/16/2026 |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |

## Keeping the log usable

- Fill it at the dock as each delivery lands, never from memory at the end of the day —
  the check only counts if it happened before the material moved into inventory.
- Keep completed logs for the retention period your plan or your auditor requires. The
  receiving log is often the first record an auditor pulls to test whether an incoming lot
  can be traced back to its supplier.
