Photo Printing System
Industry: Media & Entertainment
The Embrox team combined an image editor, delivery management, and payment system together into one application for quick photo product creation with the help of your smartphone. Based on the selected format, it allows users to prepare photo packages for printing and create phone cases with individual designs.
We decided to use QT + QML abilities for mobile application development in order to cover the requirements of the common UX/UI for Android and IOS applications. Since the customer specified a payment system that provides platform-dependent libraries only, the team developed a wrapper with a common interface for IOS and Android systems.
The API server was split into Public and Admin parts, working separately to achieve a better security level. The task for the order time-prediction system was resolved by the integration of printer supply levels and order management subsystems. Together with the business hours info, this allowed us to implement a mechanism of average order processing time calculations and to design a time prediction system for specific orders.
We started building the application with the photo printing flow support, including choosing a photo format and material, photo editing (cropping, rotation, filters) and building orders with automatic price calculations, and individual user discounts. The application provides several ways of ordering delivery and also allows the user to select the nearest location in case one wants to pick up the order by themselves. The user profile allows one to specify personal data for faster order formation, view available discounts, and track the status of personal orders.
The server part includes a smart time prediction system of order processing based on available printers, printer supply levels, number of orders in the queue, and other factors, like business hours, national holidays, etc. Due to the flexible public API, it can be used for creating new products besides mobile applications (web-version print ordering system, desktop application, etc). The capabilities of the Admin API allowed us to build a powerful admin dashboard to control the whole system workflow (available products, materials, prices, etc) and create order statistics reports.