Pilot a site material reconciliation workflow
Plan implementation
TL;DR — what you’ll learn
- Start with one store, a defined material group and an agreed opening balance. Produce a reviewable reconciliation before adding automated ledger adjustments.
- Read receipts, issues, returns, transfers and counts from their approved sources; preserve original record IDs and units.
- Test duplicate offline events, missing transfer acknowledgements and corrections after cutoff before using the output operationally.
- Expand only when the team can reproduce every balance and resolve exceptions through named owners, with no duplicate movements or unauthorised adjustments.
Every month, a stores supervisor rebuilds a material statement from ERP receipts, site issue sheets and messages about returns. Automating the spreadsheet is tempting. But if the return sheet contains an unacknowledged movement, a faster calculation will still be wrong.
A useful construction inventory automation pilot creates a trustworthy movement view and an exception queue. It proves that the records can be joined, that uncertainty stays visible and that the people responsible can close it. The first output should be a reconciliation pack for review. Posting stock adjustments can be considered separately after that evidence is accepted.
- 01Opening
- 35 t
- Accepted pilot baseline
- 02Issue I-01
- 30 t
- One 5 t issue processed
- 03Replay I-01
- 30 t
- Acknowledgement lost; no new movement
- 04New issue I-02
- 25 t
- A different 5 t movement
Illustrative stock events. The receiver recognises the original issue ID; a genuine second issue has a new ID.
Read the visual as text
Opening: 35 t. Accepted pilot baseline. Issue I-01: 30 t. One 5 t issue processed. Replay I-01: 30 t. Acknowledgement lost; no new movement. New issue I-02: 25 t. A different 5 t movement.
Original explanatory visual: NextEdge Labs. Illustrative records, not client results.
- STEP 01Read the extracts
Owner: Integration owner
Keep record IDs, versions, units and cutoffs.
- STEP 02Validate completeness
Owner: Stores + integration owner
Account for accepted, rejected and superseded rows.
- STEP 03Compare balance and count
Owner: Stores + QS
Keep incomplete balances provisional and source variances visible.
- STEP 04Accept the reconciliation
Owner: Stores + finance
Review evidence; retain the source snapshot and exception owners.
Calculate the movement view and route business differences to stores.
Hold the affected balance as provisional; repair the missing or conflicting input.
Return path: Rerun and reconcile the extract before review; ledger adjustments remain separately authorised.
Read the workflow as text
1. Read the extracts (Integration owner) → 2. Validate completeness (Stores + integration owner) → 3. Compare balance and count (Stores + QS) → 4. Accept the reconciliation (Stores + finance). After step 2, ask: Are the extracts complete and free of duplicate effects? Yes: Calculate the movement view and route business differences to stores. No: Hold the affected balance as provisional; repair the missing or conflicting input. Return: Rerun and reconcile the extract before review; ledger adjustments remain separately authorised.
Workflow: NextEdge Labs. Apply the project’s actual authority and procedures.
Give the pilot a countable boundary
Select one site store and a manageable material family, such as contractor-owned reinforcement steel. Define the stock unit, included locations, subcontractor custody boundaries and reporting cutoff. Include returns and transfers touching that boundary even if the other site is outside the pilot; otherwise the balance will be incomplete.
The stores head owns operational acceptance. A QS validates the installed-work basis if consumption is in scope. Finance owns reconciliation to the stock ledger and adjustment policy. An integration owner is responsible for failures and recovery. Record these names in the pilot charter before selecting software.
Keep the first scope precise: consolidate accepted movement records and propose differences. Do not use it to infer technical consumption, classify loss automatically or decide recoveries. Those decisions need their own evidence and authority.
Make the source map explicit
| Record | Proposed source of authority | Pilot treatment |
|---|---|---|
| Accepted purchase receipt | ERP receipt record | Read quantity, unit, item, location and version |
| Site issue or return | Approved site form or stores system | Read with issuer and receiver acknowledgement |
| Inter-site transfer | Dispatch and receipt records | Join both legs; show unresolved transit |
| Physical count | Approved count sheet | Preserve count time, locations and reviewer |
| Opening balance | Agreed prior close | Lock the pilot baseline and record later corrections |
| Stock adjustment | ERP under finance approval | Display approved outcome; no pilot write-back initially |
The proposed flow is: source records → validation → movement balance → count comparison → owner review. Invalid units, missing acknowledgements and conflicts go to the exception queue before being treated as settled movements. Show the balance as provisional when an unresolved record could change it; excluding a row must never make an incomplete reconciliation look final.
Reconcile each extract as well as the final stock figure. Record its source cutoff, number of movements and receipt/issue totals in each valid unit, then account for accepted, rejected and superseded rows. For a site sheet without permanent record IDs, agree an ID convention at capture and preserve revisions. Row number alone is unsafe if users can sort or insert rows. Check that an issue copied into both the site sheet and ERP represents one movement, not two independent sources of quantity.
Confirm the actual interfaces in the installed systems. An export may be sufficient for a first trial. ERPNext’s stock-entry model is a useful movement reference, but the connector must be tested against the project’s actual version and configuration.
Prove that one issue remains one issue
Illustrative test: the opening stock is 35 tonnes. A storekeeper records a 5-tonne issue offline. The device uploads it, but loses the acknowledgement and sends it again. The expected balance is 30 tonnes, not 25.
Assign the issue a stable identity before the first upload. The receiver should recognise a replay of that event and return its existing result. If the same identity arrives with a different quantity, hold it as a conflict rather than treating it as either an ordinary retry or a new issue. The AWS Builders’ Library discussion of safe retries explains the underlying use of request identity; the construction acceptance condition here is the single movement in the balance.
Now add a genuine second 5-tonne issue. It must have a new identity and reduce stock to 25 tonnes. Suppressing every row with the same item, date and quantity would incorrectly remove legitimate work. This pair of tests exposes both duplicate posting and excessive deduplication.
Keep event time and entry time separately. A return physically received before cutoff but approved later needs an explicit treatment agreed with stores and finance. The pilot should show the late evidence and its effect on a revised statement, preserving the previously issued version.
Design the exception queue for a working day
An exception needs a quantity or transaction, a reason, supporting references, an owner and a next action. “Transfer not reconciled” is incomplete. “2 tonnes dispatched from Store A; receiving acknowledgement missing; Store B supervisor to confirm by tomorrow” is actionable.
Use separate reasons for missing data, unit mismatch, duplicate identity, disputed quantity and accounting correction. The integration team can repair a failed export, but it cannot decide whether the subcontractor received the steel. The stores team can confirm custody, but should not change a financial period without finance approval.
Prevent cosmetic closure. An item resolved by a manual correction should retain the original discrepancy and approval. Track reopened cases and repeat causes so the pilot does not merely move reconciliation effort into a different screen.
Agree the baseline and challenge set
Measure at least one representative completed reconciliation cycle, including late and corrected records. Record preparation time, review time, unresolved quantity by material, exception age and the number of missing source references. Agree the comparison period and inclusion rules before seeing pilot results.
| Challenge | Expected evidence |
|---|---|
| Duplicate offline issue | One movement and a recorded replay |
| Same event ID with changed quantity | Conflict held for review |
| Transfer dispatched but not received | Visible transit exception, no invented receipt |
| Unknown item or unit conversion | Visible rejected row; affected balance marked incomplete and assigned for resolution |
| Backdated approved correction | Original close retained; revised close reconciled |
| Source export stops | Visible stale-data warning and last successful cutoff |
| User loses site access | Online access revoked; approved expiry and withdrawal controls tested for offline copies |
After synthetic tests pass, run a complete reconciliation cycle alongside the existing process. Include movements received late and the count-adjustment review. Compare preparation and review hours, the age of unresolved differences and the number of records needing manual repair. List the slow cases with their causes; a percentile based on a handful of monthly closes adds little.
Stop and recover before a difference spreads
A stock variance found in the source records is a business exception for investigation. A balance that differs from those same records because the integration omitted, duplicated or changed a movement is a pilot failure. Stop expansion for that failure, an authority bypass or unauthorised disclosure. Pause the affected connector, retain its checkpoints and return reviewers to the last accepted pack. Repair and replay in a controlled test, then reconcile before resuming.
For a later write-back phase, require approved transaction types, permissions, target references and a demonstrated reversal process. Do not delete accepted ledger history as a rollback technique. Finance should approve correction entries in the authoritative system.
The handover should include field mappings, rejected-record reasons, an operating guide, support ownership, export instructions and the tested recovery procedure. A pilot dependent on its original developer to explain every difference is not ready to expand.
Make the next decision from the evidence
The pilot succeeds when the balance is reproducible and the remaining differences have owners. Reduced preparation effort is valuable only if correction work and unresolved quantities have not simply moved elsewhere.
- Agree one material boundary and sign off the opening balance.
- Collect a representative baseline and map each source of authority.
- Pass the duplicate, transfer, correction and access tests.
- Run a reviewed live cycle and reconcile every output to its inputs.
- Decide whether to improve capture, extend the read-only scope or separately approve limited write-back.
A material-pilot enquiry can begin with the material group, number of stores, current records and the difference that keeps returning at month-end. That gives the discussion a specific balance to investigate.
Scope this automation around your operation
Tell us your current systems, transaction volume and the exception you need to resolve. We can discuss a focused first release, its review controls and how to measure the result.
References and further reading
Sources checked 15 October 2026. The worked examples and diagrams are original editorial explanations, not client results.
- ERPNext documentation — Stock EntryStock Entry purposes and Add to Transit subsection
Product movement examples.
- AWS Builders’ Library — Making retries safe with idempotent APIsCaller request identifiers; late requests; same identifier with different parameters
Integration design principle.
Visual credits
Original explanatory visuals and workflow diagrams by NextEdge Labs. Labels and text equivalents are included in the page. Numerical scenarios are illustrative; diagrams preserve the project owner’s approval and exception decisions.