Screen shots (Complete) - Payroll Process in SAP


Overview of Payroll Process in SAP

Payroll is a process to calculate the salary and wages of permanent and temporary employees of an organization. Payroll calculation considers an employee’s attendance, bonus, overtime, tax rules and other information to generate the pay slip of that employee. Payroll can be run daily, weekly, bi-weekly, monthly depending on the salary cycles of the organization.
The following flow chart  gives depiction of the SAP HR  payroll process along with the status of the control record during each phase.
Overview of Payroll Process in SAP
Released Payroll:
  • At this stage, the Payroll Control Record is set to "Release for Payroll".
  • Past and present HR Master Data is locked for those particular employees. However ,future dated changes in master data are permitted in your SAP system.
  • If the payroll is released from the "Exit" stage, the system rolls into the next payroll period, increases the payroll area period number by 1 in the Payroll Control Record (for example, from period 01/2008 to 02/2008).
Start Payroll:
  • You execute the payroll run for one payroll area, for the payroll period defined in the Payroll Control Record.
  • If errors occur, you will get a list of employees rejected during the payroll run.  The system has stored the employees rejected during the payroll run in something called "Matchcode W".
  • At this stage, the Payroll Control Record is set to "Released for Correction".
  • Past and present HR Master Data for those particular employees is now unlocked for corrections.
  • You should make appropriate corrections to fix the payroll errors.
  • Once you have made the appropriate corrections, you need to Release Payroll and Start Payroll using Matchcode W, which will only select the employees that were rejected during the previous payroll run.
  • You can cycle between the "Corrections" and "Released Payroll" stages as many times as necessary.
Exit Payroll:
  • At this stage, the Payroll Control Record is set to Exit Payroll.
  • Past and present HR Master Data for those particular employees is now unlocked in your SAP system.
  • The payroll run is closed off for the particular period.  You cannot go backwards in respect to payroll results.

Payroll Area

  • Typically an organization have a variety of employee types who are paid at different pay frequencies. For example, blue collar workers are paid weekly, white collar employees are paid monthly , part time employees are typically paid bi-weekly.
  • Payroll Area groups employees together on the same payroll run frequency (semi-monthly, monthly, etc.).
  • When executing a payroll for a particular payroll area all employees belonging to that payroll are processed. This avoids the need for running payroll individually for employees who are paid at same frequency

Payroll Periods

  • Records of payroll run for earlier months an employee are always stored for tax, audit and retro purposes. Suppose the current month is Oct 2010 and you want to refer to the payroll results for the month of Jan 2010 for an employee who is paid on monthly basis. It surely is easy to look for this data. But what if the employee is configured to be paid every 9 days and you want to know what his 16th payslip, for the current financial year ,looked like. How do you go about searching for this data ? Inconvenient isn't it ? Well, Enter Payroll Periods.
  • Payroll Periods represents the period for which regular payroll is run.
  • It is identified by a period number and a payroll year.
Overview of Payroll Process in SAP
  • The payroll period includes a "start date", an "end date". In the above example period 01 for payroll area xx has start date 01/01 and end date 01/31
  • For each payroll area, payroll periods are generated for current and future years.
  • When generating payroll periods, the period number depends on the period parameter (semi-monthly, monthly, etc.) and the start of the fiscal year. For example, for countries for which the financial year starts in April, payroll period "01 2010" represents the payroll period for April 2010.

Pay Day:

  • Its the date the salary is credited to bank account of the employee.
  • Pay Day differ from organizations to organizations. Some pay on the last working way of the month.Some companies pay last months salary on the 10th of the current month.
Overview of Payroll Process in SAP

SAP PA03: Payroll Control Record Tutorial

The Payroll Control Record defines the current payroll period and payroll past for retroactive accounting.
  • It locks the SAP-HR Master Data against changes during a payroll run, which applies for the payroll past and payroll present.  Changes that affect the future are still possible.
  • It defines the greatest earliest retroactive Accounting period.
The Payroll Control Record screen is divided into 4 sections:
  • Payroll Area: This section indicates the payroll area for which the payroll control record is applicable for.  For each payroll area, only ONE Payroll Control Record can exist at a time.
  • Payroll Status: This section indicates, with a green tick, at what stage a payroll run is currently in.  It also defines the current payroll period with exact dates and indicates how many times a payroll has been run.
  • Earliest Retro Acctg Period: This section indicates the greatest earliest payroll period for retroactive accounting.
  • Last Change to Personnel Control Record:strong> This section indicates who triggered a change to the Payroll Control Record, when, and what change occurred.
