Featured image for How to Build an ERP System from Scratch

// Category: Development

How to Build an ERP System from Scratch

How can we help you?
Yuri Musienko. Business developer
Telegram   WhatsApp
Featured image for How to Build an ERP System from Scratch

According to the report Panorama Consulting Solutions, about 23% of ERP implementations were unsuccessful. The main reasons for the failure are the purchase of an unnecessary ready-made system and inadequate planning. Today we will look at how to avoid these problems with the help of the right approach to the development and implementation of the ERP system from scratch.

Step 1: Define the goals and objectives of the project

Many businessmen miss this step, considering it obvious: "The goal of the building an ERP system is to automate and optimize processes, or make everything work faster and better." That's just not the goal, but wishes. The goal must be defined and clearly outlined in time, for example:

● reduce the time of paperwork by 20% by January;
● reduce the time of registration on the site from 15 to 5 minutes by September;
● reduce the client’s waiting time from an hour to 15 minutes by August.

If we talk about the development and implementation of ERP, then ERP should be thought of as a tool needed to achieve certain tasks that your company faces. Based on this, you first need to think about such tasks and only after you decide what and how the ERP system should do.

You should define such tasks independently or with the help of specialized specialists. If you decide to do it yourself, then the simplest approach is to analyze the competitors and make it like you them, but a little better. SMART-approach will help you with this:

How to Build an ERP System from Scratch

Step 2: Identify and engage interested parties

After you have defined the goals and objectives of custom ERP implementation, inform the persons involved: developers, department heads, management, partners, and others. This is important for two reasons:
  • Firstly, you need to collect the opinions and wishes of everyone who will work with the system (this should be done at an early stage of development).
  • Secondly, in this way you will avoid problems related to the incompatibility of the ERP system with the internal business processes of your company or the company of your partners.
How to Build an ERP System from Scratch business processes
Who can be involved in your business processes.
In the article “Delivering large-scale IT projects on time, on budget, and on value” of the consulting company McKinsey there is an example of how the late notification of those involved led to big problems. It says that the management of a certain bank did not consider it necessary to involve the financial department in the process of upgrading the IT platform, and when it came to deployment, it turned out that the new system did not meet their needs. As a result, the project needed to be completed, which led to a 3-month delay and an increase in the cost of development by $ 8 million.

Step 3: Explore the current state of affairs

ERP-system will do nothing if business processes are chaotic or insufficiently standardized. For example, if you are engaged in retail sales and you do not have a clear algorithm for receiving and sending goods or you have a non-optimal dispatching algorithm, the implementation of ERP will make even more confusion.

Thus, before starting to plan the development of an ERP system from scratch, first conduct an audit of your company's business processes. If something needs to be standardized and / or modernized, do it before starting work on ERP.

How to Build an ERP System from Scratch retail in the USA

The sixth largest retail in the USA failed to enter the Canadian market due to the unsuccessful implementation of the ERP system.

Without doing this, you can share the same fate of the American retailer Target (SuperTarget), which in 2016 was forced to withdraw from the Canadian market after the introduction of the ERP system, that plunged their supply chain into chaos. Target had problems with the confusion of data from suppliers (commonplace in retail), but instead of solving this problem, they conducted an aggressive implementation and building ERP as soon as possible.

Step 4: Help developers understand your business

Developing an ERP system from scratch assumes that it will be created taking into account all the features and needs of a particular business. This means that you must tell all the nuances of your business project manager or, even better, show how your company works from the inside. If you have attracted third-party developers to create ERP, then this is a prerequisite.

In other words, you need to lead developers on scripts:

  • Customer. Demonstrate how the company interacts with customers.
  • Employee. Show what happens behind the scenes of your business: who, what, how and when does.
  • Partner. Demonstrate how banks, retailers, contractors and other partners interact with your company's ecosystem.
A comprehensive study of business processes will help to build ERP system developers to understand the features and specifics of your company: management structure, information flows, tools and points of interaction with customers and partners.

Without this, it is impossible to create a truly efficient and useful platform. How, for example, Avon failed to do this in 2013 during the implementation of the ERP / CRM / eCommerce system, which spent more than $125 million. The direct sales giant did not take into account the needs of customers and partners and in fact complicated their work by creating additional bureaucratic procedures.

Step 5: Determine Your Expectations

