Resources · Security and GDPR

GDPR compliant Phone agent: where the data lives and who has access.
No buzzwords.

Kolio is a GDPR compliant Phone agent for businesses: database and telephony in the European Union, SIP and email credentials encrypted with AES-256-GCM, access limited by roles and scoped API keys, and only instructions, knowledge base and conversation text sent to the language model. No audio is stored; transcripts and contacts in the CRM are yours to export or delete.

7 days free · no credit card · export and delete at any time

By the Kolio team · updated

EU
database (Neon, Frankfurt) and telephony (Frankfurt): contacts, conversations, appointments and the knowledge base are stored in the European Union
AES
AES-256-GCM encryption of SIP passwords, mailbox passwords, Google tokens and MCP credentials in the database; decrypted only right before use
30–720
days of conversation and email retention by plan (trial 30, Starter 180, Growth 720, Custom no automatic deletion), audit trail 730 days; set a shorter period yourself in Settings → GDPR
17
GDPR Article 17 (with Art. 15–16): JSON data export and permanent deletion of a contact with its attachments — one action in settings, no support ticketSource: Regulation (EU) 2016/679 — EUR-Lex
01 · Locations

Where does AI agent data go with Kolio?

Kolio AI agent data flows through four parts: the application on Vercel, a Neon PostgreSQL database in Frankfurt, the telephony bridge on a Vultr server in Frankfurt, and the language model via OpenRouter.

Contacts, conversations, appointments, the knowledge base and settings are stored in the database in the European Union (region eu-central-1, Frankfurt); every row carries the customer account's ID and no query reaches beyond it, so one company's data is separated from another's. Telephony (Asterisk and the voice bot) runs on a dedicated server in Frankfurt, where the call is transcribed live — no audio recording is stored. The application itself runs on Vercel: the edge network also responds from Frankfurt, while serverless functions and attachment storage (Vercel Blob) are in region iad1 in the USA. Soniox converts speech to text and back, and the model composes answers via OpenRouter — both receive only what a single answer requires. How it works in practice is described on How it works.
Customer

Phone · web · email

Speech or conversation text. Audio goes to live transcription; no recording is created.

Kolio

Application · database · telephony

Application on Vercel; Neon database in Frankfurt (EU); Asterisk and voice bot on a server in Frankfurt (EU). Every row carries the account ID.

Your systems

Calendar · CRM · MCP / API

Kolio reads and writes only within the permissions and scopes you set. MCP is read-only by default.

Language model

Via OpenRouter

Receives instructions, knowledge base, conversation text and tool results. Never receives credentials, audio or attachments.

Which Kolio AI agent data goes where: where it is processed, where it is stored and what the language model sees
DataProcessed whereStored whereDoes the model see it?
Call audioSoniox (live transcription) via the telephony bridge in Frankfurtnot stored — only the transcript remainsno — the model receives text
Conversation text (phone, web, email)Vercel + model via OpenRouterdatabase in Frankfurt (EU), on the CRM contactyes — the current conversation and its summary
Contact: name, phone, emailVerceldatabase in Frankfurt (EU)only what the customer says in the conversation or a tool returns (e.g. an appointment)
Instructions, knowledge base, service listVerceldatabase in Frankfurt (EU), versionedyes — as system instructions with every answer
Credentials: SIP, IMAP/SMTP, Google token, MCPVercel (decrypted right before use)database in Frankfurt, encrypted AES-256-GCMnever
Attachments (images, PDF)Vercel (content inspection, images re-encoded)Vercel Blob (region iad1, USA), path with a random IDno — only name, type and size
Data from your systems (MCP, API)your system → Vercelnot stored — only the result the agent says remains in the transcriptyes — a sanitised tool result, at most 600 characters

Locations verified on 14 Sep 2026: Neon eu-central-1, Vultr Frankfurt, Vercel functions and Blob iad1.

02 · Language model

What goes to the language model — and what does not?

