How we rebuilt an online store into an automated marketplace in 3 months

About the project
This is a marketplace for designer home goods and decor. It hosted products from different sellers, but technically it was just an online store: the owner managed her supplier relationships by hand. We built a platform where sellers manage their own products and see order statistics, while our client coordinates everything from an admin panel.
How we met
The client already knew us: we'd built the online store for her previous retail project (which also came to us by word of mouth). That project went great — she liked our work and our e-commerce expertise — so she came back to us.

The problem and finding a solution
The client already had a site that needed reworking. The first version was written in Ruby on Rails, which lacks libraries for connecting the services she needed, so everything had to be built from scratch — expensive and slow.
We ran an audit and agreed to rewrite the platform entirely, to make future integrations faster and simpler.
What the client wanted
- Make the platform scalable: room to expand functionality and integrate with marketing, analytics, and automation services.
- Cut the time and cost of building new sections and features.
- Automate the business: seller management, inventory tracking, finances, and other processes.

Request a free consultation so we can assess your current project and propose a development plan
Anna S., Business Development Manager
What we did
- Rewrote the backend in PHP, which has libraries for every well-known service, to reduce the time and cost of updates and new features.
- Turned the online store into a marketplace built to scale: we rebuilt the stack and business logic and added functionality for working with third-party sellers.
- Integrated services for inventory management, shipping, payments, and communications.
Results in numbers
3 months
from an online store with a problematic stack to an automated marketplace
3 interfaces
for different roles: the site, the admin panel, and seller dashboards
7 connected services
for inventory, shipping, payments, and communication
260 products
available in the catalog on the site and synced with the CRM
How the platform is built
During development, the online store grew into a marketplace — a platform with three separate interfaces for different roles:

The marketplace runs on a hybrid model: the site carries both own-brand products and offers from third-party sellers. The platform owner handles all logistics — sellers deliver their goods to a single warehouse, which then ships them to customers.
The admin panel
All of the marketplace's "back of house" (the admin panel and seller dashboards) is built on Admiral, our own open-source framework. On one hand, it speeds up development: there's no need to build everything from scratch each time. On the other, it lets us create custom interfaces for scenarios that don't fit standard solutions.

Service integrations
A key architectural decision was integrating the marketplace with Shopify, a platform for automating retail operations.
The systems are synced with each other and split the core functions:
- Order processing, customer communication, and tracking of the owner's own stock happen inside Shopify.
- Seller inventory tracking, catalog updates, and content management are handled from the admin panel.

Why Shopify?
The platform offers ready-made modules to connect dozens (if not hundreds) of popular services — shipping, inventory, payments, telephony, messengers, marketing — all in one place. There's no need to build each connection separately, which saves time and money on development.

Which services we integrated
- Shipping: FedEx and UPS
- Telephony: RingCentral
- Inventory systems: Cin7
- Payments: Stripe
- Loyalty program: promo codes (Smile.io)
- Email: Mailchimp
"The client didn't come to us for a website — she came with a problem: get her business in order. In the end we built an entire system: telephony, warehouse, shipping — all connected and working as a single machine. The website is just the tip of the iceberg."
Triggers
This is a feature we want to call out on its own. Inside the platform you can set up triggers — system actions and the conditions that fire them — to automate business processes and customer communication. For example, they remind managers about a missed call, text customers a tracking number once an item is handed off to the carrier, or email a review request three days after an order is received.
The administrator can use templates or configure new scenarios as new features and connected services come online.

Integration specifics
Originally we planned a two-way integration, where products and orders would be managed through the Shopify interface. But early in development we ran into platform limitations — for instance, you can't create custom fields or add video to a product card.
So we changed the architecture and moved catalog management into the admin panel. This gives the client complete freedom to grow the product: we can add new features, change the product structure, and build any custom scenario without having to work around a third-party platform.
Managing the marketplace
Everything is managed from a single admin panel: configuring the site's content, working with sellers and customers, and administering the catalog and orders. The client can change section names, structure, footer and header content, and even the filters customers use to search for products.
Product catalog
Here the client can add own-brand products, either manually or automatically. We added the ability to import product data from an Excel file and from Google Drive, where the client stores photos.
Uploaded products can be grouped into product offers (identical diffusers with different scents, similar tea sets with different patterns), categories (for example, "Home Fragrances," "Vintage," "Dining & Kitchen"), and collections ("Bestsellers," "Sales & Discounts," "Blogger Picks"), and turned into product suggestions ("You may also like," "Popular collections").

All of these sections can be tuned to the current needs of the business: for example, giving visibility to low-demand products or putting together a seasonal offer for customers (holiday gifts, Halloween home decor, and so on).
The section is integrated with inventory tracking, so it shows all stock information: which products are in stock, how many, and which categories need restocking. Everything updates in sync: if a product runs out on the site or at a seller, it's reflected on the site and the customer can't place an order for it.

