In this post, I’d like to outline a high-level architecture of an intelligent payroll solution which nothing prevents from being implemented just now.
Indeed, the payroll of the future might be much closer than we think. Payroll professionals can leverage AI-powered automated validations that resemble human checks and can predict the value of a wage type, and find anomalies using payroll history and interconnections in data.
It obviously takes time to understand, select, and adopt new technologies. But what if everything you need is already part of your landscape and the question is just a few efforts to get a real AI helper for your payroll solution?
There are a set of template validation rules delivered as a part of the Rapid Deployment Solution for PCC, providing a nicely written framework of classes.
I believe most of the PCC implementations end up with copying and modifying the RDS code.
It starts with a rule for a gross greater than the given value, e.g., 10K. Another one for a bonus greater than 7K. Then, a rule if a specific wagetype is less than a given fixed value.
And so on and so forth for every wage type to be checked.
Tons of code.
Then, it’s time for options. What if this employee is eligible for such a bonus this month but not in any other time of the year? A hardcode with checks on the period comes up. And what if an employee is always getting very small amount as a personnel number is working in another country, and in the current payroll is just offsetting taxes. Again, the task is declared and not being an issue for a good developer, a code is updated with the check vs enterprise/employee structure, etc.
As a result, the code in the validation rules is repeated and the overall combined logic of all the validations can become unclear.
I heard a number about more than 80 validation rules for a customer and I don’t think that this is a limit.
I can hardly imagine how to maintain such a number of developments.
To be honest, I feel a bit sorry for such a nice framework like PCC converting into a heap of unstructured pieces of code not connected with each other.
Consulting partners try to ease customers’ burden by offering some configurable frameworks for checks and more flexibility. We did not stay on the sidelines with our pre-configured ITertop Swift Start Package for PCC with configurable checks directly in production by users per country and payroll area.
But what if validation rules can be smarter?
A single ML-powered validation rule is able to detect the «unusualness» of all the wage type values automatically in almost the same way a human does.
For example, if a bonus is quarterly, the system will understand the periodicity from the payment history and will expect the value to be zero in one period and a certain amount in another.
Or If an employee has a relatively high or low wage type value, but it’s usual for the personnel number from the historical perspective, the system won’t alert that.
Based on the dependencies (correlations) between wage types, it is expected that payment goes up if a time worked goes up, too.
And all of that can be made without an initial configuration as the model trains itself on the historical payroll, and that’s great from the double verification perspective as also allows to check vs configuration issues like forgotten cumulations, missing wagetypes, broken absence valuations, etc.
Under the hood
Basically, ML is the process of training a «model», to make predictions using a data set. HR/payroll data series are great input for a regression analysis problem which is a supervised learning task, estimating relationships between values.
As far as it’s about fast analysis of huge amounts of data, we need to have an in-memory database where to keep the payroll data and scripting language libraries to work in that.
With SAP Payroll Control Center either for on-premise or cloud and HANA, you can surprisingly realize you are «all set».
With Side-by-Side declustering, all the payroll runs created in Payroll Control Center are kept in HANA instance and easily accessible in validation rules allowing data for PAL and APL Machine Learning libraries in HANA.
Going further, with SAP HCM for S/4HANA, Master Data is also going to be available directly in HANA bringing even more AI power.
Just to show how good a simple single call of Seasonal Autoregressive Integrated Moving Average function can predict a gross of a personnel number. It’s a chart from the Python notebook for IDES personnel number 1039. For a real application, the model should be more tailored, at least it would be necessary to analyze wagetypes interconnections add trends for salary increases.
If start boosting the payroll with PCC and Machine Learning now, the first working solution might be ready by the year-end reconciliation, bringing joy to New Year’s 🙂
If you have any questions, being a customer, partner, a researcher, or have any other interest, just let me know how I can help.