Case study · Social commerce

Every reel is a storefront.

Tornado is a social commerce platform designed and engineered by HALO Studio. Three purpose-built apps, for shoppers, creators and brands, run from one Flutter codebase and share one live state, so a change in one app shows up in the others straight away.

Creator Studio home with withdrawable balance, escrow and tier
Shots: a vertical video with an Unfiltered badge and a product card with Add to cart
Brand home with settlements, escrow, sales and action tiles
Creator · Shopper · Brand, one live state
Product
Shopper · Creator Studio · Tornado for Brands
Platforms
iOS · Android · Web
Built with
Flutter, Dart and Riverpod, one codebase
Stage
Complete front end, tested, on sample data
What we built

Social commerce usually splits people across tools. Tornado puts the whole sale in one system.

  • A
    Shopper appStories, posts, shots and live rooms, with add-to-cart inside the video.
  • B
    Creator StudioCreate or go live, sell from a product shelf, run memberships and read earnings.
  • C
    Tornado for BrandsOrders, returns, catalogue, creator requests, sample dispatch and analytics.
  • D
    Escrow and money enginesPayment protection, commission tiers and membership splits, balanced to the paisa.
  • E
    Glass design systemOne dark frosted-glass language across all three apps.
Market evaluation

Creators already move the money. The checkout is still elsewhere.

In India, buying decisions increasingly start with a creator, then finish on a different app. That gap costs everyone: the shopper loses the context, the creator loses the credit, and the brand can't see what worked. Tornado closes it by putting the sale inside the content.

$1tn+
Creator-influenced spending in India by 2030
Up from an estimated $350–400bn a year today, according to BCG's 2025 report.
BCG, From Content to Commerce
2–2.5M
Monetised content creators in India
These are the people Creator Studio is built for.
BCG, via press coverage of the report
$15.2bn
India social e-commerce by 2031
From $8.4bn in 2025, in a conservative estimate. Forecasts vary widely by definition: Bain and Sequoia projected $60–70bn in revenue by 2030 back in 2020.
Ken Research · Bain and Sequoia
Who it serves

Three sides of one sale.

A social commerce platform only works when all three sides trust it. Each app is built around what that person needs to see, and none of them has to take the others' word for it.

The shopper

Wants it to look the way it arrives

Someone who discovers products through people they follow, and has been let down by filtered photos.

  • Unfiltered content, with a badge on shots
  • Add to cart without leaving the video
  • Money protected until the order is right
  • Notifications for every order step
The creator

Wants income they can read

Someone with an audience who wants commission, memberships and samples in one place.

  • Wallet, tier and 7-day numbers at a glance
  • Exact payout shown per membership
  • A live control room for the product shelf
  • Request brands' products from one marketplace
The brand

Wants to know which creators sell

A seller that needs creator reach without losing track of stock, samples or returns.

  • Settlements, escrow and sales on one home screen
  • Creator ROI and a leaderboard
  • Every free sample tracked to delivery
  • Approve or contest returns in one flow
Pain points we solve

Trust problems with product answers.

Shopper

It looked better in the video

Filters and beauty effects make products look different from what arrives.

Shots, posts and lives publish as captured, with no colour filters, beauty effects or AR. Creators confirm this before every publish.

Shopper

Paying a seller you don't know

Social selling often means sending money and hoping.

Payment stays in escrow through shipping and delivery, followed by a 7-day inspection window. A dispute can be raised before the money moves.

Creator

Earnings nobody can explain

Commission statements arrive late and don't show their working.

Each order's split is frozen at purchase, and the membership screen shows the exact amount per member before a creator sets a price.

Creator

Selling live means juggling

Reading chat, managing products and watching stock all at once.

A control room lets creators add, remove and pin products mid-stream, while seeing viewers and carts. The shopper's shelf follows along.

Brand

Free samples disappear

Products go out to creators with no record of what happened next.

Every sample moves from Scheduled to Packed, Dispatched and Delivered, with the courier, AWB, due dates and overdue flags.

Brand

