EINA table — Purchasing Info Record General Data
EINA holds the vendor-and-material-independent header of a purchasing info record: one row per vendor-material combination, storing the vendor's own material number, material group, order unit, and deletion flag. The purchasing-organization-specific data such as prices, conditions, and planned delivery time sits in the companion table EINE, joined on INFNR.
EINA is the general data table behind the purchasing info record object, the master record that links a vendor to a material independent of any purchasing organization. This page covers what a row represents, the fields worth trusting, how it joins to EINE, LFA1, and MARA, and the pitfalls of reading EINA alone when a pricing or sourcing question actually lives in EINE or the source list.
Published 15 Sept 2026· 952 words
What it stores
One row in EINA represents a single vendor-material combination at the purchasing info record level, independent of purchasing organization. It is created the moment an info record is maintained for a vendor and a material, either manually or automatically from a purchase order line that has no existing info record. EINA carries the data that does not vary by purchasing organization: which vendor supplies which material, the vendor's own material number, the material group, the order unit, and administrative fields like creation date and deletion flag. It does not carry price, so a row existing in EINA only proves that the vendor-material relationship exists somewhere in the system, not that it is priced or usable in a specific purchasing organization or plant.
Key fields
- MANDT - client
- INFNR - purchasing info record number, the key linking to EINE and referenced from EKPO and EORD
- LIFNR - vendor number
- MATNR - material number
- MATKL - material group, general data not tied to any purchasing org
- MEINS - order unit used when purchasing this material from this vendor
- IDNLF - vendor's own material number, useful for matching order confirmations
- LOEKZ - deletion flag at the general data level
- ERDAT - date the record was created
- ERNAM - user who created the record
How it joins the data model
- EINA-INFNR = EINE-INFNR, general data to purchasing-org-specific conditions and prices
- EINA-LIFNR = LFA1-LIFNR, vendor master
- EINA-MATNR = MARA-MATNR, material master
- EKPO-INFNR = EINA-INFNR, purchase order line referencing the info record used
- EORD-INFNR = EINA-INFNR, source list entry pointing at this info record
How to read it safely
MANDT is always the first restriction in any custom read. EINA has one row per vendor-material combination system-wide, so it is not a huge table compared to EKPO or MSEG, but selecting on MATNR alone across a large vendor base still returns more rows than expected if the material is sourced from many suppliers. Restrict on LIFNR and MATNR together when checking a specific relationship. Do not filter on plant or purchasing organization here, that data does not exist in EINA and any attempt to join on it will silently return nothing or force an unintended cross join with EINE.
How to prove it in the data
Symptom: a purchase order line will not adopt a price and the buyer says 'there should be an info record for this vendor and material'. Select EINA where LIFNR equals the vendor and MATNR equals the material. If no row returns, no info record exists at all and the fix is creating one, not chasing pricing conditions. If a row returns, take its INFNR and check EINE for that INFNR restricted to the purchasing organization on the PO. A missing EINE row for that org, with EINA present, is the actual cause.
ECC vs S/4HANA
EINA remains a physical table in S/4HANA and continues to be maintained by the standard info record transactions. It has not been absorbed into a merged table the way some MM tables have. Reporting and app layers increasingly read purchasing info record data through CDS views rather than direct table access, but the underlying persistence and field layout of EINA are unchanged from the classic model.
Common pitfalls
- Finding a row in EINA and concluding the info record is usable for a given purchasing organization. It is not, EINA has no organizational scope; usability depends entirely on a matching row in EINE for that org.
- Assuming EINA carries price. It never does. Price, price history, and conditions live in EINE and in the condition tables, not here.
- Treating the absence of an EINA row as proof the vendor never supplied the material. Info records can be deleted (LOEKZ set and later archived) after the relationship existed, so historical purchase orders can reference an INFNR that no longer resolves in EINA.
- Ignoring MATKL and assuming it always matches the material group on the material master. It is copied at creation and can go stale if the material master's group is changed afterward; EINA is not automatically kept in sync.
- Joining EINA to EKPO on MATNR and LIFNR instead of INFNR. Multiple info records or none may exist for a given vendor-material pair over time, and only INFNR gives a clean, unambiguous join to the specific record the PO line actually used.
- Reading IDNLF as authoritative for matching inbound EDI or order confirmations without checking whether it was actually maintained; it is often blank if the info record was created automatically from a PO.
Whose problem this is
Purchasing master data is owned by procurement, specifically the buyer or purchasing group responsible for the vendor-material relationship. When a price or org-availability question comes up, the first stop is the buyer maintaining the info record, not the vendor master or pricing team, since the org-specific piece sits in EINE and is a purchasing decision.
Related SAP objects
Reviewed pages this object connects to in the ERPClimb knowledge graph.
Source: ERPClimb — https://erpclimb.com/sap-tables/einaERPClimb is an independent platform and is not affiliated with SAP SE. Reference pages are written and reviewed by SAP consultants for learning and troubleshooting.