Your Record to Report - Journal Entry Data Template

SAP S/4HANA
Your Record to Report - Journal Entry Data Template

Your Record to Report - Journal Entry Data Template

This template provides a comprehensive guide to collecting the necessary data for analyzing your Record to Report - Journal Entry process. It outlines essential attributes to gather, key activities to track, and practical guidance for extracting this information from your source system. Utilize this resource to ensure you have all the data points needed for a robust process mining analysis.
  • Recommended attributes to collect
  • Key activities to track
  • Practical extraction guidance
New to event logs? Learn how to create a process mining event log.

Record to Report - Journal Entry Attributes

These are the recommended data fields to include in your event log for comprehensive Record to Report - Journal Entry analysis.
3 Required 5 Recommended 12 Optional
Name Description
Activity
ActivityName
The name of the business activity that occurred at a specific point in the journal entry process.
Description

The Activity represents a specific step or event in the lifecycle of a journal entry, such as 'Journal Entry Created', 'Journal Submitted For Review', or 'Journal Entry Posted'. These activities are typically derived from change logs, status updates, or transaction codes recorded in the system.

Analyzing activities allows for the visualization of the process flow, identification of common pathways, and discovery of deviations from the standard procedure. It is fundamental for calculating metrics like activity frequency, waiting times between steps, and conformance rates.

Why it matters

It defines the steps in the process, enabling the visualization of process maps and the analysis of workflow patterns.

Where to get

Derived from various sources including status fields in header/item tables (e.g., BKPF-BSTAT), change document logs (CDHDR/CDPOS), and workflow logs.

Examples
Journal Entry CreatedJournal Entry ParkedJournal Submitted For ReviewJournal Entry ApprovedJournal Entry Posted
Event Time
EventTime
The timestamp indicating when a specific activity occurred for the journal entry.
Description

Event Time is the precise date and time that a business activity was executed and recorded in the system. Each activity in a case has its own timestamp, creating a chronological sequence of events.

This attribute is critical for all time-based process analysis. It is used to calculate cycle times, durations between activities, waiting times, and to understand the temporal distribution of work. Accurate timestamps are essential for building a reliable process model and calculating key performance indicators like Approval Cycle Time.

Why it matters

It provides the chronological order of events, which is essential for calculating all duration-based metrics and understanding the process timeline.

Where to get

Sourced from change document logs (CDHDR-UDATE, CDHDR-UTIME), workflow logs, or creation/entry timestamps on tables like BKPF (CPUDT, CPUTM).

Examples
2023-10-26T10:05:00Z2023-11-15T14:30:15Z2024-01-20T09:00:45Z
Journal Entry ID
JournalEntryId
The unique identifier for a financial journal entry, which serves as the primary case identifier for the process.
Description

The Journal Entry ID is a unique number assigned to each accounting document upon its creation in SAP S/4HANA. This identifier is essential for tracking the complete lifecycle of a journal entry, from its initial creation or parking, through approval workflows, to its final posting and potential reversal or clearing.

In process mining analysis, this ID is used to link all related activities into a single case. By grouping events under a common Journal Entry ID, analysts can reconstruct the end-to-end process flow, measure cycle times, and identify variations or bottlenecks for each specific financial transaction. It is the foundational attribute for building the entire process view.

Why it matters

This identifier connects all related process steps, making it possible to analyze the end-to-end journey of each journal entry.

Where to get

This is a composite key, typically formed by concatenating Company Code (BKPF-BUKRS), Document Number (BKPF-BELNR), and Fiscal Year (BKPF-GJAHR).

Examples
1000-1000000001-20231710-1900000055-20242000-2100003412-2023
Amount In Local Currency
AmountInLocalCurrency
The total value of the journal entry expressed in the local currency of the company code.
Description

This attribute represents the financial magnitude of the journal entry. It is typically the sum of the absolute values of all debit or credit line items in the document, converted to the company code's local currency.

Analyzing by amount allows for the segmentation of the process based on financial impact. For instance, high-value entries might follow a more rigorous approval process than low-value ones. It helps in prioritizing process improvement efforts on transactions that pose the highest financial risk.

