Designing accounting in SAP starts with organisational structure, and the company code is the single most important unit in FI.
What a company code is
A company code is an independent accounting entity, identified by a four-character code. One company code produces one set of financial statements โ one balance sheet and one P&L. As a rule, you create a company code for each legal entity that has to file statutory accounts.
A group therefore holds several company codes in one SAP system: 1000 for the domestic parent, 1100 for a domestic subsidiary, 2000 for an overseas subsidiary, and so on. Transactions between company codes are recorded as separate documents in each.
| Unit | Role | Notes |
|---|---|---|
| Client | Top-level unit of the system | Determines the scope of shared master data |
| Company code | Independent accounting entity | The unit financial statements are produced for; four characters |
| Business area | Internal reporting unit crossing company codes | Optional; largely superseded by segments and profit centres |
| Controlling area | The unit CO operates in | Can span several company codes |
| Credit control area | Unit for customer credit management | Related to FI-AR and SD |
The chart of accounts
A chart of accounts defines the list of G/L accounts available. The key property is that one chart of accounts can be shared by several company codes.
When a whole group uses the same chart, every company code books to the same account structure, which makes consolidation and comparison straightforward. In the other direction, a company code is assigned exactly one operating chart of accounts. The relationship is one-to-many, and it is worth being careful not to reverse it.
| Kind | Purpose | Required? |
|---|---|---|
| Operating | The chart used for day-to-day posting | Required; one per company code |
| Country-specific | A chart matching local statutory reporting format | Optional; used where local law requires it |
| Group | A unified chart for consolidated reporting | Optional; used where a group consolidates |
Two levels of the account master
A G/L account master record has a chart of accounts level and a company code level. Understanding this answers the common question of why the same account behaves differently in different companies.
| Level | What it holds |
|---|---|
| Chart of accounts level | Account number, short and long descriptions, account group, and whether the account is a balance sheet or a P&L account |
| Company code level | Account currency, tax category, reconciliation account type, whether line item display and open item management are active, sort key, and whether posting is blocked |
In short: the name and number are shared across the group, while how the account is used is decided per company. The same cash account can have line item display switched on in one company and off in another.
Reconciliation accounts
Of the company code level settings, the reconciliation account type matters most in practice. It declares that an account is tied to a sub-ledger, and is set to vendors (K), customers (D) or assets (A).
You cannot post directly to a reconciliation account. Attempting to post to accounts payable through FB50 is rejected, because a payables balance must be built up from vendor-level documents in FI-AP.
What account groups do
An account group classifies accounts by nature, controls the number range they may use, and governs which fields are required, optional or hidden when the master record is created. Reserving 100000โ109999 for cash and bank and 400000โ409999 for revenue, for example, keeps the numbering meaningful at a glance.
Whether an account is a balance sheet or a P&L account is also set at chart of accounts level. P&L accounts must be assigned a retained earnings account, which the year-end carry-forward uses to move the period result onto the balance sheet.