Skip to main content
Visible only when your shop is connected to Loyverse POS. Not connected yet? See Loyverse integration for the connect flow.
Without linking: Pulse shows total revenue. With linking: the Recipes index shows per-recipe sales count, revenue, and gross margin.

Map what sells first

The page opens on Best sellers — variants ranked by units sold in the last 30 days, with a Last sold column beside it. A catalog of 90 variants usually has 30-odd carrying the business and a long tail that hasn’t sold in months; this is how you tell them apart before spending an evening mapping. Switch to A–Z when you’re hunting for one specific variant rather than working down the list.

Choosing the period

This month / Last 30 days / Last 90 days sets what the Sold column counts. This month is the calendar month, so it resets on the 1st — useful when you’re working through the catalog in sittings and only want to see what’s rung up since you last looked. Last sold ignores the period. It always looks back 90 days, because it answers a different question: not “how much”, but “is this still on the menu at all”.

The counters

The four tiles count what sold in the selected period, and each one filters the table to match: Unmapped deliberately excludes items that didn’t sell. A shop with 91 catalog items and 12 active ones has 12 decisions to make this month, not 91 — a backlog you can never clear is one you stop reading.
Both columns count receipts, not ringgit — you’re ranking by how often you’d use the recipe, and revenue would push a RM 45 bag of beans above a latte you sell 200 of. Refunds are ignored: a refund means a transaction was reversed, not that the drink is unpopular.
The figures appear whether or not a variant is mapped — they’re read from your receipt history directly, so they’re there from the moment Loyverse is connected and backfilled.

Variations

If you price through modifiers — one Cafe Latte item with hot and ice options rather than two separate items — each row shows a N variations link. Open it to see every combination customers have actually ordered, with its own sold count and price. This is where the price column earns its place: A gap like that says the two aren’t the same drink — iced needs ice, often more milk, sometimes a different cup — so costing them as one recipe would quietly overstate the margin on one and understate the other.

Variations follow the base row

You don’t map every combination. A variation shows Follows base, meaning it counts against whatever recipe you mapped the item to. Map Cafe Latte once and all 20 of its variations are covered. Override a variation only where the ingredients genuinely differ. Open its picker and pick a recipe, and only that combination changes — everything else keeps following the base. The item row then shows how many you’ve costed separately.
Start by overriding hot vs iced on your top few drinks. That’s usually where the real cost difference sits; sizes and syrups matter less than they look.
Price differences don’t always mean recipe differences. Delivery-platform orders often carry their own higher-priced modifier options to cover commission — same drink, different price. Compare the option names, not just the figures.

How to map (one-time per variant)

1

Open Loyverse Items

Sidebar → Loyverse Items. Each row is a Loyverse variant (e.g. “Latte (Hot)”, “Latte (Iced)”) grouped by parent item.
2

Pick a Recipe

From the dropdown next to each variant. Multiple variants can map to the same Recipe — Hot + Iced Latte → one “Latte” recipe.
3

Sync now (if needed)

The Sync now button at the top pulls the latest catalog from Loyverse. 5-minute cooldown between syncs to stay polite to the API.

What you get after mapping

  • Recipes index fills in three columns: Sold this month, Revenue, Gross margin. They only render in the index’s Full view — see Minimal and Full views if the index looks unchanged after mapping.
  • Backfill runs automatically — historical receipts that match the variant get attributed to the recipe within seconds.
  • The Recipes form shows a read-only “Linked Loyverse items” block listing what’s currently pointing at each recipe.

Variants without a recipe

  • Still count toward your total Pulse revenue.
  • You just don’t get the per-recipe breakdown for them.
  • Sidebar shows an “(N unmapped)” badge so you don’t forget.
Mapping is incremental: cover your top sellers first — the Best sellers sort puts them at the top — and come back to rare items later. The sidebar badge is your nudge; it ticks down as you map, but having unmapped variants doesn’t break anything.