Why it matters

Provides the financial value of the entry, enabling analysis of how process behavior changes with the monetary value at stake.

Where to get

Calculated by summing amounts from line item table BSEG (field DMBTR) for a given journal entry (BELNR) and converting to a positive value.

Examples
1500.75125000.0050.20
Company Code
CompanyCode
The unique identifier for the company or legal entity for which the journal entry is posted.
Description

The Company Code is a fundamental organizational unit in SAP Financials, representing an independent legal entity for which financial statements are generated. Every journal entry is assigned to a specific company code.

This attribute is critical for segmenting and comparing process performance across different parts of the organization. Analysts can use it to filter the process view for a specific legal entity, compare rejection rates between company codes, or identify region-specific process variations.

Why it matters

Allows for filtering and comparing the journal entry process across different legal entities or business units within the organization.

Where to get

SAP S/4HANA table BKPF, field BUKRS (Company Code).

Examples
10001710US01
Created By User
CreatedByUser
The user ID of the person who created the journal entry.
Description

This attribute stores the unique identifier of the user who initiated the journal entry process by creating the initial document. This could be an accountant, a business user, or a system ID for automated entries.

Analyzing the process by the creator helps identify patterns related to specific users or teams. It can reveal training needs if certain users have higher rejection rates, or highlight high-performing individuals. It is essential for the 'User Activity and Throughput' dashboard.

Why it matters

Attributes process activities to specific users, enabling performance analysis, workload balancing, and identification of training opportunities.

Where to get

SAP S/4HANA table BKPF, field USNAM (User Name).

Examples
ABROWNCJONESBATCH_USER
Journal Entry Type
JournalEntryType
Classifies the journal entry based on its business purpose, such as an asset posting, vendor invoice, or general ledger entry.
Description

The Journal Entry Type, or Document Type in SAP terminology, is a key that categorizes accounting documents. It controls aspects like the number range assigned to the document and which account types are permitted for posting.

Analyzing the process by journal entry type is crucial for understanding context-specific behaviors. For example, the approval process for a simple accrual (type SA) may be much simpler than for a complex asset acquisition (type AA). This dimension is key for the 'Compliance by Entry Type' dashboard.

Why it matters

Categorizes entries by business context, enabling analysis of process variations and performance for different types of financial transactions.

Where to get

SAP S/4HANA table BKPF, field BLART (Document Type).

Examples
SAKRAA
Posting Date
PostingDate
The date on which the journal entry is recorded in the General Ledger, affecting the financial period.
Description

The Posting Date determines the fiscal period in which the transaction will appear on financial statements. It is a critical date for accounting and may differ from the date the document was created or entered into the system.

In process mining, the posting date is used for time-based cohort analysis, such as comparing month-end closing processes or analyzing performance trends over different financial periods. It is also used to measure delays between entry creation and actual financial posting.

Why it matters

Crucial for financial context, it allows for analyzing process performance within specific accounting periods, like month-end or year-end.

Where to get

SAP S/4HANA table BKPF, field BUDAT (Posting Date in the Document).

Examples
2023-10-312023-11-012024-02-29
Approval Cycle Time
ApprovalCycleTime
The time elapsed from when a journal entry was submitted for approval until it was either approved or rejected.
Description

This calculated metric focuses specifically on the duration of the approval stage. It measures the time between the 'Journal Submitted For Review' activity and the subsequent 'Journal Entry Approved' or 'Journal Entry Rejected' activity.

This KPI is critical for identifying bottlenecks within the approval workflow. High approval cycle times can significantly delay the overall process. Analyzing this metric by approver, company code, or journal entry type can reveal specific areas for improvement.

Why it matters

Isolates the duration of the approval step, helping to pinpoint and address bottlenecks in the review and approval workflow.

Where to get

Calculated by finding the time difference between the 'Journal Submitted For Review' event and the 'Journal Entry Approved' or 'Journal Entry Rejected' event.