Kolio sends the language model exactly three things: the company's instructions and knowledge base, the text of the current conversation, and the results of tools the model calls (free slots from the Calendar, the service list, a record from your system).
It does not send audio, credentials, the whole CRM or attachment contents — for an attachment it sees only the file name, type and size. After a call the same model writes a structured summary for the CRM; in the Email agent it drafts a reply that your team reviews in “test” mode. Requests go through OpenRouter with reasoning disabled to a model chosen by Kolio (an OpenAI model by default). Kolio trains no models of its own and does not use your conversations for training; processing at the model provider is governed by its terms. Results from external MCP tools are cleaned before they reach the model: hidden instructions and markers are stripped and the text is truncated.

Sent to the model

  • Agent instructions and the condensed knowledge base (active version)
  • Service list and today's date in the company's time zone
  • Text of the current conversation (who said what)
  • Tool results: free slots, the customer's existing appointments, a record from your system

Never sent to the model

  • Call audio — the model works with text
  • Passwords, SIP and email credentials, tokens, API keys
  • The whole CRM or a list of all contacts
  • Attachment contents — only file name, type and size
03 · Encryption

Credential encryption: AI call center data security

AI call center data security in Kolio starts with credentials: the SIP account password, the IMAP and SMTP mailbox passwords, the Google token for Gmail, the MCP server credential and the softphone password are stored encrypted with AES-256-GCM (the key lives outside the database) and are decrypted only right before use.
User passwords are never stored: only a salted scrypt hash is kept. API keys (kolio_sk_…) exist in the database only as a SHA-256 hash plus the first characters for display — you see the full key once, when it is issued. The database connection runs over TLS, the application only over HTTPS, the softphone over WSS with a Let's Encrypt certificate, and audio over DTLS-SRTP. Attachments pass content inspection (magic bytes): images are re-encoded and lose EXIF data, PDFs without scripts are always offered as a download and never opened inside the application — more in the Web agent, where visitors attach files.

Encrypted in the database

SIP password, IMAP/SMTP passwords, Google token, MCP credential, softphone password — AES-256-GCM, ENCRYPTION_KEY outside the database, a random IV for every record.

Hash only, never the original

User passwords: salted scrypt. API keys: SHA-256 hash + first characters for display. Password-setup link: hash only, valid 7 days, shown once.

Encrypted in transit

HTTPS for the application, TLS to the database (sslmode=require), WSS for the softphone with a Let's Encrypt certificate, DTLS-SRTP for audio. Browsers reject self-signed certificates — so there are none.

04 · Access

AI agent data security by access: roles, permissions and scoped API keys

Access to data in Kolio is defined on three levels.

Every row is bound to a customer account (tenant) and there is no query outside that boundary — the same boundary applies to the Kolio team. A member of your team has a role (owner, admin, agent) and a chosen set of 13 permissions — contacts, tasks, appointments, call center and transcripts, knowledge base, settings, users, subscription and more; the menu shows only what the member may use. An API key or MCP connector receives scopes (contacts:read, bookings:write …) that never exceed the permissions of the member who issued it — checked at issue time and on every call. Sending email (email:write) is not in the default MCP connector scope set and must be enabled explicitly. When Kolio itself calls your systems via MCP or API, it is read-only by default: writing requires the “full” policy and an explicitly enabled tool. Every change is logged in the audit trail: who, what, when and from which source (admin, call, API, system).

Customer account (tenant)

One database, but every business table carries the account ID. A query without it does not exist; a wrong or ambiguous dialled number rejects the call (409) instead of assigning it to another company.

Team member

The owner has every permission; admins and agents get them individually (13 keys). The owner creates new members; each sets a password via a one-time link valid for 7 days.

Integrations

Scoped API keys and MCP connectors bound to the issuer's permissions; revoke at any time. The audit trail shows the action as “api:<key name>”. Kolio as a client: read-only by default, tool allowlist empty.

05 · Retention, export, deletion

