How it started

When we travel on vacation, the last thing we want is to spend extra time at the hotel reception desk during the check-in procedure. Now, we have PassportScan, an app that allows travelers to register at hotels seamlessly via mobile devices and tablets. 

The story began when David Palo, CEO of PassportScan, was looking for an answer to a fundamental yet straightforward question “whether to develop an iOS or Android app for an existing software?”. 

To find the answer, he searched the web and came across our blog post on the subject. After reading our article, David still had specific issues that remained unresolved, so he decided to contact us and find out more about the mobile app development process.

Once we got in touch with David, he told us more about his challenges. David already had the existing hotel front desk software for document scanning and classification, but he needed an app for tablets and mobile devices that would automate the rest of the check-in procedures done manually by hotel personnel.

As a result, we started a long-term co-operation and developed a PassportScan app for iPads and Android devices, a web service for hotel employees, and a subscription web portal. 

What is the PassportScan app?

Passportscan app development

PassportScan is a SaaS for hotels, currently used by Mariott, Four Seasons, Hyatt Regency, and Hilton. The app turns the check-in process into a 30-second operation and streamlines data gathering using image scanning tools. 

By using PassportScan, hotel employees can scan a guest’s documents, let guests sign registration cards digitally, manage the information via the app, and send data to the hotel’s property management system or customer relationship management system. 

PassportScan app

PassportScan helps to get rid of paper documentation and reduces the number of human errors in the client’s profile by leveraging optical character recognition (OCR) features and the integrated Address Validation Engine. 

passportscan app

Our goals 

  • Develop an app for iOS and Android. We needed to develop an app for tablets and iPads that would allow managers from different hotels to log-in to the PassportScan system via personal accounts, scan guest documents, and send the data to the hotel’s database. 
  • Integrate the app into the client’s eco-system. Each hotel has its own in-house system to track check-ins and information about guests. Thus, the app should send scanned data and other guest info to the hotel’s database seamlessly and error-free. 
  • Build a data management system. Apart from scanning passports, users need a platform to manage data, set up owner and branch settings, payment information, and user access.
  • Enable user payment. Since PassportScan applies a subscription payment model, we needed to create an e-commerce module for online payments via credit card. 
  • Protect personal data. Since the app deals with sensitive data (customer data, document images, and biometric signature), we needed to apply advanced security measures and make the app compatible with new European regulations regarding personal data privacy, such as GDPR.  

Our solution – PassportScan app 

PassportScan consists of three main parts.

PassportScan Workspace 

Workspace is a web portal designed to manage apartment bookings in hostels and hotels. Workspace stores guest profiles, booking details, ID information, and signed documents. 

PassportScan Workspace keeps data received from

  • A mobile PassportScan app
  • A PassportScan desktop software
  • Hotels PMS (Property Management System)

PassportScan Workspace supports integration with Oracle products, such as Suite 8 and Opera, to import and export data. The web portal also includes the support ticketing system so that hotel employees can get in touch with developers in case of bugs or system failures. 

PassportScan Billing System 

This is a web-based app for PassportScan users to pay their subscriptions via the Stripe payment gateway. Initially, users have a one month trial period. At the end of each month, users receive auto-generated invoices based on the number of scans and signs added to the system, and the number of gigabytes used. 

PassportScan’s billing system includes the following features:

  • Billing details validation
  • Credit card validity checking
  • Online payments via Stripe payment gateway 
  • Editing payment methods
  • “Payment history” with digital invoices 

PassportScan Native Apps for iPads and Android tablets 

Native applications allow hotel employees to scan a guest’s documents with iPads and Android tablets, then send data to the Workspace.

Apps for both platforms include the same feature set:

  • Search for available bookings in the PassportScan system
  • Scan front and back sides of documents 
  • Edit the guest’s details
  • Digital Signature 
  • PassportScan privacy policy 
  • GDPR compliant Data Use Agreement 
  • List with additional hotel services 

PassportScan’s check-in takes six steps:

