Skip to Content
Author's profile photo Stephanie Bourgault-Mongeau

Understanding SuccessFactors Pay Scale Structure and its related features

This blog is co-authored by Gobinder Sandhu  ( Memberand Stéphanie Bourgault-Mongeau (


Employees under collective bargaining agreements or hourly employees can be compensated based on a pre-define pay structure following specific rates of remuneration. In SuccessFactors, it is possible to implement the pre-defined remuneration structure using the Pay Scale Structures Objects and auto-generate the employee Pay Component Information accordingly.

The Pay Scale Structure concept is well known in the SAP HCM world but we found few reference of it for SuccessFactors. Hence, in this blog entry, we will define the pay structure objects, explain how to configure the auto-assignment of employee’s compensation based on pay scale structure using business rules and highlight how general increase can be manage using the Adjust Employees’ Compensation to Tariff Changes transaction in SuccessFactors.

This blog entry can be useful for existing and future SuccessFactors implementations providing the understanding around handling Pay Scale Structures in SuccessFactors (and understanding how it can ease the data entry and facilitate data accuracy in the system). Moreover, this blog will mostly be useful for the consultants in explaining how to achieve Pay Scale Structures configuration in SuccessFactors in detail.

Pay Scales versus Pay Grade and Pay Range

Before we dive in into Pay Scale Structures, we want to state that Pay Scales are not to be mistaken with Pay grade or Pay Ranges.

Pay Grade Structure are defined together with pay or salary ranges and frequency, which determines the pay to the salaried employee placed on a particular job or function. The pay range will have minimum, maximum and mid or reference value as well assigned with the pay frequency.

A Pay Grade structure thus will have a pay grade, pay range and frequency
Pay Scale Structure are defined together with pay scale type, area, group and level. The pay scale defines pay rate based on the skill, area of work, time spent on a particular job, generally in a unionised environment.
While the pay grade/ranges are determined by the market pay studies, the pay scale structure is determined as per agreement during collective bargaining with the unions. Both type of structures are used to define the base pay of an employee.

Process for implementing Pay Scale Structure in SuccessFactors Employee Central

The steps to configure and used Pay Scale Structure are:

  1. Configure and Maintain Pay Scale Objects
  2. Configure and Maintain Pay Scale Structure fields on position and employee
  3. Configure the Business Rules to assigned the Pay Components Information on employee based on their Pay Scale Level
  4. Manage General Increases

STEP 1: Pay Scale Objects

Pay Scale related objects are Generic Object in SuccessFactors using the MDF framework. As all MDF object, they are configurable via Configure Object Definition. In this blog, we will uses screenshots of the standard configuration of these objects but keep in mind that it is possible to add custom fields according the organizational needs.

Pay Scale Structure Relationships

Pay Scale Type:

Pay Scale Type is usually used to define a the type of collective agreement. The field can be used to clearly differentiate between different collective agreements within an organisation.
Example of Pay Scale Type:

For integrating with SAP Payroll: Keep in mind that for the integrations with the SAP payroll, the code for pay scale type should be restricted to 2 alphanumeric characters.

Pay Scale Area:

Pay Scale Area is usually used to define the applicability of the pay scale type by geographical area or by any specified criteria.
Example of Pay Scale Area:

For integrating with SAP Payroll: Keep in mind that for the integrations with the SAP payroll, the code for pay scale area should be restricted to 2 alphanumeric characters.

Pay Scale Group:

Pay Scale Group is linked to a pay scale type and pay scale area and is used to group the pay scale levels of each specific job that follows a pay scale structure in the organization.
Example of Pay Scale Group:

For integrating with SAP Payroll: Keep in mind that for the integrations with the SAP payroll, the code for pay scale group should be restricted to 8 alphanumeric characters.

Pay Scale Level:

Pay Scale Level are multiple “pay steps” attached to pay scale groups that defines for each step the pay component(s) their values for employees being in a level.
Example of Pay Scale Level:

For integrating with SAP: Keep in mind that for the integrations with the SAP payroll, the code for pay scale level should be restricted to 2 alphanumeric characters, preferably a numeric value so that step increase process as well as pay scale reclassification is well supported.

STEP 2: Assigning the Pay Scale Objects to Positions and Employees

Once, the Pay Scale Structure is implemented, it is possible to configure the Pay Scale Structure fields on Position and Employee’s Job Information. Please notes that, in the position object, these field are not standard fields, therefore custom-fields referring to the pay scale generic objects are needed. Here is what it looks like once configured:

Pay Scale Structure on the Position Object

Pay Scale Structure on the employee’s Job Information

STEP 3: Automatic Assignment of Employee’s Pay Component based on Pay Scale

One of the best value in maintaining the company Pay Scale Structure in SuccessFactors is that the user doing the data entry will no longer have to enter the Pay Component information in the system. Using Business Rules, it is possible to create employee’s Pay Component automatically when Hiring or updating an employee’s Pay Scale Level. Here how it works for the end user:

1. Create Pay Scale Assignment on Employee Hire Rule

As in this example, during the new hire process, once getting to the Compensation Information screen, the Pay Component gets pre-filled with the Pay Scale Structures based on the employee’s Job Information Pay Scale Level, no need for data entry:

Check out a business rules example to set this up in the system at the end of the article. This rule should be set on-Init of the Recurring Pay Component section in the Succession Data Model. Note that rule will vary based on the customer’s requirements.

2. Create Pay Scale Assignment on Employee Update Rule

Same thing happens when an employee Pay Scale Level gets changes. There is no need to select Compensation Information during the changes and a business rules will adjust the Pay Component information on-Save. Check out a business rules example to set this up in the system at the end of the article.

Result on Pay Component Information:

STEP 4: Manage General Increases

Managing General Pay Increase using feature – Adjust Employees’ Compensation to Tariff Changes
One great Pay Scales Structure feature in SuccessFactors, is the “Adjust Employees’ Compensation to Tariff Changes” transaction also termed as Manage pay Increases. With this transaction, it is possible to mass change employee’s compensation after a general pay increase.
To see how this works, let’s say, there is a change of a Pay in the new agreement effective as of March 20th 2017 where the employees now makes 25 Euros hourly instead of 20 Euros on a specific pay scale structure. We would insert a record specifying the new amount in the existing Pay Scale Level object effective March 20th 2017:

Then, to update all the employees belonging to this Pay Scale Structure to the new Pay Component Amount, we would run Adjust Employees’ Compensation to Tariff Changes transaction.

This transaction allows you to fetch all the employees that pay components amount should be increased from a specific date. In our example, we would run the Tariff Changes program as of March 15th, 2017. It is possible to build an Employee Group as a filter to limit which employees should be picked up by the Tariff Changes programs and/or limit the changes to employees belonging to a particular Pay Scale Type/Area/Group. In our example, we will select Pay Scale Group G2 as the Pay Scale Level we modified belongs to the G2 Pay Scale Group.

Once, our Tariff Changes run as been set-up, we can run the program in simulation mode or perform the changes using update mode. The system will ask the user to select the event reason to be used and if a log file needs to be generated (log file generation is recommended when running this transaction in order to view all employee changes).

Here how the employee compensation history looks like after running the Tariff Changes program:

Here is an example of the Log file given below:

In order for the Tariff Changes program to work, the following IF statement needs to be added to the Create Pay Scale Assignment on Employee Update rule. (See rule example at the end of article)
This is it for Pay Scale Structure in SuccessFactors. We hope that our blog entry was helpful to the SuccessFactors community in understanding what are Pay Scale Structures and how can we configure them in SuccessFactors.

Stay tune for our future blog entry on how to upgrade Pay Scale Level automatically using Off Event Batch (Also termed as OEB) Cycle rule in SuccessFactors!!


On Hire Rule (On Init of Recurring Pay Component):

On Update of Job Info Rule (on Save of Job Info

Adapting the on Update of Job Info Rule to support general Increase:


Assigned Tags

      You must be Logged on to comment or reply to a post.
      Author's profile photo Shivakumar Muniyappa
      Shivakumar Muniyappa


      Nice article. Really helpful.

      I have query. The Pay Scale Structure in Job Information filters out based on the Country of Registration of the Legal Entity and the Country selected in the Pay Scale Structure objects. This works fine.

      In Position object, since the pay scale structure fields are not standard, custom fields are used. However I have noticed there is no filtering happening in Position object. Could you please let me know how the filtering can be achieved in Position object?

      Author's profile photo Stephanie Bourgault-Mongeau
      Stephanie Bourgault-Mongeau
      Blog Post Author

      Hi Shivakumar,

      Good question.

      I haven't actually had the requirement as my Pay Scale implementation was only for one country. However, I was curious and I went into my demo instance and tried up a couple of things today. I wasn't able to use Field Criteria in position to filter Pay Scale objects based on the Legal Entity country nor add a country Generic Object custom field (which I'm sure you might also have tried). So, I have 3 propositions for you:

      1- Add a relationship in the Pay Scale Type/Area object to Legal Entity. Once, it is done and the data is set up, you will be able use the Field Criteria to have the Pay Scale objects filtered by the position's Legal Entity. This worked fine from what I tested.

      2- Depending on how security is set-up and who manage positions in the org, you might have an option to use permission roles and limit the view on Pay Scale objects for those maintaining position by countries. If it was me, I really wouldn't build a bunch of permissions roles just for that, but if your org is already having by countries kind of permission roles, you might be able leverage the existing roles to achieve the filtering you want.  Do do so, you would need to secure the objects in the Object Definition, and then restrict the Pay Scale Objects by their country field (with the Specify the target population for the other objects sitting in the permissible role).

      3- Create an error Business Rule onSave of position comparing the position's Legal Entity's country to the position's Pay Scale objects country. I don't know your situation but usually the positions "maintainers" and "approbators (if it applies)" knows what they are doing and are trained to select the right data. The rule would just be a security net.

      A 4th option could be to wait and see if SAP makes these fields standard on the position in some future release and replicate the Job Info behaviour! 🙂

      I hope this help,


      Author's profile photo Former Member
      Former Member


      Great piece of work!

      I have a question here, you have explained as to how we should be aligning SF Pay Scale structure with SAP HCM on-premise solution which is good however when it comes to defaulting pay components like 'SAP's wage type model' which in our company is based on Pay grade selection, I am confused how it will fit into SF and also how does indirect valuation works in SF i.e. in our company based on a single wage type 'base wage' the dependent wage type amounts get automatically valuated using indirect valuation modules.

      Your response to this query will be appreciated.

      Author's profile photo Paul Davidson
      Paul Davidson

      Hi Stephanie,

      Thanks for the blog.

      Question on Pay Scale Area - for hourly team members, those working in different locations may have different pay ranges - example pay in Hamburg will differ from pay in Munich or Berlin for the same pay grade.  How can this default if the Pay Grade is assigned at the Job?  How can we use the "General increase" if the change differs by location - to 25 EUR in Munich, 24 EUR in Hamburg and 26 EUR in Berlin?


      Author's profile photo Siddharth Rajora
      Siddharth Rajora


      Excellent Blog , So detailed ! Very helpful


      Author's profile photo Former Member
      Former Member

      Hey Stephanie!

      Thank you for such a great article. Very clear and helpful!


      Kind regards.

      Author's profile photo Former Member
      Former Member

      Is there a way to remove the Code for Pay Scale Group and Level. Is it possible to design in a way where we can have the link only between Pay Scale group and Level and not worry about County, Pay Scale Type and Pay Scale Area?

      Author's profile photo Prashanth Jannapureddy
      Prashanth Jannapureddy

      Excellent blog..Very helpful

      Author's profile photo Natarajan Krishnasamy
      Natarajan Krishnasamy

      Hey Stephanie!,

      This is such a wonderful blog, its really very helpful.. Can you suggest one more option please.

      Which is in case if client want "Pay component" amount manually enter but it should not go lesser than as well greater than the Pay Range Min & Maximum value range. System should throw the below errors in case if its less/more as below:

      Error: The amount is lesser than the Minimum Value of .XXXXX....
      Error: The amount is greater than the Maximum Value of .XXXXX...

      How do we configure and setup in system. Could you please help me to get this please.




      Author's profile photo Amit Gupta
      Amit Gupta

      Very nice and detailed article. It takes lot of efforts to explain the entire concept in such a simple way.

      Author's profile photo Rogerio B R Fernandes
      Rogerio B R Fernandes

      Hi Stephanie,

      Thanks for the explanation. Great Job.

      After executing the functionality "Adjust Employee's Compensation Tariff Changes," we have the event reason and new salary set in the Compensation Information. Is it possible to set up the same event reason in the Job information too?



      Author's profile photo Former Member
      Former Member

      Hi Stephanie!


      Really nice! I have learned a lot by reading your posts.


      I have a question regarding the information you get in the business rule to know the amount of a pay component that I have already--> "Job Information Model. Employment Details Model. Compensation. Amount"

      I can only get a list from that and as a result my rule will not be fine. I would also like to use this part for the indirect evaluation of wage types. I have made some rules to update the amount of the pay components but I am missing to get the info of the amount that I have right now on the pay components.

      I would really appreciate if you could give me a hint about this one.

      Thanks and kind regards,

      Javier Ruiz Gualda