Retention, export, deletion: how does Kolio implement GDPR (Art. 15–17)?

A customer's request for access, rectification or erasure (GDPR Articles 15–17) is handled inside Kolio by you, without a support ticket: in Settings → GDPR you export the account's personal data as JSON (contacts, appointments, conversations with an attachment list), permanently delete a contact, or run a cleanup of transcripts older than a chosen number of days.
Deleting a contact permanently removes its personal data and every attachment (file and record); conversations and appointments remain without a link to the person and are deleted at the end of the retention period or by manual cleanup. Automatic retention runs every night: conversations with transcripts and email with attachments are deleted after the plan period (trial 30, Starter 180, Growth 720 days; Custom no automatic deletion) or after a shorter period you set yourself, the audit trail after 730 days, orphaned attachments after 24 hours. No audio recordings are created, so there is nothing to delete. Customer details are corrected in the CRM like any other record.
Data retention periods in Kolio: default period, what happens when it expires and what you can do yourself
DataDefault periodWhat you can do yourself
Call audio recordingnot stored— (only a transcript is created)
Conversation transcripts and summaries (calls, web chats) and emailby plan: 30, 180 or 720 days, then automatic deletion (Custom: none)shorter retention period in Settings → GDPR (min(plan, your period) applies)
Contacts, appointments, tasksuntil deletedpermanent contact deletion with attachments (right to erasure); JSON export
Attachments (images, PDF)as long as the message or contact they belong to; orphans after 24 hoursdeleted together with the contact
Audit trail (who changed what)730 days, then automatic deletioncleanup with a shorter period in Settings → GDPR
API keyuntil revokedrevoke at any time; only a SHA-256 hash is stored
Password-setup link7 daysthe owner issues a new one

The retention period for conversations and email is set by the plan (30/180/720 days); the account can only shorten it in Settings → GDPR, never extend it. The 730-day audit trail period is a platform default.

06 · Informing customers

How do you inform customers about the AI agent and the transcript?

The duty to inform customers about the AI agent and data processing stays with the business, and Kolio makes it practical: how the agent introduces itself (name, role, disclosure that it is an AI) is written in the instructions, and for the website widget and the softphone you add the notice to your own privacy policy.
Regulation (EU) 2024/1689 (the AI Act) requires in Article 50 that people are informed when they interact with an AI system — the provision applies from 2 August 2026. According to Salesforce, 72% of customers say it is important to know whether they are talking to an AI. Kolio stores no audio recordings, only a transcript; for the softphone, where your team leads the conversation, transcription can be switched off in Settings → Telephony.
72%
of customers say it is important to know whether they are communicating with an AI agentSource: Salesforce, State of the AI Connected Customer
Art. 50
of the AI Act requires that a person is informed they are interacting with an AI system — applies from 2 Aug 2026Source: Regulation (EU) 2024/1689 — EUR-Lex
0
audio recordings: Kolio does not record calls; a transcript is created during the call and a summary after it — both on the CRM contact
07 · Data processing agreement

Phone agent DPA (data processing agreement)

The phone agent DPA (data processing agreement under Article 28 GDPR) for Kolio is in preparation; until it is published, customers receive it on request via the Contact page.
It contains the list of sub-processors in the table below and the measures on this page. Kolio holds no ISO 27001 or SOC 2 certification and does not claim one — every measure on this page can be verified in a conversation with us or in the settings during the trial. The general terms are on Terms of Service; the processing of kolio.si visitor data is described in the Privacy Policy. Businesses that need their own instance, their own telephony and their own sub-processor agreements get a dedicated Kolio.
Kolio Phone agent sub-processors: who processes which data and where (verified 14 Sep 2026)
ProviderWhat it processesLocation
NeonPostgreSQL database: contacts, conversations, appointments, knowledge base, settingseu-central-1, Frankfurt (EU)
Vultrtelephony bridge: Asterisk, voice bot, SIP trunksFrankfurt (EU)
Vercelapplication and serverless functions; attachments in Blob storagefunctions and Blob in region iad1 (USA); edge network also in Frankfurt
OpenRouter → model provideragent answers, conversation summaries, email drafts (an OpenAI model by default)USA
Sonioxspeech to text and text to speech for phone calls and the softphoneper the provider's terms
ResendKolio's transactional email: account confirmation and new-task notifications to your teamper the provider's terms
Your email provider (IMAP/SMTP or Gmail)reading and sending mail from your own mailboxyour choice

