Anrufliste: SMS nach dem Anruf, Aufnahme-Filter und neue Handy-Ansicht
- Sie sehen, was der Kunde bekommen hat: Die neue Spalte „SMS nach Anruf" zeigt, ob nach dem Anruf die automatische Bestätigung verschickt wurde. Fahren Sie mit der Maus darüber oder tippen Sie darauf, um den Text, die Uhrzeit und bei Fehlern den Grund des Anbieters zu sehen.
- Filter „Mit Aufnahme": Ein Klick beschränkt die Liste auf Anrufe, die Sie anhören können. Auf Wunsch gelöschte Aufnahmen fallen heraus — der Filter bedeutet „es gibt jetzt etwas zum Anhören".
- Die Liste am Handy, neu gebaut: Der Gesprächsinhalt ist sofort sichtbar, und die Rufnummer startet den Anruf mit einem Tippen. Filter starten eingeklappt hinter einer Schaltfläche, die anzeigt, wie viele davon die Liste einschränken.
- Status vom Handy ändern: „Neu", „Entscheidung nötig" und die übrigen Zustände stellen Sie direkt in der Liste um.
- Aufnahme und Einwilligung an einer Stelle: Zwei Spalten mit derselben Aussage wurden zusammengelegt. Eine ohne Ansage aufgezeichnete Unterhaltung hat jetzt eine eigene Kennzeichnung.
Ausgehende Anrufe, Multi-Tenant und Festnetz-freundlich
- Ausgehende Anrufe per Konferenz: Rufe Kunden direkt aus Heilo an — das System verbindet zuerst dich, wählt dann den Kunden und du hörst kurz eine Wartemusik. Die Konferenz wird wie eingehende Anrufe aufgezeichnet und transkribiert.
- Vollständiger Aufzeichnungs-Consent: Ausgehende Anrufe enthalten jetzt einen Controller/Processor-Disclosure, einen Zeitstempel der Bestätigung im Profil sowie ein Admin-Panel zur Bearbeitung von Consent-Streitfällen.
- Mehrbenutzer-Konten: Konten lassen sich nun im Team teilen — Rollen Owner/Admin/Mitglied, Einladungs-Panel, Deal-Stage-Kanban mit Workflows, Aufgaben und vollständige Daten-Isolation pro Organisation (RLS).
- Auswahl des Aufzeichnungshinweises: Die Ansage, die der Anrufer hört, wählen Sie aus fertigen Varianten — pro Anruf oder als Default für eine Nummer. Die Sprecher-Stimme wurde neu eingespielt (Brian, neutraler Ton).
- Anruf-Tags und Stimmungs-Erkennung: Die KI markiert Anrufe nach Stimmung (positiv/neutral/angespannt) und Dynamik (Monolog/Dialog/Konflikt). Anrufliste nach Tag filterbar.
- Anrufer-SMS mit Privacy-Modus: Pro Nummer wählst du, ob die volle Voicemail, nur der Anruf-Betreff oder nur dein eigenes Template an den Anrufer geht. Plus Option „SMS senden, auch wenn der Anrufer vor der Voicemail aufgelegt hat“.
- CSV-Export: Lade die komplette Liste der Anrufe und Kontakte als CSV herunter — aktive Filter werden berücksichtigt.
- Festnetz und besserer Onboarding: Festnetz-Nummern verifizierst du jetzt per Sprache (Heilo ruft an und liest den Code vor), und eine alternative Mobilnummer für SMS-Benachrichtigungen richtest du im gleichen Verify-Popup ein. Der Add-Phone-Wizard ist außerdem klarer (Geschäftsnummer vs. eigenes Telefon).
- Dark-Mode: Die gesamte App — Dashboard, Einstellungen, Anruf-Details — unterstützt jetzt Dark-Mode.
- 10 UX-Verbesserungen in Anruf-Details: Sichtbarer „Zusammenfassung bearbeiten“-Button, ein „Analysiere…“-Platzhalter während der Verarbeitung, ein geräumigerer Transkript-Editor, Scroll-Erhalt, farbige Status-Badges und weitere Politur.
Recording-Landingpage, Analytics & Voicemail-Politur
- Landingpage für Anrufaufzeichnung: Eigene Landingpage für das Recording-Feature mit interaktiver Demo, zwei Layout-Varianten, visuellem Ablaufdiagramm und SMS-/System-Mockups, optimiert für Google-Ads-Conversions.
- Google Analytics 4 + Ads-Conversion-Tracking: GA4 mit SPA-Pageview-Tracking sowie Google-Ads-Remarketing- und Lead-Conversion-Events für Pilot-Form-Submissions.
- Neugestaltete Anrufliste: Anrufzeilen zeigen das vollständige Transkript inline, mit einheitlichem Telefonhörer-Icon für Conversation- und Listen-Modus und passenden Badge-Farben.
- Verlässlichere Voicemail:
finishOnKeyauf Twilio Record deaktiviert, damit DTMF-Töne keine Begrüßungen mehr abschneiden, Auflegen nach Bestätigungs-Prompt, Warnung bei zu langen Begrüßungen und Datumsanzeige in der Zeitzone des Nutzers. - Filter in der SMS-Historie: Filter und Badges für Anrufer/Inhaber sowie Scrolling, wenn der Inhalt überläuft.
- Erweitertes Admin-Toolkit: Neuer Audit-Log, SMS-Dashboard, Kostenansicht, Alerts und Anrufqualitäts-Monitoring im Admin-Panel.
- Erweiterung der Wissensdatenbank: 10 neue Artikel zur Anrufaufzeichnung in 5 Sprachen plus ein eigener Vergleich "Cube ACR vs Heilo".
- Schnellere Builds: Produktions-Builds laufen jetzt mit Turbopack, Sentry-Source-Map-Uploads werden auf Nicht-Production-Deploys übersprungen — spürbar schnellere CI.
Hosted-Number-Wizard, eingehende SMS & Kontakt-Projekte
- Hosted-Number-Provisioning-Wizard: Vollständiger Wizard zur Bestellung einer von Heilo gehosteten Twilio-Nummer mit polnischer Regulierungsadresse (AddressSid), nutzerspezifischem Aktionspreis und klareren Stripe-Fehlermeldungen.
- Eingehende SMS auf Hosted Numbers: Hosted Numbers empfangen jetzt SMS in der Inbox, mit Kontaktnamen neben der Telefonnummer in Nachrichten-Threads.
- Kontakt-Projekte & -Aufgaben: Neue Projekte (Themen) pro Kontakt, einheitliche Aufgabenliste über alle Anrufe und die Möglichkeit, wichtige Anrufe an einen Kontakt zu pinnen.
- KI-aggregierte Aufgaben & Entscheidungen: Aufgaben und Entscheidungen aus einzelnen Anrufen werden pro Kontakt mit KI-gestützter Deduplizierung und Zusammenführung aggregiert.
- Rich-Text-Notizen mit Transkript-Highlights: Neuer TipTap-basierter Notizeneditor mit Inline-Transkript-Highlights — Zitate aus dem Anruf direkt in die Notizen einfügen.
- Aufgefrischtes UX für Nummerneinstellungen: Überarbeitetes erweitertes Layout pro Nummer, Aufnahmeansage mit ElevenLabs-Stimme statt Polly TTS und Copy-to-Clipboard-Icon neben jeder gehosteten Nummer.
Listen Mode & smarte Anruf-Tools
- Paralleler Listen Mode: Live mithören bei parallelen Anrufen — mit Anrufererkennung, Gesprächspartner-Tracking, ElevenLabs-Audio-Prompt zum Start und Filtern für Listen vs. Conversation.
- Neugestaltete Gesprächszusammenfassung: Klareres vertikales Layout mit übersetzten Labels in allen Sprachen, an die Textbasis ausgerichteten Icons und besserer Lesbarkeit.
- Reprocess mit einem Klick: Transkript und KI-Analyse jedes Anrufs direkt aus dem Transkript-Bereich neu verarbeiten, plus per-Call-Reprocess im Admin-Userdetail.
- Klügere KI-Transkription: Gemini halluziniert keine Transkripte mehr bei kurzen oder stillen Aufnahmen, und Reprocess übergibt jetzt korrekt den Anruftyp für bessere Zusammenfassungen.
- Als ungelesen markieren: Neuer Button in den Anrufdetails, um Anrufe wieder als offen zu markieren.
- Stripe Automatic Tax: Abos nutzen jetzt Stripe Automatic Tax — Mehrwertsteuer wird je nach Region korrekt angewendet.
- Admin-Insights: Neuer Filter für zahlende Konten in der Userliste sowie globale Anrufansicht mit klickbaren Firmennamen für schnelleres Triage.
- SEO-Pillar-Pages: Neue Pillar-Page "poczta głosowa dla firm" mit Case Studies und Statistiken sowie sprachübergreifende Know-How-Slug-Redirects statt 404.
Hosted-Numbers-Fundament & UX für Per-Nummer-Einstellungen
- Hosted-Numbers-Infrastruktur: Fundament für das von Heilo gehostete Twilio-Nummern-Modell (nur Incoming) mit Safety-Migrationen — bereitet den Weg, BYON-Forwarding komplett zu überspringen.
- Modi der Anrufbehandlung pro Nummer: Vertikale Tabs (Forwarding → Calls → Greeting → SMS) mit Modi pro Nummer — hybrid, voicemail-only, conversation-only, disabled — erklärt durch HTML/CSS-Flow-Diagramme mit echten Nummern.
- Auswahl der Weiterleitungsverzögerung: Lege direkt in der Nummerneinrichtung fest, wie viele Sekunden Twilio wartet, bevor weitergeleitet wird.
- Schnellere Aufnahmeverarbeitung: Recording-Jobs laufen jetzt inline im Webhook (mit Cron alle 5 Minuten als Safety Net), Transkripte erscheinen in Sekunden. Außerdem Fix für nächtliche SMS, ausgelöst durch den Cron.
- SMS-Routing-Härtung: SMS werden jetzt immer über das US1-Hauptkonto verschickt, unabhängig von der Region der Nummer — IE1-Sender-ID-Probleme sind erledigt.
Grundlagen für Conversation Mode, asynchrone Recording-Jobs & Staging-Hardening
- Conversation-Mode-Grundlagen: Erste produktionssichere Bausteine für Live-Gespräche mit Dual-Channel-Aufzeichnung, eigenem Dial-Complete-Webhook, Gesprächszusammenfassung und Voicemail-Fallback, wenn niemand abnimmt.
- Asynchrone Aufnahmeverarbeitung: Twilio-Recording-Webhooks antworten jetzt schnell und übergeben schwere Transkriptions- und KI-Arbeit an eine Job-Queue mit dauerhafter Idempotenz.
- Grundlagen für Shared Demo Routing: Die Demo-Locale-Auflösung kann jetzt das gewählte Locale und die gewählte Route direkt am Anruf speichern. Damit bereitet Heilo gemeinsame Nummern vor, ohne die Sprache nach dem Anruf erneut zu raten.
- Sichereres Staging-Rehearsal: Dedizierter Staging-Workflow für Twilio- und Supabase-Tests plus manueller "Process queued jobs"-Button für Nicht-Produktionsumgebungen ohne Vercel-Cron.
- UX- und Stabilitätsbereinigung: Kürzeres Conversation-Timeout außerhalb der Produktion, optionaler Recording-Hinweis außerhalb von Production, Changelog-Aufräumarbeiten, neue Locale-Metadaten und mehrere Dashboard-/Admin-Fixes aus dem heutigen Rollout.
System-Health-Monitor, automatisch erzeugtes Bestätigungs-Audio & Sprach-Fixes
- System-Health-Panel: Neues Admin-Panel zur Überwachung aller kritischen externen Dienste — ElevenLabs-Guthaben, Twilio-Saldo (US1 & IE1), Stripe, Supabase-DB, Gemini AI und Resend. Prüfungen laufen automatisch stündlich über Vercel-Cron mit Live-Statusanzeige (grüner/roter Punkt) in der Admin-Sidebar.
- Automatisch erzeugtes Bestätigungs-Audio: Bestätigungsmeldungen zur Aufnahme werden jetzt automatisch über ElevenLabs-TTS erzeugt und an Sprache des Anrufers sowie die ausgewählte Stimme angepasst.
- Stabilitätsfixes für Stimmen: Fehler beim Übergeben von ElevenLabs-Stimm-IDs an Amazon Polly behoben, SSML-Prosody-Wrapper für natürlich klingende Bestätigungen hinzugefügt und sichergestellt, dass das TwiML-Bestätigung direkt nach der Aufnahme zurückgegeben wird.
- Wissensdatenbank: Heilo vs. Fonio.ai: Neuer Vergleichsartikel in EN, PL, DE und ES zu den wichtigsten Unterschieden zwischen den Sprachassistenten-Plattformen Heilo.io und Fonio.ai.
- Fehlerbehebungen: Admin-Impersonation-Button verwendet jetzt den korrekten Token-Hash, faktische Angaben zu fonio.ai in den Wissensdatenbank-Artikeln aktualisiert.
Begrüßungs-Zeitplan, US-Locale & Redesign der Weiterleitung
- Zeitbasierter Begrüßungs-Zeitplan: Konfigurieren Sie unterschiedliche Begrüßungen für bestimmte Zeitfenster im Tagesverlauf. Jeden Slot benennen und je Eintrag eine eigene ElevenLabs-Stimme zuweisen.
- WAV-Audio-Aufnahme: Aufnahmen werden jetzt für höhere Qualität ins WAV-Format konvertiert. Ein neuer Audio-Preview-Player erlaubt das Anhören der Begrüßung vor dem Speichern.
- US-Locale (en-US): Vollständige Unterstützung für amerikanisches Englisch mit anbieterspezifischen Weiterleitungsanleitungen für AT&T, T-Mobile und Verizon.
- Redesign der Weiterleitungsanleitung: Inline-QR-Codes für USSD-Wählcodes, gebrandetes H-Logo auf den QR-Codes, *004* als Hauptoption für Weiterleitung sowie ein- und ausklappbare individuelle Weiterleitungscodes.
- Ausbau der Wissensdatenbank: 29 neue Artikel und 59 bestehende Artikel auf Google-Helpful-Content-Standard erweitert — in allen 4 Sprachen. Klickbares Inhaltsverzeichnis, interne Verlinkung zwischen Artikeln und ein Cluster zu Voicemail-Artikeln.
- Kundenstimmen: Neuer Social-Proof-Bereich auf der Landingpage mit echten Kundenstimmen in optimierter Reihenfolge für mehr Überzeugungskraft.
- Native Terminologie: Technische Begriffe wie AI/KI/IA durch das native Branding smart/Heilo auf der Landingpage in allen 4 Sprachen ersetzt.
- SEO-Optimierung: Keyword-Targeting im Hero-Bereich, verbesserte Metadaten, Breadcrumbs-Navigation und robots/noindex-Konfiguration für nicht-öffentliche Seiten.
- Demoanrufe pro Locale: Verwaltung von Demoanrufen pro Locale mit dedizierter Auswahl der ElevenLabs-Stimme für jede Sprachvariante.
- Sicherheits- und Fehlerbehebungen: E-Mail-Enumeration bei der Registrierung verhindert, das Überschreiben der Demo-Locale beim Testen der eigenen Begrüßung behoben und Fehler-Logging im Admin-Panel verbessert.
4 Sprachen, Transkript-Übersetzung & SMS-Optimierung
- Deutsch & Spanisch: Vollständige de-DE und es-ES Unterstützung in der gesamten App, SMS-Nachrichten, KI-Verarbeitung und Wissensdatenbank-Artikeln.
- Transkript-Übersetzung: KI-gestützte Übersetzung von Anruf-Transkripten in die Sprache des Nutzers über Gemini — Transkripte immer in Ihrer bevorzugten Sprache lesen.
- Wissensdatenbank-Erweiterung: 6 neue GEO-optimierte Artikel in allen 4 Sprachen mit Autoren-Metadaten und Veröffentlichungsdaten.
- Audio-Demo: Interaktiver Audio-Demo-Player auf der Startseite — hören Sie Heilo in Aktion, bevor Sie sich anmelden.
- Kürzere SMS-Links: Neue /c/ und /d/ Weiterleitungen sparen ~45 Zeichen pro SMS und reduzieren Twilio-Segmentkosten.
- Steuer-ID beim Checkout: Erfassung der Steueridentifikationsnummer während des Stripe-Checkouts für Geschäftsrechnungen.
- KI-Halluzinations-Schutz: Puffergrößen-Validierung und Kurzaufnahme-Erkennung verhindern, dass Gemini falsche Daten bei leeren oder beschädigten Audioaufnahmen generiert.
- SMS-Fehlerbehebung: Ein Fehler wurde behoben, bei dem die SMS-Benachrichtigung an den Besitzer den Locale-Code anstelle des Transkript-Auszugs anzeigte.
ElevenLabs v3 Upgrade & Audio Confirmation Messages
- ElevenLabs v3: Migrated to eleven_v3 model with 1,806+ audio tags (
[professional],[warmly],[pause:X]) for natural emotional expression and 68% fewer errors on numbers/symbols. - AudioTagPicker Component: New UI component with 40+ user-friendly audio tag buttons for easy insertion into greeting messages.
- Character Limit Increase: Greeting message limit expanded from 1,000 to 5,000 characters to support longer, more detailed greetings.
- Audio Upload for Confirmation: Added full support for uploading custom audio files for confirmation messages (previously text-only in audio upload mode).
- Voice Stability: Increased default ElevenLabs stability from 0.8 to 1.0 for more consistent voice quality in pre-generated greetings.
- Code Quality: Fixed ESLint warning (setState in useEffect) in MessageEditor component for cleaner, more maintainable code.
Landing Page Overhaul, Phone Management & Content Expansion
- Landing Page Enhancements: Added UTM tracking, social proof section, visual feature showcase with SMS mockups, "Who Is Heilo For?" target audience section, and improved SEO with structured data.
- Know-How Content: Published 10 BOFU articles in Polish and English covering voicemail, AI assistants, and call management — rebranded from "AI" to "Heilo" terminology throughout.
- Phone Management: Added phone deletion, account transfer on re-verification, redesigned forwarding UI with database persistence, and country code selector with validation.
- Admin Notifications: Implemented email notifications via Resend for new registrations, phone verifications, and payments for better admin oversight.
- Call Capture Fix: Create call records at call start (not just recording-complete) to capture all incoming calls, including those without recordings.
- AI Localization: Enforced locale-aware output for call summaries and topics — AI now respects user's language preference (Polish vs English).
- Mobile Optimization: Optimized phone configuration view layout for mobile devices.
- Phone Status Fix: Resolved phone status inconsistency and verified_at timestamp handling.
- Supabase Migration: Migrated from deprecated cookie API (
.get()/.set()) to.getAll()/.setAll()for SSR cookie handling. - Twilio Schemas: Migrated from deprecated
.passthrough()toz.looseObject()for webhook validation.
Single Plan Pricing, Email Confirmation & Security Hardening
- Single Plan Pricing: Simplified pricing to a single 49 PLN/month plan for market validation — clearer value proposition, faster onboarding.
- Email Confirmation: Registration now requires email verification before granting access, preventing fake account creation.
- Security Hardening: Patched critical open redirect and webhook bypass vulnerabilities, enabled RLS on all database tables, and completed a full code audit (a11y, architecture, UX).
- Google Ads: Added conversion tracking, remarketing tags, and cookie consent banner for marketing campaign measurement.
- Landing Page: Redesigned mobile hero and problem cards section, added section navigation links with deep linking anchors.
- Know-How i18n: Translated all Knowledge Base articles to English, added internal linking between articles, and fixed Google indexing for Know-How pages.
- Stripe Live Mode: Prepared Stripe integration for production payments with live API keys.
- Admin Panel: Added "Last Login" column to the users table for better user activity tracking.
Settings Redesign, Calls Polish & Content Enhancement
- Settings Redesign: Redesigned SMS, Company, and Welcome pages with a modern multi-card layout for better organization and readability.
- Calls Table: Simplified table actions and improved column layout for a cleaner, more focused call management experience.
- Know-How OG Images: Added dynamic Open Graph images for all Know-How articles, improving social media link previews.
- Landing Page: Replaced generic hero section with product showcase mockups showing the actual Heilo.io interface.
- Polish Terminology: Replaced marketing jargon ('leady') with plain, natural Polish terms across the entire application.
Know-How Section, SEO & Landing Animations
- Knowledge Base: New Know-How section with SEO-optimized articles covering VoIP, virtual PBX, and missed call recovery — including TL;DR summaries, FAQ sections, and JSON-LD structured data.
- SEO Optimization: Added JSON-LD structured data, dynamic sitemap, robots.txt with AI bot crawling rules, and metadata optimization across all pages.
- Landing Animations: Motion.dev entrance and scroll-reveal animations on the landing page for a more engaging first impression.
- Pricing Update: Updated subscription plans to 50/100/200 PLN tiers with revised feature sets.
- Crisp Chat: Linked contact page chat text directly to Crisp embed for instant customer support.
- Developer Tooling: Added Husky + lint-staged for automated pre-commit and pre-push code quality checks.
Language Switcher, Quality & UI Hardening
- Language Switcher Redesign: Modern dropdown design with flag emojis and correct positioning in the dashboard.
- Save as Contact: Added 'Save as Contact' button directly in split view for faster contact management.
- Loading Button: New LoadingButton component with i18n-aware currency and phone formatting.
- Production Hardening: Code quality improvements, type safety fixes, and build error resolutions across the platform.
- Kanban & Charts: Refactored utility functions, renamed charts for clarity, and fixed Kanban card interaction issues.
Configurable Messages, Analytics & Admin Tools
- Recording Confirmation: Customizable confirmation message played after the caller leaves a voicemail, with audio preview support.
- Analytics Dashboard: Added "All calls per day" chart, improved historical data visualization with continuous timeline (no gaps), and added proper axis labels.
- Admin Enhancements: Added ability for admins to delete users directly from the user list dashboard.
- Stability Fixes: Restored missing locale utilities (currency/phone formatting) and fixed build issues caused by dependency updates.
Settings Redesign, SMS Preview & Audit Fixes
- Settings Redesign: Separated SMS into its own settings page, moved account and subscription into the profile popover, and replaced AI branding with Heilo.
- SMS Phone Mockup: Redesigned SMS preview as a realistic phone mockup and removed the dedicated number upsell.
- Greeting Templates: Added ability to save and persist greeting message templates via the database.
- Kanban & Hydration Fixes: Fixed hydration mismatches in localStorage hook, improved Kanban card click targets with stretched-link pattern.
- Code Audit: Added 5MB upload limit for audio files, replaced
anytypes with proper interfaces, added data URL validation, and improved error handling across server actions. - Contact Search: Improved calls search to include matching contact names.
Security, Type Safety & Design Polish
- CSRF Protection: Added double-submit cookie CSRF protection to all mutation API endpoints with automatic token handling on the frontend.
- Type Safety: Eliminated ~25
anytypes across the codebase with proper interfaces andunknownerror handling. - Centralized Locales: Unified locale configuration into a single source of truth, removing hardcoded locale values across 5 files.
- Locale-Aware Formatting: Added
formatCurrencyand improved date/phone formatting to respect user locale settings. - WelcomeMessage Refactor: Extracted form logic into a dedicated
useWelcomeMessageFormhook, reducing component from 608 to 209 lines. - KPI Cards Redesign: Updated KPI dashboard cards to match the clean, minimal design system — soft shadows and rounded corners instead of heavy colored borders.
Frontend Refactor & Performance
Major under-the-hood improvements to UI primitives and state management.
Google Login, Magic Link & Error Fixes
- Google OAuth: Added 'Continue with Google' sign-in and sign-up buttons on Login and Register pages.
- Magic Link: Added passwordless email login — enter your email and receive a sign-in link.
- Bug Fix: Fixed 'No intl context found' errors on all Settings pages (56+ Sentry occurrences) by adding missing client directive to SettingsLayout.
- Analytics: Integrated Vercel Analytics for traffic and usage insights.
- Email Delivery: Configured Resend SMTP for reliable transactional emails (registration confirmations, magic links).
Mobile UI Audit & Fixes
- Mobile Usability: Fixed the floating 'Onboarding Widget' which was blocking content on mobile screens. It is now collapsed by default.
- Localization: Translated 'Always listening' tagline to Polish ('Zawsze słuchamy') in Dashboard/Landing.
- Layout Improvements: Improved spacing and layout on Register, Login, and Settings pages for mobile devices.
Landing Page & Onboarding Fixes
- Greeting & voice section: New landing page section showcasing greeting options — write your own, record yourself, or use professional AI voices.
- SMS from the system: Landing page now highlights the ability to send SMS directly from Heilo.
- Onboarding fix: Widget now shows real progress based on actual account state instead of hardcoded values.
- Welcome modal fix: Fixed 'Let's Go' button not closing the modal. Renamed to 'Smart Receptionist'.
- Upgrade button: Shows error message when checkout fails instead of silently doing nothing.
- Brand tagline: Added 'Always listening' tagline next to the logo on the landing page.
Contacts & Call Detail Redesign
- Contacts system: Full contacts module — auto-populated from call history, contact detail page with call and SMS history, clickable table rows.
- Save as Contact: One-click button to save a caller as a contact, available on both contact detail and call detail pages.
- 1 number = 1 name: Contacts table is the single source of truth for caller names — editing a contact updates the name across all views.
- Topic as page title: Call detail now shows the recognized topic (service_needed) as the main heading instead of caller name.
- Mobile sidebar fix: Fixed CSS typo (
transtone→translate) across 7 files that broke the mobile sidebar slide animation. - SMS phone number: SMS notifications now always include the caller's phone number as a separate line, even when the name is recognized.
- SMS contact name fix: SMS notifications now use the saved contact name instead of showing 'unknown caller' for known contacts.
- SMS history fix: Call detail page now shows all SMS messages for the caller's phone number, not just per single call.
- Contact tabs: Contact detail page now shows calls and SMS history in tabs side by side.
Savings Calculator Redesign
- New calculator design: Light, modern look replacing the dark panel — rounded cards, gradient title, thinner sliders.
- Clear business narrative: Results panel shows: loss → solution cost → net monthly profit.
- Solution cost: New section comparing monthly loss with Starter plan cost (50 PLN/mo.).
- Cleaner code: Removed abstract ROI card, simplified component structure and translations.
Production Fixes & Calculator Update
- Production Critical Fix: Resolved "Server Components render" error by reverting
next-intlWebpack configuration and Sentry client-side migration. - Sentry Stability: Restored stable Sentry configuration to ensure reliable error tracking.
- Savings Calculator Update: Extended slider ranges to 500,000 PLN and 300 missed calls per week based on user feedback.
- Build System Fix: Resolved
NextRequesttype mismatch in recording route handler. - Architecture Audit: Verified API v1 architecture stability and code quality.
Visual Rebrand & Middleware Fix
- New color system — custom heilo-blue + coral palette, gray→slate migration across the app
- Gradient text color for Heilo.io logo on all pages
- Removed H icon and Business AI subtitle from the logo
- Fixed Next.js middleware — restored locale routing and authentication
Mobile UX Fixes, Login i18n & Forgot Password
- Centered View Toggle: The table/board view toggle is now properly centered on mobile screens.
- Removed Horizontal Scroll: Fixed unwanted horizontal scrolling on the calls list in mobile view.
- Settings Submenu on Mobile: The settings navigation submenu is now fully visible when opening the sidebar on mobile devices.
- Contact Page: Added a new contact page — no more 404 when clicking Contact in the footer.
- Login Page Translation: The login page is now fully translated into Polish.
- Forgot Password Page: Added a password reset page with Supabase integration — no more 404 on 'Forgot your password?'.
- Codebase Cleanup: Removed 24 unused SQL migration files, 12 deprecated API proxy routes, legacy reprocess endpoint, dashboard redirect page, and build artifacts. Updated all /dashboard references to /calls.
Demo Call Link, UI Polish & Changelog i18n
- Public Demo Call: Added a public demo call link for potential customers to experience the platform without signing up.
- Unified Form Styles: Unified form field styles in company settings for a consistent look across all input fields.
- Sentry Tunnel Fix: Fixed Sentry tunnel returning 405 errors.
- URL Update: Updated hardcoded URL from vercel.app to www.heilo.io across the platform.
- Lead Timer Simplification: Simplified the lead timer component for better clarity and removed AI branding from public-facing pages.
- Onboarding Widget Fix: Fixed onboarding widget visibility on public pages.
- Mobile UI Spacing: Tightened mobile UI spacing and font sizes for call views for a more compact layout.
- Changelog i18n: Full internationalization of the changelog page — now available in both Polish and English.
Twilio IE1 Region Fix & Test Override
- IE1 Region Support: Fixed webhook signature validation for IE1-region Twilio numbers — the system now tries both the main auth token and the IE1 auth token.
- Configurable Test Override: Moved test number redirect logic to environment variables (
ENABLE_TEST_OVERRIDE,TEST_OVERRIDE_INCOMING_NUMBER,TEST_OVERRIDE_TARGET_USER_PHONE). - Demo User Fallback: Added a configurable
DEMO_USER_IDas fallback for unrecognized direct calls. - Middleware Fix: Fixed API middleware execution order —
withAuthnow runs correctly beforewithAdmin. - Gemini Model: Switched from deprecated
gemini-2.0-flash-expto stablegemini-2.0-flash.
API Refactoring & Unified Error Handling
- API Versioning: New
/api/v1/endpoint structure with full backward compatibility. - Result Type Pattern: Introduced unified error handling inspired by Rust —
Result<T>type for explicit error management. - Standard API Responses: All endpoints return a consistent
{success, data/error, meta}format. - Middleware System: Composable middleware for auth, validation, rate-limiting, and error handling.
- Zod Validation: Comprehensive validation schemas for all endpoints.
- Repository Layer: New repositories for phones and subscriptions with unified data access.
- Service Layer: Refactored billing-service and phone-verification-service.
- AppError Class: Structured errors with codes, HTTP statuses, and details.
Paywall System & Performance Optimizations
- Trial Paywall: Users on the free plan can view details for up to 10 calls. After exceeding the limit, a paywall with an upgrade button is displayed.
- Usage Banner: New banner on the calls list showing usage limits (e.g. "14 / 10 calls") with a progress bar.
- Split View Paywall: Detail blocking also in split view (vertical/horizontal).
- TanStack Query: Client-side caching implementation — faster page transitions without reloading data.
- Progress Bar: Elegant progress bar (YouTube/GitHub style) during navigation instead of skeleton loading.
- Pagination: Calls list shows 20 items per page with full navigation (first, previous, next, last). Page number saved in URL (
?page=2). - Polish Translations: Full localization of paywall and usage banner components.
UI Optimized for Business Users
Comprehensive UI refresh targeting professionals 35+: larger fonts, bigger touch targets (44-48px), improved color contrast, and more spacious layouts across all components including Kanban cards, call tables, filter bars, and mobile views.
Polish Localization & Stability Fixes
- Polish Localization: Complete translation of Settings, Call Details, and technical instructions.
- Navigation Refactor: Migrated Archive and Trash to dedicated routes (
/calls/archive) fixing sidebar highlighting. - Phone Settings UI: Redesigned layout into focused sections (Connected Phones, Business Number, SMS Config).
- Calls Table: Optimized column widths for Status and Actions to prevent cramping.
- Bug Fixes: Resolved "Add Phone" form visibility and build errors.
Trash Functionality & UX Polish
- Trash & Soft Delete: Added full "Trash" support (soft delete) with restore functionality. Deleted items are safe for 30 days.
- Navigation Groups: Calls now organized into "Incoming", "Archive", and "Trash" tabs with live counters.
- Better Layouts: Refined "Call Details" action buttons into a clean grid layout.
- Kanban Actions: Added quick "Trash" button directly to Kanban cards.
- Status Cleanup: Removed "Rejected" status entirely — existing rejected calls migrated to Trash.
UI Refinement & Architecture Modernization
- Split View Refactor: Moved layout toggle to a dedicated "View" menu in the filter bar for better accessibility.
- Layout Persistence: Board/List toggle and Split View preferences are now saved and restored automatically.
- UI Consistency: Unified height and styling of all filter controls (Status, Quality, Date) for a polished look.
- Footer Improvement: Relocated footer links to the left to prevent overlap with onboarding widgets.
- Next.js 16 Readiness: Migrated middleware to
proxy.tsto comply with upcoming Next.js conventions. - Board View Fix: Resolved issue where KPI dashboard was hidden in Kanban mode if Split View was active.
Analytics & Workflow Efficiency
- Redesigned Analytics: Replaced grid cards with large, vertical yearly charts for MRR, ARR, Churn, and LTV.
- Rapid Navigation: Added Next/Previous buttons to call details with Gmail-style keyboard shortcuts (J/K).
- History Tracking: Analytics now enables full 365-day trend analysis for all key metrics.
- Help Tooltip: Added keyboard shortcuts reference directly in the navigation bar.
- Stability Fixes: Resolved i18n context issues for robust error handling across all pages.
Comprehensive Analytics Dashboard
- Advanced Metrics: New comprehensive dashboard tracking Acquisition, Activation, Revenue, Retention, and Engagement.
- Revenue Intelligence: Real-time MRR, ARR, ARPU, and Trial-to-Paid conversion tracking.
- User Activation: Monitoring onboarding completion rates and time-to-first-call to optimize user journey.
- Retention Analysis: Churn rate tracking and Customer Lifetime Value (LTV) estimation.
- Engagement Trends: Daily/Weekly/Monthly Active Users (DAU/WAU/MAU) and call volume trends.
- React 19 Compatibility: Updated authentication flows to use the new
useActionStatehook, resolving consolidation warnings.
Global Reach & Security Hardening
- Full Internationalization (i18n): Complete support for Polish and English languages across the entire platform.
- Language Switcher: New instant language toggle in the sidebar with user preference persistence.
- Security Hardening: Audited RLS policies to prevent unauthorized data access (Strict Insert/Update policies).
- Secure Headers: Implemented automotive-grade HTTP security headers (HSTS, X-Frame-Options) to protect against XSS and Clickjacking.
- Rate Limiting Verification: Confirmed robust brute-force protection via Twilio Verify and Supabase Auth limits.
Architecture Refactoring & Code Quality
- Centralized Configuration: All environment variables now accessed via
getConfig()instead of scatteredprocess.envcalls — easier maintenance and testing. - Service Layer: Extracted voice and transcription logic into dedicated services (
lib/services/) for better separation of concerns (Voice, Twilio Audio, Gemini Processing). - Unified Audio Pipeline: Centralized audio download and AI analysis logic, eliminating duplication across 3 different endpoints.
- Frontend Architecture: Refactored
CallsViewandKanbanBoardinto modular components with custom hooks (useCallsFilters,useKanbanDnD) for better maintainability. - Repository Layer: Fully integrated
CallRepositoryinto admin endpoints and Twilio webhooks, centralized data access logic. - Type Safety: Enhanced
ProcessedTranscriptdefinitions and Zod schemas for stricter validation across the entire stack. - Repository Pattern: Introduced
lib/repositories/withCallRepositoryandProfileRepositoryfor consistent database access. - Twilio Middleware: New
withTwilioWebhookwrapper eliminates repetitive webhook validation code across route handlers. - Webhook Refactoring: Complete rewrite of
recording-completewebhook using new Service/Repository pattern, significantly improving reliability and testability. - Constants Module: Extracted magic numbers and strings to
lib/constants/for consistent configuration. - Skeleton Loading: Added loading states with skeleton components for
/callsand/calls/[id]pages. - UI Architecture: Decomposed
CallRowinto focused components (CallRowNotes,CallRowStatus) and promoted logic to reusableuseCallActionshook. - Configuration: Centralized AI model settings in
lib/config.ts, removing hardcoded values from services. - Architecture Documentation: Comprehensive
architecture.mddocumenting system structure, data flow, and integration patterns.
Mobile Optimization & AI Recommendations
- Mobile Settings: All settings pages optimized for mobile — forms, buttons, and layouts now stack properly on small screens.
- Clear AI Recommendations: New binary recommendations with emojis: ✅ Your topic, 🔥 Hot lead, ❌ Not your topic, ⚠️ Check yourself.
- Recognized Topic: Moved topic section above recording for better visibility, renamed columns for clarity.
- Full Transcript View: Removed text truncation from calls list — see full topic and transcript content.
- Twilio SID: Full call ID now visible in Call Details for customer support communication.
- Renamed Sections: "Customer Insights" → "Good questions to ask during the call".
UI Polish & Desktop Optimizations
- Desktop Table Layout: Optimized Calls table with compact date formats, smarter column widths, and increased content readability.
- Ultra-Compact KPI Cards: Reduced size of top metric cards on desktop to maximize screen space for the calls list.
- Mobile Transcript Improvements: Increased transcription visibility on mobile cards (up to 6 lines) for better context at a glance.
- Widget Layout: Swapped Onboarding and Crisp chat widgets — Chat now floats above the Onboarding checklist on the right.
- Call Back Action: Renamed "Call" to "Call back" on mobile for clarity.
Caller SMS & Onboarding Improvements
- Caller Confirmation SMS: Fixed SMS sending to callers — messages now properly sent after voice message is transcribed.
- Customizable SMS Template: New settings page for personalizing the confirmation message sent to callers with live preview.
- Friendly Reference Numbers: SMS now shows easy-to-read reference numbers (YYYYMMDD-XXXX) instead of UUIDs.
- Enhanced Logging: Added diagnostic logs for SMS functions to track delivery status in Vercel logs.
- Onboarding Widget: Improved widget with navigation links, hidden on public pages (login, signup).
- Onboarding Reorder: "Set up call forwarding" now appears before "Add company info" for better flow.
Infrastructure Security & Stability
- Structured Logging: Implemented centralized logging system with Sentry integration for better error tracking.
- Infrastructure Hardening: Consolidated webhook logic and improved error handling for Twilio integration (including IE1 region support).
- Auth Stability: Fixed "Invalid Refresh Token" loops by automatically cleaning up stale sessions in middleware.
- Component Refactoring: Optimized Settings pages by splitting large forms into focused, maintainable micro-components.
- Environment Fixes: Resolved localhost vs production URL discrepancies for SMS notifications.
Launch Readiness & Observability
- Sentry Integration: Error tracking, performance monitoring, and session replay for better debugging.
- Crisp Chat Widget: Live chat support with automatic user identification — we see your email and company when you write.
- PostHog Analytics: Product analytics, session recordings, and user behavior tracking.
- Legal Pages: Added Terms of Service and Privacy Policy pages with GDPR/RODO compliance.
- Success Funnel: KPI dashboard with Total Calls, Qualified Leads, and Potential Value.
- Stripe Integration: Complete subscription system with Checkout, Customer Portal, and Webhooks for automated status updates.
- SMS Notifications: Receive instant SMS alerts for new business leads, including AI summary and lead score.
- Onboarding Tour: Quick Start checklist for new users to connect their number, test calls, and enable notifications.
- Filter Persistence: Filters are saved in URL — navigate to call details and back without losing your view.
- Unified Filters: Search, Status, Quality filters work across List and Kanban views.
- Ctrl+Click Support: Open call details in a new browser tab.
Visual Polish & UX Refinements
- Callback Response Meter: Redesigned "Response Time" into a compact, single-row meter with clear sentiment stages (Excellent to Critical).
- Drag & Drop Visuals: Trello-like Kanban dragging with full-card ghost images and placeholders.
- Admin Redirect: Admins are now automatically directed to the Admin Dashboard upon login.
- Header Optimization: Compact "Calls" header to save vertical screen space.
- Message Preview: Quick click-to-preview greeting message using a new popover.
Direct Call Handling & Admin Tools
- Improved direct call identification: System now recognizes owners calling from their verified numbers.
- Added Admin Impersonation: Super admins can now log in as users to troubleshoot issues.
- Fixed forwarding number issues: Default forwarding number logic updated for all new accounts.
- Updated USSD codes: Now using double-star prefix (e.g., **61*) for better compatibility.
Gemini 3.0 & Prompt Refinement
- Upgraded AI engine to Gemini 3.0 Flash (Preview) for faster and more accurate analysis.
- Refined "What to do next" prompts to provide natural language advice (e.g., "Call back and schedule a meeting").
Lead Tracking & Response Time
- Lead Temperature: Animated progress bar showing lead urgency with shimmer effect for new leads.
- Response Time: Tracks how quickly you respond to new leads with visual indicator.
- Card Reordering: Drag cards vertically within Kanban columns to prioritize leads.
- Quick Status Move: One-click button to advance leads to next stage.
- Brute-Force Protection: Rate limiting for login attempts to prevent attacks.
- Phone as Primary: Caller phone number shown prominently, name as secondary identifier.
Welcome Messages & Address Intelligence
- Voice Preview: Test your welcome message before saving with audio preview.
- AI Address Extraction: Automatically extracts client address, city, and country from transcriptions.
- Distance Calculation: Shows approximate distance between your office and client location.
- Date Filtering: Filter calls by Today, Week, Month, Quarter, or Year.
- Service Requested Column: New column in table view showing what service each caller needs.
- Inline Editing: Per-field auto-saving in Account settings and Call details.
- Template Dropdown: Quick message templates for faster responses.
🚀 Heilo.io Initial Launch
- Core Platform: Heilo.io with Twilio integration for call recording and forwarding.
- AI Call Analysis: Powered by Gemini 1.5 Flash for automatic transcription and lead scoring.
- Kanban Dashboard: Full-width board with New, Negotiations, Preparing Offer, and Done columns.
- Custom Greetings: Personalized voicemail messages per company.
- 2026 Design System: Modern glassmorphism UI with gradients and smooth animations.
- Security Audit: Webhook validation and authentication hardening.
- Settings Tabs: Organized into Account, Company, Forwarding, and Subscription sections.
- Call Details: Notes editor, task management, and AI-powered summaries.