MRMTRADES / CUSTOMER OPERATIONS

Customer lifecycle simulator.

Model Stripe and UpgradeChat events. Preview exactly how Kit tags would change before connecting live systems.

DRY RUN ONLY
CONNECTED KIT TAGS7Verified account IDs
SIMULATED EVENTS0This session
LIVE API WRITES0Hard-disabled
CURRENT STATUSFREELatest simulated state

Event laboratory

One simulated customer. Nothing is sent to Kit or Stripe.

SIMULATED CUSTOMER DIRECTORY0 saved

Saved simulated customers will appear here.

New addresses are saved when you simulate their first event. Active: simulated.customer@example.com

UpgradeChat confirmed a trial

Loading simulated history…

QUICK SCENARIOS

Proposed Kit operations

Tag IDs already verified in your Kit account.

Run an event to see a read-only add/remove plan.

Trial eligibility

Simulation-only identity checks. A new email alone is not proof of a new person.

simulated.customer@example.com
LINK VERIFIED SIMULATED IDENTITY

Customer snapshot

Calculated state, not Kit subscriber data.

TEST
simulated.customer@example.com
MEMBERSHIP
○
Free subscriberSimulated account status
CURRENT KIT TAGS
WATCHLIST - FREE#25322666
Paid access end—
Free watchlistEligible
Cancellation pendingNo
Payment issueNo

Event history

Newest first. Persisted in Neon for the selected simulated customer.

No events yet. Try a quick scenario.

Stripe event monitor

Safe simulated fixtures only. Authenticated Stripe observations are not exposed here.

OBSERVE ONLY
Live and test Stripe webhooks can only record server-side, dry-run observations. They never create customer records or apply Kit actions.
$0 introductory trialcheckout.session.completed · TEST
INTRO_TRIALOBSERVE_INTRO_TRIAL
$1 introductory offercheckout.session.completed · TEST
INTRO_TRIALOBSERVE_INTRO_TRIAL
Recurring membershipinvoice.paid · TEST
PAID_MEMBERSHIPOBSERVE_PAID_MEMBERSHIP
Separate watchlistcheckout.session.completed · TEST
PAID_WATCHLISTOBSERVE_PAID_WATCHLIST
Unknown productcheckout.session.completed · TEST
UNKNOWNREVIEW_REQUIRED
Cancellationcustomer.subscription.deleted · TEST
UNKNOWNREVIEW_REQUIRED
Failed paymentinvoice.payment_failed · TEST
UNKNOWNREVIEW_REQUIRED

Subscription reconciliation

Policy fixtures only. Real Stripe subscriptions remain server-only and require explicit read-only configuration.

READ ONLY
Every result is a proposed dry-run action. Subscription status, payment amount, and checkout alone never change a customer entitlement.
Trial activeTRIALING · INTRO_TRIAL
PROPOSE_TRIAL_ACTIVE
Trial end shown
Paid membershipACTIVE · PAID_MEMBERSHIP
PROPOSE_PAID_ACTIVE
Current billing period
Cancellation pendingACTIVE · PAID_MEMBERSHIP
PROPOSE_CANCEL_SCHEDULED
Access retained to period end
Payment issuePAST_DUE · PAID_MEMBERSHIP
PROPOSE_PAYMENT_FAILURE
Billing review required
Unknown itemACTIVE · UNKNOWN
REVIEW_REQUIRED
No proposal
Mixed itemsACTIVE · UNKNOWN
REVIEW_REQUIRED
Conflicting mapping