Mandala Credit Engine

Internal v1 · local
Front Desk → ⌂ Hub

Admin — Credit Unit Economics

What defines a credit: time + tools + overhead. Change any yellow input; everything recalculates live.

Membership Tiers

The value ladder. Implied $/credit and gross margin update from the engine. Edit inline.

GM after breakage uses capacity cost and the member-utilization (breakage) assumption.

Products & Services (Creditable)

Your full menu of what can be credited — 301 services seeded from the artifact catalog. ★ = on the front-desk quick-log (what staff and the mobile app see). Edit any credit value inline; changes flow to the phone.

Team — Log Credits

Pick a member, pick what you made, log it. Credits are deducted from their wallet. This is the core daily action.

Recent activity Newest first · stored locally

Members & Wallets

Credit balances by member. Top-up simulates the GHL/Kinjo invoice that would be triggered.

Per-Location Scenario

Set the member base; see revenue, gross margin, and EBITDA. This is where you design the economics before committing.

Roadmap & Integration

What v1 does today and what plugs in next.

v1 (this file) — done
  • Admin unit-economics engine (time + tools + overhead → marginal / capacity / fully-loaded cost per credit).
  • Editable membership tiers with live $/credit and gross margin.
  • Artifact→credit menu.
  • Team credit-logging wallet (deduct on redeem, running balance, ledger).
  • Member wallets with simulated top-up invoice payload.
  • Per-location P&L scenario designer.
  • Local persistence + JSON export (portable to a real backend later).
Next — recurring payments & top-ups (GHL / Kinjo MCP)
  • Wire ghl-mcp-server so a monthly membership creates a recurring GHL subscription and grants the tier's credit allotment automatically.
  • "Top up" triggers a GHL invoice for the credit bundle; on payment webhook, credits are added to the member wallet.
  • The Export JSON payload is the contract — same shape a backend would consume.
Reservation / event layer
  • Booking a session (Kinjo/GHL calendar, Luma, or Momence) reserves and later redeems credits — same deduct logic as the log tab.
Then — /loop-engineer
  • Once the flow feels right, hand to loop-engineer: nightly reconcile wallets vs. ledger, flag negative balances, email a daily credit-burn + capacity-utilization report.
Guardrail: this stays a single local file until the flow is validated. No auth, no server, no external calls yet — that's deliberate.