Public data × private deployment

The law is public — we maintain it. Contracts and enterprise data are private — they stay on your servers. A secure connector bridges the two so you get the scale of Thai law and 2M+ enterprises without a single contract leaving your control.

PDPA compliant Data residency (TH) Exportable audit logs ISO 27001 in progress
Key numbers
3
Deployment modes
A · B · C
0
Contracts on cloud
Mode B / C
100%
Data in Thailand
in-country

Three layers — each owned, each trusted

L0 · Public cloud
Maintained by us

SDS public law base

Law is a public resource. We index, version and update centrally.
All customers share the same source of truth.

  • · 216 Thai statutes (full text), clause granularity
  • · Case-law base + all 491 BOI activities
  • · ZH / EN / TH trilingual RAG index
  • · General LLM gateway + prompt templates
  • · Baseline data on 2M+ Thai enterprises
Residency
AWS ap-southeast-7 · Bangkok
L1 · Connector
Co-managed

TLS 1.3 secure channel

Not data shuttling — controlled RPC.
Each call carries only the minimum slice needed; destroyed afterward.

  • · mTLS mutual certificate authentication
  • · Per-call JWT + time-bound signature
  • · Full audit logs (export to CSV / SIEM)
  • · Rate limits + anomaly alerts
  • · One-click credential revocation
Heartbeat
99.95% SLA
L2 · Private cloud
Owned by customer

Your private data server

Sensitive data never leaves your data center.
We provide Docker images, a local LLM gateway and a minimum-viable runbook.

  • · Contract docx / PDF / scans
  • · Enterprise KB / client files
  • · Employee KYC / UBO records
  • · Review outputs (redlined docx / reports)
  • · Local LLM gateway (qwen / claude / your choice)
Residency
Customer DC / private VPC

Note: under Mode A (fully public), L2 reduces to object storage with contract text encrypted in a Thailand-resident bucket. Under Mode C (fully private), L0 is also deployed to the customer DC; the connector is used only to ship law-pack updates.

How data flows in a single contract-review request

Example: Mode B (hybrid, default recommendation). Each step labels where the data sits — contract text is never uploaded to L0.

  1. Step 01

    User asks

    In the app, select a contract docx + prompt 'review from buyer's stance, focus on payment milestones'.

    Where is the data
    L2 · Customer browser / private server
  2. Step 02

    Extract clauses

    On the private side, the contract is split into clauses + NER locally; only structured IDs and types are emitted.

    Where is the data
    L2 · Customer private server
  3. Step 03

    Query law

    Via the L1 connector, reverse-lookup public statutes + cases by clause type; returns statute IDs + summaries.

    Where is the data
    L1 → L0 · only query keys transmitted
  4. Step 04

    LLM inference

    On the private side, the LLM gateway assembles the full prompt (clause text + statute summary) and generates redlines.

    Where is the data
    L2 · Customer-chosen LLM
  5. Step 05

    Output lands

    Redlined docx + risk-report PDF write back to customer private storage; audit metadata (no body) returns to L0.

    Where is the data
    L2 · Customer private storage
Will not happen
  • · Contract text entering the L0 public index
  • · Customer data used to train generic models
  • · Cross-border out of Thai jurisdiction
Will happen
  • · Statute IDs + clause numbers pass to L2
  • · Prompt templates + stance config pass to L2
  • · Audit metadata (no body) returns to L0
You're in control
  • · One-click connector revocation
  • · Full audit-log export
  • · Choose LLM gateway (local / third-party)

Three deployment modes for different compliance needs

Dimension
Mode A
Fully public
Recommended
Mode B
Hybrid
Mode C
Fully private
Target customerIndividuals / SMEs / trialThai enterprises / law firms / cross-border legalGovernment / national security / strict-PDPA customers
Contract text residencyEncrypted object storage in THCustomer private serverCustomer DC, network-isolated
LLM gatewayOur gateway (qwen / claude)Customer's choice (ours / own)Customer LLM or open-source local model
Audit logsCustomer can view last 90 daysExportable to CSV / SIEMFull local; copies can be exported
Pricing modelPay per tokenTokens + private-connector annualProject + annual license
Deployment timelineInstant sign-up2–4 weeks integration6–12 weeks delivery

Compliance & evidence — what we have, what comes next

In place
live

PDPA compliance (Thailand Personal Data Protection Act)

Data-subject rights, cross-border restrictions, 72h breach notification, DPO appointment — covered end to end. Privacy Policy + DPA template available.

Evidence
Privacy Policy · DPA template · Data-subject request flow
In place
live

In-country data residency

All L0 indices, L2 customer copies and backups reside in Thailand (AWS ap-southeast-7 Bangkok). No cross-border replication.

Evidence
AWS region pinning · backup geo-binding
In place
live

Audit logs exportable

Full call logs partitioned per customer; export as CSV / JSON or stream via syslog to customer SIEM.

Evidence
Admin console · /api/admin/audit-logs
In place
live

mTLS + credential revocation

L1 connector uses mTLS mutual certs. Customers can revoke certs from the admin console in one click — disconnects immediately.

Evidence
Cloudflare mTLS · console "Connector management"
In progress
Q4 2026

ISO 27001 information-security management

Risk assessment, controls aligned to ISO 27001:2022 Annex A; certification expected Q4 2026.

Evidence
Internal audit report · controls matrix (under NDA)
Roadmap
2027

SOC 2 Type II

Extra assurance for cross-border investors and overseas law firms. Type I first, then Type II (12-month observation).

In place
live

Annual penetration testing

Engaged a third party covering L1 connector, admin console and app. First report delivered with no Critical / High findings.

Evidence
May 2026 pen-test report (under NDA)
In place
live

Local LLM gateway support

Mode C customers can opt out of external LLMs and use only customer-owned open-source models (qwen / llama / fine-tuned).

Evidence
Docker compose · LLM gateway config example