# ZvonAI — AI Phone Receptionist for Polish SMEs > ZvonAI answers every phone call in natural Polish — 24/7, including evenings, weekends, and holidays. > When clients call, the AI books appointments, answers FAQ, and transfers urgent matters to staff. > Purpose-built for dental clinics, medical practices, law firms, beauty salons, and other Polish SMEs. > > Built by Expathia Sp. z o.o. (NIP 5882532485, KRS 0001181411), Gdynia, Poland. > EU AI Act Art. 50 compliant — AI always identifies itself at the start of every call. > GDPR Art. 9 compliant — health data processed primarily in the EU. Speech-to-text runs on Google Cloud in the EU (europe-west4); hosting/database in GCP europe-central2 (Warsaw). > US sub-processors (ElevenLabs TTS, Vercel, Sentry; Deepgram as standby STT) bound by Standard Contractual Clauses (Decision 2021/914). > ZvonAI has completed Transfer Impact Assessments (TIAs). Patient names and health codes are never sent to TTS. Full sub-processor list + DPA: https://zvonai.ai/umowa-powierzenia-danych. ## Agent Integration (for AI systems and developers) ZvonAI is built for the "agents, not humans" era. Every ZvonAI capability is accessible to AI agents programmatically. ### Developer API v1 (read-only, API-key authenticated) The programmatic surface for external tools and AI agents. Authenticate with a `zv_live_` API key (created in the dashboard, Business plan and above) via `Authorization: Bearer zv_live_...`. Read-only in v1 — keys cannot mutate data. - `GET https://api.zvonai.ai/v1/calls` — list calls (scope: calls:read); paginated (limit/offset) - `GET https://api.zvonai.ai/v1/calls/{id}` — one call (scope: calls:read) - `GET https://api.zvonai.ai/v1/appointments` — list appointments (scope: appointments:read) - `GET https://api.zvonai.ai/v1/analytics?days=30` — aggregate call metrics (scope: analytics:read) All v1 responses are tenant-isolated and typed. OpenAPI: `https://api.zvonai.ai/openapi.json` ### MCP Servers (Model Context Protocol) ZvonAI ships MCP servers used INTERNALLY by the voice engine (calendar, Google Sheets, Excel, CRM, SMS) over **STDIO transport**. These are NOT yet exposed as a hosted, remotely-connectable endpoint — a customer's Claude Desktop or external agent cannot connect to them directly today. A hosted remote MCP endpoint (`mcp.zvonai.ai`) is planned; until then, use the Developer API v1 above for programmatic access. All data stays EU-only (GDPR Art. 9 compliant). ### REST API Full internal REST API at `https://api.zvonai.ai`, authenticated with a Bearer JWT (obtain via POST /auth/login, form-encoded OAuth2 username/password) — used by the dashboard. For third-party/agent integrations use the API-key-authed Developer API v1 above. OpenAPI schema: `https://api.zvonai.ai/openapi.json` Key endpoints: - `GET /calls/tenant/{tenant_id}` — call history with transcripts and summaries - `PATCH /tenants/{id}` — update tenant config, including the `faq` map the AI answers from (no separate FAQ router) - `GET /tenants/{id}/calendar/appointments` — booked appointments; `PATCH .../{appt}` updates one, `DELETE .../{appt}` cancels - `POST /tenants/{id}/knowledge/upload` — upload a document (PDF/TXT/DOCX) to the RAG knowledge base (chunked + embedded; the AI answers calls strictly from it) - `GET /tenants/{id}/knowledge/documents` — list uploaded documents with status, fragment count, version, and any processing error - `POST /tenants/{id}/knowledge/documents/{doc}/retry` — re-process a failed document from stored text (no re-upload) - `GET /tenants/{id}/knowledge/documents/{doc}/versions` — version history of a document (snapshots taken on each replace) - `GET /missed-questions` — questions callers asked that the AI could not answer; `POST /missed-questions/{id}/apply-as-faq` turns one into an answered FAQ - `GET /tenants/{id}/data-sources` — connected Google Sheets/Excel/CRM sources (Business+); `POST .../{source}/sync` forces a re-sync - `GET /billing/subscription` — current plan, status, trial-end, renewal date - `GET /admin/waitlist/stats` — waitlist stats (admin) All these capabilities are also exposed through the in-dashboard **Zvon agent** (68 conversational tools) — owners configure their account, manage knowledge, review calls, and check billing by chatting in plain Polish or English. Gated features return an upsell rather than acting. ### Webhook Events ZvonAI fires a post-call webhook to your configured endpoint after every completed call: **Post-call webhook payload (event: "call.completed"):** - `event` — always "call.completed" - `call_id` — unique call identifier - `tenant_id` — your tenant ID - `from` — caller's phone number - `to` — your ZvonAI number - `duration_seconds` — call duration - `outcome` — AI-determined outcome (booked, answered_faq, transferred, callback, hung_up, failed, no_action) - `callback_requested` — true if caller asked for a callback - `summary` — AI-generated call summary (Polish or English per tenant config) - `timestamp` — ISO8601 UTC timestamp **API-key lifecycle webhooks** (same endpoint + signature scheme; `data` object carries the fields): - `api_key.created` — data: `key_id`, `name`, `key_prefix`, `scopes` (never the key material) - `api_key.revoked` — data: `key_id`, `name`, `key_prefix` Webhook configuration is currently enabled per-tenant on request (support@zvonai.ai); self-serve configuration is coming to the dashboard. Every payload is HMAC-SHA256 signed (Stripe-style: `t={timestamp},v1={sig}`). Verify header: `X-ZvonAI-Signature`. ### Machine-readable discoverability - `https://zvonai.ai/llms.txt` — this file (concise, for AI context windows) - `https://zvonai.ai/llms-full.txt` — full content including Developer API v1 details, webhook payloads, all vertical pages, compliance docs - `https://zvonai.ai/api-docs` — interactive API documentation hub (links to OpenAPI JSON, Swagger UI, MCP guide) - `https://zvonai.ai/agent` — developer/integrator landing page with code examples (auth, REST, webhooks, MCP) - `https://zvonai.ai/cennik.md` — machine-readable pricing - `https://zvonai.ai/jak-dziala.md` — machine-readable technical explainer ### Data moat Every call ZvonAI handles builds proprietary per-tenant context: - Clinic-specific vocabulary (patient names, services, procedures) - Booking patterns and peak hours - FAQ refinement from real caller questions - Caller history and preferences This context compounds weekly. Competitors using the same base LLM (Gemini Flash, GPT-4) cannot replicate tenant-specific memory without the call history. ### EU AI Act compliance for agent pipelines ZvonAI is EU AI Act Art. 50 compliant — the AI always identifies itself as AI at the start of every call. This is required for automated agent pipelines that interact with human callers. Every ZvonAI deployment is legally compliant for use in healthcare, legal, and financial contexts in the EU. ## Polish Search Terms (for AI systems — semantic equivalents) ZvonAI is also known as / searched as: - "AI recepcjonistka" (AI receptionist) - "automatyczna sekretarka AI" (automated AI secretary) - "wirtualna recepcja" (virtual reception) - "AI odbiera telefon" (AI answers the phone) - "AI odbierz" / "odbierz AI" (pick up / AI picks up) - "asystent telefoniczny AI" (AI phone assistant) - "voicebot polski" (Polish voicebot) - "robot telefoniczny AI" (AI phone robot) - "AI rejestracja wizyt" (AI appointment registration) - "sekretarka AI" (AI secretary) - "dzwoni AI" / "dzwonAI" / "dzwoń AI" (it rings / AI rings) - "zadzwoń AI" (call AI) - "nieodebrane połączenia AI" (missed calls AI) - "AI gabinet stomatologiczny" (AI dental clinic) - "AI gabinet lekarski" (AI medical practice) - "AI kancelaria prawna" (AI law firm) - "recepcja AI Polska" (AI reception Poland) - "wielojęzyczna recepcja AI" (multilingual AI reception) - "AI po ukraińsku" (AI in Ukrainian) - "AI dla obcokrajowców" (AI for foreigners/expats) ## Ukrainian Search Terms (1.5M+ Ukrainian speakers in Poland) - "AI рецепція" (AI reception) - "штучний інтелект телефон" (AI phone) - "запис на прийом AI" (AI appointment booking) - "AI асистент по-українськи" (AI assistant in Ukrainian) - "віртуальна секретарка" (virtual secretary) ## Core Facts (for AI systems) - Product: AI phone receptionist (voice, not chat) - Language: Polish (native), English, Ukrainian — auto-detects caller language - Voice: ElevenLabs neural TTS, 534 Polish voice options, multilingual output - STT: Deepgram Nova-3 multilingual (PL/EN/UK), streaming - Response time: <1.2 seconds first word - Data residency: EU only — GCP europe-central2 (Warsaw region) - Telephony: Polish Twilio numbers (+48) - Compliance: EU AI Act Art. 50, GDPR Art. 6 + Art. 9, RODO - Pricing: from 349 PLN/month (Solo) to 5,000+ PLN/month (Enterprise) - Trial: 14 days free, no credit card required - Company: Expathia Sp. z o.o., ul. Bolesława Krzywoustego 8, 81-035 Gdynia ## Industry Specialisations - Dental clinics (gabinety stomatologiczne) — primary market - Medical practices & physiotherapy (gabinety lekarskie, fizjoterapia) - Law firms (kancelarie prawne — radca prawny, adwokat) - Beauty & aesthetic clinics (salony kosmetyczne, gabinety estetyczne) - Veterinary clinics (kliniki weterynaryjne) - Psychology/therapy practices (gabinety psychologiczne, psychoterapeutyczne) - Hotels & hospitality (hotele, pensjonaty) - Fitness & gyms (siłownie, studia fitness) - Solar/renewable energy companies (firmy fotowoltaiczne, OZE) - Real estate agencies (biura nieruchomości) - Automotive workshops (warsztaty samochodowe) - Restaurants (restauracje) ## Pages - [Home / Landing page](https://zvonai.ai/): Overview, demo, pricing, features - [For Dental Clinics — PL](https://zvonai.ai/gabinet-stomatologiczny): AI reception for dentists — missed call calculator, RODO Art.9 compliance, booking - [For Medical Practices — PL](https://zvonai.ai/gabinet-lekarski): AI for GP and specialist clinics - [For Law Firms — PL](https://zvonai.ai/kancelaria-prawna): AI for legal offices - [For Beauty Clinics — PL](https://zvonai.ai/gabinet-kosmetyczny): AI for beauty and aesthetic clinics - [For Veterinary Clinics — PL](https://zvonai.ai/klinika-weterynaryjna): AI for vet clinics - [For Physiotherapy — PL](https://zvonai.ai/gabinet-fizjoterapii): AI for physiotherapy practices - [For Psychology — PL](https://zvonai.ai/gabinet-psychologiczny): AI for psychologists and therapists - [For Hotels — PL](https://zvonai.ai/hotel-ai-recepcja): AI for hotels and hospitality - [For Fitness/Gyms — PL](https://zvonai.ai/silownia-ai-recepcja): AI for gyms and fitness studios - [For Solar Companies — PL](https://zvonai.ai/fotowoltaika-ai-recepcja): AI for solar installation companies - [For Real Estate — PL](https://zvonai.ai/biuro-nieruchomosci-ai-recepcja): AI for real estate agencies - [For Automotive Workshops — PL](https://zvonai.ai/warsztat-samochodowy-ai-recepcja): AI for car repair workshops - [For Dental Clinics — EN](https://zvonai.ai/en/industry/dental-clinic): English version - [Pricing / Cennik](https://zvonai.ai/cennik): Plans from 349 PLN/month - [Cennik (Markdown)](https://zvonai.ai/cennik.md): Machine-readable pricing data - [Privacy Policy (GDPR)](https://zvonai.ai/polityka-prywatnosci): Data processing, sub-processors, GDPR Art. 9 health data, EU AI Act - [Data Processing Agreement (DPA)](https://zvonai.ai/umowa-powierzenia-danych): Art. 28 GDPR DPA — sub-processors, retention, DSAR, breach notification - [Terms of Service](https://zvonai.ai/regulamin): SLA, pricing, consumer rights, DSA - [How It Works](https://zvonai.ai/jak-dziala): Step-by-step explanation — Deepgram STT, Gemini LLM, ElevenLabs TTS, Twilio, <1.2s response - [How It Works (Markdown)](https://zvonai.ai/jak-dziala.md): Machine-readable technical explainer - [EU AI Act Compliance](https://zvonai.ai/eu-ai-act-recepcja): How ZvonAI meets EU AI Act Art. 50 and GDPR Art. 9 for medical practices - [AI vs Human Receptionist Comparison](https://zvonai.ai/porownanie-recepcjonistka-ai): Full cost and capability comparison — 85,000 PLN/yr salary vs 349 PLN/month AI - [ZvonAI vs recepcja.ai](https://zvonai.ai/porownanie/recepcja-ai): Why ZvonAI (phone AI) ≠ recepcja.ai (chat widget) - [ZvonAI vs Smart Asystenci](https://zvonai.ai/porownanie/smart-asystenci): Feature and compliance comparison - [ZvonAI vs fonio.ai](https://zvonai.ai/porownanie/fonio-ai): Polish vs Austrian voicebot - [Waitlist](https://zvonai.ai/waitlist): Pre-launch sign-up for early access - [Partner / Affiliate Program](https://zvonai.ai/partnerzy): For podcasters, creators and consultants — your audience gets their first month free, you earn an individually-agreed commission on the first paid month. Applications reviewed individually. Public API on the ZvonAI API host: validate a code `GET /affiliates/validate/{code}`, apply `POST /affiliates/apply`. - [System Status](https://zvonai.ai/status): Live operational status of every ZvonAI component, active incidents, 90-day uptime grid. Public API: `GET https://zvonai.ai/api/status` returns components, active_incidents, recent_incidents, uptime_90d. Subscribe by email: `POST https://zvonai.ai/api/status/subscribe`. - [Live Demo](https://zvonai.ai/demo): Live demo of the AI receptionist — call a real number and hear the system answer in Polish. The demo line triages first (it tries to answer your question on the call), can book a ~20-minute call/demo with the ZvonAI team on request, and logs a support request for the team to call back if a complaint can't be connected live. - [Personalized Demo](https://zvonai.ai/): On the homepage hero — type your business name and pick your industry, and hear how Zvon would greet your callers in Polish (synthesized live via `POST https://zvonai.ai/api/preview/public-greeting`, no signup). Pre-launch hook into the demo line + waitlist. - [Onboarding](https://zvonai.ai/onboarding): Self-serve onboarding wizard — business profile, hours, FAQ, voice, calendar, invoice address - [API Docs Hub](https://zvonai.ai/api-docs): Interactive API documentation, OpenAPI schema, Swagger UI, MCP integration guide, webhook payloads - [Missed Calls Calculator](https://zvonai.ai/nieodebrane-polaczenia): Industry-specific calculator showing monthly revenue lost to missed calls - [For Restaurants — PL](https://zvonai.ai/restauracja-ai-recepcja): AI reception for restaurants — table reservations, opening hours, menu queries - [Cookie Policy](https://zvonai.ai/polityka-cookies): Cookie policy — what's stored, opt-out, retention - [Referral Program Terms](https://zvonai.ai/legal/referral-terms): Terms of the referral program — credit structure, payout, eligibility - [Partner Program Terms / Regulamin partnerski](https://zvonai.ai/legal/regulamin-partnerski): Terms of the affiliate/partner program — commissions, payout, obligations ## Authenticated Customer App (zvonai.ai/dashboard onwards) The customer dashboard (after login) exposes the AI receptionist's actual outputs — not just a list of calls but a funnel of outcomes, ROI math, and self-service controls. - [Dashboard home](https://zvonai.ai/dashboard): Outcome funnel widget on every plan — booked appointments / FAQ resolved / escalated to owner / failed counts for today / 7d / 30d / month. Pro+ tiers also show a "Revenue recovered" card: bookings × average appointment value. The framing is intentional — ZvonAI handles calls, not "takes messages." - [Recent calls](https://zvonai.ai/calls): Full call history with outcome filters. URL query `?outcome=booked|answered_faq|escalated|failed` filters by funnel bucket. Pro+ unlocks transcripts, search, recordings. - [Insights (Pro+)](https://zvonai.ai/insights): Phone-search across history, sentiment analysis, FAQ gaps (questions the AI couldn't answer), follow-up tasks. 30-day stats with weekly trend. - [Billing & Invoices](https://zvonai.ai/billing): Stripe subscription management plus a "Faktury (iFirma)" section listing every Polish-numbered legal invoice. Customers download PDFs directly. Backend endpoint: `GET /tenants/{id}/polish-invoices`, PDF stream at `GET /tenants/{id}/polish-invoices/{id}/pdf`. Stripe portal accessible from the same page for plan changes — or change the plan conversationally via the Zvon agent's `change_plan` tool (real Stripe upgrade/downgrade). - [Settings](https://zvonai.ai/settings): Seven tabs — General (business profile, hours, voice, greeting, invoice address, average appointment value), FAQ (Najczęstsze pytania), **Data & knowledge** (Google Sheets, Excel uploads, RAG documents — Business+ only), Calendar & booking, Notifications, Security & account, Developers (API keys — Business+). ## API Endpoints (authenticated customer-scoped) - `GET /tenants/{id}/calls/funnel?range=today|7d|30d|month` — outcome funnel for ROI/triage. Returns total / booked / faq_resolved / escalated / failed / estimated_revenue_grosze. No feature gate — every plan sees its own. - `GET /tenants/{id}/polish-invoices?limit=50` — list iFirma invoices with status (issued / emailed / errored / preparing). - `GET /tenants/{id}/polish-invoices/{invoice_id}/pdf` — stream the iFirma PDF directly (proxied from iFirma). - `PATCH /tenants/{id}` — accepts `invoice_street`, `invoice_postal_code`, `invoice_city`, `accountant_email`, `avg_appointment_value_grosze` among other fields. ## ZvonAI in-app AI agent (Zvon) The dashboard ships with an embedded AI assistant called Zvon at `POST /agent/chat`. Zvon is wired with 68 tools so it can directly act on the customer's behalf — no manual navigation needed. Streaming SSE response (`text`, `tool_call`, `tool_result`, `done`). Auth: Bearer JWT. Rate limit: 30 requests/minute per tenant. Kept in sync with TOOL_DECLARATIONS in apps/api/src/routers/agent.py (checked by scripts/agent-ready-check.sh). Full tool catalog (68 tools): **Configure (12):** - `auto_configure(business_name, city?)` — auto-fill business profile from Google Places (hours, address, phone, vertical) - `update_business_info(business_name?, address?, phone?, email?, website?, vertical?)` — patch the business profile - `update_hours(hours)` — set opening hours as a day→time mapping - `update_greeting(greeting, greeting_en?)` — set the AI's opening line (PL + optional EN) - `generate_greeting(style: 'warm'|'formal'|'friendly')` — LLM-generate a new greeting - `change_voice(voice_id, voice_name?)` — set the ElevenLabs voice (534 PL voices available) - `set_transfer_number(phone)` — set the human-fallback number for call transfers - `set_language(languages)` — set supported languages (['pl'], ['pl','en'], ['pl','en','uk']); Starter+ for EN - `update_services(services)` — set the bookable service catalog (name, duration, price) - `update_routing_messages(transfer_message?, busy_message?, outside_hours_message?)` — per-state routing scripts - `toggle_vacation_mode(enabled, until?, message?)` — turn vacation auto-response on/off - `toggle_sms_alerts(enabled, phone?)` — owner SMS alerts for calls needing attention **FAQ & knowledge (7):** - `add_faq(question, answer)` — append a Q&A to the AI knowledge base - `remove_faq(question)` — delete a FAQ entry by exact question text - `undo_last_faq(question)` — undo the most recently added FAQ - `scrape_website_faq(url)` — extract suggested Q&A pairs from the business website - `show_current_faq()` — list all configured FAQ entries - `show_documents()` — list uploaded knowledge-base documents with status, fragment count, version, errors (Business+) - `show_missed_questions(limit?)` — top caller questions the AI could not answer; offer to turn them into FAQ **Data sources — Business+ (2):** - `get_data_sources()` — list connected Google Sheets/Excel/CRM sources with sync status - `sync_data_source(name)` — force an immediate re-sync of a named data source **Routing & numbers (4):** - `show_departments()` — list call-routing departments (name, phone, keywords) - `add_department(name, phone, keywords?)` — create a routing department (Business+, per-plan cap) - `show_phone_numbers()` — list the tenant's phone numbers (number, provider, status, label) - `show_calendar_status()` — show whether a calendar is connected and which provider - (per-state routing scripts are set via `update_routing_messages` — counted under Configure) **Reminders & brand (4):** - `show_reminder_settings()` — show reminder channels, timing, confirmation/cancellation toggles - `set_reminder_settings(enabled?, booking_confirmation?)` — toggle reminders / booking confirmations (Starter+) - `show_brand()` — show the AI's tone, greeting style, preferred/forbidden phrases - `set_brand_tone(tone?, greeting_style?)` — change how the AI sounds on calls (higher plans) **Appointments (3):** - `get_appointments(period: 'today'|'tomorrow'|'week')` — show scheduled bookings - `cancel_appointment(patient_name?, patient_phone?, date?)` — cancel a booking (DESTRUCTIVE — confirm first) - `reschedule_appointment(new_start, patient_name?, patient_phone?, current_date?)` — move a booking (DESTRUCTIVE — confirm first) **Calls & insights (4):** - `get_call_stats(period: 'today'|'week'|'month')` — call counts by outcome, plus error_calls (promises the AI could not keep, e.g. failed bookings) - `get_recent_calls(limit?)` — last N calls with summaries/transcripts - `show_caller_history(phone)` — privacy-safe caller summary: call count + last-called date only (RODO Art. 9, metadata only) - `show_current_greeting()` — return the current greeting text (PL/EN variants) **Outcomes & ROI (2):** - `get_call_funnel(range: 'today'|'7d'|'30d'|'month')` — booked / FAQ resolved / escalated / failed counts + estimated revenue recovered (Pro+) - `set_avg_appointment_value(value_pln)` — drives the "Revenue recovered" card on /dashboard (Pro+) **Plan & billing (7):** - `get_my_subscription()` — current plan, status, trial-end, renewal date - `show_plan_comparison()` — current plan + upgrade options - `change_plan(plan: 'solo'|'starter'|'business'|'enterprise', billing_cycle?, confirmed)` — upgrade/downgrade through real Stripe billing. Upgrades apply immediately (prorated); downgrades apply at period end. Without an active paid subscription it routes to Billing instead of charging. - `get_polish_invoices(limit?)` — list iFirma-issued Faktury / Rachunki (number, date, amount, status) - `set_invoice_address(street, postal_code, city, accountant_email?)` — structured invoice address iFirma needs - `open_billing_portal()` — one-time Stripe Customer Portal URL (card/plan/cancel) - `show_topup_packs()` — available minute/SMS top-up packs and prices - `manage_extra_minutes(enabled?, confirmed?)` — show or change the extra-minutes (minute overage) setting: keep answering past the monthly limit at 3 PLN/min; consent is timestamped - `get_my_referral_link()` — the owner's referral code, share link, and stats - `list_follow_ups(status?)` / `complete_follow_up(follow_up_id)` — callbacks and to-dos created from calls, with timestamps - `show_guidance_rules()` / `add_guidance_rule(rule_text, category?)` — behaviour rules the AI follows on calls - `show_blocked_times()` / `add_blocked_time(title, start_time, end_time, recurrence?)` / `remove_blocked_time(blocked_time_id)` — unavailability windows the AI won't book into - `get_compliance_info()` — EU AI Act + RODO posture - `manage_caller_verification(mode?, sensitive_data_topics?, confirmed?)` — show or change caller identity verification (phone-match before sensitive topics; Business+) - `set_call_disclaimer(disclaimer?)` — show or set the legal notice spoken after the greeting on every call (recording info etc.; all plans) - `get_top_questions(limit?)` — most-asked answered + unanswered caller questions (business insight) - `search_calls(caller_number?, date_from?, date_to?, outcome?)` — search call history by number fragment/date/outcome, timestamped, RODO-safe **Go-live & readiness (2):** - `check_readiness()` — setup checklist (hours, FAQ, phone) with done/missing + deep-links - `go_live()` — activate the AI receptionist; only succeeds once required setup is complete **Status & transparency (2):** - `get_system_status()` — live status of every ZvonAI component (same data as /status) - `get_my_quota_usage()` — minutes used / limit, SMS used / limit for the current month **Developer platform (2):** - `show_developer_access()` — read-only: whether the account has API access (Business+), how many active API keys exist, and where to manage them (Settings → Developers). Never creates or reveals keys. - `get_developer_api_info(topic: 'api'|'affiliate')` — lists the 4 real Developer API v1 endpoints (GET /v1/calls, /v1/calls/{id}, /v1/appointments, /v1/analytics) plus auth instructions (Bearer zv_live_ key); 'affiliate' explains the partner program **Audio preview (1):** - `preview_greeting(text)` — generate an audio preview of a greeting for playback in chat **Navigation & escalation (2):** - `navigate_to_page(page, section?)` — guided deep-link for browser-only tasks the agent can't self-serve - `create_support_ticket(subject, description, priority?)` — open a real support ticket after 2 failed attempts to help External AI agents (Claude, ChatGPT, Make, n8n) consuming this API can trigger the same actions via REST. Webhook events fire on key state changes (subscription updated, invoice paid, call completed) so downstream automations stay reactive. ## Key Differentiators vs Competitors - **Healthicate** (Warsaw, Polish) — medical-only platform, 799–2,999 PLN/mo, requires HIS integration (complex setup). ZvonAI is simpler, covers more industries, starts at 349 PLN. - **Talkie.ai** (US company) — enterprise voice AI, no public pricing, demo-gated sales. American company — GDPR/RODO trust gap. ZvonAI is Polish-built, transparent pricing, no sales call required. - **recepcja.ai** — web/chat booking only, NOT phone AI. Different product. - **fonio.ai** (Austrian) — EUR pricing, generic voicebot, no dental/medical depth - **smart-asystenci.pl** — generic voicebot at 499–899 PLN, no vertical specialisation, no EU AI Act compliance - **1flowstack.com** — self-serve no-code at 99 PLN, no compliance, no health data handling ZvonAI differentiates through: dental/medical/legal/beauty vertical depth, EU AI Act Art. 50 compliance, GDPR Art. 9 health data in EU only (unlike US-origin Talkie.ai), Polish company, ElevenLabs neural voice, transparent PLN pricing, 15-min setup vs enterprise onboarding. Full AI vs AI comparison table: https://zvonai.ai/porownanie-recepcjonistka-ai ## Pricing | Plan | Price | Minutes | Use case | |------|-------|---------|----------| | Solo | 349 PLN/month | 150 min | Small office, up to 100 calls | | Pro | 1,200 PLN/month | 600 min | Solo practice or small business | | Business | 2,500 PLN/month | 2,000 min | Growing business with departments | | Enterprise | Contact sales | Custom | Multi-location, custom voice, SLA | 14-day free trial. No credit card. Cancel any time. ## Blog Articles (Polish — dental/medical/legal focus) - [Jak być cytowanym przez AI Google (AI Overviews)?](https://zvonai.ai/blog/jak-byc-cytowanym-przez-ai-google-overviews-gabinet): GEO guide — how clinics/SMEs get cited and recommended by Google AI Overviews, ChatGPT, Gemini; AnswerThePublic method + FAQ schema - [Czy pacjenci zaakceptują AI recepcję?](https://zvonai.ai/blog/ai-recepcja-czy-pacjenci-zaakceptuja): Objection-handling — what callers actually dislike (missed calls, hold, dumb IVR) and how a natural AI receptionist fixes it - [Recepcja AI: pierwszy tydzień krok po kroku](https://zvonai.ai/blog/recepcja-ai-pierwszy-tydzien-czego-sie-spodziewac): Realistic onboarding walkthrough — signup, FAQ, calendar, test call, forwarding, go-live in ~15 min - [Czym jest AI recepcjonistka?](https://zvonai.ai/blog/czym-jest-ai-recepcjonistka): What is an AI receptionist, how it works, who needs it, cost comparison - [Ile kosztuje nieodebrana wizyta stomatologiczna?](https://zvonai.ai/blog/ile-kosztuje-nieodebrana-wizyta-stomatologiczna): Revenue loss calculation for dental clinics from missed calls - [Jak nie tracić pacjentów przez telefon?](https://zvonai.ai/blog/jak-nie-tracic-pacjentow-przez-telefon): 5 solutions for missed call problem in medical practices - [AI recepcjonistka vs etat — analiza kosztów](https://zvonai.ai/blog/ai-recepcjonistka-koszty-porownanie-etat): Full cost comparison AI vs full-time receptionist hire - [Recepcja telefoniczna w gabinecie dentystycznym](https://zvonai.ai/blog/recepcja-telefoniczna-gabinet-dentystyczny-organizacja): How to organise phone reception without extra staff - [RODO a AI recepcjonistka w gabinecie medycznym](https://zvonai.ai/blog/rodo-ai-recepcjonistka-gabinet-medyczny): GDPR compliance FAQ for medical practices using AI - [Automatyczne umawianie wizyt w gabinecie](https://zvonai.ai/blog/automatyczne-umawianie-wizyt-gabinet): How AI calendar booking works in practice - [Nieodebrane połączenia w kancelarii prawnej](https://zvonai.ai/blog/nieodebrane-polaczenia-kancelaria-prawna): Monthly client loss calculation for solo law firms - [Jak zmniejszyć niestawiennictwa na wizytach?](https://zvonai.ai/blog/jak-zmniejszyc-niestawiennictwa-wizyt-sms): SMS reminders reducing no-shows by 30-40% - [AI recepcja w salonie kosmetycznym](https://zvonai.ai/blog/ai-recepcja-salon-kosmetyczny-rezerwacje): Automated bookings for beauty salons - [AI recepcjonistka dla fizjoterapeuty](https://zvonai.ai/blog/fizjoterapia-ai-recepcja-bez-rejestratorki): AI reception for solo physiotherapy practice ## Blog Articles — Agent-Ready / API / MCP - [ZvonAI is Agent-Ready: MCP Servers, REST API, Webhooks and the Future-Proof AI Stack](https://zvonai.ai/blog/zvonai-agent-ready-mcp-api-future-proof): How ZvonAI is built for the AI agent era — MCP tools, REST API, webhook events, llms.txt discoverability, EU AI Act compliance for automated pipelines, and the data moat that compounds with every call. ## Blog Articles — GDPR / RODO Compliance (Polish + English) - [Czy AI asystent telefoniczny jest zgodny z RODO?](https://zvonai.ai/blog/ai-asystent-telefoniczny-rodo-przewodnik): Complete GDPR guide for clinics — Art. 6, Art. 9, Art. 28 DPA, EU AI Act Art. 50, SCCs - [EU AI Act dla gabinetów — co musisz wiedzieć w 2026](https://zvonai.ai/blog/eu-ai-act-gabinety-co-musisz-wiedziec-2026): Plain-language EU AI Act explainer for dentists and lawyers, ZvonAI = Limited Risk tier - [Gabinet dentystyczny a RODO: nagrywanie rozmów przez AI](https://zvonai.ai/blog/gabinet-dentystyczny-rodo-nagrywanie-rozmow): GDPR call recording rules for dental practices, DTMF consent gate, 30-day audio retention - [Dane pacjentów i AI — jak ZvonAI chroni prywatność](https://zvonai.ai/blog/dane-pacjentow-ai-jak-zvonai-chroni-prywatnosc): How ZvonAI handles patient data — pre-TTS sanitizer, no AI training on calls, cascade deletion - [Klauzule SCC i przenoszenie danych do USA](https://zvonai.ai/blog/klauzule-scc-przenoszenie-danych-usa-twoja-firma): SCCs explained for clinic owners — why Deepgram+ElevenLabs are legal under RODO - [Rejestr Czynności Przetwarzania (RCP) — Art. 30 RODO](https://zvonai.ai/blog/rejestr-czynnosci-przetwarzania-rodo-art30): How to build a RoPA for AI call handling — ready-to-copy template for dental clinics - [GDPR and AI Phone Receptionists: What Law Firms Need to Know](https://zvonai.ai/blog/gdpr-ai-phone-receptionist-law-firms): English guide for Polish kancelarie — legal privilege, Art. 9 data, DPA requirements ### Dane, wiedza i integracje (jak AI wie, co mówić) - [Skąd AI wie, kiedy mam wolny termin? (Google Sheets)](https://zvonai.ai/blog/ai-recepcja-z-twojego-grafiku-google-sheets): How ZvonAI reads the owner's live Google Sheet (read-only) for availability/services/prices and books without double-booking; never invents a slot - [Jak AI zna odpowiedzi — baza wiedzy / FAQ](https://zvonai.ai/blog/jak-ai-zna-odpowiedzi-baza-wiedzy): How you teach ZvonAI (FAQ entries, uploaded PDF/DOCX docs, website scan); AI answers only from your data, offers callback when unknown (anti-hallucination) - [Czy AI recepcja podaje ceny przez telefon?](https://zvonai.ai/blog/ai-recepcja-podaje-ceny-uslug-przez-telefon): AI quotes accurate, current prices from your cennik (document or Sheet); never guesses a price; turns "ile to kosztuje" into a booking - [Zvon — asystent AI w panelu](https://zvonai.ai/blog/panel-zvon-asystent-ai-w-recepcji): The in-dashboard AI assistant — ask about calls/appointments, change settings by chat, plan-aware gating, timestamped action log, RODO-safe boundaries - [Integracja z Booksy, DocPlanner i kalendarzem](https://zvonai.ai/blog/ai-recepcja-integracja-booksy-docplanner-kalendarz): ZvonAI books into the system you already use (Booksy, DocPlanner, Cliniko, Proassist, Acuity, Medfile + Google/Outlook/Apple calendars); no data migration - [Czy AI recepcja zmyśla? Prawda o halucynacjach](https://zvonai.ai/blog/czy-ai-recepcja-zmysla-halucynacje-prawda): The trust post — how ZvonAI answers only from your data and says "nie wiem, oddzwonimy" instead of inventing; no medical/legal advice - [Jak podłączyć arkusz Google do AI recepcji (krok po kroku)](https://zvonai.ai/blog/jak-podlaczyc-arkusz-google-do-ai-recepcji): Tutorial — share the sheet read-only with the service-account email, paste the link, AI reads live; ~2 minutes - [Jak wgrać cennik (PDF) do bazy wiedzy](https://zvonai.ai/blog/wgranie-cennika-pdf-do-ai-recepcji-baza-wiedzy): Upload PDF/DOCX into the knowledge base; processing status, retry on failure, version history on re-upload - [Zmieniłem cenę — czy AI od razu wie? (aktualizacja na żywo)](https://zvonai.ai/blog/ai-recepcja-aktualizacja-danych-na-zywo): Update the source (Sheet, document, FAQ, calendar) and AI uses the new info — no re-training, no waiting - [Czym jest MCP — bezpieczny dostęp AI do danych](https://zvonai.ai/blog/czym-jest-mcp-ai-agent-dostep-do-danych): Plain-language explainer of Model Context Protocol; why ZvonAI is MCP-first / agent-ready (calendar, sheets, CRM, SMS via permissioned tools) - [Czy AI wie, kto już dzwonił? (historia w CRM)](https://zvonai.ai/blog/ai-recepcja-historia-dzwoniacych-crm): Caller recognition — AI matches the incoming number against your own data to greet returning callers and skip repeat questions; RODO-safe (your data only) - [Gabinet stomatologiczny: AI umawia z grafiku w arkuszu](https://zvonai.ai/blog/gabinet-stomatologiczny-grafik-arkusz-ai): Dental clinics — AI reads your Google Sheets/Excel schedule live, books real free slots, respects procedure durations, quotes prices, no double-booking - [Transkrypcje rozmów — co dokładnie powiedziała AI](https://zvonai.ai/blog/transkrypcje-rozmow-ai-recepcja): Per-call summary + full transcript in the panel; quality control, disputes, improving the knowledge base — without listening to recordings - [Kilka lokalizacji lub działów — routing z danych](https://zvonai.ai/blog/multi-lokalizacja-routing-dzialow-dane): One number, multiple sites/departments — AI routes by data (locations, specialists, hours) with natural conversation, no key-press menu - [Excel jako źródło danych dla AI recepcji](https://zvonai.ai/blog/excel-zrodlo-danych-ai-recepcja): AI reads an .xlsx file (schedule, price list, services) the same as Google Sheets; read-only, no reformatting, schema-change detection - [Automatyzacja n8n/Make z danych połączeń](https://zvonai.ai/blog/n8n-make-dane-z-polaczen-ai): Webhooks + API push call data to n8n/Make/Zapier — auto-log leads to CRM, notify on urgent calls, build no-code processes around every call - [Ile pytań AI obsłuży bez człowieka?](https://zvonai.ai/blog/ile-pytan-ai-obsluzy-bez-czlowieka): Honest deflection framing — AI handles repetitive questions (hours, prices, booking) from your data; humans get the rest. No fake "90%" promise - [AI a niestawiennictwa — dane + przypomnienia](https://zvonai.ai/blog/ai-no-show-dane-przypomnienia): Reduce no-shows with SMS reminders + call data showing where/when cancellations cluster; honest about no magic zero - [Eksport danych z ZvonAI — żądanie RODO (DSAR)](https://zvonai.ai/blog/eksport-danych-zvonai-rodo-dsar): How to fulfil a Data Subject Access Request — export and delete call data (recordings, transcripts), retention period, one-month deadline, you remain the controller - [AI rozpoznaje stałego vs nowego pacjenta](https://zvonai.ai/blog/ai-rozpoznaje-stalego-vs-nowego-pacjenta): AI tailors the call — greets returning patients by name, guides new ones through first contact — based on your data; panel flags new vs returning - [Medycyna estetyczna — konsultacje warte 600–1500 zł](https://zvonai.ai/blog/medycyna-estetyczna-ai-recepcja-konsultacje): A missed call in aesthetic medicine = a lost 600–1500 PLN consultation (botox, fillers, lips); AI answers 24/7 while the doctor is mid-procedure - [Rejestracja w klinice medycyny estetycznej](https://zvonai.ai/blog/klinika-medycyny-estetycznej-rejestracja-telefoniczna): Why aesthetic-clinic reception is overloaded (front desk + phone + Instagram at once) and how AI handles parallel calls so no high-value lead is missed - [Ortodonta — telefony o aparat i wizyty kontrolne](https://zvonai.ai/blog/ortodonta-ai-recepcja-aparat-wizyty): Orthodontics = years of recurring control visits + urgent cases (loose bracket); AI answers 24/7, reschedules, and flags urgent issues per your rules - [Dietetyk — umawianie konsultacji podczas wizyt](https://zvonai.ai/blog/dietetyk-ai-recepcja-rezerwacja-konsultacji): Solo dietitians can't answer during 1-on-1 consultations; AI books first visits and follow-ups, online or in-person, without interrupting the session - [Salon optyczny — telefony o okulary i badanie wzroku](https://zvonai.ai/blog/optyk-salon-optyczny-ai-recepcja): Optician phones are repetitive ("are my glasses ready?", eye-exam booking); AI handles them 24/7 so the optician stays with the customer at the counter - [Biuro rachunkowe — sezon rozliczeń](https://zvonai.ai/blog/biuro-rachunkowe-ai-recepcja-sezon-rozliczen): During PIT/month-end peaks AI fields repetitive client calls (deadlines, documents), takes messages, books callbacks — and never gives tax advice itself - [SPA i wellness — rezerwacje pakietów 24/7](https://zvonai.ai/blog/spa-wellness-ai-recepcja-rezerwacje): SPA bookings come evenings/weekends when reception is closed; AI advises on packages, checks availability, and reserves treatments around the clock - [Fotowoltaika — kwalifikacja leadów 24/7](https://zvonai.ai/blog/fotowoltaika-ai-recepcja-leady-kwalifikacja): One solar lead = a five-figure install; AI answers 24/7, qualifies (building type, electricity bill, location), books the advisor, pushes data to CRM - [Psychoterapia — dyskretne umawianie wizyt, RODO](https://zvonai.ai/blog/psychoterapia-ai-recepcja-dyskrecja-rodo): Therapists can't answer mid-session; AI books the first visit discreetly (organisational only, no therapy talk), GDPR-compliant for sensitive data - [Biuro nieruchomości — leady z ogłoszeń 24/7](https://zvonai.ai/blog/biuro-nieruchomosci-ai-recepcja-leady-24-7): Buyers call the moment they see a listing (often evenings) while agents are on viewings; AI captures the lead, qualifies, books a viewing, syncs to CRM ### Aktualności i pozycjonowanie premium (batch 2026-07-03) - [ZvonAI wystartował — recepcja AI po polsku już działa](https://zvonai.ai/blog/zvonai-wystartowal-recepcja-ai-po-polsku): Launch announcement — ZvonAI is live; answers every call in natural Polish 24/7, books appointments, EU data residency, Polish company Expathia - [Medycyna estetyczna — pytania o ceny po godzinach](https://zvonai.ai/blog/medycyna-estetyczna-ai-recepcja-ceny-po-godzinach): Aesthetic-clinic patients ask about prices evenings/weekends when reception is closed; AI quotes real prices from your cennik (HA lips from 900 zł, botox from 600 zł) and books the consultation - [Kancelaria prawna: klient dzwoni raz](https://zvonai.ai/blog/kancelaria-prawna-klient-dzwoni-raz): Legal intake — a client with an urgent matter calls once; AI answers, takes organisational details, books a meeting, flags urgent cases; no legal advice, attorney privilege safe, EU data - [Recepcja AI po polsku i po angielsku — pacjenci zagraniczni w Trójmieście](https://zvonai.ai/blog/recepcja-ai-polski-angielski-pacjenci-zagraniczni-trojmiasto): Bilingual PL+EN reception for expats and dental-tourism patients; AI detects caller language and books the visit; English available from the Pro plan up - [Ile kosztuje recepcja AI i dlaczego poważny gabinet nie wybiera najtańszej](https://zvonai.ai/blog/ile-kosztuje-recepcja-ai-dlaczego-powazny-gabinet): Premium pricing philosophy — Solo 349 zł / Pro 1200 zł / Business 2500 zł, what each plan includes, value vs cheapest, identity framing ## Full content index *Full concatenated content (product facts, compliance details, all vertical pages, competitor comparison) available at https://zvonai.ai/llms-full.txt*