Every accounting event in SAP ends up as an accounting document. Whether it arrived automatically from another module or was typed in by an accountant, the result has the same shape. This section covers that shape and how documents are actually entered.
The structure of a document
An accounting document consists of one header and several line items. The header carries what applies to the document as a whole; the line items carry amounts per account.
| Part | Main fields | Table (ECC) |
|---|---|---|
| Header | Document number, company code, fiscal year, document type, document date, posting date, currency, exchange rate, header text | BKPF |
| Line item | Posting key, G/L account, amount, debit/credit, cost centre, profit centre, tax code, payment terms, item text | BSEG |
In S/4HANA the line items really live in ACDOCA, the Universal Journal. BSEG remains for compatibility, but reporting and analysis start from ACDOCA. Custom programs that read BSEG directly often need revisiting during an S/4 migration.
Choosing an entry transaction
Several transactions post journal entries, differing mainly in which account types they handle. Whichever you use, the resulting document has the same structure.
| Code | Use | Notes |
|---|---|---|
| FB50 | G/L document entry | Pick debit or credit; no posting key needed |
| FB60 | Vendor invoice | Specify the vendor; the payables line is generated |
| FB65 | Vendor credit memo | The credit-side counterpart of FB60 |
| FB70 | Customer invoice | Specify the customer; the receivables line is generated |
| FB75 | Customer credit memo | The credit-side counterpart of FB70 |
| F-02 | General document entry (classic) | Posting keys typed directly; account types can be mixed |
| FV50 | Park a G/L document | Hold for approval before posting |
The FB50 family is easier to operate but limits which account types you can touch. Use F-02 for the awkward cases, such as a single document mixing vendor, customer and G/L lines.
Document date versus posting date
Confusing these two dates is the most common mistake in practice.
| Field | Meaning | What it affects |
|---|---|---|
| Document date | When the transaction occurred โ the date printed on the invoice | Baseline date calculation, matching to source documents |
| Posting date | The date the entry hits the books | Which accounting period the figures land in |
| Entry date | When it was entered in SAP; set by the system | Cannot be changed; part of the audit trail |
Controlling open periods
If any posting date were allowed, documents would land in periods that were supposed to be closed. Period control (OB52) prevents that. For each period you define which account types may be posted to, over which date range, and by which authorisation group.
At month end the usual pattern is to close the current month and open the next one, using authorisation groups so that only the finance team can still post to the prior month while closing work is in progress.
Parked and held documents
There are two ways to save an unfinished document, and they behave quite differently.
- Parked document: a document number is assigned and other users can view and edit it. It does not affect balances, which makes it suitable for approval workflows. Display and post it with FBV0.
- Held document: closer to a personal scratchpad. No document number is assigned and other users cannot see it.
If the requirement is to separate the person who enters from the person who approves, park the document. Holding is for interrupting your own work.
Displaying and reversing
Display a posted document with FB03, supplying company code, fiscal year and document number. To list line items per account, use FAGLL03 for G/L accounts, FBL1N for vendors and FBL5N for customers.
Reverse an incorrect document with FB08. Reversal posts a new document with the opposite entries and links the two together. The reversal reason code controls whether the reversal takes the original posting date or the current one.