ProjectR Docs
Backend (Convex)

API — checkoutSessions

Generated catalog of Convex functions in convex/checkoutSessions/. Regenerated by `bun run docs:api`.

Auto-generated from source. Do not edit by hand — run bun run docs:api.

query (3)

FunctionDescriptionArgs
dashboardGetCheckoutSessionOverview—{ limit: v.optional(v.number()), }
dashboardListCheckoutSessionsPaginated checkout session list for the dashboard (drill-down behind the funnel KPI cards). Filterable by status; rows enriched with user email.{ status: v.optional( v.union( v.literal("prepared"), v.literal("presented"), v.literal("client_completed"), v.literal("order_created"), v.literal("abandoned…
getActiveCheckoutSession—{}

mutation (4)

FunctionDescriptionArgs
abandonCheckoutSession—{ sessionKey: v.string(), reason: v.optional(v.string()), }
dashboardForceExpireCheckoutSession—{ sessionKey: v.string(), }
markCheckoutSessionClientCompleted—{ sessionKey: v.string(), shopifyOrderId: v.optional(v.string()), }
markCheckoutSessionPresented—{ sessionKey: v.string(), }

internalMutation (4)

FunctionDescriptionArgs
cleanupExpiredCheckoutSessionsSafety-net sweep for checkout sessions (cron, every 15 min). Per-session expiry is normally handled by the scheduler job registered in createCheckoutSessionInternal — this sweep catches sessions whose scheduled job was lost, and purges terminal rows older than 30 days.{ limit: v.optional(v.number()), }
createCheckoutSessionInternal—{ sessionKey: v.string(), userId: v.string(), status: v.union( v.literal("prepared"), v.literal("presented"), v.literal("client_completed"), v.literal("order…
expireCheckoutSessionInternal—{ sessionKey: v.string(), }
markCheckoutSessionOrderCreatedInternal—{ sessionKey: v.optional(v.string()), shopifyCartId: v.optional(v.string()), shopifyOrderId: v.string(), }

On this page