Group Closing Balance — FY26 Forecast to Feb 2027
Weekly Cash Movement (Last 12 Weeks)
Inflow vs Outflow by Week
This Week's Entity Snapshot
All Entities — Sorted by Risk
| Entity | Opening | Inflow | Capex | Opex | Closing | Runway (wks) | FY Closing | FY Runway | Status |
|---|
Futuregrowth Loan Facility
Structured debt modelling integration in development. This tab will overlay debt drawdowns, interest accrual, capital repayments, and net cash position against operating cashflow.
⚙ Supabase Configuration
Drop your Excel cashflow file here
Supports GroupCashflowForecast_FY26_V2.xlsx and compatible formats
Supabase SQL Setup
Copy and paste this SQL into your Supabase SQL Editor to create the required tables:
-- ══════════════════════════════════════════
-- Decentral Energy Cashflow Dashboard
-- Run this in Supabase SQL Editor
-- ══════════════════════════════════════════
-- 1. File upload tracking
CREATE TABLE IF NOT EXISTS cashflow_uploads (
id uuid DEFAULT gen_random_uuid() PRIMARY KEY,
filename text NOT NULL,
uploaded_at timestamptz DEFAULT now(),
current_week date,
fy_end_date date,
storage_path text
);
-- 2. KPI snapshots (group level)
CREATE TABLE IF NOT EXISTS cashflow_kpis (
id uuid DEFAULT gen_random_uuid() PRIMARY KEY,
upload_id uuid REFERENCES cashflow_uploads(id) ON DELETE CASCADE,
week_date date NOT NULL,
opening numeric(18,2),
inflow numeric(18,2),
capex numeric(18,2),
opex numeric(18,2),
closing numeric(18,2),
fy_closing numeric(18,2),
fy_inflow numeric(18,2),
fy_capex numeric(18,2),
fy_opex numeric(18,2),
weeks_remaining integer,
created_at timestamptz DEFAULT now()
);
-- 3. Entity-level cashflow data
CREATE TABLE IF NOT EXISTS cashflow_entities (
id uuid DEFAULT gen_random_uuid() PRIMARY KEY,
upload_id uuid REFERENCES cashflow_uploads(id) ON DELETE CASCADE,
week_date date NOT NULL,
entity_code text NOT NULL,
entity_name text NOT NULL,
opening numeric(18,2),
inflow numeric(18,2),
capex numeric(18,2),
opex numeric(18,2),
closing numeric(18,2),
fy_closing numeric(18,2),
runway_weeks numeric(8,1),
fy_runway numeric(8,1),
status text CHECK (status IN ('CRITICAL','WARNING','OKAY')),
created_at timestamptz DEFAULT now()
);
-- 4. Weekly chart time-series
CREATE TABLE IF NOT EXISTS cashflow_weekly (
id uuid DEFAULT gen_random_uuid() PRIMARY KEY,
upload_id uuid REFERENCES cashflow_uploads(id) ON DELETE CASCADE,
week_date date NOT NULL,
group_closing numeric(18,2),
group_inflow numeric(18,2),
group_capex numeric(18,2),
group_opex numeric(18,2),
created_at timestamptz DEFAULT now()
);
-- 5. Storage bucket (run separately if needed)
-- INSERT INTO storage.buckets (id, name, public)
-- VALUES ('cashflow-files', 'cashflow-files', false)
-- ON CONFLICT DO NOTHING;
-- 6. Row Level Security (enable as needed)
-- ALTER TABLE cashflow_uploads ENABLE ROW LEVEL SECURITY;
-- ALTER TABLE cashflow_kpis ENABLE ROW LEVEL SECURITY;
-- ALTER TABLE cashflow_entities ENABLE ROW LEVEL SECURITY;
-- ALTER TABLE cashflow_weekly ENABLE ROW LEVEL SECURITY;
-- 7. Index for fast queries
CREATE INDEX IF NOT EXISTS idx_entities_week ON cashflow_entities(week_date);
CREATE INDEX IF NOT EXISTS idx_entities_code ON cashflow_entities(entity_code);
CREATE INDEX IF NOT EXISTS idx_weekly_date ON cashflow_weekly(week_date);
-- Done! Your Decentral Energy dashboard tables are ready.