Data & security

Reads where your data lives. Proves every action without trusting the database.

Vyom reaches into the systems you already run and folds them, with the outside world, into the one model your company runs inside. Your data never moves, and every action is written to a log your own browser re-verifies for itself, using the same SHA-256 hashing our servers do.

The guarantees
01Your data never moves.
02Shared learning is patterns, never records.
03Every action signed and re-verifiable in your own browser.
04Denied by default, every denial logged.
05Deletion is complete.
Reaching your systems

The right connector for each kind of source.

Vyom reaches into your stack where it already lives and meets each system on its own terms. Whatever the source, it lands as the same thing: a dated, sourced observation attached to the part of the business it touches. The badges are honest about what runs end-to-end today versus what is built and waiting on a live hookup.

Source typeHow it connectsLatency
Modern SaaSProcore, QuickBooks, Salesforce, Slack, Stripe, GitHub, Notion, over OAuth and native APIs. You authorize with the vendor; Vyom reads through the interface they expose.near real-time
DatabasesRead off the transaction log: logical replication on Postgres, the binlog on MySQL. Every insert, update, delete as it commits. No table polling.sub-second
OT / plant floorOPC-UA, Modbus, and MQTT edge agents meet industrial systems on their own protocols.100ms–1s
High-frequencyPush-first over WebSocket and webhooks instead of a poll interval.sub-second
DocumentsContracts, filings, scanned records parsed into structured evidence.batch / async
The model everything runs on
◦ ◦ ◦  →  ●

Internal and external signals, one causal model.

Everything else on this page is a side of this one thing. Isolation is the boundary it holds. Federation is it getting sharper. Audit is it proving what it did. Your jobs, invoices, and schedules enter the same model as the weather over your sites, commodity prices, and regulatory filings, and each external signal is interpreted through the model before it enters: assigned to the nodes it affects, given an effect prior, scored for confidence. You get a causal chain, not two widgets sitting side by side.

The boundary it holds

One tenant can’t see another’s data.Denied by default.

For the model to be one world per company, the boundary around each company’s copy has to hold. Isolation is enforced, not trusted: every query is scoped to its tenant and checked before it runs, and a query that isn’t correctly scoped fails closed rather than returning a row. Above it sits an attribute-based policy engine, access denied unless a rule explicitly permits it, every decision explainable. Enterprise sign-in maps a verified identity to a Vyom principal in the right tenant, and SCIM ties access to your HR lifecycle, so a termination revokes access without manual cleanup.

Tenant isolationScoped & checked on every read; fails closed
Policy engineAttribute-based, deny-by-default, explainable
SSOOkta, Azure AD, Google via Clerk
SCIM provisioningTied to your HR lifecycle
StatusEngine & bridges built & verified; your IdP hookup is a setup step per partner
How it sharpens

Patterns cross between companies. Data never does.

The same model that stays inside your boundary also gets sharper as more companies run on it, and that never means your data leaves your control. What crosses between companies is patterns, not records, with formal differential-privacy noise added before anything is released. So a new company starts with priors learned across the field instead of from zero, and no company ever sees another’s numbers.

3
controls in front of every release · DP noise · minimum cohort · no identifying fields
DP noise
A Gaussian differential-privacy mechanism bounds any single company’s influence on the released result.
Minimum cohort
A pattern isn’t released until a minimum number of distinct companies have contributed, so no small pool can expose one member.
No identifying fields
Before any contribution is counted, it’s checked to carry no identifying fields.
How it proves what it did

Every action authorized, signed, and re-verified in your browser.

Because the model acts, not just reports, every action has to be provable. Each entry is hash-chained to the one before it and rolled into a Merkle tree whose single root stands for the whole log. Your browser recomputes that root itself, with the same SHA-256 hashing, so you confirm the record without trusting our database. Change a value below and watch the chain break.

Live audit ledger · try to tamper with it ● real SHA-256, computed in your browser
Ledger root · stands for the whole log
To defend against a compromise of Vyom’s own servers, the root can be published to an external witness (OpenTimestamps or immudb). Until a witness is configured, the log reports its tamper-evidence honestly as unwitnessed, rather than claiming a guarantee it doesn’t have.
The floor beneath it

Keys in the vault. Encrypted. Deletion is complete.

The plain hygiene under all of it. Secrets go straight to an encrypted vault, AES-256-GCM, and the setup flow never sees the value. OAuth tokens live in the vault. In transit, TLS everywhere. Access runs on explicit rules in code: a query fails closed unless a rule allows it, and every denial is logged. Data is labeled by origin, so a live figure is never shown as a prior. Deletion is complete, with one named exception: tamper-evident audit history.

Secrets
Straight to an encrypted vault, AES-256-GCM. The setup flow never sees the value.
OAuth tokens
Authorized with the vendor; the token lives in the vault.
In transit
TLS everywhere, no exceptions.
Access
Policy-as-code: explicit permissions, every denial logged.
Data labeling
Labeled by origin: a live figure is never shown as a prior, or the reverse.
Deletion
Erased from Convex & Postgres automatically; the Neo4j graph cleared on request.
The rules around it

The governance a procurement team asks for, stated plainly.

The mechanisms above prove how the environment behaves. This is the governance a procurement team asks for, stated plainly, including what isn’t done yet. Data residency is enforced, not promised: set a region and the router never serves a read or write from outside it. A request that can only be satisfied across the boundary is refused rather than allowed to leak, the same fail-closed discipline as tenant isolation. Retention is bounded: backup snapshots expire within 90 days under the default policy. Erasure removes a tenant’s records from the primary stores automatically and the graph on request. The one deliberate exception is tamper-evident audit history, kept for accountability; erase the tenant itself to remove that too.

Data residency
Region-pinned; a cross-boundary read is refused, not served.
Backup retention
90 days under the default policy, then expired.
Erasure
Primary stores automatically; the graph on request.
Retained exception
Tamper-evident audit history, kept for accountability.
SOC 2 · ISO 27001
Not yet certified. The controls are running; the audit is on the roadmap.
Sub-processors
Full list shared in the design-partner program.
On formal certification, we are direct
Vyapti is pre-seed and Vyom is not yet SOC 2 or ISO 27001 certified. The controls those audits look for are built and running: encryption at rest and in transit, policy-as-code access with logged denials, tenant isolation, tamper-evident audit. The audit itself is on the roadmap, timed to the first enterprise deployments. If you need a specific framework, region, or sub-processor list to move forward, that’s a conversation we have directly in the design-partner program.
Design partners

We’ll walk this against your stack.

Become a design partner and we’ll walk the connector architecture, isolation model, residency and audit chain against your specific systems, and share our compliance roadmap and sub-processor list.

Request access
SHA-256 · the ledger above re-verified in your browser
See the platform →