A CRM built around how you actually sell.

Pipelines, properties and permissions mapped to your real sales process, not the default setup.

Six services. One revenue system.

E-commerce services/Page Pros/Chapter one

Built in 2023. Proved in 2024.

Page Pros had no revenue system yet. Store, subscriptions, payments, marketing, and CRM went in as one design. Eighteen months later a core component was replaced without the business stopping.

StackWooCommerce + Subscriptions·Square·Custom order form·ActiveCampaign → HubSpot (all hubs)·Webflow·Zapier

The symptom

Most businesses call us with a mess. Page Pros had the rarer problem: a business ready to sell, with nothing underneath it yet.

Three subscription products, small-business customers across the US and Canada, and no store, no billing, no CRM, no marketing engine.

The risk in that position isn’t the mess you have. It’s the mess you’re about to buy. Pick tools one purchase at a time, each solving whatever hurt that month, and eighteen months later you own the duct-taped stack everyone else calls us to escape.

Nobody sets out to build one. They’re built by a sequence of reasonable decisions taken in the wrong order.

What we built

Two to three months in 2023, designed as one system rather than assembled as six.

WooCommerce as the store, with WooCommerce Subscriptions carrying the recurring revenue, because subscription income is the business rather than a plugin afterthought. Square handling payments. ActiveCampaign wired in for marketing automation from day one, rather than bolted on once the customer list got big enough to be a problem. A Webflow marketing site on top, fast and editable, connected to the engine underneath instead of parked beside it. Zapier as the connective layer between them.

The part that mattered most was the smallest.

The default checkout is designed for a customer buying alone, and that isn’t how this business sells. Sales reps place orders with customers on the phone. So we built a custom WooCommerce order form around the way the sale actually happens.

The order form — four decisions
Rep attribution at source
Every sale is assigned to the rep who made it at the moment the order is placed — a fact captured at source instead of reconstructed later from memory and a spreadsheet.
Industry captured on the same screen
Segmentation exists from the first transaction rather than being retrofitted across thousands of records a year on.
Auto-signout on confirm
The next call starts clean, and no order is ever attributed to whoever last used that machine.
Branded like Page Pros
A customer handing over a card mid-call needs to feel like they're still buying from the company they're talking to.

The test

Then the business grew, and by late 2024 its marketing needs had outgrown ActiveCampaign. That’s the moment a stack finds out what it is.

Replacing a marketing automation platform in a live subscription business is open-heart surgery on a patient who is still working. Customer records, subscription states, billing events, and the automations firing off all of them have to keep functioning while the thing they depend on is swapped underneath them. In a pile of tools connected by whatever worked at the time, this is where the wheels come off, because nobody can say with confidence what depends on what.

We migrated the operation to HubSpot: the full platform, all hubs. Mapped, cleaned, validated. Because the stack had been built as a system with defined handoffs rather than a collection of integrations, the engine kept running while one of its components was replaced.

That is the outcome of this chapter, and we’d rather have it than a percentage. An architecture is a claim until something has to be pulled out of it. This one was pulled at, and it held.

What happened next

Eighteen months of a business running hard through a system does things no design session anticipates. Volume arrives, people find shortcuts, platforms enforce limits nobody hit on day one, and the seams between tools become the interesting part.

Built as a system, so it survived being taken apart.