Feature Name: AI-Powered Financial Reporting Agent
Category: Compliance & Strategic Finance (Phase 4)
Priority: High
Target Users: CFOs, Controllers, Board Members, Investors, FP&A Teams
Dependencies: Phase 1 (AP Data), Phase 2 (Procurement Data), Phase 3 (Cash Data), Monthly Closing Cockpit, Departmental P&L
Transform Orcha from a financial operations platform into a financial intelligence platform by adding an AI agent that automatically generates board-ready financial presentations in minutes, not days. Unlike generic financial reporting tools that require manual data uploads, Orcha's AI agent leverages the complete financial data flowing through Phases 1-3 to create intelligent, context-aware variance analysis with German market-specific insights.
The Breakthrough:
Value Proposition:
"Every month, your CFO spends 2-3 days building board presentations. Orcha's AI Financial Reporting Agent does it in 8 minutes—with deeper insights, professional visualizations, and automatic Steuerberater delivery."
What CFOs Do Today (40+ hours/month):
Data Gathering (8-10 hours)
Analysis (12-15 hours)
Visualization (8-10 hours)
Review & Iteration (8-10 hours)
Total: 36-45 hours (nearly a full work week)
Pain Points:
An end-to-end automated reporting pipeline that:
Execution Time: 8 minutes (vs 40 hours manual)
Generic Finance Agent:
Orcha AI Agent:
Generic Finance Agent:
Orcha AI Agent:
Generic Finance Agent:
Orcha AI Agent:
Generic Finance Agent:
Orcha AI Agent:
Generic Finance Agent:
Orcha AI Agent:
┌──────────────────────────────────────────────────────────────────┐
│ ORCHA DATA SOURCES (Existing Phases 1-3) │
├──────────────────────────────────────────────────────────────────┤
│ │
│ 📄 Phase 1: AP Excellence │
│ ├─ Invoices (15,000/year, €50M volume) │
│ ├─ Purchase Orders (3,500/year) │
│ ├─ Approvals (avg time, auto-approval rate, bottlenecks) │
│ ├─ GL Postings (cost centers, accounts) │
│ └─ Bank Reconciliations (match rate, discrepancies) │
│ │
│ 💰 Phase 2: Procurement Intelligence │
│ ├─ Vendor Scorecards (200+ vendors, performance metrics) │
│ ├─ Contract Compliance (price variances, term violations) │
│ ├─ Spend Analytics (categories, maverick spend) │
│ └─ Savings Identified (renegotiations, consolidations) │
│ │
│ 💵 Phase 3: Cash & Treasury │
│ ├─ Cash Flow Forecasts (13-week rolling) │
│ ├─ Dynamic Discounting (APR, captured savings) │
│ ├─ Working Capital (DSO, DPO, cash conversion cycle) │
│ └─ AR Disputes (resolution time, write-offs prevented) │
│ │
│ 📊 Phase 4: Compliance & Strategic Finance │
│ ├─ Departmental P&Ls (cost center profitability) │
│ ├─ Budget vs Actual (variance by department) │
│ ├─ Monthly Close Status (Festschreibung dates) │
│ └─ Tax/VAT Compliance (filing dates, amounts) │
│ │
└──────────────────────────────────────────────────────────────────┘
↓
┌──────────────────────────────────────────────────────────────────┐
│ AI FINANCIAL REPORTING AGENT (NEW) │
├──────────────────────────────────────────────────────────────────┤
│ │
│ STAGE 1: DATA AGGREGATION │
│ ├─ Query financial metrics (revenue, expenses, cash) │
│ ├─ Query operational metrics (approval velocity, match rate) │
│ ├─ Query procurement metrics (vendor performance, savings) │
│ └─ Query compliance status (Festschreibung, tax filings) │
│ │
│ STAGE 2: BUSINESS CONTEXT GENERATION (Claude Sonnet 4) │
│ ├─ Infer company profile from historical data │
│ ├─ Detect seasonality patterns (rolling 12-month analysis) │
│ ├─ Identify strategic initiatives (spending spikes, new vendors)│
│ └─ Generate structured business intelligence JSON │
│ │
│ STAGE 3: CFO-LEVEL VARIANCE ANALYSIS (Claude Sonnet 4) │
│ ├─ Executive Summary (3-4 paragraphs) │
│ ├─ Revenue Analysis (drivers, trends, risks) │
│ ├─ Expense Analysis (efficiency, optimization opportunities) │
│ ├─ Profitability Metrics (margins, unit economics) │
│ ├─ Cash Flow Analysis (runway, working capital) │
│ ├─ Procurement Intelligence (vendor performance, savings) │
│ ├─ Operational Efficiency (approval velocity, automation rate) │
│ └─ Forward-Looking Insights (forecast, risks, recommendations) │
│ │
│ STAGE 4: CHART GENERATION │
│ ├─ Chart Ideation (identify 8-12 key visualizations) │
│ ├─ Chart Prompt Generation (GPT-4 or Claude) │
│ ├─ Image Generation (Nano Banana Pro via fal.ai) │
│ └─ Image Upload & Storage (S3) │
│ │
│ STAGE 5: PRESENTATION ASSEMBLY (Claude Sonnet 4) │
│ ├─ Generate 12-15 slide deck (markdown format) │
│ ├─ Embed chart images (S3 URLs) │
│ ├─ Apply Orcha brand kit (colors, fonts, logo) │
│ └─ Output presentation JSON │
│ │
│ STAGE 6: MULTI-FORMAT DELIVERY │
│ ├─ Gamma API (shareable presentation link) │
│ ├─ PDF Export (downloadable report) │
│ ├─ PowerPoint Export (editable deck) │
│ ├─ DATEV Package (Steuerberater handoff) │
│ └─ Email Distribution (board members, investors) │
│ │
└──────────────────────────────────────────────────────────────────┘
↓
┌──────────────────────────────────────────────────────────────────┐
│ STAKEHOLDER DELIVERY │
├──────────────────────────────────────────────────────────────────┤
│ • Board Members (Gamma link + PDF) │
│ • Investors (customized deck variant) │
│ • Steuerberater (DATEV export + commentary) │
│ • Department Heads (filtered to their cost centers) │
│ • CFO/Controller (full access, edit mode) │
└──────────────────────────────────────────────────────────────────┘
Goal: Deliver basic automated financial reporting with manual review
Auto-extract from Orcha database:
Manual inputs (UI form):
Output: Structured JSON with complete financial dataset
Inputs:
Generates:
{
"company_profile": {
"company_name": "Acme GmbH",
"industry": "B2B SaaS",
"employee_count": 500,
"annual_revenue": "€50M",
"target_market": "German SMEs"
},
"business_patterns": {
"seasonality": {
"Q1_index": 85,
"Q2_index": 105,
"Q3_index": 95,
"Q4_index": 115
},
"avg_invoice_amount": 8450,
"top_expense_category": "Personnel (58%)"
},
"strategic_context": {
"current_initiatives": ["SAP integration", "Market expansion to Austria"],
"recent_changes": ["Hired 3 developers in December"]
}
}
Value: AI understands company context for intelligent commentary
Outputs:
A. Executive Summary (3-4 paragraphs)
January 2026 delivered solid operational performance with revenue
of €4.2M (+2.1% MoM, +12.3% YoY), slightly ahead of budget (€4.1M).
The revenue growth was driven by strong enterprise renewals (€1.8M,
+8% MoM) and new customer acquisitions (23 new logos), partially
offset by expected Q1 seasonality in SMB segment.
Gross profit reached €3.1M (73.8% margin), up 150 bps from last
month due to improved procurement efficiency. Operating expenses
increased €180K MoM to €2.8M, primarily driven by planned headcount
additions in engineering (3 FTEs) and annual SaaS renewals (€45K).
EBITDA of €320K (7.6% margin) exceeded budget by €85K, demonstrating
strong cost discipline. Cash flow generation was robust at €410K
positive operating cash flow, with working capital improvements
(DSO down 3 days to 42 days) offsetting higher capex.
Key risk: €250K invoice from Vendor X (60 days overdue) requires
escalation. Opportunity: Dynamic discounting captured €12K in vendor
discounts—recommend expanding to top 20 vendors.
B. Detailed Variance Tables
Revenue Analysis:
├─ Total Revenue: €4.2M (Budget: €4.1M, Variance: +€110K, +2.7% ✓)
├─ Enterprise: €1.8M (+€140K, +8.4% ✓)
├─ SMB: €1.5M (-€45K, -2.9% ✗)
└─ Services: €0.9M (+€15K, +1.7% ✓)
Expense Analysis:
├─ COGS: €1.1M (Budget: €1.15M, Variance: -€50K, -4.3% ✓)
├─ Personnel: €1.6M (+€120K, +8.1% ✗)
├─ SaaS/Software: €0.35M (+€45K, +14.8% ✗)
├─ Marketing: €0.28M (-€15K, -5.1% ✓)
└─ Facilities: €0.22M (Budget: €0.22M, Variance: €0K, 0%)
C. Root-Cause Commentary
SMB Revenue Decline (-€45K):
• Expected Q1 seasonality (historical Q1 index: 85)
• 2 mid-tier customer churns (€18K MRR lost)
• Sales cycle extended 12 days (holiday impact)
• Mitigation: Q2 pipeline strong (€320K qualified)
Personnel Expense Increase (+€120K):
• Planned: 3 engineer hires (€85K monthly run-rate)
• One-time: Recruitment fees (€25K)
• Bonus accrual: Q4 overperformance payout (€10K)
• Within budget on FTE basis (48 actual vs 48 planned)
D. Procurement Intelligence Insights
Vendor Performance:
• Top 20 vendors: €2.8M spend (68% of total)
• 3 vendors increased prices without notice (flagged)
• Dynamic discounting: €12K captured (36% APR)
• Maverick spend: €95K (down from €140K last month ✓)
Contract Compliance:
• Vendor X: Billing 3% over MSA pricing (€8K variance)
• Vendor Y: Volume discount not applied (€4K recoverable)
• SaaS renewals: 2 licenses unused (€3K/month waste)
E. Forward-Looking Insights
Next Quarter Outlook:
• Revenue forecast: €13.2M (Q1 total, +9% YoY)
• Risk: €250K overdue invoice may require write-off
• Opportunity: Austria market expansion (€500K incremental)
• Cash runway: 18 months at current burn rate
Recommendations:
1. Escalate Vendor X payment dispute (high priority)
2. Expand dynamic discounting to top 20 vendors (€60K/quarter)
3. Renegotiate SaaS contracts before Q2 renewals (€120K savings)
4. Accelerate Austria hiring (capitalize on pipeline strength)
V1: Text-Based Charts Only
Example:
Revenue Trend (Last 6 Months):
Aug: €3.8M ████████████████████
Sep: €4.1M █████████████████████
Oct: €4.3M ██████████████████████
Nov: €4.5M ███████████████████████
Dec: €4.6M ████████████████████████
Jan: €4.2M █████████████████████
[View Interactive Chart in Orcha Dashboard →]
Rationale: Validate core analysis engine before investing in visualization
V1: PDF Report (Not Presentation)
Tools:
reportlab or weasyprint for PDF generationV1: Manual Download
No automation yet:
Deliverables:
Code Example:
(ns orcha.reporting.data-aggregation
(:require [orcha.db.core :as db]
[clojure.java.jdbc :as jdbc]))
(defn aggregate-revenue-metrics
"Extract revenue metrics for reporting period"
[tenant-id start-date end-date]
(let [current-period (jdbc/query
db/conn
["SELECT
SUM(amount) as total_revenue,
COUNT(*) as invoice_count,
AVG(amount) as avg_invoice_amount
FROM invoices
WHERE tenant_id = ?
AND invoice_date BETWEEN ? AND ?
AND status = 'approved'"
tenant-id start-date end-date])
prior-period (jdbc/query
db/conn
["SELECT SUM(amount) as total_revenue
FROM invoices
WHERE tenant_id = ?
AND invoice_date BETWEEN ? AND ?
AND status = 'approved'"
tenant-id
(subtract-months start-date 1)
(subtract-months end-date 1)])]
{:current-revenue (:total_revenue current-period)
:prior-revenue (:total_revenue prior-period)
:mom-change-pct (* 100 (/ (- (:total_revenue current-period)
(:total_revenue prior-period))
(:total_revenue prior-period)))
:invoice-count (:invoice_count current-period)
:avg-invoice-amount (:avg_invoice_amount current-period)}))
(defn aggregate-procurement-metrics
"Extract procurement intelligence metrics"
[tenant-id start-date end-date]
(jdbc/query
db/conn
["SELECT
COUNT(DISTINCT vendor_id) as vendor_count,
SUM(CASE WHEN price_variance > 0.03 THEN 1 ELSE 0 END) as overcharge_count,
SUM(early_payment_discount_captured) as discount_captured
FROM invoices i
LEFT JOIN vendor_scorecards vs ON i.vendor_id = vs.vendor_id
WHERE i.tenant_id = ?
AND i.invoice_date BETWEEN ? AND ?"
tenant-id start-date end-date]))
(defn generate-financial-dataset
"Generate complete financial dataset for AI analysis"
[tenant-id reporting-month]
(let [start-date (first-day-of-month reporting-month)
end-date (last-day-of-month reporting-month)]
{:revenue (aggregate-revenue-metrics tenant-id start-date end-date)
:expenses (aggregate-expense-metrics tenant-id start-date end-date)
:cash-flow (aggregate-cash-metrics tenant-id start-date end-date)
:procurement (aggregate-procurement-metrics tenant-id start-date end-date)
:operations (aggregate-operational-metrics tenant-id start-date end-date)}))
Deliverables:
Code Example:
(ns orcha.reporting.business-context
(:require [clj-http.client :as http]
[cheshire.core :as json]))
(def context-generation-prompt
"You are a world-class business analyst. Generate a structured JSON
profile of this company based on historical financial data.
Output JSON format:
{
\"company_profile\": {...},
\"business_patterns\": {...},
\"seasonality\": {...}
}
Historical Data: {{HISTORICAL_DATA}}
User Description: {{USER_DESCRIPTION}}")
(defn generate-business-context
"Generate business intelligence profile using Claude"
[historical-data user-description]
(let [prompt (-> context-generation-prompt
(clojure.string/replace "{{HISTORICAL_DATA}}"
(json/generate-string historical-data))
(clojure.string/replace "{{USER_DESCRIPTION}}"
user-description))
response (http/post "https://api.anthropic.com/v1/messages"
{:headers {"x-api-key" (env :anthropic-api-key)
"anthropic-version" "2023-06-01"
"content-type" "application/json"}
:body (json/generate-string
{:model "claude-sonnet-4-20250514"
:max_tokens 4096
:messages [{:role "user" :content prompt}]})
:as :json})]
(-> response :body :content first :text json/parse-string)))
Deliverables:
Prompt Template:
You are a CFO conducting month-over-month variance analysis.
COMPANY CONTEXT:
{{BUSINESS_CONTEXT_JSON}}
CURRENT MONTH DATA:
{{CURRENT_MONTH_FINANCIALS}}
PRIOR MONTH DATA:
{{PRIOR_MONTH_FINANCIALS}}
BUDGET DATA:
{{BUDGET_DATA}}
PROCUREMENT INTELLIGENCE:
{{PROCUREMENT_METRICS}}
Generate a comprehensive variance analysis with the following structure:
1. EXECUTIVE SUMMARY (3-4 paragraphs, 150-200 words)
- Overall performance assessment
- Key highlights (positive and negative)
- Strategic implications
- Critical actions required
2. REVENUE ANALYSIS
[Detailed breakdown with drivers]
3. EXPENSE ANALYSIS
[Category-level variance with root causes]
4. PROCUREMENT INTELLIGENCE
- Vendor performance trends
- Contract compliance issues
- Savings opportunities identified
- Maverick spend analysis
5. OPERATIONAL EFFICIENCY
- AP automation metrics
- Approval velocity trends
- Exception handling performance
6. CASH FLOW ANALYSIS
- Working capital changes
- Runway analysis
- Forecast accuracy
7. FORWARD-LOOKING INSIGHTS
- Next quarter outlook
- Risk factors
- Opportunities
- Prioritized recommendations
Use precise German business terminology. Flag unfavorable variances
with ✗ and favorable with ✓. Provide specific, actionable insights.
Deliverables:
Tech Stack:
weasyprint for PDF generationTechnical:
Business:
Quality:
Goal: Deliver board-ready slide presentations with professional visualizations
Add:
Chart Library:
Revenue Charts:
1. Revenue Trend (6-month line chart)
2. Revenue by Category (stacked bar)
3. Budget vs Actual (variance bridge)
Expense Charts:
4. Expense Breakdown (pie chart)
5. Expense Trends (multi-line)
6. Efficiency Metrics (combo chart)
Cash Flow Charts:
7. Cash Waterfall (operating → investing → financing)
8. Working Capital Trend (DSO, DPO, DIO)
Procurement Charts:
9. Top 10 Vendors by Spend (horizontal bar)
10. Contract Compliance (grouped bar: at-price vs over-price)
11. Savings Captured (monthly trend)
Operational Charts:
12. Approval Velocity (line chart with target)
Implementation:
(defn generate-chart
"Generate professional chart using Nano Banana Pro"
[{:keys [chart-type data title]}]
(let [prompt (generate-chart-prompt chart-type data title)
;; Submit to fal.ai queue
queue-response (http/post "https://queue.fal.run/fal-ai/flux-lora"
{:headers {"Authorization" (str "Key " fal-api-key)
"Content-Type" "application/json"}
:body (json/generate-string
{:prompt prompt
:image_size "landscape_16_9"
:num_inference_steps 28})
:as :json})
request-id (-> queue-response :body :request_id)
;; Poll for completion
result (poll-for-completion request-id)]
{:chart-url (-> result :images first :url)
:chart-title title}))
(defn poll-for-completion
"Poll fal.ai API until image generation completes"
[request-id]
(loop [attempts 0]
(let [status-response (http/get (str "https://queue.fal.run/fal-ai/flux-lora/" request-id)
{:headers {"Authorization" (str "Key " fal-api-key)}
:as :json})
status (-> status-response :body :status)]
(cond
(= status "COMPLETED") (:body status-response)
(> attempts 60) (throw (Exception. "Chart generation timeout"))
:else (do (Thread/sleep 5000)
(recur (inc attempts)))))))
Add:
Slide Structure:
Slide 1: Executive Summary
Slide 2: Financial Snapshot (KPI dashboard)
Slide 3: Revenue Analysis
Slide 4: Revenue Trends (chart)
Slide 5: Expense Analysis
Slide 6: Expense Breakdown (chart)
Slide 7: Profitability Metrics
Slide 8: Cash Flow Summary
Slide 9: Working Capital Trends (chart)
Slide 10: Procurement Intelligence
Slide 11: Vendor Performance (chart)
Slide 12: Operational Efficiency
Slide 13: Forward-Looking Outlook
Slide 14: Strategic Recommendations
Slide 15: Next Steps & Action Items
Gamma API Integration:
(defn generate-presentation
"Generate Gamma presentation from markdown content"
[presentation-markdown chart-urls]
(let [;; Generate presentation
response (http/post "https://api.gamma.app/api/v1/generate-presentation"
{:headers {"X-API-KEY" gamma-api-key
"Content-Type" "application/json"}
:body (json/generate-string
{:text presentation-markdown
:theme "Oasis"
:card_count 15
:export_format "pdf"
:preserve_text true})
:as :json})
generation-id (-> response :body :generationId)
;; Poll for completion
result (poll-gamma-completion generation-id)]
{:gamma-link (-> result :url)
:pdf-url (-> result :pdf_url)
:pptx-url (-> result :pptx_url)}))
Add deck types:
Implementation:
(defn generate-report
"Generate financial report with audience-specific variant"
[tenant-id reporting-month deck-type]
(let [financial-data (generate-financial-dataset tenant-id reporting-month)
business-context (get-business-context tenant-id)
;; Different analysis prompts per deck type
analysis-prompt (case deck-type
:board board-deck-prompt
:operational operational-deck-prompt
:investor investor-deck-prompt
:steuerberater steuerberater-deck-prompt)
variance-analysis (generate-variance-analysis
financial-data
business-context
analysis-prompt)
charts (generate-charts financial-data deck-type)
presentation (assemble-presentation
variance-analysis
charts
deck-type)]
{:analysis variance-analysis
:charts charts
:presentation presentation}))
Add:
Workflow:
Day 1-3: Month-end close in progress
Day 4: Festschreibung (period lock)
Day 5 at 8:00 AM: Auto-generate report
Day 5 at 8:10 AM: Email board members
Day 5 at 8:15 AM: Send DATEV package to Steuerberater
Day 5 at 8:20 AM: Slack notification to CFO
Add:
Deliverables:
Deliverables:
Deliverables:
Deliverables:
Technical:
Business:
Adoption:
Add to reports:
Specialized report variant:
STEUERBERATER MONTHLY PACKAGE
1. Executive Summary (German)
2. Gewinn- und Verlustrechnung (P&L)
3. Bilanz (Balance Sheet)
4. UStVA Summary (VAT filing)
5. Festschreibung Certificate
6. Material Variances (requiring tax review)
7. DATEV Export File
8. GoBD Compliance Confirmation
Use proper German terms:
Add to Cash Flow section:
Insolvenzantragspflicht Compliance:
✓ 13-week cash forecast: €2.1M minimum
✓ Well above 3-week liquidity requirement
✓ No insolvency risk identified
✓ Credit lines available: €1.5M unused
| Service | Purpose | Cost (per report) |
|---|---|---|
| Anthropic Claude Sonnet 4 | Business context, variance analysis, presentation | $0.50-1.00 |
| OpenAI GPT-4 (optional) | Chart prompt generation | $0.05-0.10 |
| fal.ai (Nano Banana Pro) | Chart image generation (8-12 charts) | $0.80-1.20 |
| Gamma API | Presentation assembly | $0.20-0.40 |
| Total per Report | $1.55-2.70 |
Customer Pricing:
Time Savings:
Annual Value: €36,000-60,000/year
Quality Improvements:
Strategic Enablement:
Total Value: €40,000-65,000/year (time + quality + strategic)
Recommended Pricing:
Customer ROI: 20-30x in first year
Cost: 2 backend engineers × 3 months = €60-90K API Cost: €10-20/month Customer Value: €36-60K/year ROI: 6-10x in first year
Cost: 2 backend engineers × 3 months = €60-90K API Cost: €31-54/month Customer Value: €40-65K/year ROI: 8-12x in first year
Break-Even: 4-5 customers (at €199/month pricing)
1. AI Hallucinations
2. API Reliability
3. Chart Quality
1. User Adoption
2. Quality Expectations
3. Cost Overruns
1. Completes the Financial OS Vision
2. Massive Customer Value
3. Competitive Moat
4. Revenue Expansion
5. Market Positioning
Proceed with V1 Implementation (Months 1-3)
Follow with V2 (Months 4-6) if V1 successful
Timeline: 6 months to full production (V1 + V2)
You are a world-class business intelligence analyst. Generate a
comprehensive business profile in JSON format based on historical
financial data and user description.
OUTPUT JSON SCHEMA:
{
"company_profile": {
"company_name": "",
"industry": "",
"company_stage": "",
"employee_count": 0,
"annual_revenue": "",
"target_market": ""
},
"business_patterns": {
"seasonality": {
"Q1_index": 100,
"Q2_index": 100,
"Q3_index": 100,
"Q4_index": 100
},
"avg_invoice_amount": 0,
"top_expense_category": ""
},
"strategic_context": {
"current_initiatives": [],
"recent_changes": []
}
}
HISTORICAL DATA (12 months):
{{HISTORICAL_FINANCIALS}}
USER DESCRIPTION:
{{COMPANY_DESCRIPTION}}
Generate only valid JSON, no commentary.
You are a CFO conducting month-over-month financial variance analysis
for a German SME. Provide rigorous, board-ready analysis.
COMPANY CONTEXT:
{{BUSINESS_CONTEXT_JSON}}
CURRENT MONTH FINANCIALS:
{{CURRENT_MONTH_DATA}}
PRIOR MONTH FINANCIALS:
{{PRIOR_MONTH_DATA}}
BUDGET DATA:
{{BUDGET_DATA}}
PROCUREMENT INTELLIGENCE:
{{PROCUREMENT_METRICS}}
OPERATIONAL METRICS:
{{OPERATIONAL_METRICS}}
Generate comprehensive variance analysis with the following structure:
## 1. EXECUTIVE SUMMARY (3-4 paragraphs, 150-200 words)
Provide a board-level overview covering:
- Overall financial performance assessment
- Key positive and negative highlights
- Strategic implications
- Critical actions required
Use precise, executive-ready language. No jargon.
## 2. REVENUE ANALYSIS
Quantitative Breakdown:
- Total Revenue: [Current] vs [Prior] vs [Budget]
- MoM Change: [€ and %]
- YoY Change: [€ and %]
- Variance vs Budget: [€ and %]
- Mark favorable (✓) or unfavorable (✗)
Revenue by Category:
[Breakdown by product line, segment, geography]
Root-Cause Commentary:
Explain the operational drivers behind revenue changes:
- Demand trends
- Pricing changes
- Volume shifts
- Customer behavior
- Competitive factors
- Seasonality
## 3. EXPENSE ANALYSIS
Quantitative Breakdown:
- COGS: [variance analysis]
- Personnel: [variance analysis]
- SaaS/Software: [variance analysis]
- Marketing: [variance analysis]
- Facilities: [variance analysis]
Efficiency Metrics:
- Gross Margin %: [current vs prior]
- Operating Margin %: [current vs prior]
Root-Cause Commentary:
Explain expense drivers and efficiency trends.
## 4. PROCUREMENT INTELLIGENCE
Vendor Performance:
- Top vendors by spend
- Price variance trends
- Contract compliance issues
- Maverick spend analysis
Savings Opportunities:
- Dynamic discounting captured
- Renegotiation opportunities
- Consolidation potential
- SaaS waste identified
## 5. OPERATIONAL EFFICIENCY
AP Automation Metrics:
- Invoice volume processed
- Average approval time (trend)
- Auto-approval rate
- Exception handling performance
## 6. CASH FLOW ANALYSIS
Operating Cash Flow:
- Cash generation: [current vs prior]
- Working capital changes: [DSO, DPO, DIO trends]
Cash Position:
- Current cash balance
- Monthly burn rate
- Runway analysis (months)
German Insolvency Compliance:
- 13-week cash forecast minimum
- Compliance status
## 7. FORWARD-LOOKING INSIGHTS
Next Quarter Outlook:
- Revenue forecast
- Key risks
- Key opportunities
Strategic Recommendations:
Provide 3-5 specific, prioritized, actionable recommendations with:
- Expected impact (€ or %)
- Required owner/team
- Timeline
Use German business terminology where appropriate:
- Umsatzerlöse (revenue)
- Betriebsausgaben (operating expenses)
- Liquidität (cash position)
Be precise, sharp, and executive-ready. No fluff.
You are a world-class financial communications architect. Generate a
12-15 slide board-ready presentation in markdown format for Gamma API.
VARIANCE ANALYSIS:
{{VARIANCE_ANALYSIS_TEXT}}
CHART IMAGES:
{{CHART_URLS}}
DECK TYPE: {{DECK_TYPE}} (Board / Operational / Investor / Steuerberater)
OUTPUT FORMAT:
# Slide 1 – Executive Summary
[3-4 key bullet points, 80 words narrative max]
{{CHART_URL_1}}
---
# Slide 2 – Financial Snapshot
[KPI dashboard with key metrics]
---
[Continue for 12-15 slides...]
SLIDE STRUCTURE:
1. Monthly Overview
2. Revenue Summary
3. Revenue Trends (chart)
4. Expense Overview
5. Expense Breakdown (chart)
6. Profitability Metrics
7. Cash Flow Summary
8. Working Capital Trends (chart)
9. Procurement Intelligence
10. Vendor Performance (chart)
11. Operational Efficiency
12. Forward-Looking Outlook
13. Strategic Recommendations
14. Next Steps
FORMATTING RULES:
- Headlines: ≤80 characters
- Bullets: 3-5 per slide
- Narrative: ≤80 words
- Slides separated with ---
- No markdown fences
- Embed chart URLs directly (starting with https://)
TONE:
- Executive-ready, clear, confident
- Data-driven with actionable insights
- No jargon, no filler
Output only the markdown presentation, no extra text.
Document Version: 1.0
Last Updated: January 5, 2026
Author: Orcha Product Team
Status: Approved for V1 Development
Next Review: After V1 pilot with 10 customers