Purchase Liabilities (LIA)
The lia submodule of acc owns the purchase-side counterpart of chg: each PurchaseLiability is a single line-shaped expectation that an invoice will arrive from a supplier, derived from a goods receipt or other source document. Liabilities stay Pending until matched against a PurchaseInvoiceLine, at which point any difference between expected and invoiced amount is captured as a variance. The submodule depends on acc.doc for the source document, acc.pin for the matched purchase-invoice line, acc.cst for cost-unit allocation, acc.vat for the VAT code, and com.par / com.org / com.fin / com.log / cat.itm for the line content.
Concepts
Purchase LiabilityA line-shaped expectation that a purchase invoice will arrive. Captures everything a purchase-invoice line will need: supplier, terms, item, quantity (internal and external UoM), price, currency, VAT, cost-unit allocation. Goes from Pending → Matched (when a
PurchaseInvoiceLineis linked) or Cancelled.VarianceThe difference between the expected liability amount and the actual purchase-invoice amount. Captured per liability in both transaction and internal currency.
Source Document LineThe document line that originated the liability (typically a purchase receipt) — captured both as a
DocumentLinereference and as an opaqueDocumentId.
Entities
Purchase Liability (PurchaseLiability)
A single line-shaped expectation that a purchase invoice will arrive.
| Field | Description |
|---|---|
| Business key — generated transaction id. |
| The kind of source document the liability came from. |
| Owning department (final). |
| The originating document line (final). |
| Opaque id of the source document (final). |
| Date of the liability. |
| The supplier we expect the invoice from. |
| Terms expected on the invoice. |
| Liability currency and conversion rate. |
| The product item. |
| Line description. |
| Optional external/internal references. |
| Quantity in the internal (item) UoM. |
| Quantity in the external UoM. |
| The external UoM. |
| Unit price in the external UoM. |
| The price UoM. |
| Amount in transaction currency and internal currency. |
| VAT code applied. |
| Optional cost-unit allocation. |
| Optional free-form text appended to the matched invoice line. |
| Set once the liability is matched against a |
| Derived status — see Purchase Liability Statuses below. Default |
| Difference between expected and invoiced amount in foreign currency (optional). |
| Difference between expected and invoiced amount in internal currency (optional). |
A validation rule enforces that the matched purchaseInvoiceLine agrees with the liability on VAT code, currency, and supplier.
Purchase Liability Statuses (PurchaseLiabilityStatus)
| Code | Name | Meaning |
|---|---|---|
| Pending | Liability booked, no invoice received yet. |
| Matched | Linked to a purchase-invoice line. |
| Cancelled | Cancelled before matching. |
Functionality
The submodule does not currently expose Spring services from this package — the entity is read through the standard generated PurchaseLiabilityReader and written by downstream flows (purchase receipt processing, invoice-matching) that consume the standard generated writer. Variance computation is performed by the matching flow in acc.pin.
Public API
ACC_LIA_QueryApi and ACC_LIA_CommandApi
This submodule does not provide query- or command-API classes. Other modules read liabilities through the standard generated reader and create/update them as part of the purchase-receipt or invoice-matching flow.
ViewModel actions
The submodule defines a view model for PurchaseLiability but does not declare any custom UI actions.