Retailgear whitelabel retail software logo

How to Develop a POS System That is Cloud-based | Our Experiences

In this personal article I would like to share my experiences in developing our own POS system software. It works completely online and it is also available as a white label solution. It took several years before we had a good system. Perhaps you are also thinking about building your own POS system. That's why I'm happy to share the full development with all the pros and cons we experienced. Hopefully this will bring you faster and closer to your goal.


Are you a developer or do you have technical knowledge? Learn more on this page about the technical side of building your own POS system. We also share our code which you can use!



Why we build our own cloud-based POS system

It is the year 2015. My father, brother and I are having our own wholesale company. We sell fashion products to retailers. There is a lot of buzz going around the growth of e-commerce. Will the retailer perish if he does not have an online store? In the market we see a backlog in the field of technological resources for retailers.


We decide to help with this by offering services in addition to products, such as webshop development. In addition, we want to build one large online platform of physical stores to be stronger against the online players. However, it soon becomes apparent that many retailers do not yet want a webshop. In fact, they are already way too busy in the store and have not started a physical location to become an online expert.


Slowly, but surely, we realize that it is essential if the website is linked to the POS system. Only then will it be easy to have an ‘online shopping window’ in addition to the physical store.


Especially in niche markets, retailers have specific requirements for their POS software. Therefore, the current system that was market leader in our industry was about 30 years old. It was almost impossible for us to link the central database and website builder to this widely used POS system. A lot of customization was required and the costs involved made it less interesting for the retailer.


After integration attempts with other cash register suppliers, there was only one conclusion to be drawn: The current systems were not made to integrate proprietary functions. As a result, the retailer had to continue to use other systems in addition to his POS system and seamless integration was not possible.


At that time we had already programmed our own inventory module. So how hard must it be to add your own POS software? Let's do it and within 3 months the simple version will be ready! That's what we thought..



how to build own POS system

Phase 1 of building your cloud POS system

In the first phase, there are several choices you have to make to build your own POS system:

  • Which programming code do you want to use?
  • Who will supervise the project
  • What features should you include?
  • What is my budget and how much will it yield?


On this page you learn more about the technical side of building your own POS system. You can use our code to kickstart your project.


We recommend writing your POS software in JavaScript (React, Angular, Vue.JS and Node.JS). This gives you more flexibility and for these languages there are many developers who can work with it. Ultimately, it is even more important that someone within your company is responsible for technical development.


Of course you can engage a company that develops software for an hourly rate. But this doesn't seem sensible to me, if you're doing a project like building a cash register system. You have to continuously invest to improve and maintain the system. That is why it is much more efficient to employ programmers yourself and to supervise the project. However, you must have technical knowledge for this. At the bottom of the page I explain why.


Another important part of building your own POS system is to consider beforehand which functions are needed. The better it is worked out, the more time (and costs) you save with the development. However, you can assume that you want something different at a later stage. Keep in mind that this can have a major impact on development. For example, we had to rewrite the software several times.


Sometimes they seem like small adjustments, but they are technically very drastic. For example, when it comes to creating a POS system, you can think of employee roles, deposits, filters and search functionality or adding a loyalty program. If you don't include this in development from the ground up, whole pieces will have to be rewritten. Below is a brief overview of all features to take into account.


A day is short. So try to estimate the time and budget you have as best as possible. Then think about how much your own POS system will yield you. For example, we thought we could deliver a simple version in 3 months, but that quickly took 5 months. In the end we were only satisfied with the functionality after 3 years(!). And of course, new features keep coming.


So think carefully about the minimum functions you want and how this will pay off before you start building your own software. Have you ever thought of a white label POS?



Phase 2 deliver your beta version as quick as possible

After a few months you will enter a new phase! You have a working first version of your system. Now it's time for new steps:

- Get real feedback

- Testing all parts

- Consideration of new functions


Real user feed is essential. I am so happy that we launched our own POS system as soon as possible. Initially, my opinion was to make it as perfect as possible before launch. But then it would never have happened, because we simply ran out of time and money.


Keep in mind that testing the software takes almost as long as developing it. To improve the user experience you want to have this in order, but sometimes it is better to let the user test it themselves. This way you will find out which essential functions are missing. Furthermore, it can happen that a user says he wants a specific function. But when you develop it, the user will not use it.


So real customer experiences break your own idea to make the solution better. For example, a layout that seems to work handy is not useful at all in practice. Sometimes a function has to be on another page. This is not always a matter of adding a simple button.


Furthermore, you also want paying users as quickly as possible if you develop the system for resale. For this it is important to deliver the minimum functions first.




Phase 3 is about further development and maintenance

So you are 10 months in. It already looks better and there is more interest in using your POS system. What is going to happen now?

- Implementation and support

- Structure in new releases

- Improvements


When more users come, you can't just put new things live. Users get used to certain functions, so you can't just change them overnight. A little more structure in new versions is therefore nice and you should have fewer high-priority bug fixes to implement (because the system stops working for example).


Still, the craziest things can happen. In the beginning, for example, it happened to us that the system completely failed because someone wanted to download a receipt. Can you imagine? That's why it's important to organize code so that changes in one place don't directly affect another place.