After the development team has studied the company, invite all interested parties to the round table and indicate what you expect from the implementation and creation ERP. Then ask everyone to comment on this, so that each participant also identifies their expectations and concerns. During this meeting, you will need to take it all in, filter out and prioritize.

At this stage, it is important to remember that it is impossible to meet the needs of all participants, so it is necessary to strike a balance between the wishes of various parties and the implementation of the project on time and within budget. With the construction of such a balance should help the development team, which will tell you how difficult it is to implement certain functions and tools.

At the end of such a meeting, you should have:

  • a list of roles for various participants in the system, for example, a salesman, storekeeper, marketer, head of department, customer, and trading partner;
  • project implementation phases and priorities.
  • a list of functions that the developing ERP system will have.

To create an ERP system from scratch, you need to divide it into modules and assign specific functions to each module.


ERP system modules. Source.

To simplify this process, we have prepared for you a list of key modules that should be in every ERP system:
  • Finance module. Automate transactions and ensure financial compliance.
  • Sales module. Manage orders, contracts, invoicing, customer communication.
  • Inventory Management Module. Asset database and infrastructure management system.
  • Production module. Keeping production in line with current demand and utilizing the latest technologies.
  • Procurement and purchasing module. Operations related to the procurement of products and materials.
  • Service Module. Controls all aspects of plant operations, making it easier to keep assets in working order.
  • Human Resources Module. Collects information about employees and manages functions such as timekeeping, payroll, and performance appraisal.
We've described common ERP system functions, so you don't have to integrate each and every one. Proceed from the processes you need to optimize in order to create the right list of modules.

Step 6: Decide on a project vision

When you have a preliminary list of functions, you and your development team will get an idea of what the ERP system will look like. Now it is important to combine all these visions into one whole, which is best done with the help of visualization - wireframes.

How to Build an ERP System from Scratch wireframes

An example of visualization using wireframes.

Wireframes provide insight into the interface and data flow. Implement them in the form of a block diagram and a description of what they are needed for and what they do. In this way, you need to visualize all custom ERP usage scenarios, which usually includes a description of the four directions of system implementation.

Human Capital Management (HCM)

By creating an ERP platform from scratch, you can help the personnel department automate and improve a number of labor-intensive processes, such as performance management and compensation, employee performance evaluations, or payroll processing.

How to Build an ERP System from Scratch visualization

An example of visualization of the personnel management interface.

Process Analysis and Planning

ERP are designed to manage the flow of information and their automation, which allows the use of such systems for analysis and planning. To do this, you need to add the appropriate module to the system, which will collect and process data, and then visualize them in the form of tables, graphs and charts. In addition, a calendar can be embedded in the system to create and track various events and tasks.

How to Build an ERP System from Scratch task scheduling interface

An example of visualizing the task scheduling interface.

Inventory Management

The implementing of ERP system will optimize the process of inventory management. Many elements of this process can be automated, and information on the status of stocks will be available to all departments of the company. Thanks to this, it is possible to stabilize inventory levels or, for example, to quickly create special offers (promotions, discounts, sales) for a product that has an expiration date.

How to Build an ERP System from Scratch inventory management interface

An example of visualization of the inventory management interface.

In addition, a good inventory management system will provide an opportunity to collect big data, which will help you understand what is best to sell. Such connections are not always obvious. For example, Walmart, using data from all its stores, analyzed what product is in demand before and after hurricanes. It turned out that the most hurricanes contributed to the sales of strawberry pop-tarts (+ 700%). Why? Nobody knows.

Based on this analysis, Walmart conducted an experiment: the Pop-Tarts were delivered to supermarkets along Highway 95 (along the path of Francis Hurricane 2004) (stocks used to be exhausted quickly). Indeed, these cookies were sold particularly well these days. Now Walmart is using this scheme constantly.

Making report

If the company does not use any ERP-system, reporting can take a lot of time. For example, some companies even allocate additional time for employees specifically for reporting, so that they have time to do it during the working day. In the modern world, this is an archaic way of doing business, since even with the help of the simplest ERP, you can compile all the necessary reports in a few minutes.

How to Build an ERP System from Scratch the report making

An example of interface visualization of the report making.

In advanced user ERP systems created from scratch, you can also realize the possibility of compiling relevant reports. For example, you can use custom filters and statistical tools to compile a report on the effectiveness of an individual employee or a report on the shelf life of dairy products stored in a particular warehouse.

Step 7: Design and Implementation