SAP PU03: Payroll Control Record Tutorial
In the Payroll Control Record screen, you can use the following buttons:
  • Incorrect Pers. Nos: Click this button to get a list of employees in SAP HR , rejected during the last payroll run.
  • List Personnel Numbers: Click this button to get a list of employees included in the payroll area.
  • Locked Pers. Nos: Click this button to obtain a list of employees , in SAP HR locked out of payroll in infotype 0003 (Payroll Status), hence stopping the ability to execute a payroll run for them.
SAP PU03: Payroll Control Record Tutorial

How to Execute Payroll in SAP

In this tutorial, we will learn Execute Payroll in SAP
How to Execute Payroll in SAP
How to Execute Payroll in Background

How to Execute Payroll in SAP

Before you proceed ahead executing payroll , make sure that control record is set to released status in your SAP system
Step 1) In the SAP command prompt , Enter transaction PC00_MXX_CALC , where XX = Molga of the country for which you want to execute payroll.

  How to Execute Payroll in SAP
Step 2) In the next SAP screen,

  • Enter Payroll Area
  • Select Current Period
  • You can also select other period and run payroll for a period other than the current period.

Step 3) Select the correct Schema

Step 4) Under Log , Flag the Display log checkbox.

Step 5) Under Remuneration statement parameters
  • For a SMALL number of employees, tick the "Display Variant Rem. Statement" field and select the appropriate variant
  • For a LARGE number of employees, tick "No Remuneration Statement" since there is a high chance of a ABAP dump Error

Step 6) Click Execute Check the Display Log for the results of the Payroll Run. It gives summary of total number of employees run , employees in error and employees successful.
If you selected Remuneration statement in the previous selection screen, you can view this by clicking on the Form button.

Step 7) Remuneration Statement

You can also run payroll in Simulation (Test Mode) using transaction PC00_MXX_CALC_SIMU (XX = Molga). Test Mode simulates the actual payroll run but does not update the payroll tables. It is helpful in determining and correcting errors before you perform actual (live)  payroll run

How to Execute Payroll in Background

When running payroll for large employee range it is advisable to process it in the background.
Step 1) In SAP Command Prompt , Enter Transaction PC00_MXX_CALC , where XX = Molga of the country for which you want to run the payroll.
Step 2) Enter the Payroll  Area and Payroll Schema
How to Execute Payroll in SAP
Step 3) In SAP Menu Bar , Click

  1. Program
  2. Execute in Background

Step 4) In the SAP -Output Device Dialog Box

  1. Enter Device as LOCL (local)
  2. Click the check mark

Step 5) An Information message stating Format is set to X_65_132 is shown. Click Check Mark to proceed ahead.

Step 6) Click Immediate and then click the save button so the job is scheduled instantaneously.  Alternatively you can also specify a date and time to run the job.

Step 7) Go To Transaction SM37 to check your Job.

How to Execute Payroll in SAP

How to Check Payroll Results using PC_PAYRESULT in SAP

When executing a Payroll run, you need to check your payroll results to ensure that employees are paid correctly.  It should be done any time after you have executed a Start Payroll, and definitely before you execute a bank transfer in your SAP system.
You can use the transaction PC_PAYRESULT , which displays all payroll related tables in SAP.
Salient Features of PC_PAYRESULT :-
  • It includes customer wage types and technical wage types.
  • Once you executed a "Start Payroll", payroll results are created for the selected employees.
  • No payroll results are created during a simulation.
  • You can only display payroll results for ONE particular employee at a time.
Step 1) Type PC_PAYRESULT into the SAP transaction code box.

Step 2) Under Selection,

  • Enter the Personnel number of the employee/s  you wish to view pay results.
  • Enter the date you wish to view all results from
Step 3) Hit Enter Key

Step 4) In the Personnel Numbers Selected section

  • Click on the personnel number for which you want to see payroll results

In the Overview of Payroll Results section, you can now see all payroll runs that have been executed for this employee, including any payroll run caused by retroactive Accounting and off-cycle payroll processing.
Step 5) Double click on the Payroll results line Item for which you want to  view the  tables

Step 6) Double click on the payroll program table you want to view (i.e., RT, RT_, CRT, BT, etc.).

Step 7) The selected payroll program table for that particular payroll run will now be displayed.

How to Delete Payroll Results in SAP: PU01

You may come across scenarios which require you to delete Payroll results. For example , you have accidentally run off cycle payment for an employee. The following procedure will delete the lastest payroll result for an employee from the SAP system provided payroll has not been posted to GL account yet.
Step 1) In the SAP command prompt Enter transaction PU01
Step 2) Enter Employee Personnel Number. Click Execute.

Step 3) Highlight the payroll results . Click Execute.

