Why we left Salla and built Seven Caravans from scratch
When a SaaS storefront becomes the bottleneck, migration isn’t a luxury — it’s survival. Here’s how we moved a coffee roastery to a custom commerce stack without losing a single customer.
There’s a moment, in every fast-growing Saudi e-commerce business, when the SaaS storefront stops feeling like a launchpad and starts feeling like a ceiling.
For Seven Caravans — a specialty coffee roastery shipping to subscribers across the Kingdom — that moment came at around 4 seconds of average page-load time, and a checkout that couldn’t handle their actual subscription model without three or four operational workarounds.
This is the story of how we migrated them off Salla and rebuilt their store as a custom Next.js platform — without losing a single customer, a single order record, or a single piece of organic search traffic.
The constraint everyone misses
Most SaaS-to-custom migrations fail in the same place: data integrity. Not the design, not the performance, not the launch. The data.
You can rebuild a beautiful storefront in eight weeks. What you can’t rebuild is twelve months of customer addresses, subscription cadences, loyalty points, and order history — at least not without a careful plan.
Our first month of work on Seven Caravans was almost entirely audit and mapping:
- Every product SKU and its variants, including legacy items kept around “just in case.”
- Every customer record, including duplicates created when the same person used different emails for guest checkouts.
- Every URL, including category pages that nobody had visited in eight months but Google still indexed.
- Every subscription, with its renewal cadence, payment method, gift status, and pause history.
Only after that audit did we touch a single line of new code.
The migration plan
We chose a dual-write window — both the old Salla store and the new Next.js storefront accepting traffic, with orders and customer updates written to both backends in real time. This is more expensive than a hard cutover. It’s also the only way to ensure zero data loss.
The cutover itself took two hours: DNS flip, redirect map activation (every legacy URL → its new equivalent), and a final reconciliation pass to confirm nothing landed in Salla in the cutover window.
What we measured
After 30 days on the new platform:
- Page load: −72%. From 4.1s to 1.15s on 4G.
- Subscription checkout conversion: ×2.3. Custom checkout that actually understands the subscription model.
- Operational tickets: −60%. The back office finally matches how the business thinks.
What we didn’t change
We kept the brand. We kept the product photography. We kept the voice. The migration wasn’t a redesign — it was a re-platforming. The customer-facing experience felt familiar, just dramatically faster.
That restraint is the point. Migration is hard enough without using it as an excuse to also rebrand, re-photograph, and re-message.
If you’re running on Salla, Zid, or Shopify and feeling the ceiling, start a project with us — we’ve done this before, and we can do it without breaking what already works.