Initially, the app supported Android Version 4.1+. But then we had to deploy it in the PoS machine of Casio, i.e. Casio VR 1000 Till. This machine used an older version of Android.
It was tough to support the printers on Android as only printers of some companies at that time supported Android. As a result, finding its solution was a challenging task.
Debugging was very hard because the network packets had to be sniffed. This was done to enable real-time monitoring and analyze data packets flowing over the networks in the system.
Testing of this app was a great challenge. We were not able to physically bring 25-30 card reader machines to test the app. Consequently, we had to think of an alternate testing method.
Whenever issues occurred in the system after the deployment of the app, obviously we could not bring the complete systems to our office to deal with the issue. As a result, we had to provide a suitable solution for this problem while keeping the user privacy concerns under consideration.
PS Connect is working under PaymentSense in the semi-integrated solutions in which only the card reader machines and SDK are integrated, and PoS (point of sale) is not provided.
For Casio VR 1000 Till, we revamped the solution so that we could work in the older version of Android as well, i.e. Android Version 2.3.
We created custom designs to solve this problem. We provided the support on the tablets of Samsung and Lenovo for the printers of HP and Zebra.
To debug, we created and used a Custom Logging Framework. In this way, we catered the issue of network packet sniffing.
We created a simulator for printer and card reader, which helped us in avoiding the need for physical machines. This simulator made testing comparatively easier.
We developed automated and well-documented APIs for the developers. By using encrypted logs saved on the cloud database, we solved the issues while maintaining user privacy concerns (we only saved the tech data to be used in case of any dispute). This created less dependency.