Account Determination Preflight
OBYC (MM), VKOA (SD) and FBKP (FI) automatic account determination preflight: missing accounts, posting blocks, conflicting and catch-all entries, expected-combination and movement-type / plant coverage, coverage matrix and regression scenarios.
Content reviewed September 26, 2026
- Engine
- ACCOUNT_DETERMINATION_PREFLIGHT
- Domain
- Operations
- Version
- 1.1.0
- Target releases
- S4H_2022, S4H_2023, S4HANA_CLOUD_2402, S4HANA_CLOUD_2408
- Accepted formats
- JSON, CSV
Input contract
Automatic account determination: JSON {'chart_of_accounts', 'company_code', 'obyc_rules': [...], 'vkoa_rules': [...], 'fi_rules': [...], 'ska1_accounts': [...], 'skb1_accounts': [...], 'valuation_classes': [...], 'movement_types': [{movement_type, transaction_key, account_modifier}], 'plants': [{plant, valuation_grouping_code}], 'expected_combinations': [{model, ..., expected_account}]} or CSV exports of T030 (KTOPL, KTOSL, BKLAS, KONTS/KONTU), C001/VKOA (VKORG, KTOSL, SAKNR), SKA1, SKB1. Company-code checks run only for an explicitly supplied company code.
Required input
- OBYC, VKOA and/or FI determination entries
- Resolution model: MM (OBYC) exact key, then blank valuation grouping, then blank valuation class; SD (VKOA) customer + material AAG, customer AAG, material AAG, sales org + account key; FI exact key, then blank modifier. Movement types, plants, FI rules and expected combinations are read from JSON.
Finding codes
Finding codes (8)
ACCT_DET_ACCOUNT_BLOCKED_POSTINGDefault severity: CriticalCategory: GL_POSTING_SECURITYDetermined G/L account is blocked for posting
Remediation: Remove the posting block in FS00 (chart of accounts or company code level) or point the determination entry to an unblocked account.
ACCT_DET_ACCOUNT_NOT_IN_COMPANY_CODEDefault severity: CriticalCategory: GL_MASTER_SYNCHRONIZATIONDetermined account not created in the company code
Remediation: Extend the G/L account to the company code (FS00 / 'Manage G/L Account Master Data') before go-live.
ACCT_DET_EXPECTED_COMBINATION_UNCOVEREDDefault severity: CriticalCategory: COVERAGE_MATRIXExpected combination resolves to no account
Remediation: Maintain the determination entry for the listed combination (OBYC for MM, VKOA for SD, the FI automatic posting key for FI - in the cloud via the corresponding SSCUI) before go-live or the change.
ACCT_DET_MISSING_ACCOUNTDefault severity: CriticalCategory: ACCOUNT_DETERMINATION_INTEGRITYNo G/L account determined for a required combination
Remediation: Maintain the missing entry in OBYC (MM: transaction key / valuation class) or VKOA (SD: sales org / account key) — in the cloud via the corresponding SSCUI — so postings do not fail with 'account determination error'.
ACCT_DET_MOVEMENT_TYPE_UNCOVEREDDefault severity: CriticalCategory: COVERAGE_MATRIXMovement type / plant / valuation class without OBYC account
Remediation: Maintain OBYC for the listed transaction key, account modifier, valuation grouping code and valuation classes (or restrict the movement type's valuation classes) so goods movements in the listed plants do not fail with 'account determination for entry ... not possible'.
ACCT_DET_CONFLICTING_RULESDefault severity: MajorCategory: DETERMINATION_AMBIGUITYConflicting determination entries for the same key
Remediation: Remove the duplicate / conflicting OBYC or VKOA entries so each condition key resolves to exactly one account.
ACCT_DET_EXPECTED_ACCOUNT_MISMATCHDefault severity: MajorCategory: COVERAGE_MATRIXDetermined account differs from the expected account rule
Remediation: Correct the determination entry (or the expected account rule, if the rule is outdated) so that the combination posts to the expected G/L account; re-run the regression scenarios afterwards.
ACCT_DET_SUSPICIOUS_CATCH_ALLDefault severity: MajorCategory: DETERMINATION_AMBIGUITYCatch-all / default determination entry
Remediation: Replace the wildcard or generic default entry by explicit entries per valuation class / account assignment group, or document why a single default account is intended; catch-alls hide missing specific entries and post unexpected combinations silently.
Input validation codes (5)
ACCT_ARCHIVE_REJECTEDDefault severity: MajorCategory: INPUT_VALIDATIONArchive rejected by ingestion safety limits
Remediation: The archive exceeded the 100:1 expansion ratio, 500 MB total size, entry-count or 2-level nesting limit, or contained path traversal / encrypted members. Upload a flat, unencrypted archive of the export files. No verdict was produced. Re-export the artifact in one of the formats accepted by Account Determination Preflight (JSON, CSV) and re-run the analysis.
ACCT_INVALID_INPUTDefault severity: MajorCategory: INPUT_VALIDATIONArtifact does not match the engine input contract
Remediation: Provide the artifact type documented for this engine; unrelated or structurally invalid documents are rejected. No verdict was produced. Re-export the artifact in one of the formats accepted by Account Determination Preflight (JSON, CSV) and re-run the analysis.
ACCT_PARSE_ERRORDefault severity: MajorCategory: INPUT_VALIDATIONArtifact could not be parsed
Remediation: Fix the syntax error at the reported line/column (or re-export the file unmodified from SAP). No verdict was produced. Re-export the artifact in one of the formats accepted by Account Determination Preflight (JSON, CSV) and re-run the analysis.
ACCT_PAYLOAD_TOO_LARGEDefault severity: MajorCategory: INPUT_VALIDATIONArtifact exceeds the size limit
Remediation: Split the export (e.g. per package, company code or date range) so each upload stays under the service payload limit. No verdict was produced. Re-export the artifact in one of the formats accepted by Account Determination Preflight (JSON, CSV) and re-run the analysis.
ACCT_INSUFFICIENT_INPUTDefault severity: InfoCategory: INPUT_VALIDATIONRequired input missing
Remediation: Supply every input the engine's contract marks as required (see the engine catalog entry). No verdict was produced. Re-export the artifact in one of the formats accepted by Account Determination Preflight (JSON, CSV) and re-run the analysis.