Skip to content

Reviews, loyalty, referrals and wishlists. Live on your store today.

Four complete products on one customer record, so a review earns points and a referral credits whoever sent it. Connect Shopify in one click, or put Cascade on any storefront with a script tag and a REST API.

The Cascade review queue: ten reviews listed with star ratings, product and customer, including a spam submission caught before it reached the storefront.
A four-star review open in Cascade’s detail pane, showing the customer, the product, the moderation date and an Unpublish action.
4.8
128 reviews

Four products. Take what you need.

Each one is a full product, switched on when you want it. They share one customer record, which is where the compounding starts: a review earns points, and a wishlist tells you who to email when something is back in stock.

Reviews
Request emails with the stars built in, a moderation queue, photo and video, merchant replies, and schema.org data for star snippets in search.
Loyalty
A points currency you name, rules for joining, visiting, buying, referring and birthdays, plus stamp cards and offers.
Referrals
Links that credit the customer who sent the order, paid out in the same points they already collect.
Wishlists
Everything a customer saved and has not bought yet, on the same record as their orders and reviews.

If you are paying for a reviews app, a loyalty app and a wishlist app today, Cascade covers all three, and your reviews come with you.

Collect them, then decide what goes live.

A request email goes out after the order, with the star rating built into the email so the customer can start the review in one click. What comes back lands in a queue, not on your product page.

  • Photo and video reviews, copied into your own storage rather than linked from somewhere else.
  • Auto-publish above a rating you set, so only the reviews that need a person get queued.
  • Star snippets and schema.org structured data, so ratings can appear in search results.
Review request, day 7 after delivery

How was your Classic T-Shirt?

Hi Alice. Tap a star to start your review; it takes about a minute.

Points, stamp cards and offers, without a developer.

Name your own currency, then set what earns it: joining, visiting, buying, referring, having a birthday. Balances and redemptions run against the same customers your orders and reviews already point at.

Rewards are money off or free shipping, capped where you want them. Stamp cards cover the buy-nine-get-one case that a points balance handles badly.

Cascade’s loyalty program setup: a points currency named Stars, earning rules for a welcome bonus, a daily visit and a birthday, and rewards for money off and free shipping.
Coffee card

7 of 9

Two more and the tenth is free.

Referrals with names on them.

A referral link belongs to a customer, not a campaign. When someone follows it and orders, Cascade writes the credit against the sender: who referred whom, which order, and what it earned them.

Rewards pay out in the loyalty points you already run, so the person doing the referring spends them the same way they spend everything else.

  1. Alice shares her referral link

    From her account page, Tuesday

  2. Dave places his first order

    $64.00, Thursday

  3. Alice is credited automatically

    +250 ⭐

    Spendable on her next order

Saved items are a demand signal.

A wishlist tells you what a customer wants before they buy it, and what they are waiting on. It is the same customer record as everything else, so you already know what they ordered and what they thought of it.

A customer wishlist open in Cascade, listing the saved products, the customer it belongs to, and a note explaining what the list is for.

Built API-first. Bring any store.

The dashboard is a client of the same REST API your key unlocks, so anything Cascade can do from a screen, your code can do from a request.

  • The widgets are one script tag. If your storefront renders HTML, they run on it.
  • Shopify connects in one click: products, customers and orders sync in, and webhooks keep them current.
  • Everywhere else, records arrive by CSV or the API, and webhooks push changes back to you.
The widgets: one script tag
<script src="https://cdn.cascade.example/embed.js"
  data-cascade-publishable-key="pk_live_9f2c"></script>

<div data-cascade-reviews="classic-tee"></div>
The API: everything the dashboard does
GET /reviews?filter={"rating":{"$gte":4}}
POST /reviews/bulk-update
POST /loyalty-programs

Arrive with your history. Leave with it too.

The reason merchants stay on a review app they have outgrown is the reviews themselves. Cascade imports them as CSV, and the import is built on the assumption that the export will be messy.

  1. Step 1

    Export from your current app.

    Whatever columns come out, Cascade matches customers by email address and products by handle.

  2. Step 2

    Import the file.

    A row it cannot resolve is skipped and reported with its line number. One unknown product handle loses you a single row, and the other nine thousand still land.

  3. Step 3

    Fix those rows and run it again.

    Imports are keyed on each review’s original ID, so a second pass updates what it already created instead of adding a duplicate.

Imported reviews arrive already moderated, so ten years of history does not land in the queue in front of this morning’s four. And the door swings both ways: every review exports back to CSV whenever you ask, media included.