When all the preparatory stages are completed and you have decided on the vision of the ERP system, you can proceed to coding. But this should be done step by step, that is, first create a MVP and implement it on a limited scale. So you test the concept with minimal risk and minimal money.

General recommendations here are:

  • Development need to be started with the most important functions or even with one function, because first you need to check the concept and only then proceed to additional features and improvements.
  • As a test site, select the department where errors will have the least impact. Usually, a small branch is chosen for this purpose, or, for example, they create a parallel order processing system and openly tell customers that it is operating in test mode. For customers to use the test version, they are offered bonuses and discounts.
  • During testing, collect feedback from all possible sources - from feedback from employees and customers to statistics on the speed of execution of orders and stock stability charts.
The ERP technical development process can involve different aspects depending on the functions, cost and timeframe of the project. However, there are 3 key parameters that you should pay attention to. UI/UX design. UI/UX describes the look and function of your ERP system. The design should be user-friendly and understandable for everyone who uses it. Tools such as Figma, Axure RP and Adobe Photoshop are commonly used at this stage.
Challenges UI/UX design solves. Source.
Technology stack. The technology stack depends on the platform you choose. For example, if you want to build an ERP system from scratch for PC, developers will use Swift and Objective-C for macOS or C++ or C# for Windows. For the web version, JavaScript, Bootstrap, Angular, and Node.js. In addition to the basic components of the technology stack such as programming languages, frameworks, libraries, APIs, and databases, it may include:
  • Artificial intelligence
  • Internet of Things
  • Blockchain
If you find it difficult to choose the right stack, contact a software development company. Experts will analyze your business and make a customized plan to create an ERP system from scratch. Integration of third-party services. Third-party services such as G Suite, Office 365, Jira, and Salesforce are utilized during ERP system development. Integration unifies tools and prevents data duplication.

Step 8: Train the staff to the new system!

When building ERP, management usually forgets to explain to staff the importance of using a new system, assuming that they will automatically abandon the old practices. And in vain. Practice shows that if people are not compelled, they will forget to enter data into the new system and will not use it for communication, planning and reporting.

This is because the brain does not like the new, even if this new is much better than the old. And the older a person is, the stronger is his desire to follow previously acquired habits. In order to understand how strong this desire is, it is enough to recall the elderly who are literally afraid of computers.

To get employees to use the built ERP system, follow these guidelines:

  • Show with concrete examples why the new system is better than the old one. For example, with its help you will make a report in minutes or get information about stocks in two clicks.
  • During training, give not only lectures, but also practical exercises. To form a new skill, actions need to be repeated several dozen times - first under the supervision of a teacher and then independently.
  • Set penalties for late data entry and use of third-party services duplicating the functions of the ERP or CRM system.
  • Financially encourage people who understand the importance of the new system and use it whenever and wherever possible.
In addition to staff training, you also need to spend time and money on promoting a new technology among partners. At a minimum, in order for them to start using the data entry and storage standards you need, and ideally - to switch to your ERP system.

ERP system cost

The time and cost of ERP development depends on the tasks assigned to the company by the contractor. Let's look at the most common requests that come to us.

If your business requires more fine-tuning and management, but you understand that there are many standard processes, then, as a rule, in this case we take our experience and personalize it to suit your requirements. The cost of such work will be from $15,000 to $30,000 and will take up to 2 months of development. In the case when your business has more complex processes and you want to have more details in reports, samples, management and verification of documents, then the development can become more complicated and take up to 3-4 months of intensive work. In this case, the cost will be from $30,000 to $60,000. Complex systems with many modules (user roles, file managers, verifications, digital signatures, access restrictions) may require up to 6-9 months of development and range from $60,000 to $150,000.

As you can see, the price of developing an ERP system depends on your requirements and the functions that need to be implemented.

Our ERP development experience

We are engaged in ERP development of varying complexity. To meet deadlines and get the best results for the least amount of money, we use our experience, ready-made libraries and optimal technologies. This makes it possible to get the result that the client expects.
The advantage of our solutions is flexibility and scalability. At any time, our team can continue working and introduce new features. Below is the design of an ERP system that was implemented for one of the clients.

ERP system

ERP system

ERP system

ERP system

ERP system

A personalized ERP system makes it possible to manage your business more accurately and thereby get maximum efficiency from your processes. You can contact our manager to find out a more accurate cost for developing an ERP system.

How can we help you?

Full name *
Email *
Phone
Your budget
Tell us about your project