Inventory configuration in xMatix has three layers. The inventory ledger settings define which document lines post which stock movements — platform-managed and read-only, with a setup screen that exists so you can see the rules. The item master flags decide, item by item, whether stock is kept at all and how finely. The valuation configuration — accounting books and valuation policies — is yours to author and holds the consequential choices: which books each company keeps and which costing method applies to which stock. This page is the reference for all three, plus the engine-written records you should know not to touch.
Inventory ledger settings
- 1
The notice states the rules are managed in code and read-only — there is no New, Edit or Delete.
- 2
Path: Setup → Feature Hub → Inventory → Inventory Ledger Settings.
- 3
Entity is the document line the rule watches; Parent Entity is the header it takes partner account and branch from.
- 4
Ledger Type is the movement the rule posts — the same value you see in the Inventory Ledger list.
- 5
Active tells you whether the rule is in force.
- 6
View opens the rule's remaining fields: quantity field, incremental/decremental counters, condition, on-create/update/delete and sequence.
Setup → Feature Hub → Inventory → Inventory Ledger Settings lists the posting rules that connect document lines to the inventory ledger. The list shows each rule's Name, Label, Entity, Parent Entity, Ledger Type, Active flag and audit columns; the View action opens the remaining fields. Each rule defines one posting behavior:
| Field | Meaning |
|---|---|
| Entity / Parent Entity | The document line the rule watches, and the header document it takes partner account and branch from (a rule without a parent treats the line as its own header). |
| Ledger Type | The movement type the posted entry carries — Inward, Sold, TransferOutward, Adjustment, Damaged and so on. |
| Quantity Field | The line field whose value is posted as the movement quantity (a cancelled-quantity field on the line, when present, is subtracted first). |
| Incremental / Decremental Quantity Field | The stock and lot counters the quantity is added to or subtracted from — for example TransferInward, Damaged, PendingDeliveries. |
| Condition | A formula the line must satisfy for the rule to fire, such as AdjustmentType == "Damaged" or TransferType != "Pending Deliveries Transfer". |
| On Create / On Update / On Delete | Which save events trigger the rule. Nearly every seeded rule is update and delete only, which is why documents post through an explicit action rather than on creation, and why edits and deletes post reversals. |
| Sequence | Ordering among rules for the same entity and ledger type — unique within that scope. |
| Active | Whether the rule is in force. |
The screen is view-only: the rules ship as platform configuration and cannot be created, edited or deleted from the front end. Their value to an administrator is diagnostic — when you need to know why a document type posts (or does not post) a particular movement, the answer is a row here. The seeded set covers goods receipt and inspection lines, bill lines, delivery order lines, invoice lines, credit note lines, adjustment lines, the three kinds of transfer line, fulfilment allocation and picking lines and shipment lines; the ledger page lists the ledger types each posts.
Item master flags that govern stock keeping
Several settings on the item itself decide how inventory treats it. They are edited on the item record (Inventory app → Items, or the Sales and Warehouse item lists):
| Flag | Effect |
|---|---|
| Track Inventory | The item keeps stock balances and posts ledger movements. Services, charges and other non-stock items leave it off; a line for such an item is skipped by posting. |
| Track Lots | Stock is held per item lot; every stock-moving line must name a lot. See Item lots and lot types. |
| Track Asset | Units become serialized asset records after receipt or sale; requires Track Lots. |
| SKU Required | Every line must carry one of the item's SKUs; stock balances are then kept per SKU. |
| Maximum Lot Quantity | Caps how much a goods receipt may put into a single lot (a SKU-level value takes precedence). |
| Inspection On Receipt | Received quantity is held as pending inspection until inspected; the receipt cannot complete while any line has uninspected quantity. |
| Primary Unit Of Measure, UOM decimal precision | The base unit stock is expressed in, and the rounding applied to derived quantities. |
The item's own ABC Category, FSN Category and Inventory Valuation fields are descriptive labels that no inventory process reads; the operative classification lives on item inventory attributes (see Item classifications) and the operative costing method comes from valuation policies (below). Item lot types — the commercial grades carried on lines and lots — are maintained in the Inventory settings or Warehouse Settings app; see Warehouse configuration.
Accounting books
- 1
Name opens the book; the policy list and the valuation statement refer to books by this name.
- 2
Book Type (Statutory / Tax / Management) and Gaap Framework — the framework decides whether LIFO or standard cost may be opted in.
- 3
Is Primary — the book cost posting uses and the only one that persists cost layers. Uniqueness is not enforced; verify it here.
- 4
Is Active — inactive books are skipped by cost posting.
- 5
Partner Account — the company the book belongs to.
- 6
New creates a book; books belong to the Finance Setup app.
Accounting books and valuation policies belong to the Finance Setup app. Where that app is not on a user's launcher, an administrator maintains them; the lists can also be reached through search. An accounting book is authored per company:
| Field | Meaning |
|---|---|
| Partner Account | The company (legal entity) the book belongs to. |
| Book Type | Statutory, Tax or Management. |
| Gaap Framework | Indian, international or US standards — governs which cost-flow methods are acceptable. |
| Is Primary | The book inventory-cost posting uses and the only one that persists cost layers; the general ledger the statements post to. Keep exactly one active primary per company — the model does not enforce uniqueness, and posting takes the first it finds. |
| Is Active | Inactive books are skipped by cost posting. |
| Currency | The book's currency. |
| Allows LIFO / Allows Standard Cost | Recorded opt-ins for methods a framework restricts. They document the decision; nothing blocks a policy at save time if they are off. |
A company with no active primary book has its stock movements posted but not costed — the costing hook returns silently and the valuation statement has no layers to report.
Valuation policies
- 1
Name opens the policy's three-tab form.
- 2
Valuation Method — confirm the stored token is one the engine resolves (unspaced MovingAverage / WeightedAverage).
- 3
Costing Level is a descriptor only; cost pools are always book + item + branch + method.
- 4
Is Default is not read by the resolver; Is Active is what includes or excludes the policy.
- 5
Effective From (and Effective To on the form) bound the movements the policy applies to.
- 6
New creates a policy; no save-time validation checks method vs framework or overlaps.
A valuation policy selects a costing method for a scope within a book. The list shows Name, Valuation Method, Costing Level, Is Default, Is Active and Effective From; the form (see Inventory valuation and costing) has three tabs — Accounting Period, Item & Valuation, Controls — with the scope keys above them.
| Field | Meaning |
|---|---|
| Accounting Book | The book the policy belongs to — resolution happens within one book. |
| Valuation Method | The engine resolves the exact tokens FIFO, LIFO, MovingAverage, WeightedAverage and SpecificIdentification; anything else falls back to MovingAverage. The seeded picker offers Weighted Average and Moving Average with a space, and does not offer specific identification — confirm the stored value. |
| Costing Level | A stored descriptor. Cost pools are always keyed by book, item, branch and method; this field does not create batch-, serial- or location-level pools. |
| Partner Account, Business Unit, Branch, Item, Item Group, Storage Location | Scope keys; empty means wildcard. Inventory-cost posting resolves with company, branch and item only, so business unit, item group and storage location never match at posting time. |
| Effective From / To | The movement-date window the policy applies to; only the start is required. |
| Priority | Tie-breaker between equally specific policies (lower wins). Not on the current form layout. |
| Is Active | Only an explicit off excludes the policy. |
| Is Default | Stored, not read by the resolver. |
Resolution: candidates are filtered to the book, active policies and the effective window; each non-empty scope key must equal the movement's value. Specificity is scored item +16, item group +8, storage location +4, branch +2, business unit +1; the highest total wins, ties go to the lower priority number and then the later Effective From. A fully unscoped active policy is the book-wide fallback; with no match at all the engine uses moving average.
Checks to perform yourself before activating. Validation helpers exist for the rules below, but the standard save path does not call them, so a contradictory policy can be saved:
| Rule | Why |
|---|---|
| One active primary book per company | Cost posting takes the first active primary it finds. |
| No LIFO for Ind AS / IFRS books | Those frameworks do not permit LIFO. |
| Specific identification only with lot-tracked items | The method costs the exact lot each movement names. |
| No overlapping policies of equal specificity | Resolvable by priority and date, but hard to audit. |
| Effective To not before Effective From | An inverted window never matches. |
Engine-written records — leave them to the engine
Inventory Cost Lots, Inventory Cost Consumptions, Inventory Opening Lot States and Book Valuation Adjustments are written by the costing engine and rebuilt wholesale whenever a scope is replayed. They are derived state: editing them by hand only makes the stored rows disagree with the algorithm until the next posting overwrites them. Read them through the Valuation lots and Consumption lots drills on the Inventory Valuation page.
Inventory NRV Assessments are the exception: no product process computes them today, so if your organization applies lower-of-cost-and-NRV, the rows (estimated selling price, cost to complete, cost to sell, write-down or reversal for the run, fiscal period) are entered against the entity. Period close then posts a journal for each assessment in the period without one and the valuation statement subtracts the outstanding write-down from cost.
Common questions
Why can't I edit the inventory ledger settings?
Because they define stock truth. A changed posting rule silently changes what every future document does to inventory, so the rules ship as managed platform configuration rather than tenant-editable data. If a posting behavior genuinely needs to differ for your organization, raise it through your implementation or support channel.
Which book do valuation screens use when I don't pick one?
The primary book. The Inventory Valuation page shows a book picker only when the company has more than one book; cost posting always uses the first active primary book for the company. Because uniqueness is not enforced, verify that exactly one active primary exists before trusting the implicit selection.
Where do I switch lot tracking or inventory tracking on?
On the item record — Track Inventory and Track Lots are item flags, not module settings. Turning Track Lots on for an item with existing untracked stock does not create lots for that stock; plan the change with an adjustment or receipt that establishes the lots.
