Product Surface

Find the money returns leave behind.

Failed refunds first, then returns never refunded and refunds never restocked. Every finding carries exact money, a coverage figure and evidence your accountant can trace — and nothing writes to Shopify.

8 surfaces · Shopify · Read-only

01 · Read

Evidence first. Coverage always.

Five read-only Shopify sources normalized into one 60-day evidence generation.

Single-flight manual, periodic & webhook sync Exact coverage % across every scanned order Incomplete generations block exports (HTTP 409) Missing evidence stated as unknown, never guessed
Return Owl · ReadSample store
Generation #14 · Completed100% coverage
5 read-only sourcesSingle-flight sync409 export gate

One evidence generation with coverage attached.

02 · Reconcile

Failed refunds come first.

Failed captures, pending gateway refunds and unrefunded cancellations surface immediately.

Auto-suppressed when a later retry succeeds 2 business days default (3 for PayPal) Test orders excluded automatically Exact amount, currency & Shopify link attached
Return Owl · ReconcileSample store
Case RO-2046 · Order #1039Needs attention
Gateway errorNo later retryExact USD

Failed refund, retry state and exact amount.

03 · Reconcile

Returns closed without a refund.

Catches closed returns with no refund after 72 hours and price discrepancies across your return portal, helpdesk and 3PL.

Prorated line value compared to actual refund Portal exchanges ($96 Order #1007) classified EXPECTED Closed returns elevate severity & state wait age States off-platform unknowns without guessing
Return Owl · ReconcileSample store
Case RO-2041 · Order #1018$210.00 USD
Closed 94h agoProrated line mathExchanges separated

Processed return, zero refund, exact value owed.

04 · Reconcile

Refunds with no restock evidence.

Shippable refunded lines where inventory was expected back but never restocked.

NO_RESTOCK & CANCEL classified as expected RETURN & LEGACY_RESTOCK without restock flagged Optional strict policy for every unrecorded restock Restock state carried in every accountant row
Return Owl · ReconcileSample store
Case RO-2047 · Order #1042$128.40 USD
Restock: RETURNNO_RESTOCK expected1 shippable unit

Refunded value vs recorded restock state.

05 · Triage

Needs attention is the default.

Works alongside your existing plugins: real money discrepancies lead the queue while expected portal and gateway workflows stay separate.

6 built-in views: Needs attention, Expected, Integrity & more Saved views persist filters, search & sort Bulk dismiss up to 50 cases with audit trail Fix-next checklist links directly to Shopify
Return Owl · TriageSample store
Queue · Needs attentionDefault view
Needs attention (3)Saved viewsBulk dismiss (50)

Default money queue with expected work separated.

06 · Hand over

An accountant pack, not a dashboard.

One traceable row per finding in CSV (Growth+) or PDF (Scale), gated on 100% coverage.

Expected and open risk dollars never mixed Coverage % and generation ID stamped on file Exact decimal math in shop currency Signed, single-use 5-minute download grants
Return Owl · Hand overSample store
Accountant pack · CSV & PDFCoverage complete
accountant-pack.csv ↓Restock stateShopify links

One reconciled row per finding for your accountant.

07 · Supporting proof

Money at risk, not a trend product.

Return-adjusted sales, open money at risk, and top leaking products and reasons.

Only open NEEDS_ATTENTION dollars count as risk Top leaking ranked by dollars, never raw count Restock recovery & merchant-recorded ROI on Growth+ Product return P&L & watchlists on Scale
Return Owl · Supporting proofSample store
Returns · 60-day window100% coverage
$48,210.60 net sales$422.40 open riskTop leaking SKUs

Return-adjusted sales, money at risk, top leaking.

08 · Boundary

Read-only, and provably so.

Scoped to orders, products and returns — zero customer PII and zero store writes.

Customer names, emails, phones & addresses never read Webhooks trigger re-reads; raw payloads never stored Disconnect purges store data while keeping Shopify intact Strict per-store data isolation and automatic expiry
Return Owl · BoundarySample store
Read-only boundaryZero PII
Zero Shopify writesZero customer PIIExact decimal math

The read-only boundary, enforced in code.

Deterministic Check Reference

Fixed rules, named expected workflows.

Every order is evaluated against fixed thresholds — high or medium confidence, never a black-box score. Positive evidence classifies expected workflows so they stay visible without polluting the default money queue.

Deterministic check definitions
CheckFires whenThresholdConfidenceSeverity
Failed refund transactionMoneyRefund transaction failed or errored with no later successful retryImmediateHighHigh
Pending refund transactionMoneyNon-manual refund transaction still pending past gateway window2 business days (3 PayPal)HighMedium
Canceled order keeps paymentMoneyCanceled order retains net captured payment after grace window2 business daysMediumHigh
Return processed, refund outstandingMoneyProcessed return line has refundable value and no refund72 hoursMediumHigh when closed
Refund complete, return processing outstandingMoneyReturn line refunded beyond processed quantity (non-instant)72 hoursMediumMedium
Return quantity mismatchData integrityNegative return quantity or processed/refunded exceeds return quantityImmediateHighHigh
Refund amount discrepancyMoneyProrated return-line value differs from actual successful refundImmediateMediumMedium
Refunded item not restockedMoneyShippable refunded line with expected restock has no recorded restockImmediateMediumMedium
Precedence & Suppression Rules
  • Quantity mismatch takes precedence over other checks on the same return line.
  • A later successful retry of the same amount and currency suppresses a failed refund.
  • Pending refunds on manual gateways are classified as expected.
  • NO_RESTOCK and CANCEL are intentional no-restock unless strict policy is enabled.
  • Test orders are excluded from canceled-order findings.
  • Unrestocked findings require a successful refund covering the line in its currency.
NEEDS ATTENTION

Needs attention

Default queue. Open money or inventory leaks awaiting merchant review.

EXPECTED

Expected

Positive evidence proves an intentional workflow. Visible in its own view and exports.

DATA INTEGRITY

Data integrity

Impossible return quantities. Shown in a separate card outside money at risk.

Exchange

Return contains exchange line items.

Store credit

Refund issued to store credit rather than original payment.

Instant refund

Refund created before return creation or closure.

Keep-it / damaged

Return reason or policy expects no physical return.

Manual gateway

Transaction processed on a manual payment gateway.

Cancellation fee

Partial refund covers order less a restocking/cancel fee.

Intentional no-restock

Restock type is NO_RESTOCK or CANCEL under Respect policy.

Pattern suppression

2+ merchant dismissals in 90 days or an active suppression rule.

Evidence, Not Guesswork

Every row can be checked.

Coverage is stated beside every result. Expected workflows are classified from positive evidence, never hidden. Exports refuse an incomplete generation, so a file cannot claim more evidence than the app holds.

Questions: [email protected]