Telegram channel about accounting and HR outsourcing for those who want transparent, manageable business processes
We share case studies, explain legislative changes and show how automation and outsourcing help businesses grow.
Some automation tasks cannot be solved with a standard implementation. That happens when many variables have to be taken into account: non-standard calculations, several systems and providers, data in different databases and legal nuances. To make it all work, you need to understand how the business processes in a particular company are structured and to allow for technical constraints.
One such case is a project for an international company that develops systems for the construction and furniture industries. We had already provided payroll and HR records services to the client, which is partly why, when the task of automating a non-standard bonus programme for external installers arose, it was entrusted to us. Below we explain how we did it.
The company produces windows, furniture and components. One of its key sales channels is partner installers who offer the products directly to customers. The installers have their own bonus programme: when a customer buys a product, the installer receives a reward.
The company's bonus model is more complex than usual. Most bonus programmes pay a fixed percentage of sales. This company takes into account the total value of goods sold, the sales territory, the installer's certification and other parameters. Such a loyalty programme helps focus partners' efforts on developing the product lines the company needs rather than on selling the most profitable items.
The automation of calculating and displaying bonuses was implemented in the Pradata (SPOT2D) system and other systems. The task was to set up integration of these systems with 1C: develop an extension for 1C that collects data from external systems, matches it automatically, calculates bonuses and sends the finished results back.
What had to be taken into account:
“When working on this project we had to understand precisely which payments were being processed, who acted as the tax agent and how the documents should be prepared. In other words, it required a combination of deep financial and technological expertise and a clear understanding of all the HR and tax nuances. That is why implementation projects at UCMS Group always involve IT, HR and accounting specialists working together,” says a 1C programming consultant.
At the first stage we worked out how the current bonus calculation scheme was structured and which data was involved in the calculations. Standard solutions were not suitable here: we had to adapt to the client's real processes and their specifics. Moreover, this project was the first time we had encountered the Pradata system, which is usually used in distribution.
“If I think of the unique characteristics and tasks of this project, we ran into the problem of regular price changes for the client's products.
Prices are one of the factors in calculating the final bonus. Their changes meant that the system should hold fewer fixed values and load the data from other sources. At the same time the information in those sources had to be updated regularly so that the system calculated bonuses correctly,” says a 1C programming consultant.
The existing systems used for bonus calculation were supported by other providers. We had no direct access to them, so some processes had to be agreed separately, which increased the implementation time.
We also encountered technical limitations of the external APIs. They provided data only for fixed periods and did not allow the necessary history to be requested without manual intervention.
→ Automatic calculation and withholding of PIT
The company paid funds to third parties, so a separate customisation was needed to withhold 13% PIT correctly. This is standard functionality in payroll, but here the logic had to be applied to bonus payments.
→ A flexible bonus expiry mechanism
A complex bonus expiry logic was implemented: 90 days if the installer did not withdraw the funds. Each withdrawal request extended the period by 14 days. Even if that request was not fulfilled, the system kept the bonuses.
→ Publishing its own API
So that installers could see up-to-date information about their bonuses in their self-service portals, we developed and published our own API. It now provides data on current accruals and their history.
→ Multi-stage updating of sales data
We receive sales data daily, along with adjustments for the previous 7, 10 and 14 days. This subsystem helps identify and correct discrepancies promptly, for example those related to product returns.
→ Manual inventories
Those responsible for the system can run an inventory manually at any time and get data on installers. Data can be exported for specific installers or for all of them at once.
In February 2023 the system went into active operation: all payments related to the installer bonus system now go through it. It currently has 3,000 registered participants.
Every month the system processes sales for more than a thousand items and generates around 300 payment orders for bonus payments. This requires attention and control: you need to make sure all data is transferred correctly.
Initially we took that control on ourselves: our specialists monitored the system's results in full and tracked every transaction. Gradually we stepped back from controlling the system. Today only one person from UCMS Group consulting works on the project, handling support tasks.
The client received a fully automated calculation of rewards for partner installers. The system helped reduce effort and minimise manual operations in calculations and payments.
Key project outcomes:
→ Non-standard methodological and technical tasks were solved.A complex multi-factor bonus calculation, integration with the client's distributed IT infrastructure and the accounting nuances of withholding PIT from payments to third parties were successfully worked through and implemented.
→ The system handles large volumes of data efficiently.Every month it processes 300 payments across a base of 3,000 programme participants.