Learn how to calculate the hourly rate based on union agreements, positions, or premiums with the extra-pay indicator functionality in SAP payroll. See how these various options can be used and customized in SAP payroll to calculate and process the hourly payments of the employees based on client requirements.
Key Concept
There are three primary ways to calculate how to pay hourly employees: union agreements, position-based differential payments, and premium rates. Hourly employees are paid at a rate based either on a fixed hourly rate as per a union agreement (pay scales) or at an hourly rate that is set by a particular position. In certain situations hourly employees are also paid a premium (an extra amount or bonus) in addition to the regular hourly rate (this extra payment is either based on company policy or the nature of the work done).
Many companies have hourly employees in addition to salaried employees. I describe some useful methods for companies and users who pay their hourly employees according to union agreements, position-based differential payments, or premium rates to follow. These methods allow the users to pay the employees accurately, efficiently, and promptly with little or no manual intervention.
Employees’ hourly payment rates are usually based on three parameters: union agreements, premium rates, and position-based differential payments. There is also one other method, albeit used infrequently, for processing employees’ differential payments: using extra-pay indicators. I show you how to calculate hourly rates based on union agreements, premiums, or positions, and with the extra-pay indicator functionality in SAP payroll. Learning how to customize these options and use them to calculate these payments is very useful for payroll and business users alike.
Many payroll users design custom payroll functions in the payroll schema to calculate and process the hourly rate based on the positions’ hourly rates or union agreements in a very hasty and disorganized manner. By doing so, they miss out on leveraging the best methods available in SAP’s payroll solution. I explain the different options available in standard SAP payroll to meet these requirements. These easy-to-follow steps reduce the cost and effort of SAP payroll implementations by using standard SAP functionality as much as possible. They also help reduce the post go-live maintenance cost and effort. Using the following scenarios as illustration, I show you how to correctly configure and process these hourly payments.
Union Agreement Payments
A union agreement specifies the hourly rate of employees based on the union to which they belong. The unions are guided by the nature of the work that a group of employees does (the nature of their job, e.g., a teachers’ or auto workers’ union) or the geographical location of the operations of a company (e.g., the California Signal Union [rail industry] or the Alaska Union [oil industry]). These types of union agreements are commonly found in the rail, transport, retail, and manufacturing industries. In the SAP payroll system, pay-scale types can be treated as unions. Each union has a set of hourly rates in the form of pay-scale groups and levels. The agreements signed with the unions are legally binding for the employer and the rates agreed upon as per the union agreements are paid to the unionized employees.
Union Agreement Payment Method Prerequisites
There are three main prerequisites for this type of payment:
- Pay-scale types (unions) need to be defined in the table V_T510A, and at least one pay-scale area (the geographical location where a union agreement is valid) needs to be defined in table V_T510G.
- The hourly rate for the pay-scale data (a combination of the pay-scale type [union], pay-scale area, job name [pay-scale group], and pay-scale levels [grades]) within the same job need to be defined as shown in table V_T510 (Figure 1).
- Employees need to be assigned to a union in infotype 0008 (basic pay) as shown in Figure 2.

Figure 1
Define pay-scale data for employees

Figure 2
Assign employees to a union in infotype 008
Primary Hourly Rate Payments
The rate maintained in infotype 0008 is the employee’s primary hourly rate according to the agreed-upon rate in their union assignment. Unless specified otherwise on any time record, the employee is paid based on the rate as maintained in the basic pay record.
Alternate Payments Rate
On a given day an employee might do a different job that is paid at a higher rate or a lower rate for X number of hours. In this instance, the employee has to be paid correctly according to the rate for which a particular job is paid, based on the union agreement. The rate at which the employee is paid for this different job is called the alternate payment rate. This rate is also sometimes called a differential payment rate.
For example, in Figure 3, this employee has worked on different jobs within the same union on a particular day for a certain number of hours.

