ERPClimb logoERPClimb
SAP authorization objectObjectF_SKA1_BUKModuleFI_FICO

F_SKA1_BUK — G/L Account Company Code Authorization

F_SKA1_BUK controls create, change, display and delete access to the company code segment of a G/L account master record, checked against fields BUKRS and ACTVT. It is separate from the chart-of-accounts segment check, so a user can pass one and still fail the other when maintaining the same account, which is the most common source of confusion around this object.

This page covers F_SKA1_BUK, the authorization object that guards the company code segment of G/L account master data in transactions such as FS00 and FSS0. It focuses on the fields checked, where the check fires, and how to trace a failure to the exact company code and activity that is missing from the role.

Published 16 Sept 2026· 952 words

What it protects

F_SKA1_BUK protects maintenance and display of the company code segment of a G/L account master record, the part that holds the currency, tax category, open item management flag, field status group and similar company-code-specific attributes stored against the account. The one structural fact that explains most of the confusion around it: a G/L account master record is split into a chart-of-accounts segment and one or more company code segments, and each segment is checked by a different authorization object. F_SKA1_BUK only covers the company code side. A user can have full rights to see or edit the chart-of-accounts segment (account type, group, description) and still be blocked the moment SAP tries to display or save the company-code-specific fields for a given BUKRS, because that second check runs independently and is what actually fires the failure the user reports.

Fields checked

  • BUKRS - the company code whose G/L account segment is being accessed; restricts which company codes' account data the user can see or maintain, usually held as a list or range in the role.
  • ACTVT - the activity being performed against the segment; the standard CRUD values apply, typically 01 for create, 02 for change, 03 for display, and 06 for delete, and a role often grants display broadly while restricting create and delete to a small set of company codes or excluding them entirely.

Where it is checked

  • FS00 (centrally, with chart-of-accounts and company code tabs combined) - the check fires when the company code tab is opened, changed, or saved, independently of the chart-of-accounts check on the same screen.
  • FSS0, FSS1, FSS2, FSS3 - the company-code-only maintenance transactions; every call is a direct hit on F_SKA1_BUK for the entered company code and the activity implied by the transaction (create, change, display).
  • Mass maintenance and batch tools such as batch input sessions, LSMW, or migration cockpit loads that create or update G/L account company code segments - the check runs per company code inside the load, so a load spanning several company codes can partially succeed and partially fail depending on which BUKRS values are missing from the executing user's role.
  • Background jobs and interfaces that programmatically extend an account to a new company code also trigger the check under the job's execution user, not the requester's user, which is a frequent source of mismatched expectations.

How to trace a failed check

Start with SU53 run immediately after the failed screen, before doing anything else, because it only captures the most recent failed authorization check in that session. Confirm the object shown is F_SKA1_BUK and read off the BUKRS and ACTVT values SAP actually checked versus what the user's role contains for that field. If SU53 shows a clean result or shows a different object than expected, the real failure may be on the chart-of-accounts segment check instead, so do not stop at the first object seen. Run an authorization trace (the newer trace transaction, or the classic ST01 system trace if that is what is available) for the user and transaction to capture every authorization object checked in sequence during the full FS00 or FSS0 flow, not just the last one. Export or screenshot the trace and hand the security team the exact transaction code, the company code entered, the activity attempted (create versus change versus display), the user ID, and the timestamp, rather than a general 'cannot maintain G/L account' description.

Whose problem this is

This is a security team build, but the functional consultant must supply the scenario: which company codes need which activity for G/L account maintenance, and whether the request is for one-off account creation, ongoing display access, or a mass load run under a background user. A vague request to 'give access to FS00' produces a role that is either too broad or still missing the specific company code that triggered the failure.

Common pitfalls

  • Role includes BUKRS as a range or list that was set up before a new company code went live, so the account extension to that company code fails even though the same user maintains accounts fine in every older company code.
  • ACTVT 02 (change) is granted without ACTVT 01 (create), so the user can edit existing accounts in a company code but cannot extend a new account into it, and the resulting error is easy to misread as a missing BUKRS entry rather than a missing activity.
  • The failure is blamed entirely on F_SKA1_BUK when the actual blocking object is the parallel chart-of-accounts check; adding company codes to this object's field values does nothing if the chart-of-accounts segment check is what is failing.
  • SU53 only reflects the last check in the session, so after fixing the object it displayed, the same action can fail again on a different, earlier-in-sequence object that SU53 never showed, leading to a false conclusion that the fix did not work.
  • Mass loads and interfaces run under a service or background user whose role was scoped narrower than the dialog user's role, so a load that works fine when triggered manually fails intermittently when scheduled, and the difference is invisible unless the trace is taken against the correct execution user.

Related SAP objects

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

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