Who deserves a sample?

Requests pile up, and every answer is a judgement call.

Each request comes with a recommendation: a free sample at 100K followers or more, or a 20% off suggestion below that. Each decision sends the creator a message.

How it works

One order, protected at every step.

Every order moves through a strict set of states. A step that isn't allowed is rejected with an error, so an order can't quietly skip to payout.

held

Payment protected

The shopper pays and the money is held. The order can still be cancelled before it ships.

Shopper app
shipped

On the way

The brand accepts, packs and ships. The shopper is told at each step.

Brand app
delivered

At the door

Delivery opens a 7-day inspection window for the shopper.

Carrier
confirmed

Accepted

The shopper confirms receipt, or the window ends without a dispute.

Shopper app
released

Everyone is paid

The payout runs using the split frozen at purchase. A dispute would go to review first.

Platform
Tornado for Brands

Edits a product

Price, stock, sizes and media change in the catalogue.

The same product record, not a copy
One live state

Shared by all three apps

Commerce, creator, brand, social and notification state live together, so the apps can't drift apart.

Riverpod · 37 automated tests
Creator · Shopper

See it straight away

A creator pins the product mid-live, and the shopper's shelf updates in the same moment.

Shown side by side in the demo
The product

Three apps, one design language.

These are real screens from the running apps, using sample data and sample video.

Shopper app

Discovery first, with the cart never more than a tap away.

5 screens · scroll →
Shopper home with stories, live rooms and a creator post
01HomeStories, lives, posts and inline shots.
A vertical video with an Unfiltered badge and a product card
02ShotsAdd to cart inside the video.
A live room with viewer count, chat and a product shelf
03LiveChat, hearts and a shelf that updates live.
Product page with price, reviews and the creator who sparked the purchase
04ProductReviews, and the creator behind the sale.
Cart with a Tornado Protect escrow explanation and a Checkout button
05CartTornado Protect, explained before paying.

Creator Studio

A business dashboard for someone whose business is their audience.

4 screens · scroll →
Studio home with withdrawable balance, escrow and tier
01StudioWallet, tier and 7-day numbers.
Analytics with earnings, commission over time and KPIs
02AnalyticsEarnings, funnel and top products.
Membership tiers with the exact payout per member
03MembershipsThe exact payout per member.
Affiliate marketplace listing products with the creator's earning per sale
04ShopFind products, and see the earning per sale.

Tornado for Brands

Run the catalogue, the orders and the creator relationships together.

4 screens · scroll →
Brand home with settlements, escrow, sales and action tiles
01HomeSettlements, escrow and sales.
Brand analytics with sales, fees, creator ROI and channel split
02AnalyticsCreator ROI and channel split.
Creator collaboration requests with a recommended next step
03CreatorsRequests with a recommended next step.
Dispatch schedule tracking free samples from scheduled to delivered
04DispatchEvery sample, tracked to delivery.
Money, to the paisa

Every rupee has a reason.

All money is stored as whole paise, never decimals, so rounding can't lose a paisa. Each share is calculated and whatever remains is computed by subtraction, so every split balances exactly. These rates are the build's defaults and can be changed for a real launch.

A ₹1,000 order, from an Established creator

ShareRuleAmount
CreatorRising 3% · Established 5% · Elite 6.5%₹50.00
Payment gateway2%₹20.00
Logistics6.7%, when the platform fulfils₹67.00
Platform8%₹80.00
BrandThe rest₹783.00

An organic purchase, with no creator involved, pays no creator commission.

A ₹99 membership

StepRule
GST18% carved out of the inclusive price
Payment gateway2% of the charge
Tornado, year one12% of the post-GST amount
Tornado, after 12 months8%, rewarding retention
CreatorThe rest: ₹71.85 in year one

Memberships are digital, so they settle straight away rather than through escrow.

How it's used

