Trust centre

Standards, controls and data handling

Reference information for security reviews, DPA redlines and regulatory filings. Puccha operates as a data processor for organisations regulated under the Thai PDPA and, where applicable, Bank of Thailand, SEC, OIC and HA requirements.

Last reviewed:

This page summarises our position for review purposes. The Data Processing Agreement is the contractual source of truth; where the two differ, the DPA governs.

At a glance

1. Certification status

ISO/IEC 27001:2022

Not certified

Not certified. A Statement of Applicability mapped to Annex A and the supporting evidence pack are available on request, under NDA; certification is in progress. We will not represent Puccha as certified until a certificate is issued.

SOC 2 Type II

Not certified

No report issued. Controls are designed against the Trust Services Criteria and an observation window is planned. Ask for current status in writing before relying on it.

PDPA (Thailand)

In operation

In scope and operating. Appointed data protection officer, records of processing, a DPA with a Thai-law overlay, and the data-subject rights surfaces listed below.

Sub-processor certifications

In operation

Cloudflare holds ISO 27001, SOC 2 and PCI DSS; Stripe holds PCI DSS. These are their certifications, not ours, and do not certify Puccha.

2. Who is responsible for what

You, as data controller

  • Establish a lawful basis for the content you upload and the conversations you collect
  • Ensure your privacy notice covers AI processing, visitor uploads and sub-processor disclosure
  • Decide retention periods and who may access what
  • Notify your supervisory authority and data subjects when required

Puccha, as data processor

  • Process only on your instructions and only for the purposes in the DPA
  • Maintain the security measures listed below
  • Disclose sub-processors and give 30 days notice before adding one
  • Notify you of a breach within 24 hours and assist with your filing
  • Return or delete data at the end of the contract

3. Regulatory control mapping

Regulation What it requires What Puccha does
PDPA §28/29 Cross-border transfer safeguards DPA with a Thai-law overlay; the model provider’s DPA (Anthropic) referenced
PDPA §33 Data-subject access and erasure Per-person export; per-person or org-wide erasure
PDPA §37 Controller security duties; deletion once the retention period ends Documented technical and organisational measures; query log stores a hash, not the question; retention configurable per plan
BOT FPG 19/2599 Outsourced-IT risk, ISO 27001-aligned controls ISO 27001-aligned SoA and evidence pack (certification in progress) roadmap
SEC Chapter 2 Data and application security, IAM Per-document ACL, MFA, audit-log export
OIC IT-risk framework 72-hour cyber-incident reporting by the insurer We notify you within 24 hours and assist your filing, so the 72-hour window stays yours to meet; breach automation is in progress roadmap
HA accreditation Documented policy and access control Per-document access; uploads can skip the AI; DPO support
SOC 2 Third-party assurance report Controls built to SOC 2; Type II report on the roadmap roadmap

Rows marked in progress are not offered as implemented controls and must not be relied on in a filing. Ask us for written confirmation of current status first.

4. Sub-processor register

Customers are notified at least 30 days before a new sub-processor is engaged. This register is the current state; the contractual list lives in §6 of the DPA.

Sub-processor Service Data processed Region Transfer safeguard
Cloudflare, Inc. Workers, D1, R2, KV, Vectorize, AI Gateway, Email Sending, Workers AI All categories of processed data Singapore (APAC primary) + global edge Cloudflare DPA + Standard Contractual Clauses (signed)
Anthropic, PBC Claude inference (Haiku 4.5 by default; Sonnet or Opus where the organisation selects them) for text, images and PDF documents, routed through Cloudflare AI Gateway with payload logging disabled Conversation text, retrieved passages, and image or PDF bytes when a file is read United States (Anthropic API, called through Cloudflare AI Gateway) Answers are billed through Cloudflare AI Gateway with Cloudflare Zero Data Retention enabled (since 2026-09-27): Anthropic is called on Cloudflare-managed credentials through endpoints that do not retain prompts or responses, under the Cloudflare DPA. The standby route calls Anthropic directly under our Enterprise agreement + Zero Data Retention addendum (signed 2026-05-09) + SCCs, with no abuse-monitoring retention window.
Cohere, Inc. Rerank v3.5 (search result ordering) Search query text and retrieved passage text United States Standard Contractual Clauses (signed)
OpenRouter, Inc. Model routing used only as a fail-over: answers when the primary route is unavailable, and a fallback for document indexing and search reranking Conversation text and retrieved passages on a fail-over turn; document text during fallback indexing United States Every request asks for Zero Data Retention endpoints only and opts out of data collection; the request fails rather than reach a provider that retains prompts. Contractual transfer mechanism: being confirmed by counsel.
OpenAI (through OpenRouter) Independent check, for reporting only, of whether a conversation the assistant handled actually resolved the customer’s request (a model from a different family than the one that answered) An excerpt of the closing messages of that conversation (at most 12) United States Called through OpenRouter under the same Zero Data Retention routing. Contractual transfer mechanism: being confirmed by counsel.
Sentry GmbH Application error monitoring Stack traces and redacted request metadata. Attachment URLs and file bytes are scrubbed before sending. EU and US, per project configuration EU Standard Contractual Clauses + UK addendum
Stripe, Inc. Payment processing Tenant billing details only — no end-user or document data United States and EU Stripe DPA + SCCs

5. Data-subject rights