Figure 3
Assign an alternate payment rate for an employee for X number of hours on each time record
In this example, on a given day (02/06/2013) the employee has worked for 12 hours. Out of these 12 hours he has worked his original job for four hours, another job for the next four hours, and two other different jobs for two hours each. Each job (pay-scale group) has a different hourly rate as per the union agreement. The PS (pay-scale) group name (job) is entered on each time record. If the pay-scale group is not recorded on any time record, then those hours are paid based on the employee’s primary rate as per infotype 0008. When the time (Cross-Application Time Sheet [CATS]) data is transferred, it is transferred to infotype 2002 (Attendances) and 2001(Absences). The pay-scale group on the time records is updated on the transfer from CATS into infotype 2002 on each time record (Figure 4).

Figure 4
Update the employee pay-scale group on the time records
The time and pay-scale data can be recorded in various ways in the SAP system, such as employee self-service (ESS) or CATS, via a custom upload program, or it can be interfaced with any third-party tool.
Time Evaluation
When the time valuation is run using transaction code PT60, the time records and the pay-scale data are stored in the alternate payment (ALP) table in the time evaluation results, cluster B2 (Figure 5).

Figure 5
Display time record entries with AL indicator in table ALP
Double-click any entry in Figure 5 to display the details for that field (Figure 6).

Figure 6
Display ALP data (pay-scale data) on a time record
The time wage types and the ALP indicators in the time evaluation results are shown in Figure 7. The link between the time records (wage types) and the ALP indicators is the AL indicator (Figure 7). The AL column in the table with numeric numbers or alphanumeric numbers indicates that a particular time record has an alternate payment indicator. The records with the AL indicator 00 are paid according to the employee’s primary hourly rate maintained in infotype 0008 (basic pay), as shown in Figure 2.

Figure 7
Display of ALP indicator on each time wage type (time record)
Note
You need to customize the time schema to generate the time wage type for the A/A types based on the company requirements.
The payroll schema X000 reads the time wage types from cluster B2 through subschema XT00. The PALP function reads the entries from table ALP, and rule X012 processes the AL pointers for each time record. Rule X212 within rule X012 processes table T510 and reads the rate for each pay-scale group. Rule X212 also creates valuation bases (hourly rates for each time record) with specific pay-scale rates and places them in the output table (Figure 8).

Figure 8
Display of rule X012 with different valuation bases
The personnel calculation rule (PCR) for processing the rate from table T510 for the pay-scale data is shown in Figure 9.

Figure 9
The PCR processing the table T510 rate based on the ALP data on the time record
The output from function PALP, as well as PCRs X012 and X212, is displayed in Figure 10.

Figure 10
Function PALP output
Each time record with a table ALP indicator and a separate hourly rate (valuation basis) is displayed in the table in Figure 10.
The Final Output for Hourly Payments Based on Union Agreements
PCR X015 multiplies the number of hours with the hourly rate (as calculated by rule X212) and the valuation base as configured for the wage types in table V_512W_B. Rule X015 then writes the final output (Figure 11). The valuation base in this table for the rate (RTE) field (GVPRO) determines at what percentage a wage type is to be paid (e.g., 100 percent or 150 percent).

Figure 11
Display of the log for PCR X015
In Figure 11, double-click IT in the output table. In the next screen (Figure 12) a log displays the final amount for each time record along with the hourly rate and the number of hours on each record.

Figure 12
Display of the data in the log for the IT table
The final details, such as wage type and amount, are updated in table RT in payroll cluster RU by rule X020 based on the processing class 3 specifications (Figure 13).

