Purchase Recovery Audit

$99 Property Match — Full Recovery Audit

End-to-end investigation: Order record → User linkage → Dashboard display → Email CTAs → Fix & backfill.

Critical System Finding: Order Entity Is Empty

The Order entity contains zero records. This means the Stripe webhook (stripeWebhook) is either not registered as the active Stripe endpoint, the webhook secret is mismatched, or Stripe is routing events to the deprecated stripeWebhookCheckout handler instead. Every purchase made by every customer is missing from the database.

Orders in database

0 records

❌ FAIL

Purchases entity

Legacy only (Builder Starter)

⚠️ WARN

Stripe webhook status

Unknown — needs verification

⚠️ WARN

Search Customer by Email

Stripe Webhook Verification Steps (Do This First)

  1. 1Log into Stripe Dashboard → Developers → Webhooks
  2. 2Find the registered webhook endpoint — confirm it points to the stripeWebhook function URL (not stripeWebhookCheckout)
  3. 3Check "Recent deliveries" — look for checkout.session.completed events. Are they showing success (200) or error?
  4. 4If deliveries are failing: re-copy the webhook signing secret from Stripe and update STRIPE_WEBHOOK_SECRET in app secrets
  5. 5If wrong endpoint registered: delete old webhook → Add endpoint → paste correct stripeWebhook URL → select checkout.session.completed and charge.failed events
  6. 6Send a test event from Stripe Dashboard to confirm the handler fires
  7. 7After fixing webhook, test a $1 purchase (admin test email gets 1% pricing) to confirm Order is written
base44
Edit with Base44