Building a lifecycle-driven ecommerce system
Redesigned the experience as a lifecycle-driven system: persistent store creation, structured onboarding with readiness states, and a unified operational dashboard. The result transformed ecommerce from a scattered feature set into a measurable, state-aware revenue system.
Date
Nov 2025 – Feb 2026
Role
Product Designer, Leading Ecommerce Stores
Company
HighLevel
Services
Product Design, UX Architecture, Interface Design, Design Systems, Lifecycle Strategy
Context
HighLevel’s ecommerce functionality had grown across multiple surfaces - Stores, Products, Payments, Shipping, Notifications, Apps. Each worked independently. Together, they formed a fragmented activation experience.
The data exposed the risk:
Conversion from store creation to successful store was 0.14%
Median time to first transaction was over 5 days
Setup required navigating across disconnected areas
Ecommerce was available, but not operationalized.
This initiative combined:
A structured onboarding flow.
A dual-state store surface redesign.
The goal was systemic: reduce activation friction and create a lifecycle-aware control center.
The real problem
Activation was not modeled as a system
Store creation did not guarantee readiness. Users could:
Create a store
Never add products
Never connect payments
Never validate checkout
There was no enforced milestone structure.
The UI ignored lifecycle stage
Users with zero stores saw the same structural shell as experienced users.
The system failed to distinguish:
Exploration
Configuration
Operation
Lifecycle blindness caused confusion and drop-off.
No operational command center
Existing users lacked:
Revenue visibility
Clear store status
Organizational controls
Suggested next actions
The store surface behaved like settings, not revenue infrastructure.
Design principle
I anchored the redesign on a single principle:
The system should adapt to the user’s stage, not force the user to adapt to the system.
The system must:
Persist intent immediately
Gate critical milestones
Allow controlled skipping
Reflect readiness state clearly
Instrument every transition
The solution
1. Lifecycle-driven entry logic
We introduced explicit state routing:
0 stores → New user store page
≥1 store → Existing dashboard
This removed ambiguous entry states and ensured contextually correct surfaces.
2. New user store page (zero stores)
Instead of a thin empty state, I designed a dedicated activation surface.
Hero and primary activation
The page clarifies value and directs action immediately.

This surface does three things:
Establish value proposition
Present a primary “Create your first store” CTA
Offer template acceleration below
The template grid reduces decision latency while preserving flexibility.
This is not marketing. It is uncertainty reduction.
3. Immediate store persistence
When the user clicks Create store, we open the creation modal.

The key decision:
The store entity is created immediately upon confirmation.
If the user exits later, the store persists.
Creation precedes configuration.
This eliminates pre-persistence drop-off, a common silent failure in activation flows.
4. Structured onboarding flow (stateful progression)
After creation, the user enters a stepper-driven flow.
Step 1: Store details


Key design decisions:
Live preview reinforces progress
Domain connection optional
Required fields enforced
Skip only allowed after store creation
The right-side preview transforms configuration from abstract settings into tangible output.
Step 2: Setup products

Trade-off handled here:
Users can add at least one product
Or skip
But skip results in “Incomplete” store state
We chose flexibility with consequence instead of forced friction.
Step 3: Setup payment provider

Step 4: Setup shipping & delivery

5. Existing user dashboard (1+ stores)
Once at least one store exists, the system transitions to operational mode.
Analytics as top-layer context

This reframes the store surface around revenue:
Total revenue
Total orders
Unique visitors
Active sessions
These are not vanity metrics. They anchor store health.
We reused existing analytics APIs, but repositioned them strategically.
Persistent activation layer
Clicking “Complete setup” opens a right-side milestone panel.
Customize store
Add domain
Add products
Connect payments
Configure shipping
Place test order

Progress updates dynamically (e.g., 0/6 → 5/6).
The same readiness logic defined in onboarding drives this panel.
Activation becomes ambient rather than disruptive.
Contextual expansion overlays
Cards such as Product updates, Suggested for you, and Help & documentation open standardized right-side overlays.
They are:
State-aware
Role-aware
Non-disruptive
Context-preserving

This adds a growth layer without increasing navigation complexity.
6. Unified product management system
Rather than redesigning subpages, I unified them under a coherent tab architecture.
Products table view

Clear visibility into:
Publishing status
Product type
Value
Update timestamp
Operational clarity without visual reinvention.
Products grid view

The grid supports media-first scanning while preserving metadata density.
This dual-mode system supports both catalog-heavy stores and service businesses.
7. Collections system

Collections are rule-based groupings (e.g., price-based or title-based conditions).
This supports:
Merchandising
Category automation
Dynamic storefront logic
It reinforces that ecommerce here is not static pages, it is structured data.
8. Upsells & bundles performance

This module shows:
Impressions
Clicks
Orders
Sales
The key shift: advanced selling features are now measured within the same ecosystem.
Bundling is no longer an isolated feature, it is performance-linked.
9. Reviews moderation system

We introduced visibility into:
Pending reviews
Approved
Unapproved
Trash
This supports store credibility management directly within the store surface.
10. Inventory management

This view surfaces:
SKU
Quantity
Track inventory toggle
Continue selling toggle
This reflects operational maturity.
Once activated, store management becomes inventory governance.
Designing for complexity
This project operated under strict constraints:
No backend logic changes
Existing APIs reused
Subpages not redesigned
Apps visibility controlled at agency level
Persistent onboarding state required
The complexity was orchestration, not feature invention.
We modeled explicit store states:
Incomplete
Verified
Live
This removed ambiguity about readiness.
Automation and measurement
Each onboarding milestone fires tracked events:
Store created
Product added
Payment connected
Test order placed
We track:
Step number
Skipped vs completed
Time per step
Activation is now measurable infrastructure.
Outcome and impact
At the time of writing, quantitative post-launch metrics are still being collected.
This initiative was designed to address measurable gaps in activation and store readiness:
Drop-offs before payment connection
Incomplete store configurations
Delayed time-to-first-transaction
The system introduced:
Immediate store persistence
Explicit readiness states (Incomplete, Verified, Live)
Lifecycle-aware routing
Step-level instrumentation across onboarding
Every milestone now fires structured analytics events, enabling precise tracking of:
Store creation → test order completion
Step-level drop-off
Time to first product
Setup completion rates
The primary outcome of this project was structural:
Ecommerce activation is now measurable, state-aware, and architecturally coherent.
Quantitative performance analysis is scheduled for Q2 2026 after full rollout.