Examples
1 day 2 hours4 hours 25 minutes5 days 0 hours
Approver User
ApproverUser
The user ID of the person who approved or rejected the journal entry.
Description

This attribute identifies the user responsible for reviewing and making a decision on a submitted journal entry. In a multi-level approval workflow, there may be several approvers for a single journal entry.

This information is essential for analyzing the approval process in detail. It helps measure the workload of different approvers, calculate individual approval times, and identify bottlenecks in the approval chain. It directly supports the 'User Activity and Throughput' dashboard.

Why it matters

Identifies the individual responsible for approval, enabling analysis of approval workloads, performance, and bottlenecks.

Where to get

Sourced from workflow logs (e.g., SWW_WI2OBJ, SWWLOG) or change document tables (CDHDR/CDPOS) by tracking who executed the approval step.

Examples
DMILLERFWHITEKCHEN
Document Status
DocumentStatus
The current processing status of the journal entry, such as Parked, Posted, or Cleared.
Description

The Document Status indicates the state of the journal entry within its lifecycle. For example, a 'parked' document is saved but not yet posted to the General Ledger, while a 'posted' document is finalized.

Analyzing the status helps to understand the flow of work and identify bottlenecks. A high volume of documents remaining in a 'parked' or 'pending approval' state for long periods can signal inefficiencies in the process. It is also a key source for deriving process activities.

Why it matters

Provides a snapshot of where a journal entry is in its lifecycle, helping to identify queues and bottlenecks.

Where to get

SAP S/4HANA table BKPF, field BSTAT (Document status).

Examples
VAB
End Time
EndTime
The timestamp indicating when the activity was completed.
Description

The End Time marks the completion of an activity. In many event logs, the Start Time and End Time of an activity are the same, representing an instantaneous event. However, for activities that have a measurable duration, like a user actively reviewing a document, this attribute can capture that duration.

Having a distinct End Time allows for more precise calculation of activity processing times versus waiting times. It helps differentiate the time a task was actively being worked on from the time it was idle in a queue.

Why it matters

Enables the calculation of precise activity processing times, separating active work time from idle waiting time.

Where to get

Typically the same as StartTime for atomic events. For durational activities, it may be sourced from workflow logs or calculated based on subsequent events.

Examples
2023-10-26T10:05:00Z2023-11-15T14:45:20Z2024-01-20T09:10:30Z
Fiscal Year
FiscalYear
The fiscal year to which the journal entry belongs.
Description

The Fiscal Year is part of the unique key for a journal entry, alongside the company code and document number. It represents the financial year in which the document is relevant.

In analysis, the fiscal year is used for long-term trend analysis and for ensuring the uniqueness of the case identifier. Comparing process metrics across different fiscal years can reveal improvements or degradations in performance over time.

Why it matters

Provides a critical component for uniquely identifying documents and enables year-over-year process performance analysis.

Where to get

SAP S/4HANA table BKPF, field GJAHR (Fiscal Year).

Examples
202320242022
Is Manual Posting
IsManualPosting
A boolean flag that indicates whether the journal entry was posted manually by a user.
Description

This attribute identifies journal entries that were posted through manual user intervention, as opposed to being posted automatically by a system job or interface. It is typically derived from the Transaction Code used to post the document.

This flag is used to calculate the Manual Posting Rate KPI and helps organizations track their progress in automating the Record to Report process. By filtering for manually posted entries, analysts can identify the specific scenarios that still require human touch and evaluate them for automation potential.

Why it matters

Differentiates between human and system-driven postings, which is critical for measuring automation levels and identifying automation opportunities.

Where to get

This is a calculated attribute derived from the TransactionCode. A predefined list of manual transaction codes (e.g., 'FB01', 'F-02') is used to set the flag to 'true'.

Examples
truefalse
Is Rework
IsRework
A boolean flag indicating if the journal entry has undergone rework, such as being corrected after a rejection.
Description

This calculated attribute flags journal entries that have deviated from the ideal 'happy path' process. It is typically set to true if an activity like 'Journal Entry Rejected' or 'Journal Entry Corrected' occurs within the case.

