Home/Systems/Roli Shoes
Retail & E-Commerce

Sells at 2am. Follows up by 9.

Roli Shoes didn't need a prettier website. It needed a machine: a storefront that takes the order, a CRM that catches the customer, automation that follows up without anyone remembering to, and a phone app so the whole thing fits in a pocket. We built all four and wired them to one backend.

Powered by 27th Marketing
rolishoes.ph
ROLI SHOES
ShopCollectionsStorySupport
Cart · 2
— New drop

Built for
the street.

Free shipping nationwide · 30-day returns · Pay on delivery or online.

👟
Street Low₱5,995
👟
Run Pro X₱7,495
👟
Limited Drop₱12,995
rolishoes.ph/admin
Roli CRM
DashboardLeadsOrdersInventoryAutomationBotAnalyticsTeam
DashboardToday
Leads284
Orders47
Revenue₱94K
Low stock3
New leads, auto-captured
Maria SantosCheckout · Street Low 38New
Jake ReyesChat bot · size questionFollow-up 2/4
Ana CruzNewsletter · welcome sentNurturing
Client
Roli Shoes, footwear retail
Scope
Storefront · CRM · Mobile app · Deployment
Stack
React · FastAPI · Expo · Docker + nginx
Status
Shipped, live on HTTPS
The problem

A shop that stopped
working at closing time.

Orders arrived in three places: a chat inbox, a notebook, and someone's memory. Stock counts were a guess by Friday. Customers who asked about a size on Tuesday were never heard from again, because nobody's job was to remember them.

Inquiries lived in DMs and died there
No follow-up after a sale, so no second sale
Stock was counted by hand, and wrong
Nothing worked away from the shop's desktop
What we changed

One backend became the single source of truth. The storefront, the admin CRM and the phone app all read and write the same data, so a sale on the website, a walk-in at the counter and a stock edit on someone's phone are the same event. Nothing gets typed twice, and nothing gets lost between apps.

React storefrontReact adminExpo / React NativeFastAPIDocker + nginxHTTPS on a real domain
Inside the system

Nine screens. One
compounding machine.

Get a walkthrough
📊Dashboard

Leads, orders, revenue and low stock, the whole shop in one glance.

🎯Leads

Every checkout, chat and signup becomes a customer record automatically.

📦Orders

Order status, fulfilment and the customer history behind each one.

🏷️Inventory

Counts down on every sale and flags low stock before it sells out.

Email automation

Follow-up sequences queued on purchase, wording and timing editable.

🤖Auto-reply bot

Storefront chat bubble with your rules, tone, office hours, lead capture.

📈Analytics

Customers per day, emails sent, revenue and live stock levels.

📚Catalog

Styles and colourways edited once, published to shop and app together.

🔐Team & security

Admin / Boss / Staff roles with optional two-factor authentication.

📱Mobile app

Dashboard, POS, leads, orders and inventory on a phone, via Expo Go.

The parts that make money

Three things run
whether anyone logs in or not.

🎯

The lead catcher

Every checkout posts the customer, name, mobile, email, what they bought and what they spent, straight into the CRM. Chat conversations and newsletter signups land there too. The number of leads typed in by hand is zero.

✉️

The follow-up sequence

A purchase queues a follow-up series: thank you, care instructions, then the nudge back. Messages, timing and sender are editable in the CRM, so the shop changes its own copy without calling us.

🤖

The auto-reply bot

The chat bubble on the storefront answers with keyword rules the owner controls, tone, office hours, fallback message, and captures the visitor as a lead while it's answering.

📦

Stock that counts itself

Inventory decrements on every sale, online and at the counter, and raises a low-stock flag at the threshold you set. The Friday recount stops being a job.

🔐

Security that survives being online

Role-based access, TOTP two-factor, HTTP-only secure cookies, CSRF protection, security headers and login rate-limiting. The admin UI is static files, every request is re-checked by the API.

🚀

Shipped, not demoed

Docker + nginx with Let's Encrypt, one command to deploy, daily database backups, and an SMS/e-mail layer that goes live the moment credentials are pasted in.

Roli POSLive
Today₱18K
Sales9
Quick sale
Street Low · 42₱5,995
Run Pro X · 39₱7,495
Socks 3-pack₱450
Low stock
Limited Drop · 412 left
On the floor

The CRM, in a
pocket.

The same backend, from a phone. Sell at a pop-up, check stock in the stockroom, answer a lead on the commute. It runs through Expo Go, so there's no app-store account to buy and no review queue to wait on.

Point of sale for walk-ins and field selling
Leads and orders, with full customer history
Inventory edits that sync to the storefront instantly
Appointments and fittings on the same calendar
4Apps, one backendshop · CRM · catalog · phone
10CRM modulesdashboard through security
0Leads typed by handcapture is automatic
24/7Replies & follow-upsbot and sequences never sleep
How it got built

Scoped, shipped,
handed over.

01

Map the shop

Every way a customer arrives and every way an order leaves, written down before a line of code.

02

Backend first

One API for products, orders, leads, stock and automation, so the apps can't drift apart.

03

Storefront + CRM

The shop customers see and the back office the team runs, built against the same contracts.

04

Deploy & train

HTTPS on the real domain, backups scheduled, then a walkthrough so the team owns it.

Designed, built and powered by 27th Marketing.

We don't hand over a folder of files and disappear. The system is deployed, documented and yours, and we stay on to run it with you.

27th Marketing
More systems

Want the same engine
behind your shop?

Tell us how you sell today. We'll scope the storefront, the CRM and the automation, and give you a fixed number and a date.