Adapt economics dashboard to sole-member zero-cost reality

Update membership, revenue, and cost registries to one active member with
no running costs. Refresh dashboard report and tests for €8.99 revenue and
100% gross margin.
This commit is contained in:
2026-06-22 01:41:59 +02:00
parent a1a4aa972f
commit 8f42220d81
6 changed files with 38 additions and 118 deletions

View File

@@ -1,64 +1,9 @@
{
"version": 1,
"period": "2026-06",
"entries": [
{
"id": "bubble-subscription",
"name": "Bubble.io platform",
"category": "fixed",
"amount": "35.00",
"currency": "USD",
"cadence": "monthly",
"allocation": "flat"
},
{
"id": "domains",
"name": "Domains",
"category": "fixed",
"amount": "15.00",
"currency": "EUR",
"cadence": "monthly",
"allocation": "flat"
},
{
"id": "operational-overhead",
"name": "Operational overhead",
"category": "fixed",
"amount": "25.00",
"currency": "EUR",
"cadence": "monthly",
"allocation": "flat"
},
{
"id": "stripe-percentage",
"name": "Stripe percentage fee",
"category": "variable",
"amount": "0.015",
"currency": "ratio",
"cadence": "per_transaction",
"allocation": "percent_of_gross_revenue"
},
{
"id": "stripe-fixed",
"name": "Stripe fixed fee",
"category": "variable",
"amount": "0.25",
"currency": "EUR",
"cadence": "per_transaction",
"allocation": "per_active_member"
},
{
"id": "openrouter-ai",
"name": "OpenRouter AI consumption",
"category": "variable",
"amount": "0.00",
"currency": "EUR",
"cadence": "monthly",
"allocation": "flat",
"note": "Populated in Sprint 4 after usage import"
}
],
"entries": [],
"fx_rates": {
"USD/EUR": "0.92"
}
},
"note": "No running costs at present. Future fixed/variable lines (Bubble, Stripe, OpenRouter) added as they become payable."
}

View File

@@ -1,40 +1,16 @@
{
"version": 1,
"snapshot_date": "2026-06-21",
"snapshot_date": "2026-06-22",
"members": [
{
"id": "member-001",
"id": "member-founder",
"external_id": null,
"status": "active",
"joined_at": "2025-11-03",
"plan_id": "flat-899-eur-monthly",
"source": "seed"
},
{
"id": "member-002",
"external_id": null,
"status": "active",
"joined_at": "2026-01-15",
"plan_id": "flat-899-eur-monthly",
"source": "seed"
},
{
"id": "member-003",
"external_id": null,
"status": "active",
"joined_at": "2026-03-28",
"plan_id": "flat-899-eur-monthly",
"source": "seed"
},
{
"id": "member-004",
"external_id": null,
"status": "churned",
"joined_at": "2025-08-10",
"churned_at": "2026-02-01",
"plan_id": "flat-899-eur-monthly",
"source": "seed"
"source": "manual",
"note": "Sole active member (founder)"
}
],
"note": "Seed data for Sprint 1; replaced by Bubble importer in Sprint 2"
"note": "Current reality: one active member. Bubble importer (Sprint 2) will sync live data."
}

View File

@@ -2,15 +2,15 @@
"version": 1,
"entries": [
{
"id": "rev-2026-06-estimate",
"id": "rev-2026-06-founder",
"period": "2026-06",
"gross_amount": "80.91",
"fees_amount": "2.46",
"gross_amount": "8.99",
"fees_amount": "0.00",
"refunds_amount": "0.00",
"net_amount": "78.45",
"net_amount": "8.99",
"currency": "EUR",
"source": "manual_estimate",
"note": "Seed estimate for Sprint 1; replaced by Stripe sync in Sprint 3"
"source": "manual",
"note": "Single-member subscription; Stripe sync in Sprint 3"
}
]
}