Skip to content
All docs

Core Concepts

Customer Intelligence

Customer-level risk profiles, return history, and manual overrides.

The Customers page is the long-memory side of RefundSentry. The dashboard shows you what’s happening this week; the customers page shows you who has been a problem (or a model citizen) over months.

What’s on a customer profile

  • Aggregate risk — A single LOW / MEDIUM / HIGH zone summarising every return this customer has ever filed, plus the current trajectory (rising, stable, declining).
  • Return history — Every return on the customer record with its score, top signals, refund value, and date. Click any row to jump to the full return detail.
  • Order history (read-only) — Pulled live from Shopify GraphQL. Useful for context — how many orders has this person placed, what’s their lifetime value, what’s their refund-to-order ratio.
  • Notes — Free-text internal notes scoped to the customer. Use these to leave context for the next teammate (“approved manually on 2026-03-12 — VIP, lifetime spend $4k”).
  • Manual risk override — Force a specific risk zone for a customer regardless of the computed score. Always-trust VIPs, always-flag known abusers. Overrides expire after 30 days by default (configurable) so you don’t accumulate stale rules forever.
  • Refundsentry tags — The tags applied to this customer in Shopify admin. Read-only display so you know what your other systems are seeing.

How customer scoring differs from return scoring

A return score is point-in-time: it answers “is this specific return suspicious?” A customer score is aggregated: it answers “is this person systematically abusing returns?” A customer can have several LOW returns but a HIGH aggregate if the volume is unusually high. Conversely, one HIGH return doesn’t move a customer with 50 LOW returns much.

Customer scores update whenever a new return for that customer is processed — you don’t need to do anything to refresh them.

No PII stored

RefundSentry never stores customer names, emails, or phone numbers in its own database. Customers are identified by their Shopify customer ID. Display names and emails are fetched live from Shopify GraphQL when you open a customer page and discarded as soon as you navigate away. This is a deliberate privacy design — see Settings for more on data handling.

Search and filtering

The list view supports search by Shopify customer ID and filtering by aggregate risk zone, return count, and override status. There is no name/email search because we don’t store those fields — search by ID is the price of privacy-by-default.

Next steps