Stock Ownership
How Neriyam tracks own stock vs customer-owned stock across transactions, including the section-level rules for Production and Scrap entries.
Stock Ownership#
Neriyam tracks two ownership categories for stock at every warehouse:
- Own stock — material that belongs to your organisation
- Customer-owned stock — material that belongs to a specific customer but is physically at one of your warehouses (typical in job shops handling customer-supplied material)
Ownership is captured at the line level on every stock entry. Two lines for the same item in the same warehouse can have different owners, and they are tracked as separate balances.
Which transactions allow which ownership#
Different transaction types have different ownership rules based on what they represent:
| Transaction | Ownership rule |
|---|---|
Opening Stock (OPN) | Own or customer-owned (per-line picker) |
Stock Adjustment (ADJ) | Own or customer-owned (per-line picker) |
Stock Transfer (TRF) | Own or customer-owned (per-line picker; preserved across warehouses) |
Goods Receipt (PPR) | Own only |
Purchase Return (PPT) | Own only |
Sales Delivery Note (SPD) | Own only |
Sales Return (SPT) | Own only |
Production (MFG) | Header-level: Own or one customer; section rules apply (see below) |
Scrap (SCR) | Header-level: Own or one customer; section rules apply (see below) |
Why purchase and sales transactions are own-only#
A Goods Receipt (PPR) records goods we purchased. Customer material does not arrive through this path — it arrives via Job Work Receipt (a different transaction type, planned).
Similarly, a Sales Delivery Note (SPD) ships goods we sold. We cannot sell a customer their own material back — that is not a sale. Customer-owned material returns to the customer via Job Work Delivery (also planned).
The same logic applies in reverse for the return transactions: Purchase Returns (PPT) and Sales Returns (SPT) are own-only because the original receipt or sale was own-only.
This separation keeps audit trails clean: GRN/SDN/PPT/SPT concern OUR stock; the planned Job Work transactions concern customer stock.
Header-level ownership for Production and Scrap#
Production (MFG) and Scrap (SCR) entries make a single header-level ownership choice — Manufacturing for: Own / Customer X on MFG, and Scrapping for: Own / Customer X on SCR. That choice applies to some sections of the entry but not all.
Production Entry — four sections:
| Section | Ownership |
|---|---|
| Inputs | Follows header (Own or single Customer) |
| Outputs | Follows header (Own or single Customer) |
| Consumables | Always Own — even on a customer run |
| By-products | Always Own — even on a customer run |
All four sections always render on the form, even when empty. Consumables and By-products do not have a per-line ownership override — to use customer material as a real input, place it in the Inputs section; to return a by-product to the customer, place it in the Outputs section.
Scrap Entry — two sections:
| Section | Ownership | Required |
|---|---|---|
| Items Being Scrapped | Follows header (Own or single Customer) | Yes |
| Resulting Scrap | Always Own — even when scrapping customer material | Optional |
Resulting Scrap is optional — entries with no recoverable scrap are valid. When used, items in this section must have item type SCRAP; the picker filters accordingly.
See Production Entry and Scrap Entry for the full per-page rules.
Mixed-ownership entries#
For free-form transactions (OPN, ADJ, TRF), a single entry may have lines with different ownership. The picker on each line lets you choose Own or a specific customer. A single OPN entry can, for example, seed your own raw material on line 1 and a customer's free-issue stock on line 2 — both lines post to the stock ledger under the right owner.
The only OPN-specific block is the duplicate rule: you cannot create two opening-stock balances for the same (item, warehouse, owner) combination. That's a different concern from "mixing"; it prevents accidentally double-counting the same balance.
For transactions that constrain ownership at the header (MFG, SCR), a single entry is either fully own or fully one customer's, and per-section rules apply. To handle a truly mixed scenario, create separate entries.
How ownership is enforced#
Ownership rules are enforced in two places:
- In the UI — on
MFGandSCR, the per-line ownership picker is hidden in the always-own sections (Consumables, By-products, Resulting Scrap). OnOPN/ADJ/TRF, the picker is available per line. OnPPR/PPT/SPD/SPT, no ownership picker appears at all. - At the API — both at line save and at submit. If a line carries an ownership value that conflicts with the transaction's rule (for example, a customer set on a
PPRline), the save is rejected with an error naming the offending line.
How customer ownership flows through workflows#
When customer material arrives at our warehouse (via the planned Job Work Receipt), it is recorded as customer-owned stock. From there:
- Production using customer material → MFG with Manufacturing for: Customer X; Inputs and Outputs are X's stock; Consumables and By-products stay own.
- Storage transfer → TRF preserves ownership across warehouses.
- Returning processed goods to customer → Job Work Delivery (planned).
Customer material never moves into "own stock" without an explicit ownership-change transaction (planned). It also never crosses customers — one MFG/SCR entry can only involve one customer (or own stock).
Visualising ownership#
The Stock Ledger lets you filter by ownership: Own only, Customer-owned only, or All. Use this to:
- Verify your own stock balance at a warehouse.
- Reconcile customer stock at month-end.
- Investigate discrepancies between what you have and what you owe a customer.
Related#
- Item Master — how items are configured (stockable, purchasable, sellable, item type)
- Production Entry — the four-section MFG layout in detail
- Scrap Entry — the two-section SCR layout in detail
- Stock Ledger — filtering by ownership
Last updated