You will also run into new problems if more people start using the system. Therefore, a portion will be invested in development that the user will not see. You should also become critical of new features, as the list just keeps getting longer.


For example, we started with 3 test customers. You then assume that you have a reasonable idea of how the customer wants to use the system. They are also really convinced that this is the best way. But what happens with 50 customers? They all like to work in a different way. That's why certain functions suddenly don't make sense anymore. So try to get as much input as possible from different customers.


Nevertheless, support is becoming increasingly important to guide users. This was a short explanation of our journey to build our own POS system. Now let's take a quick look at the points you want to take into consideration.




develop own POS system requirements

Features you should think of when building your own POS system

  • Employee roles and settings
  • Filters and search functionality
  • Exports and Receipts
  • Statistics
  • Payment integration and methods
  • Gift cards and saving points
  • Split bills and deposits
  • Refunds
  • Booking expenses
  • Quick buttons
  • Discounts and taxes
  • Customer profiles
  • Multi location features
  • Inventory tools
  • E-commerce integration
  • Hardware


Employee roles and settings

Employee roles and settings are a set of parameters that define the behavior of an agent in the system.The setting controls how much power an agent has in the system, how much time it gets to make decisions and what information it can access. For the best security, you want to have this incorporated as deeply into the code as possible. An important part is also the log to map actions for users.


Filters and search functionality

Filters and search functionality are the most important aspects of your POS system. The ability to filter and search through a database is what makes it easy for someone to find what they are looking for. It is important that the search function is accurate and fast. The filters should be comprehensive and allow for many different options as well as exclude unwanted information.


Exports and Receipts

Exporting documents is a necessary feature in a software. It allows you to save the document in a format like PDF. You can, for example, share this with external parties. Furthermore, cash receipts are alos part of the cash register system. Even if the receipt can be sent by e-mail. It is important that this contains all the data that the user wants.


Statistics for building your own POS system

Statistics helps you to understand how the data is organized and if it is reliable. For example, think of turnover, payment methods, transactions and dates. This is important to make data-related decisions with your POS system.


Payment integration and methods

There are various types of payment providers that can be integrated with your POS system. They include credit card processors, mobile wallets, and bank transfer providers. It is important for merchants to know which type of provider they want before integrating with one. In addition, you also want the Cash option and, for example, a bank payment button.


Gift cards and saving points

Gift cards are one of the most popular presents to give or receive. They are available in all shapes and sizes, from a small gift card for a coffee shop to a large gift card for an electronics store. They can be used at any store which accepts them, and they can be used as cash.

Some stores offer you points when you make purchases with your gift card - this is called "saving points." It's a way of rewarding you for shopping with them. You would therefore like to have incorporated both options when building your own POS system.


Split bills and deposits

Split bills and deposits are a common occurrence for a POS system. Make sure yours will offer these features as well. It's also a feature that we didn't take into account in the beginning. As a result, the stock up and write-off did not work perfectly. Fortunately, this works perfect now since a newer version.


Booking expenses

Sometimes you use the cash from the till to buy food or something else. You can then charge this as costs via the checkout.


Quick buttons

Every store has products that it sells a lot and wants to be able to catch on quickly. So make sure that the user can add buttons themselves for extra user-friendliness.


Discounts and taxes

Make it possible to give a discount on a product at the checkout. The tax rate is also important here.


Customer profiles

In your POS system you should also be able to create and edit customer profiles. This is a summary page with contact information, purchase history and spending habits.


Multi location features

You may also want to be able to use the system for multiple locations. Then specific requirements are set, such as stock transfer and seeing what's in stock in another store. Keep this in mind at the start of development.


Inventory tools

We had already developed inventory management with the central database. But if you're just starting out, these are fundamental parts of the software. Think about supplier management, product categories, attributes, variant collections, barcode (scanning), stock levels and purchase management. I'll probably write another post about this, because otherwise this one will be much longer.


E-commerce integration

Nowadays it is essential that the system can be connected to a webshop and other sales channels. This is not something that needs to be implemented right from the start, but it is important that this is made possible with APIs. To make it extra easy for retailers, we have integrated a complete website builder.


Hardware you need when building your own POS system

When you build a cloud system, it doesn't matter which device it runs on as long as it has internet. Nevertheless, it must of course be compatible on different devices. You will also discover that not all printers and scanners are equally easy to connect. This has made us decide that we mainly work with a Zebra or Epson when it comes to label and receipt printers.



develop build a cash register system

Things you need to have and know when developing your own POS software

  • Technical knowledge in the company
  • Budget and time
  • Real user experiences
  • There will come a time when you have to recreate everything
  • You're busy making things that the user can't see


Technical knowledge in the company

Even if you outsource software development, you must be able to ask the right questions and make trade-offs. This includes making trade-offs between time, budget, and quality. Sometimes a developer can create a function that it works. But because you may want to create other functions in the future, the code may not be put in the right place. This affects, for example, the loading time and the options if more people start using your software. That's why it's essential to have someone on your team who understands the code and can ask questions about why things are programmed a certain way.


Budget and time

