Skip to main content

The coding step of Non-Purchase Order (NPO) invoices is the manual task every organization has on its wish list for automation. Assigning the cost of an NPO invoice into the corresponding cost centre, G/L account (General Ledger account) and tax codes is a manual task done by a coder.

This process is in most cases repetitive. Often the same vendor supplies the same kind of NPO services or goods. Meaning the cost coding for all its invoices is the same.

Over the years attempts have been made to use historical data from Vendor Invoice Management (VIM) and SAP tables to figure out the cost coding used for a specific vendor and company code. The system then would propose that for all similar new incoming invoices.

By extracting data from VIM and SAP tables, and applying these data analysis algorithms, the best guess match was in several ways fed back to the VIM flow.

Smart Coding – A hidden feature in VIM

Starting with VIM 7.6 for ECC customers and VIM 20.4 for S/4HANA customers, smart coding has been made available as a standard product feature of VIM.

Smart coding is a scenario suited for machine learning. An algorithm determines which invoice fields provide the best predictions. Based on this model, it delivers different alternatives and their confidence level. If the confidence exceeds the configurable minimum threshold, the step is fully automated. In all other cases, the algorithm presents the alternatives to the user in a dialog box.

Figure 1: Smart coding cost line items enrichment in background – Auto Coding by VIM based on Confidence Indicator

Figure 2: Smart coding cost line items enrichment in foreground – Smart Coding buttin in the DP Indexing screen. New button Smtcoding (Smart Coding) is introduced under the smart coding column in the line items tab of the indexing screen. Clicking the button displays the Smart Coding items Proposal screen. See Fig. 3.

Figure 3: Skipping the coder level in smart coding line automation. In the AFS ID settings configuration, the Skipping coding when using VIM Smart Coding check box is introduced. It allows to skip the coder when DP lines are proposed by smart automation in background.

Fig 4.: Smart Coding screen in VIM Fiori app

VIM Smart Coding can be deployed using two primary models

1: Basic model (VIM 7.6 and above + VIM 20.4 and above)

Based on the combination of company code and supplier, a statistical probability of the possible G/L accounts, cost centres, and WBS (Work Breakdown Structure) elements to be used is predicted. And the possible combinations are then given a confidence level. This can be deployed for both ECC and S/4HANA customers.

Figure 5: VIM Report /OTX/PS302_TRAIN_COD to train the Smart coding model and fill the statistic tables.

Figure 6: VIM transaction /OTX/PS302_TRAIN_DIS displaying  the results

2: Machine learning (PAL) based model (VIM 20.4 and above)

The system proposes G/L accounts, cost centres, and WBS elements based on various input data using a machine learning based classification algorithm, so called “decision trees”. Minimum requirement for this model is an installation of VIM 20.4 on an SAP S/4HANA 1610 system with at least HANA 2.0 SPS 3 with installed PAL library.

Customers who are already using the VIM Auto Coding feature, where the coding information for one line is already pre-defined, should note that in case Auto Coding is set up for a particular vendor, then that takes precedence over any Smart Coding proposal.


Machine Learning: it is only as good as the data it gets fed

As with any machine learning use case, the model for prediction can only get better by getting the right statistical data set and fine tuning the decision tree parameters. You can find more details about the VIM smart coding in the OpenText VIM for SAP Solutions Configuration Guide and the Scenario Guide.

As we learn by doing, there is no better way to see the value for yourself than by trying out this feature.  Incorporating Smart Coding is valuable for you who want to become more automated in your processes. And in a fast-paced enterprise automation