Where we could not verify a location in our own infrastructure, we do not state one — the provider's terms apply.

Definition

Kolio is a GDPR compliant Phone agent for businesses that talks to your customers by phone, web and email from your own data: it keeps contacts, conversations and appointments in a database in the European Union, encrypts credentials, limits access with roles and scoped API keys, and sends the language model only what a single answer requires.

How to fulfil a request

How do you fulfil a customer's erasure request in Kolio in three steps?

An erasure request (right to be forgotten) is fulfilled inside Kolio by you, in minutes — no support ticket.

  1. 01

    Find the contact in the CRM and check what is linked to it

    The contact card shows conversations, appointments, tasks and attachments. The contact ID is in the page address.

  2. 02

    Export the data if needed, then delete the contact

    Settings → GDPR: the “Export (JSON)” button for export, the “Contact ID” field and “Delete contact” for permanent deletion with attachments.

  3. 03

    Clean up transcripts and confirm to the customer

    To remove the anonymised transcripts as well, run a cleanup with a short period. Reply to the customer from your own mailbox.

FAQ

Frequently asked questions about Phone agent security and GDPR

Does the Kolio Phone agent record calls?

The Kolio Phone agent does not record calls and stores no audio. A transcript is created during the call (who said what and when) and a structured summary after it; both live on the CRM contact of the business, where your team can export or permanently delete them.

Where is the conversation transcript stored?

Kolio stores the conversation transcript in a Neon PostgreSQL database in region eu-central-1 (Frankfurt, European Union), bound to the customer account and to the CRM contact. It is deleted after the plan period (30, 180 or 720 days); the account sets a shorter period itself in Settings → GDPR.

Which model provider answers, and where is the data processed?

Kolio Phone agent answers are composed by a language model via OpenRouter (an OpenAI model by default), which receives the instructions, knowledge base, current conversation text and tool results — never audio, credentials or attachment contents. Processing at the model provider takes place in the USA under its terms; Kolio trains no models of its own.

How does a customer request deletion of their data?

The customer addresses the request to the business using Kolio, which fulfils it itself: in Settings → GDPR it enters the contact ID and permanently deletes the contact with its attachments, while conversations and appointments remain without a link to the person. If needed it also runs a transcript cleanup with a short period — no Kolio support ticket required.

Can one business on Kolio see another business's data?

Every business's data on Kolio is separated by the account ID on every business table, and no query exists outside that boundary. Kolio matches the dialled number exactly across all number formats; an ambiguous number is rejected rather than the call being assigned to the wrong business.

Does Kolio have a data processing agreement (DPA) and ISO 27001 certification?

The Kolio data processing agreement (DPA under Article 28 GDPR) is in preparation and is available to customers on request via the Contact page until it is published. Kolio holds no ISO 27001 or SOC 2 certification; the measures are described on the Security and GDPR page and can be verified in the settings during the free trial.

How are SIP and email passwords protected in Kolio?

The SIP password, the IMAP and SMTP mailbox passwords, the Google token and the MCP credential are stored in the Kolio database encrypted with AES-256-GCM using a key kept outside the database, and are decrypted right before use. User passwords are stored only as a salted scrypt hash, API keys only as a SHA-256 hash.

Questions about security? We answer directly.

Try the GDPR settings, permissions and API keys in the 7-day trial, or write to us for the DPA and the sub-processor list.

7 days free · no credit card · export and delete at any time

Read next