GitHub

Know what needs doing, every morning.

Litestore checks your store data and lists what needs attention, with the value and deadline attached.

What it catches.

Coupons about to expire

Flagged before they expire, with the revenue each has driven so far.

Returns waiting on a decision

Sorted by how long they have been waiting, oldest first.

Collections published empty

Flagged when a live collection has no products in it.

Customer messages unanswered

Flagged with the order they refer to already attached.

Each one worth money, with a deadline.

Tasks clear themselves when the work is done. There is nothing to mark complete.

$4.2k
$2.6k
$1.4k
waiting$8.2k

Money waiting

6
  • Orders to ship
  • Refunds pending
  • Payouts pending
  • Payments unreconciled
  • Refund failed
  • Disputes open
12m
3h
2d

Someone waiting

6
  • Messages unanswered
  • Reviews pending
  • Returns awaiting a decision
  • Returns pending
  • Collabs pending
  • Orders needing review

About to go wrong

6
  • Stockout imminent
  • Low stock
  • Coupon ending
  • Sale ending
  • Campaign ending
  • Carts abandoned
stripeok
webhooksfailing
emailsretrying

Quietly broken

6
  • Webhooks failing
  • Webhooks disabled
  • Integration unhealthy
  • Emails failing
  • Social posts failed
  • Import failed
draft · 21d
50%last edit: 3 weeks ago

Left half-done

5
  • Drafts stale
  • Collections live but empty
  • Dead stock
  • Pickup uncollected
  • Setup incomplete

The number always matches the page.

Why the number is clickable

What used to happen

Dashboard counts that did not match the page they linked to.

What happens now

Counts and lists are built from the same query, so they always match.

Every task shows what it is worthOne alert, three places