This flag simplifies the analysis of process efficiency. It allows for quick calculation of the Rework Rate KPI and enables direct comparison of cycle times and costs between cases with and without rework. Identifying the drivers of rework is a primary goal of many process improvement initiatives.

Why it matters

Flags cases that required correction or extra loops, allowing for easy quantification and root cause analysis of process inefficiencies.

Where to get

This is a calculated attribute derived from the sequence of activities in a case. It is flagged as 'true' if an activity like 'Journal Entry Rejected' is present.

Examples
truefalse
Last Data Update
LastDataUpdate
Timestamp indicating the last time the data for this record was refreshed from the source system.
Description

This attribute records the date and time of the most recent data extraction or update from the source system. It provides transparency on the freshness of the data being analyzed.

Knowing the last update time is important for understanding the currency of the process analysis. It helps users interpret the dashboards and KPIs correctly, knowing if they are looking at near real-time data or a snapshot from a previous period.

Why it matters

Indicates the freshness of the data, ensuring users are aware of how current the process analysis is.

Where to get

This is a metadata attribute, typically generated and stamped on each record during the data ingestion pipeline.

Examples
2024-03-10T02:00:00Z2024-03-11T02:00:00Z2024-03-12T02:00:00Z
Reversal Reason
ReversalReason
A code indicating the reason why a posted journal entry was reversed.
Description

When a posted journal entry is incorrect, it cannot be deleted but must be reversed with a new document. The Reversal Reason code explains why this action was taken, for example, due to an incorrect posting date or amount.

Analyzing reversal reasons helps to identify the root causes of errors in the Record to Report process. A high frequency of a particular reason can point to systemic issues, such as inadequate training or control failures, that need to be addressed to improve first-time quality.

Why it matters

Helps diagnose the root cause of errors leading to reversals, providing insights needed to reduce rework and improve process quality.

Where to get

SAP S/4HANA table BKPF, field STGRD (Reason for reversal).

Examples
010205
Source System
SourceSystem
Identifies the source system from which the journal entry data was extracted.
Description

This attribute specifies the system of record where the journal entry data originated. For companies with multiple ERP instances or a mix of legacy and modern systems, this helps differentiate data sources.

In analysis, it can be used to compare process performance across different systems or to filter data for a specific source. It is important for data governance and ensuring the context of the data is understood.

Why it matters

Provides context about data origin, which is crucial in multi-system landscapes for accurate process analysis and comparison.

Where to get

This is typically a static value added during data extraction, identifying the specific SAP S/4HANA instance (e.g., SID or logical system name).

Examples
S4H_PROD_100ECC_FIN_200S4C_US_EAST
Total Cycle Time
TotalCycleTime
The total duration from the creation of the first activity to the completion of the last activity for a journal entry.
Description

This calculated metric measures the end-to-end duration of the journal entry process for each case. It is the difference between the timestamp of the very last observed activity and the timestamp of the very first one.

Total Cycle Time is a primary KPI for measuring overall process efficiency. It provides a high-level view of process performance and is used in dashboards to track trends over time. Analyzing the drivers of long cycle times is a common starting point for process improvement.

Why it matters

Measures the end-to-end process duration, providing a key performance indicator for overall process efficiency and speed.

Where to get

Calculated by subtracting the minimum EventTime from the maximum EventTime for each unique JournalEntryId.

Examples
2 days 4 hours 30 minutes8 hours 15 minutes15 days 2 hours
Transaction Code
TransactionCode
The SAP transaction code used to create or change the journal entry.
Description

The Transaction Code (T-Code) is a shortcut that identifies a specific function or program in SAP. For journal entries, different T-Codes can indicate how the entry was created, for example, FB01 for manual GL posting, FV50 for parking, or an automated code for system-generated entries.

This attribute is a strong indicator of whether an activity was performed manually by a user or automatically by the system. It is key for calculating the Manual Posting Rate KPI and for identifying opportunities for automation.

Why it matters

Indicates how an entry was processed (e.g., manually vs. automatically), which is key for automation analysis and understanding process variations.