Assume that the project will be 3x as expensive and will last 3x as long. Of course you can limit this by making clear trade-offs, but don't forget that the world moves on. New features and integrations will always be needed. In addition, it can only be made better after experience. You also continue to perfect existing functions. So take this into consideration when you build your own POS system.


Real user experiences

As I also tell in my story, it is essential to collect real user experiences. Only in this way can you develop what is really important. Nevertheless, you get a lot of feedback in the beginning. Then especially listen to the paying customers. If you don't have these yet, get them as soon as possible. Only then will you get really valuable feedback. There is sometimes a difference between what people say and what they are willing to pay for.


There will come a time when you have to recreate everything

It may sound ungrateful, but remember that there will come a time when you get to recreate everything. Software development continues. New technologies are coming. Just like a carpenter renovates entire houses, your POS system needs to be rebuilt too. Keep this in mind if you want to build your own POS system. You need a minimum number of paying customers to be able to finance this.


You're busy making things that the user can't see (security)

Another thing I noticed is that you also invest a lot in development that the user does not see. For example, think of security or making the system fast. These are sometimes complex backend developments that require a lot. It is wise to use micro services. This way you can develop more easily without creating new bugs.



Buying vs Building: In which cases is own POS software development necessary

Choosing the best POS system for your business is not an easy task. There are many factors to consider before making a final decision. I hope that the above information provides you more insight into the possibilities. So when might building your own POS system be interesting?

  • If you need industry specific functionality
  • If you have time and resources
  • If you want more control


If you build your own POS system, you have more control over all the functions it contains. For example, how they should work and what should happen when you click on something. Usually the basis works the same for many systems, but sometimes you can also have specific wishes. Think, for example, of jewelers who work with gold purchasing where other tax and registration is important. In such cases it can be interesting to develop your own system.


However, you need a lot of time, knowledge and money for this. A system requires maintenance. You also need technical knowledge to make it right. Of course you can outsource it, but then you are still busy with supervision and delivery of the system.


Do you have specific wishes? Then we recommend that you look at a white label POS solution. You can use the system under your own brand. You purchase the basics and are given the opportunity to build or have your own functions built and fully integrated on boilerplates. This saves you a lot of time and money with setting up the base and maintaining it.


Take a look at our code to develop your system

Bring your shop to the next level

Hi, I'm George and I like retail and technology. Therefore, my passion here at Retailgear.com is to provide you with reliable information to automate and digitize your store. You can find out what we can do for your industry through our menu. Also, feel free to check out this updated list of retail tools.


Share this post:

More about your favorite subject

Discover latest posts

By George van Ekeren 07 Feb, 2024
The power of developing custom POS software
Run multiply retail stores
By George van Ekeren 13 Feb, 2023
Get our tips on how to run multiple retail store locations with ease. While this can bring many benefits, it also brings challenges that need to be managed to be successful. In this blog post, we'll explore some of the key considerations for managing multiple retail store locations effectively.
Start a B2B Saas Business To Serve Retailers
By George van Ekeren 10 Feb, 2023
It sounds awesome to launch your own B2B SaaS company, but how do you start and make it work? We have been there and want to help you to be profitable as quickly as possible and to keep the risk low. Start your B2B SaaS company to today and provide software solutions that help businesses streamline their operations and improve their bottom line.
Hardware options POS
By George van Ekeren 09 Feb, 2023
We'll explore the different types of POS systems and hardware you can use to run them. We'll also discuss the main challenge with using only a tablet or phone as your POS system. By the end of this post, you'll have a better understanding of which POS system is right for your business.
Retail processes integration
By George van Ekeren 25 Jan, 2023
Integrated retail processes can help improve customer experience, supply chain efficiency, and overall agility and flexibility. In this blog post, we'll walk you through everything you need to know about retail process integration, including how to get started and the benefits of doing so.
Data Supply Chain Retail
By George van Ekeren 23 Jan, 2023
Data from the supply chain can be used to improve your business in a number of ways. For example, you can use data to track inventory levels, optimize production, and manage customer orders more effectively. Additionally, data can be used to understand customer behavior and identify trends. So data-driven decision making can help you save money and time by reducing waste and increasing efficiencies.
Central database for product information
By George van Ekeren 19 Jan, 2023
Get our code completely white label to work as a retail industry in one central database for product information.
Network effect in retail sector and business
By George van Ekeren 19 Jan, 2023
But how do you create a network effect in your retail business? And how can you become part of another network to get more value yourself. In this article we look at the best examples for the retail industry and would like to give practical advice.
Deal with online buyers in-store
By George van Ekeren 27 Dec, 2022
Customers return products for a variety of reasons, and one of the most common ones is that they do not like the product. The customer might have bought it online and realised that it was not what they expected or they might have bought it from your store but realised that it didn’t fit well or was not what they wanted. Some customers might also be returning the product because it is defective or because it does not work as advertised.
Supplier collaboration in Retail
By George van Ekeren 28 Oct, 2022
Discover what supplier collaboration in retail is all about. Get the best way for a retailer to partner with suppliers and boost sales together. As a retailer you are busy with all facets of your company. Therefore, a little help is always welcome.
Show More
Share by: