SAP S/4HANA · Accounts Payable · Legacy → ACDOCA
BSIK & BSAK in S/4HANA
Compatibility viewFI-AP
Short answer
In S/4HANA, BSIK and BSAK are compatibility views, not tables. Vendor line items live in ACDOCA — but open-item status and payment terms stay in BSEG. Read the released CDS view I_OperationalAcctgDocItem (FinancialAccountType = 'K'): it surfaces the supplier, payment terms, and due date in one place. Don't extract from BSIK/BSAK.
BSIK · openBSAK · cleared────▶ACDOCAamountsBSEGopen items + termsI_OperationalAcctgDocItem
What they were
In ECC, Accounts Payable kept secondary index tables for vendor (Kreditor, the “K”) line items: BSIK held open items, BSAK held cleared ones. When an invoice was paid, the record moved from BSIK to BSAK.
What changed in S/4HANA
The names remain as compatibility views. The accounting line item resolves to ACDOCA; the open item and its payment terms stay in BSEG.
| Object | Was | Now in S/4HANA |
|---|---|---|
| BSIK | Vendor open-item index (table) | Compat view → ACDOCA |
| BSAK | Vendor cleared-item index (table) | Compat view → ACDOCA |
| ACDOCA | — | Transparent table — the accounting line item (amounts, account) |
| BSEG | — | Transparent table — open-item management + payment terms |
In S/4HANA, BSEG didn’t disappear — it changed role. It is now the financial-operations line item (open items, payment terms, baseline date); ACDOCA is the financial-accounting line item. Vendor aging needs both.
Where the fields went — BSIK to ACDOCA / BSEG
| BSIK / BSAK field | Lives now in | Field |
|---|---|---|
| BUKRS | ACDOCA | RBUKRS |
| LIFNR | ACDOCA · CDS | LIFNR · Supplier |
| HKONT (recon acct) | ACDOCA | RACCT |
| GJAHR | ACDOCA | GJAHR |
| BELNR | ACDOCA | BELNR |
| BUZEI | ACDOCA | DOCLN |
| DMBTR / WRBTR | ACDOCA | HSL / TSL |
| SHKZG | ACDOCA | DRCRK |
| AUGBL | ACDOCA | AUGBL |
| ZTERM (payment terms) | BSEG | CDS: PaymentTerms |
| ZFBDT / ZBD1T (baseline / days) | BSEG | CDS: DocumentItemDate / NetPaymentDays |
The last two rows are the AP gotcha: payment terms and the baseline date are not in ACDOCA. That is why vendor aging reads the CDS view (which joins BSEG), not raw ACDOCA.
How to query it now
SELECT je.CompanyCode,
it.Supplier,
je.AccountingDocument,
je.FiscalYear,
it.AmountInTransactionCurrency AS amount,
it.PaymentTerms,
it.NetPaymentDays,
ADD_DAYS( it.DocumentItemDate,
TO_INTEGER(it.NetPaymentDays) ) AS net_due_date
FROM I_JournalEntry AS je
JOIN I_OperationalAcctgDocItem AS it
ON je.CompanyCode = it.CompanyCode
AND je.AccountingDocument = it.AccountingDocument
AND je.FiscalYear = it.FiscalYear
WHERE it.FinancialAccountType = 'K' -- K = vendor (Kreditor)
AND je.CompanyCode = :company_code;
Open vs cleared: BSIK held only open items. In S/4HANA, open-item status is managed in BSEG — a cleared item carries its clearing document / clearing date. Filter on that for open items, or take the status from BSEG; ACDOCA alone won’t give a clean open/cleared split.
Standard line-item report: FBL1N → S/4HANA Fiori app Manage Supplier Line Items.
Extract it compliantly
| Method | Use when |
|---|---|
| Released CDS view + SLT | Bulk to a warehouse — the owned-layer path (I_OperationalAcctgDocItem) |
| Table / Table-CDC | Direct ACDOCA + BSEG replication with delta |
| ODP-OData | SAP-sanctioned API, lower volume |
| SAP BDC / Datasphere Replication Flow | SAP-native pass-through (Delta Sharing) |
Not ODP-RFC. SAP Note 3255746 prohibits third-party ODP-RFC extraction, and a June 2026 security patch blocks it.
Related
ACDOCA — the Universal Journal hub · BSID / BSAD → ACDOCA — the customer (AR) side · Extraction pattern
Moving AP aging off BSIK/BSAK?
We ship the CDS / SLT config, the due-date SQL, and dbt models — reconciled to the AP sub-ledger, and you own the code.