Where to get

SAP S/4HANA table BKPF, field TCODE (Transaction Code).

Examples
FB01FV50F-02
Required Recommended Optional

Record to Report - Journal Entry Activities

These are the key process steps and milestones to capture in your event log for accurate process discovery and optimization.
6 Recommended 6 Optional
Activity Description
Journal Entry Approved
The journal entry receives final approval from an authorized manager, confirming its validity and accuracy. This activity is the final gate before the document can be posted to the general ledger.
Why it matters

This is a critical milestone that concludes the approval cycle. The time taken to reach this step is a major component of the overall process duration and a key indicator of approver efficiency.

Where to get

This event is inferred from a workflow log showing the final approval step or a status change on the document. The approver's user ID and timestamp can be sourced from workflow data or change logs.

Capture

Identify timestamp of final approval step in workflow logs or status change to 'Approved' in change documents.

Event type inferred
Journal Entry Cleared
An open item line within a journal entry is offset by another posting, such as a payment clearing an invoice. This activity marks the reconciliation of specific line items, effectively closing them out.
Why it matters

This activity represents the final reconciliation step for many journal entries, especially those involving suspense or open-item managed accounts. Analyzing the time from posting to clearing helps measure reconciliation efficiency.

Where to get

This event is inferred from the line item table (BSEG or the ACDOCA view). When an item is cleared, the Clearing Date (AUGDT) and Clearing Document (AUGBL) fields are populated for that line.

Capture

Use the clearing date (BSEG-AUGDT) for the line item as the timestamp for the event.

Event type inferred
Journal Entry Created
This activity marks the initial creation of a journal entry document in the system. The record is created in the header table (BKPF), but it has not yet been posted to the general ledger. This is the starting point for the journal entry lifecycle.
Why it matters

This is the primary start event for the process. Analyzing the time from this event to posting is crucial for measuring overall cycle time and identifying initial data entry delays.

Where to get

This event can be explicitly captured from the SAP table BKPF using the creation date (CPUDT) and creation time (CPUTM) fields for a given document number (BELNR).

Capture

Use BKPF-CPUDT and BKPF-CPUTM for the event timestamp.

Event type explicit
Journal Entry Posted
The journal entry is officially recorded in the general ledger, impacting the company's financial statements. This is the point at which the document becomes a permanent financial record.
Why it matters

This is the primary success milestone, marking the end of the core processing cycle. Analyzing the throughput of posted entries and the time to reach this stage are fundamental process mining metrics.

Where to get

This is an explicit event marked by the Posting Date (BUDAT) in the BKPF table. A posted document has a blank document status (BSTAT), distinguishing it from parked ('V') or held ('D') documents.

Capture

Use the Posting Date (BKPF-BUDAT) and Entry Date (BKPF-CPUDT) to timestamp the event. A blank BKPF-BSTAT indicates a posted document.

Event type explicit
Journal Entry Reversal Processed
A previously posted journal entry is reversed by creating a new document with inverse postings. This action is taken to correct errors in posted documents and is an explicit, auditable transaction.
Why it matters

Reversals indicate that an error was made in a posted document. A high reversal rate suggests underlying issues in the approval process or data entry quality, and tracking this helps improve first-time accuracy.

Where to get

The reversal is an explicit event. The new reversing document's header (BKPF) contains a reference to the original document in the Reversed Document No. (STBLG) field. The posting date of the new document is the event time.

Capture

Identify documents where BKPF-STBLG is populated. The event timestamp is the posting date of the reversing document.

Event type explicit
Journal Submitted For Review
The creator of the journal entry formally submits the document for the review and approval workflow. This activity represents the handoff from data entry to the formal control process, initiating the approval cycle.
Why it matters

This marks the beginning of the approval cycle time. Measuring from this point to the final approval or rejection helps isolate bottlenecks specifically within the review and approval stages.

Where to get

This is often captured from workflow logs (tables SWW_WIHEAD, SWWLOG) linked to the business object. It can also be inferred from a status change in a custom field on the document header (BKPF).