Sellers

Orders

SEO
The seller dashboard
This is the workspace where third-party vendors manage their assortment, track sales, and dig into analytics.
Seller registration
A potential partner reaches out to the marketplace, and the platform administrator sends them a link to log in. As soon as they register, the seller has access to the "My Documents" section, where they add their details and upload documents. There's no need to gather information by hand across chat threads — the vendor uploads all the necessary data themselves.
The marketplace administrator then receives an application to moderate. If the form is incomplete, it can be rejected, and the seller gets an email notification.
Seller dashboard
Once logged in, the vendor gets access to new sections:

Profile

Catalog

Orders
Analytics
This is probably the coolest feature we built for sellers on top of our own Admiral framework. All sales data is gathered in one place and presented in clear charts:
- Revenue growth over time
- Sales by category
- Order counts by status (awaiting payment, being picked, in transit, completed, and so on)
- Returns and cancellations
- Promo codes (number of uses, total discount amount)
The data shows which products sell well and which are worth dropping or promoting harder, how much revenue this sales channel brings in, and what stage each order is at. It's a strong competitive advantage: clear analytics help vendors make decisions about their assortment and their work on the platform.
Important: vendors only see their own metrics and have no access to anyone else's analytics or to the shared customer base — that data belongs to the marketplace owners.

The customer journey
The customer is the main role on the marketplace. Here's the site's functionality from their point of view.
Registration and login
To make purchases, save favorite products, and track order status, a user needs to register. Right now login is available by phone number only. Unlike an email address, phone numbers are hard to generate en masse and use for fake accounts, so this login method protects the marketplace from fraud.
After registering, the customer can fill in an email, add a name, and change their password in their profile.

Product catalog
All products are split into categories ("Home Fragrances," "Vintage," "Bath," and so on), which the marketplace administrator can add, remove, or reorganize at any time. The customer can apply filters and change the sort order to find what they need faster.
At the bottom of the catalog there are recommendations ("You may also like," "Top collections and popular picks") that drive add-on sales and increase average order value.

Product card
Beyond information about ingredients, use, and product photos, some cards include product offers. This is a feature for quickly jumping to the same product with different properties (for example, a storage basket in another color or a set of napkins with a different pattern). It makes the catalog easier to navigate and can also increase the number of items in the cart.
On the same page, the user can add a product they like to their favorites or copy the link in one click to share with friends — or drop a hint about a gift they'd love.

Cart
Here the customer can check product details (size, color, scent, and so on), apply a promo code, pick the nearest pickup point on a map, and see the final order total including discount and shipping.
Because the site is integrated with inventory tracking, the user can't add more items to the cart than the seller has in stock. If fewer than 10 units are left, a warning appears — nudging the customer not to put the purchase off.

Interior try-on
The most interesting feature for users is trying products on in their own space using a QR code and their camera. How does it work?
We integrated the marketplace with Tripo, a service that uses AI to generate 3D models of products. This can be done right in the admin panel, in the "Product Offers" section. The platform owner uploads photos of an item from two angles — front and back. The AI creates a 3D model, which appears to customers on the site once it's uploaded.
They can spin it in every direction to examine the product in detail. There's also a "Show QR for AR" button at the bottom: scan the code with your phone and the 3D model appears right inside your camera. The customer can move it around the screen and scale it to the size of the space, to better picture how a given item fits into their interior.
Newsletter signup

Banners

Design
At the start of the project the client already had a finished design. We didn't change it dramatically, but we ran an audit and suggested a few simple improvements (adjusting the background color, font sizes, product-card widths, and so on) to make shopping more comfortable.
Tech stack
- Frontend: Next.js
- Backend: Laravel (PHP)
- Databases: PostgreSQL, Redis
- Admin panel: Admiral
- Infrastructure: Nginx, Docker, Caddy, Docker Compose

Team







Timeline
We kicked off with the client on September 10, 2025, and shipped the first release on January 27, 2026. The whole process (including signing contracts, the discovery phase, and a break for the winter holidays) took 4.5 months, of which 3 months went to development. In that time we:
Migration on Laravel
Three in One
Integration Ecosystem
MVP is Already in Action
Product roadmap
Launching the MVP is just the beginning. The platform keeps evolving: we're refining functionality and adding new integrations.
Settlements with sellers
The platform continues to develop — a more flexible solution for settlements with sellers is currently in the works, which will be needed as the number of partners and orders grows. The standard payment module doesn't yet cover every scaling scenario, so we're building custom logic tailored to the client's specific needs. A custom solution has its upsides: in the future we'll be able to roll out new features for customers — for example, saving payment cards in their account.