Dashboard
Notifications · all clear
Store
Week — · Daily Breakdown
All Stores
Week — · Combined
Retail Summary
Loading…
Inventory
Add items to Clover POS
Results
| Name | Code | Price | Cost | Category | Tax | Hidden |
|---|
Bin Dump
Log a pallet into the bins from its tag
Mark Out of Stock
Scan a sticker, then say how many and why
Hold the QR in frame and it fills itself in. Typing works too — dots and
underscores both read, case doesn't matter, and a sticker with no price on it
(BL-10380) is fine.
- Item number auto
- —
- Item description auto
- —
- Cost each auto
- —
- Retail each auto
- —
- Date of MOS auto
- —
Nothing on file names item yet
Its stock has left Clover, so the app can't look the name up. Type it once — exactly as it reads on the tag — and every scan of this code after yours fills itself in.
| Sticker | Item # | Description | Qty | Cost | Retail | Reason |
|---|
BL-10380 is a
whole sticker — which still counts toward cost, because cost comes from the category.
Supply Request
Submit and track supply requests for your store
Submit Photos
Send store photos to the marketing team for upcoming posts.
Content
StudioDraft the post here, watch it take shape on the right.
✨ AI-drafted — edit as needed.
Premade thumbnails
Branded cover images used as the first image of a bin post. Tap AUTO on one to make it the cover for bin-photo auto-posts — otherwise the newest Bin Preview cover is used.
Post pipeline
Marketing
Meta ad performance
Campaigns
Comments
ReviewEvery reply is reviewed by you before it posts. Nothing here goes out on its own.
Manifests
A vendor's spreadsheet, scored against your criteria before the call.
Coverage
What each category gets of the floor, against what it sells. The gap is the buy or the cut.
Price Scan
Scan a barcode or type what it is. Prices from our criteria, our cost and our ASP.
Products
Everything we know about a product. The Price Scan screen and the Manifest Scorer both read these rows, so a correction here fixes both.
Velocity & Reach
What each category actually does per transaction, by store and against the chain.
Buy Criteria
What a buy has to pass, and what counts as core. Set it per category; add a specific one only when it needs to differ. Dollar $ is what a dollar store charges for a comparable item — a ceiling our suggested price is held under. Published versions never move.
Shelf Count
How many bays each core category has on your floor this week. An end cap counts as one bay.
Flow Calendar
The promotional pipeline — the F26 source of truth.
Scroll sideways to move across the year. Seasonal & program spans are best-estimate from the sheet.
Edit week
Band segment
Matching an existing row adds to it; a new label starts a new row.
eBay Cases
Shoes & Fashions · returns and item-not-received
▶Needs action
▶With eBay
Escalated, and the buyer can no longer escalate further — eBay owns the outcome.
These are appeal questions, not cases anyone can still resolve. Their total is shown
separately because it is not money still on the table.
▶With eBay
▶Recent Handler actions
What the bot did without being asked. Dry-run lines are written in shadow mode and
did not reach eBay.
Labor
——
—
Settings
- New Accessibility page in Settings — pick Light, Dark, or Pure black
- Pure black uses true #000 instead of dark mode's navy, so OLED phones switch those pixels off entirely
- Dim text is a step brighter on pure black, which makes it the most readable of the three
- The sidebar switch still just toggles on and off — it returns to whichever dark you chose
- Sign in with Face ID, Touch ID, or Android biometrics — no code required
- Register any device from Settings → Face Unlock / Biometrics
- Each device registers separately; remove passkeys any time from Settings
- Falls back to email sign-in if biometrics are unavailable
- Drag down from the top of the page to refresh dashboard data
- Indicator slides in showing "Pull to refresh" → "Release to refresh"
- Refresh button removed on mobile; remains on desktop
- Gift card sales now tracked as their own L2 category — "Gift Cards"
- Counts toward each store's net sales total
- Visible in Item Sales breakdown and T13 combined category charts
- Daily Sales Chart now shows a third orange bar — same week from last year
- Aligned by day of week so Monday lines up with Monday
- Weekly Sales Digest was firing Saturday morning due to a cron day-of-week bug
- Now correctly sends Sunday morning as intended, covering the full Sun–Sat week
- Items named "$3 Bin", "Fill a Bag", etc. now always route to Bin Products even if Clover loses the catalog category (e.g. after an item edit)
- Matches the same name patterns already used by the live dashboard tile
- Hourly push notifications now show budget alongside sales (e.g. $2,170 / $6,043 −64%)
- Percentage shows how far ahead or behind budget each store is at that hour
- Download PDF button on Weekly Retail Summary — exports the active tab as a branded native PDF
- Download CSV button — exports the active tab's tables and KPIs for Excel/Sheets
- Works on Summary, T13, and per-store tabs
- Added Combined Store Units Sold card on T13 — last 13 weeks × L2 categories
- Added Combined Stores Category Net Sales card on T13 — same shape, dollars
- Bin Products included as the 11th L2 category
- Removed the per-store net sales chart and trend table from T13
- Re-snapshot Item Sales now supports a Days back range to backfill multiple dates in one click
- New Rebuild Week Summaries button refreshes the trailing 13 weeks of pre-rolls
- Re-snapshot now auto-rebuilds the affected week's summary so T13 stays current
- Settings page now available to all users
- Change Log lives as an expandable row inside Settings
- Replaced Avg Time with ASP (Average Selling Price) across all dashboard views
- ASP calculates retail-only items, excluding bin products
- Day selector now defaults to today on the current week
- Fixed store cards showing incorrect live data in week view
- Sidebar now hides nav items users don't have access to
- Added Admin Settings page (superuser only) for advanced configuration
- Includes item cost management, inventory tools, and sale scheduling
- Bin products now excluded from Avg Cart calculation
- Added Bin Products as a Custom Sales Categorization L2 option
- Fixed bin product name matching to use correct label
- Added Weekly Retail Summary page with T13 week-over-week analysis
- Per-store breakdowns with budget vs actuals
- L2/L3 category drill-down across all stores
- Role-based access control: superuser, admin, district manager, manager
- Magic link + OTP login flow
- User invite, edit, and delete from the Users page
Push notifications
Loading…
Interval sales updates
Push notification with running totals for your stores
Use Face ID, Touch ID, or your device's biometrics to sign in without a code. Each device registers separately.
Accessibility
Theme
Pure black switches off the pixels behind every panel on an OLED phone, and lifts the dimmest text one step so it stays readable on the darker ground.
Admin Settings
Announcement
Compose a popup and push it to all users. It shows once per person on next open until they dismiss it. Pushing again re-shows it for everyone.
Optional detail after :: — e.g. Title :: short description
Repair console — Health check
Compares each day's stored item snapshot against D1's record of what that day actually sold, and reports the dates a re-snapshot would actually improve. Read-only — it pulls nothing from Clover and writes nothing, so it is safe to run any time. Uses the same threshold the backfill guard uses, so a date listed here is one the repair will accept.
By store
| Store | Days | OK | Needs repair | Recoverable | Uncosted |
|---|
Dates a repair would improve
Biggest recovery first. Everything not listed here is already at or above the threshold — re-snapshotting it would be refused as no improvement, and re-pulling an old date can lose refunds that have since dropped out of Clover's window.
| Store | Date | Status | Snapshot | D1 | Recoverable |
|---|
Backups
Every repair saves what it replaced. Restoring is itself reversible — the state you roll back from is saved too. Backups expire after 90 days.
| Taken | By | Dates |
|---|
Sticker template
What the shelf sticker prints, and where. Positions and sizes are dots on a 1 inch square label at 203 dpi, so 203 is the far edge. Saving applies to every store the next time anyone prints.
Positions and heights are exact — they are the same dots the printer is given. Widths are an estimate: the printer's font is proportional and this one is not, so a line may run shorter or longer than shown. Print a test label before trusting a roll to it.
Admin Tools
Re-build item sales snapshots from Clover for any past day. Set Days back > 1 to backfill a range ending at End Date. Use this after a categorization fix or to fill gaps before running Rebuild Week Summaries.
Rebuild Week Summaries
Re-rolls the trailing 13 weeks of week-summary KV entries. Required to populate the T13 Combined Store Units Sold table. Run this after a re-snapshot backfill.
Backfill Sales (Last 13 Weeks)
Re-snapshots daily sales totals from Clover for the last 91 days across all stores, applying the latest reconciliation rules (refunds subtracted to match Clover Sales Summary). Loops one date at a time; takes ~1–2 minutes. Auto-rebuilds week summaries when finished.
Backfill Category Basket Counts
Adds how many baskets touched each category to the last 13 weeks of item snapshots — the denominator the T13 Penetration view needs. Adds two fields only: sales figures, categories and totals are never rewritten. Any day whose Clover fetch comes back more than 1% short is skipped and reported rather than written. Loops one store-day at a time; takes several minutes. Run Rebuild Week Summaries afterwards.
Manual Sales Override
Set sales totals for a (store, date) when Clover lost the data. Once saved, the row is locked and the cron snapshot / Sheet backfill will not overwrite it. Auto-rebuilds the affected week summary.
Bulk paste (CSV)
One row per line: store,date,total,retail,bin,auction — only store and date are required. Header row optional.
Manual Labor Hours
Set labor hours for a (store, date). Marks the row as a manual override — the cron snapshot / Sheet backfill will not change it.
Bulk paste (CSV)
One row per line: store,date,hours. Header row optional.
Sales Report Reconciliation
Paste a Clover Sales Report CSV (per store) to compare its monthly Net Sales against our daily totals in D1. For any month that's off by >\$50, click Re-snapshot This Month to re-pull from Clover. Manual-override rows are preserved and skipped automatically. Use the Manual Sales Override tool above to revert any specific day if needed.
Item Sales Reconciliation
Upload a Clover Revenue Item Sales report CSV to compare its L2 category totals against our stored item snapshots for the same date range. Flags categories where our data is off by more than $50. Use Re-snapshot Range to re-pull item sales from Clover for the full period.
Item Master Costs
Upload an Item Master export so the Retail Summary can render CPU, Ext Cost, Gross Profit, and GPM% per L2/L3 category. Accepts .html (Item Master export), .csv, or .json. Re-snapshot historical days after uploading to backfill cost into existing data.
Edit individual items
Fix or add a single item's cost without re-uploading the whole file. Changes merge into the existing master.
L3 Category Costs
Set a flat cost per unit for each L3 category (e.g. FG BL SEASONAL - CHRISTMAS - GM). Used by the Retail Summary as the cost fallback when an item has no Item Master cost. A specific item (IM#) cost always wins over its category cost. Re-snapshot historical days to backfill.
Custom Sales Categorization
Assign uncategorized items to an L2 bucket. Overrides apply to every store and take effect on the next snapshot (use Re-snapshot below to update history).
Custom Sales items
Items with no Clover catalog category. Assign each to an L2 and optionally save a prefix rule.
| Item Name | Qty | Net | Assign L2 | Assign L3 | Also add rule |
|---|
No Custom Sales items in this range.
Items in "Other / unmapped"
These reached the right L2 by a guess — a name rule, an IM number, a pattern, or an existing override — so they have no real L3 and fold into the Other / unmapped row. Assign an L3 to give each one a home. Ranked by gross line revenue, which runs above the net shown on the dashboard.
| Item Name | Matched by | Qty | Gross | Assign L2 | Assign L3 | Also add rule |
|---|
No fallback-resolved items in this range.
L3 rules
A rule names the L3 row for every product it matches, without changing which L2 they book to. One IM-number rule covers every product name sharing that number. First match wins, so put the more specific rule first. A rule only fires on lines already booked to its L3's own L2 — the Fires on column says which that is.
| # | Match | Names this L3 | Fires on | Remove |
|---|
No L3 rules yet.
Uncategorized L3 categories
Clover catalog categories that aren't mapped to an L2 yet. One assignment covers every item in that category across all stores.
| Clover L3 Category | Qty | Net | Assign L2 |
|---|
No unmapped L3 categories in this range.
RETJG Hub
RETJG Hub
Your account doesn’t have access to sales or reporting. Ask an admin to grant you what you need — you can close this and come back once they have.
Users
| Role | Access | Status | Last login | ||
|---|---|---|---|---|---|
| Loading… | |||||
Associates
They sign in with a name and a six-digit code, and see only the pages ticked here.
| Name | Stores | Pages | Status | Last login | |
|---|---|---|---|---|---|
| Loading… | |||||
Invite User
Edit User
Add Associate
They type this to sign in, and it is what the Bin Dump log will say.
Tell them this code now — it is stored scrambled and cannot be looked up later.