Task
The project was to integrate with different POS systems of restaurants. Often POS systems are installed as local software without an open API, so the challenge was to develop local .NET software that will be installed next to POS and make local requests to the POS system. The local software itself should have an open interaction with an external API, for example, through a web socket service, or through a message broker, and exchange data with it.
Examples of interaction between POS - local .NET software - external API:
- Request information from the POS about new orders or order updates and pass this information to the API
- Receive a request from the API to apply the payment to the order and pass this request to the POS system
During the project we had to follow strict development requirements. Since the software will be installed on the restaurant machine, we must have ensured the connection and data security. In case of problems with the installation and configuration of the software, we had to be able to remotely connect to the restaurant machine and set all the settings.
Additionally, our developers had to write code that will be easy to maintain and expand in the future by us or other developers: that is, to know and understand OOP principles, design patterns, SOLID, DRY principles, etc. Our developers had to write unit tests for the code and maintain sufficient test coverage of the code.
Results (benefits for the client)
The result of the project was a successful integration with a POS system that enabled to expand the offering to hundreds of new restaurants in Germany.
Team involved
- Product Manager
- 2 x .NET and PHP developers