Figure 13
Display of time records in the RT table in the payroll results (payroll cluster)
The Advantages of the Union Agreement Payment Method
This method of payment offers a stable, efficient payment solution for paying hourly employees. The two main advantages of using this method are:
- The contractual union agreements that govern employees’ day-to-day payment processing are based on the actual jobs done.
- On any day when employees perform multiple jobs, they are paid at the agreed-upon hourly rate of those jobs without having to make changes to the employees’ master records on a daily basis.
The Disadvantages of the Union Agreement Payment Method
The two main disadvantages of this method are:
- Some employers prefer that the employees or supervisor do not get to see the hourly rate of the pay-scale groups when entering the time data.
- The standard SAP system does not allow users to choose any jobs (pay-scale group) outside the union as this is controlled by the employee subgroup grouping for Collective Agreement Provision (CAP) in table T510 and the primary employee union assignment in infotype 0008 (basic pay). This limitation can be overcome, however, with custom development in the user exit when the time is recorded.
Position-Based Hourly Payments
Hourly employees are paid based on the hourly rate for the position that the employee has worked or has spent a number of hours working on any given day. Hourly rates are also determined by the union agreements or any other statutory requirements based on the business type. On a given day many employees may work different positions for a certain number of hours. This is very common, for example, in the mining, transportation, and oil and gas industries.
If the change of position happens for a longer time, then this can be managed via the master data changes in infotypes 0001 and 0008. If, however, the employee does the work for another position for only a few hours a day, it is not possible to manage this change via master data changes. In this case, this change has to be captured at the time-recording level. In other words, employees are assigned to a primary position as part of their organization assignment.
This primary position assignment is used to derive the employees’ regular hourly rate, which is applicable for paying the regular working hours, overtime, or absences. Unless employees record their time against some other position (called an alternate position), they are paid based on the primary position rate. When employees record their time data against an alternate position, they have to be paid accordingly. Because each position carries a different hourly rate, the time records along with the position numbers have to be recorded using the time sheet or directly in the time management infotypes.
The position number on the time record can be recorded using various tools in the SAP system such as CATS, self-service applications, a custom upload program, or a bespoke program. Data can also be interfaced from any time-recording tool.
Position-Based Hourly Payment Method Prerequisites
The prerequisites for making position-based differential payments are as follows.
In this method for position-based hourly payments, employees are always assigned to a primary position in infotype 0001 (Figure 14), and the primary hourly rate is maintained in infotype 0008 based on the position in infotype 0001 (Figure 16). Unless specified on the time record separately, employees are paid based on the primary position rate. The hourly rate in infotype 0008 is driven by the hourly rate stored on the position in infotype 1005 (planned compensation on). This can also be maintained on the job (which is assigned to the position) in infotype 1005 (Figure 15). Infotype 1005 has direct integration with the pay-scale data maintained in table V_t510 (Figure 15).

Figure 14
Assignment of an employee to a position in infotype 0001

Figure 15
Infotype 1005 (planned compensation at the position or pay-scale data on the position)

Figure 16
Assignment of employee to a basic rate in infotype 0008
Pay-Scale Data for Position-Based Hourly Payments
Pay-scale data as (as explained earlier) has to be configured based on the business requirements in the table V_T510 sample entries (Figure 17) in the view V_t510 (Figure 18).

Figure 17
Display of pay-scale data

Figure 18
Display of pay-scale data with pay-scale levels
Position Assignment to the Pay-Scale Data Link to a Time Wage Type
The position needs to be assigned to the pay-scale data in table T528B (Figure 19), and a wage type (time wage type), which is paid at 100 percent of the hourly rate, needs to be assigned to a position in table V_T528C (Figure 20). Function PALP in the payroll schema checks this table assignment. Therefore, this is the most important configuration step. Positions automatically are updated in table T528B if the integration between Organizational Management (OM) and Personnel Administration (PA) is active when the positions are created in OM. Based on the pay-scale data and the wage type, a position-specific hourly rate is calculated and then is stored in the valuation bases /001 and /0002.

Figure 19
Display pay-scale data in table V_T528B

Figure 20
Wage type assignment to a position in table V_T528C
The position details on the time records can be recorded via a time sheet or directly in the time management infotypes. The time data also can be captured using third-party tools and can be interfaced with the SAP system. The example in Figure 21 is done using CATS.

Figure 21
Time records with position capturing using CATS
Processing of Position-Based Hourly Payments
Now I explain how the processing is done in payroll.
The test employee has booked his time against different positions on 01/07, 01/08, 01/09, and 01/10. Each position pays a different hourly rate. The positions 30000843, 30000825, and 30000850 are paid at these hourly rates, respectively:
- Position 30000843 – $80.00 per hour
- Position 30000825 – $29.95 per hour
- Position 30000850 – $80.00 per hour (a combination of tables T528B and V_T528C_B)
Sample entries are shown in Figures 22 and 23.

Figure 22
Display pay-scale data on position from table T528B

Figure 23
Display of the of the hourly rate for a wage type on a position level in table V_T528C_B
The time evaluation results for the time entries are shown in Figure 24. The position is stored on the time record in the table ALP indicator. The AL = Assignment for ALP indicator is the link between the time wage types and the positions. If you double-click any AL indicator in Figure 24, it displays the position number on the time record (Figure 25).

Figure 24
Time records display in table ALP from the time results (cluster B2)
Table ALP from cluster B2 is shown in Figure 25 (one sample record).

Figure 25
Table ALP for cluster B2
The processing of the hourly rate as per the hourly rate stored on the position in payroll is displayed in Figure 26.

Figure 26
Display of a payroll log for an employee
Processing related to the hourly rate calculation is processed by subschema XT00 in the main payroll schema X000 (Figure 27).

Figure 27
Display of the XT00 subschema start loop in the payroll schema log
The block in which the actual calculation happens in the payroll schema is shown in Figure 28.

Figure 28
The block in which the position-based payments are processed in subschema XT00
Function PALP imports the ALP table. For each time wage type (record) that has an ALP position on it, function PALP looks for the same position in table V_528B_C for the alternate hourly rate and checks the hourly rate of the position based on the pay-scale data via PCR X012. PCR X012, in turn, calls the PCRs X112, X212, and X312.
PCR X112 reads the position (PLANS) from the ALP table and compares it with the number on the wage type. It then creates the hourly rates and stores them in /0001 based on the date maintained in table V_t528B_C and the data configured in table T510. For each time record with an ALP entry there is one /001 wage type with the relevant hourly rate. These PCRs can be customized if there are any other client-specific requirements. Rule X012 has been copied into /012 (Figure 29).

Figure 29
Display the customized PCR X012
The final output, the hourly rate for each time record with a table ALP entry (position on time record), is shown in Figure 30.

Figure 30
Hourly rate for each time record with an ALP indicator (the output of PCR X012)
The primary hourly rate from infotype 0008 is also stored in the form of valuation bases /001 and /002 (Figure 30). The valuation bases without an Assign: AltPay Amount indicator assigned to them (Figure 30) are the primary hourly rates from infotype 0008. All the time wage types without a table ALP indicator are paid at this rate.
In the subschema XT00 of the payroll schema, function ZLIT imports and processes all the time wage types, including the number of hours from table ZL, and assigns the hourly rate indicators stored in the valuation bases /001 and /002 for further processing.
PCR X015 does the final calculation of the amounts based on the hourly rates. This calculation is based on the valuation bases set in the table V_512W_B (Figure 31). This table determines the percentage that a wage type is to be paid (e.g., based on 100 percent or 150 percent of the hourly rate, for example), based on the business requirements.

Figure 31
Display the valuation base of a wage type from V_t512W_B for PCR X015

Figure 32
Display of hourly rates based on table ALP rates
Final Output Rule for the Position-Based Hourly Payment Method
In my example, the employee has booked three hours of overtime using a position that is paid at $80 per hour in CATS. The overtime wage type is paid at 150 percent of the hourly rate of the position (Figure 33), which is $120 per hour, against the wage type 2003 (last entry).

Figure 33
Position-based payment method final output (PCR X015 output)
Advantages of the Position-Based Hourly Payment Method
There are three distinct advantages to using this method:
- It gives users the flexibility to substitute the positions for day-to-day operations
- It overcomes the limitations of the hourly rates defined based on union agreements
- It ensures that employees are paid correctly if they perform different jobs for X number hours on any day
Disadvantages of the Position-Based Hourly Payment Method
There is one limitation to using this method. The data maintenance of the pay-scale data on the positions in table V_t528_C is very cumbersome if large numbers of employees are affected. In this instance, a simple custom program is required to update this table based on infotype 1005 (planned compensation) and table V_T510 whenever a new position is created or the existing position is delimited.
Differential Payments Using Premiums
A premium is an additional rate that is paid to employees in addition to their regular hourly rate. This is guided by the nature of the work that an employee does (for example, especially dangerous or skilled labor). Premiums are also sometimes determined based on the shift time of the employees’ work schedules. Employees working on a late shift may be paid a premium rate that is in in addition to the regular hourly rate. This method is often used in companies to process differential payments. This can be done in one of three ways.
Processing Premium Payments Based on Personnel Subarea Groupings
The first one is done by creating premium rates based on the personnel subarea groupings. The premium number and rates are configured in table V_T510P. The premiums configured in this table are recorded on each time record. The time evaluation program creates a premium indicator PRAKZ on each time record (time wage type). The payroll schema reads this indicator for each time wage type and multiplies the hourly rate with the premium rate, in addition to multiplying it by the regular hourly rate. This process happens in the subschema XT00 of the main payroll schema X000. The PCRs XALP and XALQ do the actual calculation.
The premiums are configured in table T510P as shown in Figure 34.

Figure 34
Display of premiums in table T510P
Premiums have to be recorded on the time records (Figure 35).

Figure 35
Recording a premium time record using CATS
After the time premiums are recorded on time records, infotype 2002 is updated upon the transfer of time entries from CATS (Figure 36).

Figure 36
Display of premium on time record in infotype 2002 (sample entry)
The time evaluation program has to be run after this step. The time evaluation program stores the time records with premiums in table ALP and in the time evaluation results (cluster B2) as shown in Figure 37.

Figure 37
Display of time record with a premium (10)
The employee’s hourly rate is stored in infotype 0008 (basic pay), as shown in Figure 38.

Figure 38
Display employee’s hourly rate in infotype 0008
Now when the payroll is run, the premium is added to the hourly rate (Figure 39). In my example, a premium of $10 (Figure 34) is added to an hourly rate of $34 (Figure 38).

Figure 39
Display of final output from the payroll log
Standard function PALP, in the subschema XT00 of payroll schema X000, imports the ALP table. PCRs XALP and XALQ read each time wage type (record) that has an ALP (premium) indicator on it and derives the premium amount from table T510P. They then add this amount to the hourly rate (Figure 40).

Figure 40
Display of PCRs XALP and XALQ
Processing Premium Payments Using Wage Types
Premium payments also can be processed directly in payroll using infotype 2010. The wage types along with the premiums are recorded in this method. This recording of premiums on wage types can be done using CATS or in infotype 2010 (planned remuneration). The records stored in this manner are processed directly by the payroll schema. Payroll function P2010 reads the records in infotype 2010 and PCR X930 processes the premiums on each record (wage type).
The Extra-Pay Indicator Method Option
In addition to processing premium payments based on personnel subarea groupings and on wage types, there is one more option for processing the differential payments in the SAP payroll system. This is the extra-pay indicator functionality. This option is not used very often because it is not suitable for regularly processing the differential payments, which are dynamic by nature. This method is useful only when there is a fixed differential amount paid for a group of employees.
There are two indicators available for using this option: the + sign and the – sign. These indicators are used along with the valuation basis field on time records. If the extra-pay indicator + is recorded on time records with $100 in the valuation basis field of the time record, then payroll processes and calculates the extra $100 for each hour on the time record. This rate is in addition to the hourly rate recorded, using either the position or hourly rate based on the union rate. This process happens in the PCRs X012 and XALP. These PCRs, however, can be customized if required to restrict the extra rates and reduce the rates based on the business requirements.
Narasimha Rao Ghanta
Narasimha Rao Ghanta is part of Accenture’s SAP Human Capital Management group. He has 10 years of experience in SAP ERP HCM’s various sub-modules, including Payroll (US, the UK, Norway, and The Netherlands), Benefits, Time and Attendance with Cross Application Timesheet (CATS), Employee and Manager Self-Services, LMS, PMS, PA, and OM. He also has expertise in SAP Travel Management. Narasimha’s project experience includes implementations, upgrades, and support, and his industry experience includes retail, public utilities, oil and gas, natural resources, consumer goods, and hospitality. He has worked as a solution architect on a variety of SAP ERP HCM projects.
You may contact the author at ghantarao1@gmail.com.
If you have comments about this article or publication, or would like to submit an article idea, please contact the editor.