Step 1. Hotel employee starts the registration/check-in process and finds the guest’s booking 

Step 2. Hotel employee updates guest info by scanning documents using the PassportScan app

Step 3. The app recognizes the image from the guest’s passport, captures the data, then classifies and verifies it

Step 4. Hotel employee edits the identified elements if needed

Step 5. The guest agrees with the privacy policy with the GDPR compliant Data Use Agreement 

Step 6. The guest puts a digital signature and may ask for additional hotel services

Our challenges and solutions


Due to the system’s complexity, we developed the project’s back-end system with a potential high load in mind by applying a microservice architecture approach that enabled the system with both vertical and horizontal scaling. 

In this way, the application is divided by functionality (vertical scaling), and each microservice can run as multiple instances behind a load balancer (horizontal scaling). Also, we achieved a more effective consumption of computational resources, since, under high load,  the architecture scales horizontally. 

Passport scan case study

The project’s core consists of 8 back-end services for reading, scanning, and saving documents, digital signatures, etc., and three public components:

  • The Public API provides an interface to the back-end for a native application, as well as integration capabilities for 3rd party external systems
  • The Admin panel with a dashboard for configuration management
  • The Workspace, a web interface to manage the system for hotel staff
Passport scan public api


For every type of app user, the system provides an authentication procedure with personalized credentials and password security provided by Admin. The system interacts with the outer world via SSL with 128-bit keys. Services without external connections, placed on the private cloud, are entirely isolated from external access. The system protects sensitive customer data by encrypting with AES 256 algorithm.

Tight deadlines 

The biggest challenge we faced was keeping tight deadlines during the development stage. The main reason for such a rush was that David and the PassportScan team had already scheduled presentations of the app’s MVP at several RoadShows and Hospitality conferences. Thus, there was no room for error.

We nailed the project’s release within the deadlines, thanks to defined Milestones, a carefully prepared back-end, and microservices project architecture. Thanks to microservices technology, we managed to develop several modules simultaneously, and the further module orchestration helped us to avoid any kind of server shut down. Thus, if any of the modules fail, other modules quickly help (less than 5 sec) to retrieve all the data.

Project tech stack 

  • Symfony 4.3 for web-based WorkSpace and Billing systems
  • Document reader SDK for identifying letters and numbers in passports 
  • Signature module SDK for capturing digital signatures 
  • Scan module SDK for scanning passports 
  • Storage Module SDK for sending data to the cloud storage
  • License and modules management SDK for managing the owners, hotel data, and native clients device identity
  • User management API for setting different levels of user access
  • Stripe SDK as online payment gateway
  • JSON (JavaScript Object Notation) for generating custom invoices
  • Google Maps API for address validation
  • Google Cloud Platform Storage for secured data storage
  • Amazon Web Services Mailer for ticketing system and streamlined technical support 
  • Google Cloud Platform Pub/Sub messaging for connecting microservices architecture components 
  • Swift SDK for iPad app version 
  • Android SDK and Android Studio for Android-powered devices

Team composition

  • 4 Back-end developers
  • 1 DevOps
  • 2 Project managers
  • 2 iOS developer
  • Android developer
  • 2 QA engineer
  • 2 Business Analysts


PassportScan is shaping the hospitality industry by showing how technology can eliminate routine tasks and paperwork for hotel employees. 

Thanks to clear project goals and timely communication with David and the PassportScan team, we managed to build the first app version in just one month from the project launch. We are proud to be a part of such products as PassportScan because they improve the world we live in today. Watch the video where we share our thoughts on the PassportScan project. 

Recently, we launched the discovery phase of the Self-check-in app for PassportScan to enable guests to make check-ins via the app with their own mobile devices. This is very important right now with the situation of the Pandemic of COVID-19, allowing the possibility of non-contact services in the Hospitality industry. 

Client’s testimonial 

Want to develop an application for your business? 

Tell us about your app idea so we can find a solution tailored to your needs.

Contact the team