Want your business to run like clockwork? Custom ERP software can help with it. It significantly improves the work of enterprises and startups by automating business processes, enhancing cross-departmental collaboration, providing safe data storage. Keep reading to find out what the other benefits of custom ERP solutions are, what technologies are used to build them, what the core modules of such a system are, and how much it costs.
Custom ERP software is worth implementing whether you’re an enterprise, a medium-sized business, or a startup. There’s a widespread belief that ERP systems require complex workstations, servers, and other costly hardware so that only enterprises can take full advantage of them. However, modern software trends say otherwise. With the growing popularity of SaaS solutions, even small and medium businesses can offer to buy or develop ERP software. Fortunately, the flexibility of such software allows customizing the modules and the overall level of system complexity. So, companies of different sizes will find it helpful. An ERP system for a small company doesn’t have to be as complicated as for an enterprise, but it is still a very efficient tool that can help your business thrive.
Among the advantages of implementing custom ERP software are the automation of numerous processes and the stored information’s accuracy. With the development of ERP systems, people don’t need to deal with manual data entry, which eliminates human errors.
Thus, no matter what the size of your business is. If you’re willing to optimize your business processes, this article is for you. We’ll describe everything you need to know about custom ERP software development.
List of the Content
- What is custom ERP software?
- Custom-built ERP system vs. off-the-shelf solutions?
- Reasons to develop a custom ERP system
- Custom ERP software development process
- ERP development cost
- In conclusion
WHAT IS CUSTOM ERP SOFTWARE?
Let’s start with the definition. ERP stands for enterprise resource planning. An ERP system is a robust tool. Its primary aim is to automate most business processes and make the communication between departments more efficient. There are some more functions that custom ERP software is supposed to do. We’ll look into them in detail later in the article.
An ERP system is like an extensive database where all company’s data is stored and can be easily managed and analyzed. Thus, each department has access to it. Of course, there are roles, permissions, and different access levels. Still, one of the main goals of such a solution is to provide maximum visibility to team members and enhance cross-departmental collaboration.
What Does an ERP System Do?
Numerous business processes are going inside one company, and sometimes it is difficult to control them individually fully and how they interact. The more separate and big different departments are, the more difficult it is to establish an effective workflow. By implementing a custom-built ERP system, you create a coherent ecosystem where all units are connected, and the collaboration between them is as easy as possible. Thus, the main goal of custom ERP development is to unite all business processes within one system and make them operate as a single mechanism.
To achieve this synergy, an ERP system uses modules. Each of them is aimed at improving a specific performance area. Many of them eventually come down to three main categories: human resources, assets, and sales. Thus, the main ERP modules are:
- Human resource management
- Customer relationship management
- Financial management
- Sales and marketing
- Supply chain management
These modules actively interact with each other. For example, the HR component stores information about the list of employees and their vacations. At the same time, payroll, which is a part of the financial management module, takes that data from HR, calculates the amount of hours/days worked, vacations, sick leaves, and enrolls the salary paychecks at the end of the month to the banking system. Another example of modules’ interaction is sales, SCM and manufacturing. They all aim at tracking demand and dealing with logistics. So, the SCM module takes the data about raw materials from manufacturing, coordinates the logistics, and conveys the info to the sales module, which focuses more on delivering the final product to the customers.
You can customize the number of modules whether you’re deploying an out-of-the-box system or building custom ERP software. However, in the last case, you have much broader opportunities in setting up the system according to your specific needs.
Looking for more information about the modules?
What modules are there, how they interact with each other, and which ones are the most necessary?
OFF-THE-SHELF VS. CUSTOM ERP SOFTWARE
When you’ve decided on investing in an ERP system, you need to figure which option to choose: custom ERP software development or buying an out-of-the-box solution. Each option has its pros and cons, so let’s look into them.
Custom development is always a reasonable choice no matter what kind of software we’re talking about. Bespoke solutions invariably win over ready-made ones for numerous reasons. However, it might be pricey, and it is the most common reason why startups and middle-sized businesses turn down this option.
As you know, enterprise resource planning solutions are complex. Thus, deciding to invest in custom ERP software development is a significant step that you should take after thorough consideration. But, to provide you with a clear picture, we’ll discuss both options.
Off-the-shelf ERP system
You can find various ready-made ERP solutions. Many of them had years to establish themselves well on the market. The most popular ones are SAP ERP and Oracle ERP Cloud. In the picture below you can see more information about the market division between the ERP vendors:
Source: Apps Run The World
Although large and trusted companies have developed ready-made ERP systems, their main disadvantage compared to custom ERP solutions is their lack of flexibility. Custom solutions are built from the ground up according to the client’s specific needs, making them superior in this regard. While off-the-shelf ERP systems offer modular structures for inventory, payments, and human resources, they may not cover all requirements, resulting in teams needing to spend time learning and tuning the system. Nevertheless, adjusting an out-of-the-box ERP is still quicker and cheaper than building one from scratch.
Developing ERP systems involves a lot of time spent on discovery, where business analysts determine the necessary modules and features. Although using a pre-built solution saves time during this stage, it results in later adjustments to the system. Deployment is also a concern as smaller companies expect fast deployment, but larger enterprises face complexities with workflow and often need to modify source code and work with APIs.
While ready-made ERPs have their strengths, the number of adjustments and unique relationships can make implementation more expensive and time-consuming than custom ERP development. Additionally, regular maintenance, support, and licensing costs are associated with software products on a subscription model.
Ready-to-use ERP systems offer two pricing models: subscription and one-time license payment. SaaS solutions providers use subscriptions, while on-premise ERP software providers use licenses. Subscription pricing is typically per user per month or year, while the license is a one-time initial payment. While licenses provide ownership of the program, users must address any issues themselves and accept the original version of the software, as licenses do not include support and updates.
One advantage of out-of-the-box ERP software is that users can anticipate its performance, scalability, and technical aspects based on others’ feedback. This information can help businesses make informed decisions about investing in ERP systems. Although the $100 monthly price per user may seem budget-friendly, it can add up quickly, resulting in significant costs for larger companies. In contrast, custom ERP development may have a higher initial cost but is a one-time investment.
To summarize, among the advantages of off-the-shelf ERP systems there are:
- Proven quality
- Community support
- Lower upfront costs
- Relatively fast deployment (in case of small and medium-sized companies)
The drawbacks of ready-to-use systems are:
- Difficult integration for enterprises
- Expensive license
- Little to no customization opportunities
- Excessive functionality, which is not easy to remove
- Lack of specific modules or features
Custom ERP Software
Custom ERP software is undoubtedly the best option while speaking about customization opportunities, performance, and especially scalability. However, the upfront costs may discourage a company from building an ERP system over buying an off-the-shelf one. Let’s see why opting for custom ERP software development is more beneficial in the long run than saving initial costs.
As soon as you’ve decided to develop ERP software over buying it and have chosen a professional team you can trust, you start working with business analysts that will help you form all your requirements.
Already at this stage, you can feel the main benefit of a custom approach – specialists design software specifically for you to fulfill all the needs. By forming a precise list of requirements, you’re solving two problems that ready-made solutions have at once. They are excessive and have insufficient functionality.
Speaking of the development of enterprise resource planning systems, you should be ready to spend considerable time on it. Specialists build software entirely from scratch, and this process is quite time-consuming. Thus, if you’ve already decided that you want to use a custom-built ERP system shortly, consider starting the development right off.
ERP mobile application development takes less time than the primary system, but you should still make time for it while planning In the case of custom ERP solutions, a mobile app contains only the core functionality that users may need even when they’re not at their workplace. Such an app will not include inventory or accounting modules but may provide access to the to-do lists or a client base.
As for the custom ERP development cost, it is a tricky issue. The thing is, the ERP development cost is higher than the price of ready-made software, but it doesn’t include any hidden costs. It means that you pay only once and have full ownership of the system. In the case of out-of-the-box solutions, you see one considerably low upfront price, but later you end up paying more and more for extra user customization, and maintenance. And don’t forget that ERP providers such as Oracle have a list of approved partners for any work related to maintenance and customization. Those companies, as a rule, are using their unique position when the end customer has nowhere else to go and set two times or three times higher hourly rates than the companies who work with low-level programming languages such as .NET or Node.js As a result while choosing custom ERP application development over buying one, you indeed pay more at first, but eventually, save a lot more.
Support is another important thing to consider. Given the level of ERP systems complexity, support should be taken into account as a significant item of expenditure. This is true for both off-the-shelf solutions and custom solutions. Most of the ready-made ERP solutions providers like SAP do include basic first-line support into the subscription cost. However, that basic level of support often means up to 48 hours of response time and includes only help with the ERP functionality over the email. Quick response in 12 hours, for example, or dedicated support agents who can help over the phone are included in the premium or advanced support plans that should be purchased separately. The thing is that after the client has spent around $100 000 on ERP implementation – solution providers can dictate their own rules, like set any pricing on support packages, provide a list of certified partners for services, and fix minimal recommended hourly rates for them.
For example, standard SAP support will cost 19% on top of the annual subscription cost and enterprise – 22%. In 2023 this cost has been further increased by up to 3,3%. This support includes consultations and major fixes but does not include minor issue fixes and any customization of the application. For example, if some workflow will work according to the standard application’s procedure but not the way your particular organization needs – this fix will go as an extra cost that is not included in the support plan.
On the other hand, having a custom ERP system built from scratch solves this problem, since the company can negotiate any support terms with the developers of the application or have an internal IT department working on any updates and fixes to the platform being completely independent of any third parties.
So, a custom ERP system has such upsides:
- Broad customization opportunities
- Possibility to implement all specific features you need
- Continuous support
- Money savings in the long run
Among the disadvantages, there are:
- High upfront costs
- Considerable development time
REASONS TO LEVERAGE OR UPGRADE AN ERP SYSTEM?
We found out in the previous paragraphs that implementing an ERP system is rather costly no matter if you opt for a custom or an out-of-the-box option. So, are you still doubting the need for it? Let’s see why leveraging an ERP system is beneficial for your business.
Process automation. Imagine how much time you could save if you didn’t have to spend it on such things as forming daily or weekly reports, waiting for someone to send you some documents you need, gather a significant amount of information for analysis, etc. A custom-built ERP system allows setting such daily tasks on auto-pilot and, therefore, exempting a significant number of employees from monotonous work.
Enhanced collaboration. ERP software blurs the lines between departments and connects them within one extensive system. There’s no more need to oversee numerous separate databases for each unit. All data can be stored in one place and easily accessed at any time.
Data security. Storing data in the electronic format instead of tons of papers is markedly more secure because it prevents important documents from being anyhow physically damaged, mismatched, or lost. At the same time, keeping everything in just one program might seem worrying as well, because a program’s failure leads to data loss. However, there’s nothing to worry about. Data security is one of the most important characteristics of high-quality software, and IT specialists pay very much attention to it at the stage of system design and development.
Also, having access to each department’s data by any team member would cause a noticeable mixup. So, setting user roles and permissions is essential – It defines the levels of access of different users and units.
These are valid reasons to improve your business by leveraging a custom ERP system if you don’t have one yet. Another situation is when you already have an ERP solution that you implemented long ago, and it doesn’t meet your requirements anymore. It often happens like this because ERP software was delivered on-premise not so long ago; updates were rare and required a specialist to deploy them. Thus, many companies ended up having outdated ERP systems installed. In this case, it may be worth considering custom ERP application development or at least purchasing a more up-to-date version of the existing one.
When it comes to changing the ERP software, data migration is the primary issue. It means that you should enter all information stored in an old system into a new one. Doing it manually is not practical. That’s why specialists use various methodologies to perform it quickly and easily. It is a complicated process that includes gathering, analyzing, mapping, migrating data, and testing the results.
In the process, programmers may face such challenges as non-matching formats, data redundancy, etc. Data migration takes time and money, so clients often don’t make it a priority. However, it’s better to spend these resources now so that you can save more in the long run. If you skip this stage, you may face the problem of one day doing it yourself, which will probably be very challenging and lead to mistakes. To summarize, data migration is crucial if you’re transferring from one ERP system to another, and it’s better to go through this with a team of professionals.
Cloud ERP Development
ERP systems are commonly considered on-premise because of the level of their complexity. It was true for some time, but now the IT world is moving to the cloud, and so the ERP systems. Of course, on-premise software is a well-established option, but SaaS solutions offer more flexibility and make apps’ exploitation much easier.
Cloud ERP Development
What are its advantages, what technologies developers use, what is its cost?
Cloud software is stored and processed on a server. It means that an app is running remotely, and users can easily access it through the web browser or a local client. The number of reasons to choose cloud ERP development over on-premise solutions is vast.
We’ll name some of them:
- Quick deployment. Sometimes, it takes a few moments to install an app, but it might be a challenging and lengthy process if we’re speaking about the ERP software. It requires very little time to start using a cloud application, unlike on-premise software. You don’t have to set up the system because it is already configured. As soon as you launch the server with the app – users can access it from any device and it will be configured the same way across the board.
- Low user involvement in maintenance. When it comes to tech solutions with complex workflows, high usage of devices’ resources, and ample amounts of data, unexpected bugs happen pretty often. In the case of on-premise software, your team is responsible for fixing them, and if a specialist who can handle it is not there, you’ll have to involve other people. But, if you develop a cloud ERP app, the users won’t have to worry about it. There’s the whole team on the vendor’s side constantly monitoring if everything is working correctly. When any system failure happens, they fix them so fast you wouldn’t even notice.
- Great scalability. Scalability is a significant advantage of cloud computing. It is very flexible because it can accumulate capacity. So that you won’t have to buy a new server each time the traffic or data amount significantly grows.
- Data safety and accessibility. When you’re using your local hardware to store the data, you’re at risk of losing it all in case of any system failure. Cloud solutions offer more possibilities for safe data storage. They include backups, data cloning, etc. Users will have to set up these features, but it will still be easier than in the case of on-premise solutions.
- Efficient collaboration. Web applications are operating online. It makes the partnership most effective, which is almost a top priority of ERP systems. All team members can view, edit, and share information quickly over the internet. Of course, not only cloud computing can boast about collaboration tools, but they are indeed much more efficient with SaaS solutions.
Want to know more about enterprise web development?
In the article, you’ll find the most necessary information about the core features of such a system, statistics on the best cloud providers, a comparison of a web ERP with the off-the-shelf solutions, and web ERP system cost and duration.
CUSTOM ERP SOFTWARE DEVELOPMENT
If you’ve eventually decided on custom ERP software development, we suggest you the precise description of the development of enterprise resource planning systems. Let’s start with the key functionality.
Core ERP Modules
Defining a future app’s features and modules is one of the most critical processes. A custom ERP system offers a broad set of modules, but you need to know which ones are crucial for your business. Specialists will help you with it during the development process’s discovery stage, which will be described later. And now, let’s look at all possible module options, so you can see the whole picture.
Business intelligence. Data disunity is a considerable threat to business efficiency. Without a single system that connects the information from different departments, analyses, and reports it, you’ll have to spend a lot of time doing it manually. The business intelligence module, which is practically a combination of integration, analysis, and reporting modules, solves this problem. It forms dashboards formed on all business processes. They include analyzed data and reports, which allow you to estimate the company’s performance and provide you with real-time visibility and transparency. Besides, a business intelligence module has a forecasting ability. It generates some feasible projections on sales, time management, and others.
Automation. It is one of the main features of an ERP system. The possibility to automate all repetitive processes and those that require a lot of manual entry saves very much time and allows employees to focus on high-priority tasks instead. The automation module implies various functions that vary depending on the department. It can be forming invoices, payroll reports, etc.
Accounting. Companies of any size must organize their budget wisely. It requires thorough planning and tracking, which is difficult for financial leaders. The accounting ERP module makes this task easier for them by gathering financial information from all departments in one suite. This module helps to control all economic activities. It has a wide range of functions, including managing assets, payrolls, receivables, payables, general ledger, and conducting the analysis based on gathered data. Accounting may also include a supply chain management submodule. Apart from financial workflows, it is responsible for logistics and distribution.
CRM. The customer relationship management module is tightly connected with marketing and sales. But its primary goal is to increase customer retention and make communication with them more efficient. CRM modules keep the data about clients in one database. It includes names, contacts, purchase order history, their preferences, etc. What makes CRM an even more efficient tool is the integration with the sales module. It results in the possibility to also work with inquiries, invoices, and other order data. Acquiring clarity about the customers allows building more lasting relationships with them and positively impacts the company’s workflows in general.
HR. The human resources module is designed to manage employees and everything related to them. We can divide all its features into such groups: recruitment, time management, personal information, and payroll. Each submodule has a set of features that help HR managers do their job faster and more efficiently. HR module is an extensive database where such information is stored: personal data, working schedule, onboarding, paycheck reports, efficiency metrics, compensations, retirements, skill management, etc. Apart from keeping employees’ data, this module integrates with others, such as accounting, analytics, or reporting.
Marketing. The marketing module is tightly integrated with others, including sales, CRM, and business intelligence. This is due to marketing’s versatility, including communication with customers and employees, advertisement creation, performance, surveys, and competitor analysis. As the integration of a marketing module with others is essential, its functionality may resemble an existing one. Its main features include analysis of customer engagement, performance, advertisement planning, promotion tactics, sales forecasts, and reports.
Manufacturing. Initially, ERP systems were primarily used in manufacturing. That’s why this module is the most established one. It provides the opportunity to optimize all processes related to material purchasing, storage, and distribution. An inventory component regulates the procurement and selling of raw materials and optimizes their stockpiling. A sourcing submodule helps rationalize the expenses and avoid buying the substandard materials by keeping the data about previous purchases and each raw material. And the integration with the SCM module helps to reduce delivery time and cut down unnecessary expenses.
ERP Software Development Services
When you’ve decided in favor of custom ERP software development, you likely want to know more about the development process. So, we’ll describe what steps it takes to build a quality custom ERP system that meets all your expectations.
We can divide the development process into such stages:
Let’s look more closely at them. The discovery stage is essential because the team forms a detailed understanding of the product during it. It allows specialists to save a significant amount of time later on. At this point, people who are most involved in the process are a project manager, a product owner, a business analyst, and designers. They all work coherently to make the follow-up steps easier to perform by forming the deliverables, including wireframes or mockups and a software requirement specification document.
What information does the SRS document contain?
An SRS document implies all critical information about the product: user stories, acceptance criteria, roles and permissions, diagrams, and other details.
For a medium complexity project, discovery takes about 8 weeks.
As the SRS document explicitly describes the application logic, once it’s ready, designers have all the knowledge to start doing the visual design and, in particular, creating mockups. A mockup is a screen layout with the minor details already designed. It provides the possibility to see the app’s workflow. However, only prototypes simulate the actual app’s behavior, while mockups just show its appearance. Usually, designers spend about 6 weeks to get the work done, but the number may vary depending on the complexity of ERP mobile application development.
The development stage is the longest one and includes an immense amount of work. At this point, programmers do the coding according to the chosen SDLC model. For example, there are many of them: Waterfall, Iterative, V-shaped, Agile, and others. The last one is the most popular and effective due to its flexibility. IT allows amending to the code right in the middle of the process, so in case if a customer wants to change anything, he doesn’t have to wait for the next iteration to start. Thus, Agile not only saves time but also results in improved customer relationships. Usually, specialists determine the timeframes at the discovery stage, so programmers follow pre-defined deadlines. Development may take from 20 to 30 weeks for a medium project.
After the development, the QA team starts their job. Some unexpected bugs are inevitable even after the launch, but QA engineers do their best to reduce this potential. The testing stage typically lasts 2 weeks or less.
Custom ERP Software Development: Deployment and Maintenance Phase
The deployment and maintenance phase of custom ERP software development is a critical stage in the process. It involves the implementation of the system, ongoing technical support and maintenance, regular software updates and upgrades, as well as data backup and disaster recovery planning.
System deployment is the process of introducing the custom ERP software to the client’s environment. It involves installing the system on the client’s hardware, configuring the software to meet the client’s needs, and integrating the system with the client’s existing software and hardware. This phase is crucial as it determines the success of the implementation of the custom ERP software.
During system deployment, the custom ERP software development team works closely with the client’s IT department to ensure that the system is deployed correctly. The team tests the system to ensure that it is working correctly and that it meets the client’s requirements. They also provide training to the client’s staff to ensure that they can use the system effectively.
Ongoing Technical Support and Maintenance
Ongoing technical support and maintenance are essential to ensure that the custom ERP software operates efficiently and effectively. The custom ERP software development team provides technical support to the client to resolve any issues that arise with the system. They also provide maintenance services to ensure that the system is running smoothly and that it meets the client’s changing needs.
The custom ERP software development team provides technical support through various channels such as phone, email, and chat. They have a team of experienced professionals who can quickly diagnose and resolve any issues that the client may face with the system. They also provide maintenance services such as bug fixes, system upgrades, and software updates.
Regular Software Updates and Upgrades
Regular software updates and upgrades are essential to keep the custom ERP software up to date and relevant. The custom ERP software development team provides regular software updates and upgrades to ensure that the system is running on the latest version. This helps to improve the system’s functionality, fix any bugs, and enhance its performance.
The custom ERP software development team provides regular software updates and upgrades to the client’s system as part of their ongoing maintenance services. They also ensure that the updates and upgrades are tested before they are deployed to ensure that they do not cause any issues with the system.
Data Backup and Disaster Recovery Planning
Data backup and disaster recovery planning are critical to ensure that the client’s data is secure and that the system can quickly recover from any disaster. The custom ERP software development team provides data backup services to ensure that the client’s data is secure and can be restored if necessary.
The custom ERP software development team also provides disaster recovery planning services to ensure that the client’s system can quickly recover from any disaster. They develop a disaster recovery plan that outlines the steps that need to be taken to recover the system in the event of a disaster.
Mobile App Development Process
Want to know more details about the process of custom application development?
Various aspects affect the resulting quality of a custom ERP system, but one of the most crucial is the technology stack. Usually, developers stick to well-established options that proved themselves in enterprise development. Let’s see what they are.
|Angular JS||Java||MySQL||Amazon Web Services|
ERP systems perform very complicated procedures and workflows, so a developer’s team should choose the languages for the backend that can handle it. Leveraging the best databases for custom ERP software development is essential because ERP systems are a set of databases, and they’re all about practical data storage and spreading. Also, when it comes to loads of information, integration is a vital aspect as well.
CUSTOM ERP DEVELOPMENT COST
Price Forming Factors
Price-forming factors rarely change regardless of the type of software you’re developing. They are:
- Project complexity
- Tech stack
- Team composition
Project complexity is heavily dependent on the size of the client’s business. The bigger it is, the more advanced functionality a custom ERP system has to offer. So, the number of modules, their interconnections, and employees’ training form the level of the project’s complexity.
Tech stack affects the ERP development cost as well because you’ll feel the difference between, for example, a Java developer salary and the salary of a .NET developer – $40/hour and $30/hour. And yet, these are both superior technologies, so the wage gap may not be very noticeable. The team size affects the price as well.
Usually, the team composition stays the same:
- 1 project manager
- 1 business analyst
- 1-2 designers
- 2 back-end developers
- 1-2 front-end developers
- 2 QA engineers
- 1 system administrator
Developers’ location is another price-forming factor. Outsourcing to Asian countries instead of hiring developers from the US will be more affordable for startups: an average developer’s salary in India is $54k/year, while in the US, it reaches $92k. However, while choosing a country to outsource to, you should proceed not only from the cost but also from the quality.
Curious to know more about the ERP development cost?
In the article, you’ll find not only the cost of developing an ERP system, but also the optimal technologies, and the timeline estimation.
There are a lot of factors affecting the final price. They are the number of modules, data migration, and system deployment that depend on the customer’s business size. If we’re speaking about a medium complexity project, the development of one module will comprise about $40k, including the average developer rates. Approximately the same amount of money you’ll spend on testing, deployment, and data migration. So, for a system with 5 modules, we have about $200k – $250k.
If you’re not an enterprise and don’t need many complex features, the costs may decrease to $120k-$200k. And, on the contrary, a custom-built ERP system with advanced functionality will result in $250k and more.
Custom ERP software development is a complicated process, but choosing the right company will maximize visibility and efficiency. It will also prevent you from overpaying for excessive functionality or experiencing its insufficiency.
Want to build high-quality custom ERP software?
EXISTEK specialists have extensive experience in enterprise development. We know what technologies and methodologies to implement to make the most of the product.
How much does it cost to develop ERP software?
Custom ERP software development costs depend on your company’s size and the application’s complexity. For a simple app, it’ll take about $120k-$200k; for a medium app - $200k - $250k; and for a solution with advanced functionality - $250k and more.
What is the benefit of a custom-built ERP system?
As soon as you implement a custom ERP system, you’ll see how much the efficiency and productivity of your business have grown. ERP software is extremely useful because it has significant advantages, such as:
Secure data storage
Improved cross-departmental collaboration
Automation of business processes
What are the components of an ERP system?
ERP software has a modular structure. Each component is responsible for a specific area of work. A set of modules may vary according to your needs, but usually, they are:
Customer relationship management