SAP tableObjectEBKNModuleMM_P2P

EBKN table — Purchase Requisition Account Assignment

EBKN stores the account assignment distribution lines for purchase requisition items. When a requisition item is split across several cost objects (multiple account assignment), each split gets its own EBKN row keyed by requisition number, item number, and a sequential account assignment number. Single account assignment items still get one EBKN row. It is the requisition-side counterpart of EKKN on the purchase order.

EBKN carries the cost object detail behind a purchase requisition item: cost center, WBS element, order, or asset, and how the quantity or value is split when more than one exists. This page covers the fields consultants actually query, how EBKN joins to EBAN and forward to the PO account assignment tables, and the reflex mistakes that come from treating EBKN as a one-row-per-item table.

Published 15 Sept 2026· 1,099 words

What it stores

One row in EBKN represents a single account assignment distribution for one purchase requisition item. If a requisition item is account-assigned to a single cost center or WBS element, there is normally one EBKN row for that item. If the item is split across multiple account objects (multiple account assignment, distributed by quantity or by percentage), there is one EBKN row per split, each carrying its own share of quantity or value and its own cost object. The table is the requisition-side mirror of EKKN on the purchase order: the same account assignment structure is reused, but EBKN belongs to EBAN (purchase requisition) rather than to EKPO (purchase order item). It does not store the account assignment category itself, which lives on EBAN.

Key fields

  • BANFN - purchase requisition number, part of the key
  • BNFPO - item number within the requisition, part of the key
  • ZEKKN - sequential number of the account assignment, distinguishes multiple splits on one item
  • SAKTO - G/L account charged for this distribution
  • KOSTL - cost center, when the split is cost-center assigned
  • AUFNR - order number, when the split is order assigned
  • PS_PSP_PNR - WBS element, when the split is project assigned
  • PRCTR - profit center derived for this distribution
  • MENGE - quantity attributed to this split
  • NETWR - net value attributed to this split
  • ANLN1 - asset number, when the split is asset assigned
  • WEMPF - goods recipient for this distribution

How it joins the data model

  • EBKN-BANFN = EBAN-BANFN and EBKN-BNFPO = EBAN-BNFPO to get back to the requisition header and item, including the account assignment category and requisition status
  • EBAN-BANFN and EBAN-BNFPO carry the follow-on document fields (EBELN, EBELP) that point to EKPO once the requisition has been converted into a purchase order
  • EKPO-EBELN and EKPO-EBELP link forward to EKKN, which is where the account assignment actually lives once the PO exists; EBKN is not overwritten automatically when the PO account assignment is changed
  • KOSTL, PS_PSP_PNR, AUFNR are used to join out to the respective cost object master tables outside this table set to pull object descriptions

How to read it safely

EBKN is client-dependent, always restrict on MANDT implicitly by working inside the correct client. Selection should always start from BANFN, ideally with BNFPO, since neither field alone is safe to omit on a table that can carry several rows per item. Never select on cost center or WBS element alone across the whole table in a production system; the table grows with every multi-account-assigned requisition line ever created and there is no archiving housekeeping that most sites run aggressively. If the question is value-based, sum NETWR only within a single BANFN plus BNFPO plus ZEKKN combination, never across ZEKKN blindly assuming it is redundant.

How to prove it in the data

Symptom: a requisition item shows one quantity on the requisition but postings appear to hit two different cost centers. Select EBKN on the known BANFN and BNFPO. If more than one row returns with different ZEKKN values, the item is multiply account-assigned by design, and each row's KOSTL or PS_PSP_PNR with its own MENGE or NETWR share explains the split. Cross-check the sum of MENGE across those rows against EBAN's requisition quantity for the item; a mismatch points to a distribution percentage or value error at creation, not a posting error downstream.

ECC vs S/4HANA

EBKN continues to exist as a transparent table in S/4HANA and purchase requisition account assignment data is still written to it in the classic structure. There is no widely adopted compatibility view that replaces EBKN the way some purchase order tables gained CDS-based read layers; consultants querying requisition account assignment in S/4HANA still go to EBKN directly or through the standard requisition apps rather than a renamed successor table. Field-level behavior and the split-by-ZEKKN logic are unchanged from ECC.

Common pitfalls

  • Assuming one EBKN row per requisition item. Multiple account assignment breaks this assumption and any report that joins EBAN to EBKN without grouping by ZEKKN will double-count value or quantity.
  • Confusing EBKN with EKKN. EBKN belongs to the requisition, EKKN belongs to the purchase order. Once a requisition converts to a PO, the account assignment that actually drives goods receipt and invoice postings lives in EKKN, not EBKN. Changing the PO's account assignment does not rewrite the requisition's EBKN rows, so the two tables can legitimately disagree after conversion.
  • Reading EBKN in isolation to determine account assignment category. The category (cost center, order, WBS, unknown, and so on) sits on EBAN, not EBKN. EBKN only holds the values for whichever category EBAN specifies.
  • Treating leftover EBKN rows on a rejected or deleted requisition item as live financial commitments. The requisition item's deletion or block indicator on EBAN has to be checked separately; EBKN itself carries no independent status.
  • Summing NETWR across a full BANFN without filtering by BNFPO when a requisition has multiple items, producing a total that mixes unrelated cost objects across different line items.
  • Running an unrestricted selection against EBKN in a production client for ad hoc analysis. The table has no natural upper bound and a full scan against it is a common cause of an avoidable timeout.

Whose problem this is

Discrepancies between requisition account assignment and actual posting belong to the MM/procurement configuration owner first, since account assignment category and default derivation are controlled there. If the dispute is about which cost object should have been charged, it moves to whoever owns the controlling or project master data being questioned, not to the person who created the requisition.

Related SAP objects

Reviewed pages this object connects to in the ERPClimb knowledge graph.

Source: ERPClimb — https://erpclimb.com/sap-tables/ebknERPClimb is an independent platform and is not affiliated with SAP SE. Reference pages are written and reviewed by SAP consultants for learning and troubleshooting.