Step 4) You will get a confirmation message that the last payroll results were successfully deleted.
You can also use the PROGRAM - RPUDEL20 to delete multiple payroll results of many a employees at the same time.

Introduction to SAP QM

SAP is an enterprise-wide Business Software Package designed to integrate each area of a business....

What is Off Cycle Payroll? SAP IT267

Off-cycle Payroll runs are used to make payments outside the regular payroll run like one time bonuses.   ThePayroll Control Record needs to be in the Exit Payroll stage, and the off cycle run  MUST be executed after the pay date of the regular payroll run.
For example, if the current payroll period is from 01.07.2010 and 31.07.2010, and the pay date is 20.07.2010, then you can execute off-cycle payroll runs between 21.07.2010 and the date you release the Payroll Control Record for the next payroll run.
There are 3 main types of off-cycle payroll run in SAP:
  • Off-Cycle Bonus Payment (Type A):  Considered to be one-off bonus payment, it can also be used to reimburse employees for expense claims.  Data is entered via infotype 0267 (Additional Off-Cycle Payments).  When executing a "Start Payroll", you need to enter the "Reason for Payroll" field according to the desired calculation type. 

  • Off-Cycle Correction Accounting (Type B): Considered to be adjustment runs, it is used for late overtime or anything that did not make it into the regular payroll run.  Data is entered just like a regular payroll run (i.e., IT2001, IT2010, IT0014, IT0015). When executing a "Start Payroll", you need to enter the "Reason for Payroll" field with the corresponding reason type.

  • Off-Cycle Christmas Bonus Payment or SAC (Type S):  Christmas Bonus (SAC) can be paid with the regular payments run (June and December) or on a special Payroll run before the regular one. Data is calculated automatically by the system, based on the payment date and the configuration in tables T511K and V_T7AR75.
Lets consider Off Cycle Payment Type A-
STEP 1) Create IT267
Go to Transaction PA30
  1. Enter a Pernr
  2. Select Infotype 267
  3. Click Create

  1. Wage Type
  2. Amount
  3. Payment Date for the Offcycle Run -(the day offcycle payment will credited in employees bank account)
  4. Offcycle Reason
  5. Click Save

STEP 2) Run Off Cycle Payroll
In Payroll Accounting program ,Enter
  1. Payroll Area
  2. Pernr
  3. Offcyle Reason
  4. Offcycle Type and Date
  5. Payroll Schema
  6. Click Execute

Check the results

Once you have executed an off-cycle payroll run, you also need to:
  • Execute an off-cycle bank transfer.
  • Post off-cycle results to GL
The process is similar to that of regular payroll run in SAP

How to Audit Payroll in SAP: RPUAUD00

You can you the SAP program - RPUAUD00 to determine changes made in Master Data
Step 1) While in SAP Transaction SE38

  1. Step 2) Enter Program Name - RPUAUD00
  2. Step 3) Click Execute
How to Audit Payroll in SAP: RPUAUD00
Step 4) In the next screen, select the type of document you want to display-

How to Audit Payroll in SAP: RPUAUD00
  • Long-term document(recommended)
Long-term documents are used for revision purposes. Changes made to the infotype are stored in the database or can be archived. Long texts are stored until they are deleted. The archiving object is called PA_LDOC.

  • Short-term document
Short-terms documents are stored in the database. Short-term documents are evaluated differently to long-term documents - short-term documents are evaluated according to date and time.
Step 5) Next,Select the Transaction Class as Master Data
How to Audit Payroll in SAP: RPUAUD00
HR transactions are divided into different transaction classes such as
A - HR Master Data (Administration) - Data stored in tables PAxxxx (where xxxx = SAP Infotype Number)
B - Applicant Data - Data stored in table PBxxx (where xxxx = SAP Infotype Number)
Step 6) Enter the Selection Criteria -
How to Audit Payroll in SAP: RPUAUD00
Hint:- Enter SAP user ID in the Changed By field to determine changes made by a particular user to an employee
Step 7) Select the Output Options and click Execute

How to Audit Payroll in SAP: RPUAUD00
Step 8) The next screen gives changed made to the employee.
How to Audit Payroll in SAP: RPUAUD00
This process is very useful for Payroll Regression. If there any pernrs in mis-compare , and you are not sure if the difference is genuine or due to some changes in master data you made , you can execute this report and audit the master data changes.


  1. The blog is good enough I again n again read this.payroll service in Toronto

  2. Personally I think overjoyed I discovered the blogs.

    Accountants in Toronto

  3. You make so many great points here that I read your article a couple of times. Your views are in accordance with my own for the most part. This is great content for your readers. Payroll Software in India