Capture

Timestamp of workflow item creation or a status field changing to 'Submitted' or 'In Review'.

Event type inferred
Journal Entry Changed After Posting
A user modifies a limited set of fields on a journal entry after it has already been posted to the general ledger. While most financial data is immutable post-posting, some fields like text or assignments can be changed.
Why it matters

This activity is a critical compliance flag. Changes after posting can indicate attempts to alter records and should be closely monitored to prevent fraud and ensure data integrity.

Where to get

This can be reliably inferred from change document tables (CDHDR and CDPOS). An entry in CDHDR for the document number with a change date after the posting date signifies a post-posting change.

Capture

Find records in CDHDR where the change timestamp (UDATE/UTIME) is after the document's posting date (BKPF-BUDAT).

Event type inferred
Journal Entry Corrected
The user modifies a journal entry after it was rejected or sent back for changes. This represents the rework effort required to address issues identified during the review process before resubmission.
Why it matters

This activity quantifies rework loops. Analyzing the frequency and duration of corrections helps pinpoint sources of inefficiency and highlights opportunities for training and process clarification.

Where to get

This can be inferred by tracking the 'Last Changed On' date (AEDAT) in the BKPF table for a document that was previously in a 'Rejected' state. Change documents provide more specific details on what was changed.

Capture

Use the timestamp from change document headers (CDHDR-UDATE) for changes made after a rejection event.

Event type inferred
Journal Entry Parked
A user saves an incomplete journal entry without posting it, allowing for later completion or review. This is an explicit action that creates a document header record with a 'parked' status, holding it in a non-posted state.
Why it matters

Parking is a common step before submission. Tracking the duration of the parked state helps identify delays in data completion and preparation before the formal review and approval process begins.

Where to get

In the BKPF table, a parked document is identified by the document status field (BSTAT) having a value of 'V'. The event timestamp is the creation date (CPUDT).

Capture

Filter for documents where BKPF-BSTAT = 'V' at time of creation.

Event type explicit
Journal Entry Rejected
A reviewer or approver denies the journal entry, preventing it from being posted. The document is typically sent back to the creator for correction, initiating a rework loop.
Why it matters

Tracking rejections is key to understanding process quality and identifying common errors. High rejection rates indicate problems with data accuracy, policy understanding, or inadequate supporting documentation.

Where to get

This event is inferred from a status change in a workflow log or a custom status field on the journal entry document. Change document logs (CDHDR/CDPOS) on the relevant status field can provide the timestamp.

Capture

Identify status field change to 'Rejected' via change documents (CDHDR/CDPOS) or workflow logs.

Event type inferred
Manual Posting Identified
The journal entry was posted using a manual transaction code rather than through an automated interface or batch job. This is not a temporal event but a classification of the posting activity.
Why it matters

Identifying manual postings is crucial for automation initiatives. A high rate of manual postings suggests opportunities to streamline processes by integrating subsystems or using automated posting programs.

Where to get

This is calculated by analyzing the transaction code (TCODE) field in the document header table (BKPF). A list of known manual T-Codes (e.g., FB01, F-02, FB50) is used to classify the entry.

Capture

Classify event based on BKPF-TCODE against a predefined list of manual transaction codes at the time of posting.

Event type calculated
Supporting Documentation Attached
A user attaches one or more supporting documents, such as invoices or spreadsheets, to the journal entry. This is typically done to provide evidence and context for the financial transaction during the review and audit process.
Why it matters

Ensuring documentation is attached before review is critical for compliance and approval efficiency. This activity helps measure adherence to documentation policies and its impact on approval cycle times.

Where to get

This is typically inferred by checking the creation timestamp of attachments linked via Generic Object Services (GOS). The SRGBTBREL table links the business object (e.g., BKPF document) to the attachment.

Capture

Query GOS attachment tables (e.g., SRGBTBREL) for links to the BKPF object and use the attachment creation timestamp.

Event type inferred
Recommended Optional

Extraction Guides

How to get your data from SAP S/4HANA