One product, from catalogue to payout.

  1. List the product

    Brand · Products

    Add price, stock, sizes and media, and publish the listing.

  2. Connect with creators

    Creator · Shop → Brand · Creators

    A creator requests the product. The brand sees a recommendation, decides, and the creator gets a message with the sample date or a 20% code.

  3. Ship the sample

    Brand · Dispatch schedule

    The sample is tracked through Scheduled, Packed, Dispatched and Delivered, and the creator is notified at each step.

  4. Create or go live

    Creator · + Create

    Publish a shot or post after confirming the no-filter policy, or go live and manage the shelf from the control room.

  5. Shopper buys inside the content

    Shopper · Shots, Live, Cart

    Add to cart in the video, check out with payment protected, and follow every order step.

  6. Read what worked

    Creator and Brand · Analytics

    Both see the results over 7, 30 or 90 days: sales, funnel, top products, cities and creator ROI.

Tech stack

One codebase, three separate apps.

Each app can run alone or side by side with the others, which is how we prove they stay in sync.

LayerWhat we useWhy it matters to you
AppsFlutterDartiOS, Android and web from one codebase, with a separate entry point for each app.
StateRiverpodCommerce, creator, brand, social and notification state are shared, so the apps always agree.
EscrowState machineOnly listed transitions are possible. Anything else raises an error rather than silently doing nothing.
MoneyInteger paiseCommission engineSubscription engineSplits balance exactly, and are frozen at purchase so later rate changes can't rewrite past orders.
DesignGlass design systemVideo surfaceOne set of components across the apps, so a change is made once.
Quality37 automated testsDomain, social and cross-app sync tests, so a change in one app can't quietly break another.
Taking it to market

What a real launch would add.

The product is complete on the front end, with its money rules and state tested. A live launch connects it to real services. We scope and fix the price of this after a discovery conversation.

  1. Build the backend

    HALO

    Accounts and sign-in, a production database, and the shared state moved to a server, keeping the same rules the tests already prove.

  2. Connect payments and escrow

    Your accounts · HALO connects

    A gateway that supports held and split payments, such as Razorpay Route or Cashfree Easy Split, with the holding structure confirmed with your finance and legal advisers.

  3. Add real video

    HALO

    Camera capture, uploads, storage and delivery, plus a live streaming provider, in place of the sample clips.

  4. Connect logistics

    Your accounts · HALO connects

    A shipping partner for labels, AWB numbers and delivery events, which also start the inspection window.

  5. Publish and pilot

    You · HALO on call

    Store listings under your developer accounts, then a closed pilot with a small group of brands and creators before opening up.

What it costs to run

Required to launch Usage-based grows with use
ItemTypeTypical providersIndicative price
Apple Developer ProgramRequiredApple$99 / year
Google Play ConsoleRequiredGoogle$25 one-time
Cloud server and databaseRequiredAWS, Google Cloud, AzureSized to your launch
SMS sign-in codesUsage-basedMSG91, Gupshup, Twilio~₹0.15–0.25 / OTP
Payment gatewayUsage-basedRazorpay, Cashfree~2% / payment
Video storage and deliveryUsage-basedCloudflare Stream, MuxBy minutes stored and watched
Live streamingUsage-basedLiveKit, Agora, 100msBy minutes streamed
ShippingUsage-basedShiprocket, DelhiveryPer shipment

Prices are indicative and exclude taxes. Providers change their pricing, so we confirm current rates when scoping. Video and shipping depend heavily on volume, so we estimate them from your expected traffic.

Working today

Built and tested

  • All three apps, in sync through one shared state
  • Shots, posts, live rooms, chat, sharing and privacy controls
  • Cart, orders, returns and the escrow lifecycle
  • Commission tiers, memberships and analytics
  • Creator requests and sample dispatch
Not connected yet

Added for a live launch

  • A production backend and sign-in
  • Real camera capture and uploads (sample clips stand in today)
  • A live payment gateway
  • Live streaming and shipping providers
  • Store listings under your developer accounts
Start your journey

Got a marketplace worth building?

Tell us who buys, who sells and what makes them trust each other. We'll show you Tornado running, then send a fixed proposal for your version.

Start a project halostudio.in@gmail.com