Right How it is served Response time
Access An administrator exports one person’s data as a JSON file from their customer page: profile, conversations and messages, consent records, and the log of which staff opened their conversations. Attachments are listed by reference; the files are supplied on request. Export requires a second MFA check and is audit-logged. Within 30 days; usually the same session
Rectification Not self-service: there is no in-product edit of a person’s record or of message text. On a written request we correct the record or erase the inaccurate content. Within 30 days
Erasure An administrator erases one person from their customer page (second MFA check). Everything the person wrote, attachments in object storage, consent records and identifying fields are removed, and so are their email address and phone number wherever the assistant repeated them. The assistant’s other replies remain as the organisation’s record of what its service said, until the conversation reaches the retention period the organisation sets. Audit entries are reduced to tombstones. A legal hold blocks erasure. Puccha does not send other personal data about a person to the AI model unless the organisation integrates it, and such an integration is covered by erasure before it is offered. Daily database backups taken before the erasure are not rewritten; a retention limit for backups is not yet set. Within 30 days
Restriction of processing Not self-service: there is no processing-paused flag in the product. On a written request we restrict processing manually. Within 30 days
Portability The same JSON export, in a machine-readable form; attachment files on request Within 30 days
Withdrawal of consent Consent to file uploads is recorded with the policy version. There is no self-service withdrawal yet; on a written request we record the withdrawal and erase earlier uploads. Within 30 days

6. Security measures

Area Measure
Encryption in transit TLS 1.2 minimum (TLS 1.1 and older refused), TLS 1.3 preferred; HSTS for two years with preload
Encryption at rest Provided by Cloudflare’s storage services (AES-256, per Cloudflare); messaging-channel credentials are additionally sealed by Puccha with AES-256-GCM under a per-organisation key
Access control Role-based access per organisation (owner, admin, editor, viewer) with per-document ACLs applied before generation; conversations private to their participants by default. Multi-factor authentication for agent accounts is a per-organisation policy — on by default for all agents on Business and above, for admins on Team, off by default on Free. Exporting or erasing a person’s data always requires a second MFA check.
Network Cloudflare web application firewall; request rate limits per visitor, per IP address and per session
Application Content-Security-Policy on every response (the admin console still permits inline scripts), HSTS, content-type pinning, and untrusted retrieved content wrapped in explicit context blocks to resist prompt injection
AI output controls Answers are generated only from retrieved passages the requester is permitted to see; citations are validated server-side against those passages. Injection signatures in Thai and English are rejected on input to web chat, the API and MCP. The system prompt is never sent to the user; on web chat the streamed answer is also checked for system-prompt leakage and stopped if found. These controls are enforced by Puccha and apply regardless of which model is behind Cloudflare AI Gateway. A tenant can keep the AI away from files customers upload, routing them to a person instead.
Logging Audit log of administrative and data-subject actions, exportable by administrators; retained 90 days on Free and Team and 365 days on Business and Growth. When staff open a customer’s conversation it is logged (once per person, per conversation, per day), and that log is part of the person’s export.
Backup and availability Object storage rated eleven nines of durability (per Cloudflare); daily database export
Data minimisation Query text stored as a hash in the query log; uploaded filenames hashed; personal data in audit-log entries removed on erasure; error reports scrubbed before transmission
Personnel Confidentiality agreements; background checks for staff with production access
  • Every database query scoped by tenant — cross-tenant tests gate every endpoint in CI.
  • Per-document ACLs (public, org, role, user); retrieval filters before generation, not after.
  • Audit log; staff access to a conversation is logged and in the person’s export.
  • Query text stored hashed — no raw questions at rest.
  • API keys stored as SHA-256 hashes. Injection patterns rejected, citations validated, system prompt never echoed — enforced by Puccha on any model behind Cloudflare AI Gateway.
  • Runs on Cloudflare’s edge — Bangkok latency, isolated data stores per environment.

7. Breach notification

24h

Puccha notifies you

From becoming aware of a breach affecting your data, per §13 of the DPA.

72h

You notify the regulator

You are the controller and own onward notification to the PDPC or its EU equivalent, and to data subjects where required. We assist with the filing.

8. Retention and end of contract

  • Conversation retention is set per organization: keep everything (the default) or choose a window up to the plan’s ceiling, after which a daily job deletes due conversations — never an open case, a thread an agent holds or a legal hold. The query log stores a hash of the question, never the question text.
  • Cancelling a paid plan does not end the service: the organization moves to the Free plan and its data stays available.
  • To end the service, an owner requests erasure (MFA-gated). It can be cancelled for 7 days; then the data is hard-deleted from the database, object storage and search index. Payload logging is off on the gateway requests that carry conversation and document text to the answer model, so no copies of those remain there. On written request we complete erasure within 30 days of termination.
  • Database backups are taken daily and are not rewritten when data is erased; a retention limit for backups is not yet set.
  • Audit-log tombstones survive deletion for the audit-log retention period. They record that data existed and was deleted — not what it contained.

9. Service level targets

99.95%

Enterprise availability target, rolling 30d

2,000ms

Enterprise chat p95 latency target

24h

Breach notification to you (DPA §13)

Targets are measured over a rolling 30-day window and vary by plan. Current measured values are published on the status page. Status

10. Documents available on request

For a document, a completed security questionnaire, or written confirmation of a control status, contact hello@puccha.ai.