Building big picture solutions for Regal on Magento 2 (M2).
Before we begin, a quick teaser.
Regal Cinemas is the world's 2nd largest theater chain and is a subsidiary of the Cineworld group. Their business in the US covers more than 6,500 screens across 505 theaters. We were involved in optimizing the eCommerce experience for their two stores.
At Regal Crown Club, moviegoers can earn credits and spend them on the rewards they want. These credits are added through an API to every ticket purchased through the store's mobile app.
Customers can buy discounted movie tickets and gift cards at the Regal Corporate Box Office. The store also presents detailed information on business events, groups, and screenings.
After spending years building online operations on Magento 1, Regal migrated to Magento 2 to future-proof the customer journey with a robust backend.
Regal Cinemas is a subsidiary of the Cineworld group that operates 9,000+ screens across 751 theaters worldwide. The company covers 68% of their cinema circuit.
To actively manage data for 100+ products and an active base of 5 million users, Regal needed the latest security patches, an updated UI for admins, flexibility and control to filter data in admin grids, more options for extensions, and enhanced store speed.
And we had a well-defined task list:
Migrate data from Magento 1 to Magento 2
Convert custom modules from M1 to M2
Integrate third-party extensions the same as the M1 store
Preserve the same UI and front-end of the M1 store
An extended support window following the project launch
Behind the scenes of our M2 migration plan.
While Regal’s backend had to be upgraded, we were careful not to disrupt the user experience. Customers prefer consistency in their daily interactions with a known digital store, and we wanted to preserve this. To facilitate a smooth transition, we had to plan our operations carefully.
First, we identified custom modules for the migration. We then gathered and understood the volume of customer data, order data and store settings.
Once we’d outlined the process requirements and configured the bulk of data, our team built a phase-wise delivery system, all the while maintaining a live review and feedback loop with the client.
Snippets from the B-roll.
Handling active customer data for over 5 million users complicates the migration process. We faced a few challenges, including:
Data mismatch issues usually crop up when the store is active soon after the initial data migration. Our experts implemented delta migration to recover the data lost during the brief migration window. It wins back all the incremental data lost during or after the process.
We encountered functional issues with the date and data filters in the M1 version of the store. These were identified and resolved.
Server-level dependency on third-party vendors
Because Magento is a self-hosted platform, the servers were managed by a third-party vendor. Our team built processes for simpler coordination, to mitigate any time loss during migration.
“Actually, it was super easy. Barely an inconvenience.”
After setting up the plan, we drew up a timeline to deliver the M2 migration for both the stores in 4 sprint deliveries.
Sprint 1: M1 to M2 migration
It’s important to set up the local environment before beginning the migration at the production level. This establishes a development system for databases, live code, extensions, and configurations. After carefully going through the local server configuration, we migrated the customer data, product data, and sales orders.
Our QA team followed this up with migration testing and bug-fixes.
Sprint 2: User authentication and order processing
As we re-architected Regal's platforms, migrating the user session management system was one of the bigger challenges. Since the existing system recognizes the web experience for every user, we had to consider multiple (hidden) dependencies and work through user sessions and APIs, along with rigorous testing and bug fixes.
We then managed the order processing system by sharing sales orders to the FTP servers, syncing fulfillment orders, and setting up order cancellations.
We ended Sprint 2 with another testing sequence for order processing.
Sprint 3: Preserving the front-end experience
Since we decided not to bring any changes to the front-end design, we recreated the original store layouts for the home page, product listings, description pages, cart, and checkout pages. Before finalizing the sprint's delivery, we installed the Magento 2 admin panel, conducted extensive user testing, and ran a few more design tests.
Sprint 4: Agile integration strategy
In the last sprint, we installed the old backend integrations that directly impact the data flow of the new M2 store. These integrations covered various additional functionalities for Regal’s event-driven sites, like order syncing, user authentication, payments, security, shipping, dynamic search, and movie content. In addition to this, we opted for a holistic integration approach for storefront and backend systems through APIs, ensuring an efficient, channel-specific response and no over-fetching of data.
Regal’s M1 stores had extensions custom-built for their platform, like a third party API that helps manage their shipment process. However, instead of opting for the ready-to-install option for the M2 version of the store, we redeveloped the extension, customized it for Regal, and aligned the system with third-party APIs.
Flexible Data Filters
The older store lacked the flexibility to apply multiple filters to the massive amount of data at the admin's disposal. With an M2 upgrade, the Regal team could easily study the data by applying multiple filters across the admin category. Admin can filter data by product ID, quantity, price and store views, or through predefined filters for the products in the admin grid.
Our team oversaw multiple dry runs before taking a final call to take the newly upgraded store live.