Security & trust.
How Facet protects Customer Data and agent traffic, mapped to SOC 2 Trust Services Criteria, ISO/IEC 27001:2022 Annex A, and NIST CSF 2.0 Functions, with tier-level RTO/RPO, vulnerability-disclosure safe harbor, and the canonical subprocessor list.
Scope.
1.1 Program scope
Facet's security program covers: the Services described in the Terms of Service v2.1 (Terminal, Identity Gateway, Atomic Commerce Primitives, signed-response provenance, Agent Reputation Registry, admin dashboards, SDKs, and tooling); Facet-operated infrastructure (Supabase, Netlify, Cloudflare, GitHub); Facet-operated domains (facet.llc, app.facet.llc, audit.facet.llc); Facet personnel; and Facet's engagement with subprocessors listed in Section 11.
1.2 Incorporation
This Security page is referenced by title and version from the Terms of Service v2.1 § 1.5, Privacy Policy v2.1 § 9, DPA v2.1 § 5 and Annex II, and the AUP v2.0. In the event of a conflict on security matters between this page and a specific contract, the specific contract governs for that Customer and that matter.
1.3 No security control is perfect
The controls described below are designed to reduce risk to a level appropriate for an enterprise SaaS serving agent-commerce workloads. No control or control suite is perfect, and Facet does not guarantee that the Services will never be subject to unauthorized access, misuse, or compromise. Breach-notification obligations are governed by the Privacy Policy v2.1 § 9 and DPA v2.1 § 8.
Control-framework mappings.
2.1 SOC 2 Trust Services Criteria
Facet's control set is designed to satisfy the AICPA Trust Services Criteria (TSC) as revised 2022. Facet maintains a SOC 2 Type II report covering the following criteria (current-year report available under NDA):
- Security, Common Criteria (CC1 to CC9): CC1 (Control Environment); CC2 (Communication and Information); CC3 (Risk Assessment); CC4 (Monitoring Activities); CC5 (Control Activities); CC6 (Logical and Physical Access Controls); CC7 (System Operations); CC8 (Change Management); CC9 (Risk Mitigation).
- Availability (A1 to A3): A1 (availability performance objectives); A2 (environmental protections); A3 (recovery and continuity testing).
- Processing Integrity (PI1): PI1 (processing integrity for Terminal requests, metering, and settlement).
The Confidentiality (C1) and Privacy (P1 to P8) TSC are in scope for Enterprise-tier Customers on request and are already satisfied as a matter of program design; formal SOC 2 coverage of C and P is on the roadmap described in Section 2.4.
2.2 ISO/IEC 27001:2022 Annex A controls
Facet's control set maps to the 93 Annex A controls of ISO/IEC 27001:2022, organized across four themes. Key Annex A controls referenced throughout this page:
| Theme | Representative Annex A controls | Covered in … |
|---|---|---|
| Organizational (A.5) | A.5.1 policies; A.5.9 asset inventory; A.5.15 access control; A.5.19 supplier relationships; A.5.23 cloud services; A.5.29 continuity; A.5.30 ICT readiness | §§ 3, 6, 11 |
| People (A.6) | A.6.1 screening; A.6.3 training; A.6.6 confidentiality; A.6.7 remote work | § 10 |
| Physical (A.7) | A.7.1 physical perimeters; A.7.4 security monitoring; A.7.10 storage media; A.7.14 secure disposal | § 6.3 (delegated to cloud providers) |
| Technological (A.8) | A.8.1 endpoint; A.8.3 access restrictions; A.8.5 MFA; A.8.8 vulnerabilities; A.8.11 data masking; A.8.12 data leakage prevention; A.8.15 logging; A.8.16 monitoring; A.8.23 web filtering; A.8.24 cryptography; A.8.25 secure development; A.8.28 secure coding; A.8.32 change management | §§ 3, 4, 5, 7 |
ISO/IEC 27001:2022 certification is on the roadmap described in Section 2.4.
2.3 NIST CSF 2.0 Functions
Facet aligns to the six NIST Cybersecurity Framework 2.0 Functions:
- Govern (GV). Security policy, risk appetite, roles, regulatory-obligation register, and supply-chain-risk management. Governed by the CISO function and reviewed at least annually by leadership.
- Identify (ID). Asset inventory; risk assessment; business-environment understanding. See Section 6.
- Protect (PR). Identity & access management; data protection; platform protection; awareness & training. See Sections 3, 4, 5, 6, and 10.
- Detect (DE). Continuous monitoring; adverse-event analysis. See Section 7.
- Respond (RS). Incident-response planning, analysis, and mitigation. See Section 7.
- Recover (RC). Recovery planning and improvements. See Section 8 (BC/DR).
2.4 Certification roadmap
Certification milestones are tracked publicly here. Current status (as of the Effective Date):
- SOC 2 Type II: annual, current year in force. Report available under NDA.
- ISO/IEC 27001:2022: certification in progress; target certification window: within the twelve (12) months following the Effective Date.
- ISO/IEC 27701:2019 (PIMS), follow-on to ISO 27001; roadmapped for the twelve (12) months following ISO 27001 certification.
- PCI-DSS, not applicable; Facet is not a PCI processor. Card data is handled by Stripe; USDC settlement is non-custodial on-chain (x402 protocol / Boson escrow) and does not pass through Facet's systems (Privacy Policy v2.1 § 3).
- HIPAA BAA, available to Enterprise Customers who demonstrate a covered-entity or business-associate role; Facet does not hold PHI by default (Privacy Policy v2.1 § 3.5 excludes Art. 9 / health data).
- FedRAMP, not on roadmap at the current stage.
Identity and access management.
3.1 Customer admin sign-in
Facet does not store passwords. Admin sign-in to the dashboard uses OpenID Connect through Microsoft Entra ID (multitenant) or Google Workspace, each with OIDC-only scopes. MFA is enforced by the identity provider; Facet inherits the authenticator strength chosen at the tenant.
3.2 API authentication
Programmatic access uses short-lived API tokens bound to a role; tokens rotate on a Customer-configurable schedule and are revocable from the dashboard. Agent Operator requests use Facet KYA tokens (ES256 JWT, Facet's own default), KYAPay tokens from accepted third-party issuers, or, where expressly accepted, DID-based identity claims. Token verification is performed at the Identity Gateway and at each Terminal (defense in depth).
3.3 Internal access
Facet personnel access to production systems is role-based and least-privilege, granted through a JIT-approval workflow with dual-control for high-privilege roles. All privileged access is MFA-enforced and audited (Section 7.1). Personnel access to Customer Personal Data is logged and reviewed quarterly.
3.4 Separation of environments
Production, staging, and development environments are isolated by separate credential trust boundaries. Customer Personal Data does not flow to non-production environments.
Data protection.
4.1 Encryption in transit
All traffic to Facet-operated domains is TLS 1.3 with modern cipher suites; HSTS is enforced. Certificates are managed by Cloudflare and Netlify with automated renewal. TLS fallback to 1.2 is allowed only where a subprocessor endpoint does not support 1.3; Facet tracks and migrates off TLS 1.2 endpoints.
4.2 Encryption at rest
Facet's primary data store (Supabase PostgreSQL) uses AES-256 encryption at rest. Object storage and backups are AES-256 encrypted. Key material is managed by Supabase and AWS KMS behind Supabase; keys are rotated on the schedule maintained by those providers.
4.3 Tenant isolation
Customer Personal Data is isolated by per-tenant database schemas and row-level security ("RLS") policies. All public-schema tables enforce zero anon grants. The anonymous role has no SELECT on any table by default. Anon-role audits are run before and after every feature launch.
4.4 Signing keys and provenance
Ed25519 signing keys are used to sign Terminal responses per RFC 9421 and to issue Provenance Artifacts. Keys are rotated at least quarterly; prior keys are retained in a signature-verification KMS partition for the lifetime of any signed artifact that may still be in use.
4.5 Data minimization
Facet's architecture minimizes Personal Data collection (see Privacy Policy v2.1 § 3 for the enumerated negatives). The classifier returns aggregates, not raw logs; Customer PII is intentionally not collected. Minimization is a continuous design discipline, not a one-time audit.
4.6 Secure deletion
On termination or Customer request, Facet deletes Customer Personal Data from production within thirty (30) days and from backups within ninety (90) days through the ordinary backup-overwrite cycle (DPA v2.1 § 11). Deletion certification is available on request.
Application security.
5.1 Secure development lifecycle
Facet follows a Secure Development Lifecycle ("SDLC") including threat modeling, mandatory code review for every change, two-person commit rules for production branches, branch-protection rules in GitHub, and automated pre-merge checks.
5.2 Static and dynamic analysis
SAST runs on every pull request (eslint, typescript-strict checks, semgrep for common vulnerability classes). Dependency scanning (GitHub Dependabot + Renovate) runs continuously. DAST is run on pre-production and production on a scheduled cadence.
5.3 Dependency hygiene and SBOM
Facet maintains a Software Bill of Materials ("SBOM") for its published packages and deployed services. Dependency updates target critical-severity advisories within forty-eight (48) hours and high-severity within fourteen (14) days of disclosure, consistent with vulnerability-management practice in Section 9.
5.4 Application-level controls
Standard application-layer controls are in force: input validation at all trust boundaries; output encoding per context; parameterized queries (no dynamic SQL construction from user input); CSRF tokens for state-changing browser requests; strict Content-Security-Policy on Facet marketing and dashboard pages; Subresource Integrity for third-party scripts; cookie flags (Secure, HttpOnly, SameSite); and rate-limiting at the Identity Gateway and each Terminal.
5.5 Third-party penetration testing
Facet engages qualified third-party penetration testers at least annually for the Terminal, admin dashboard, and identity surfaces. Findings are tracked to closure; the most recent executive summary is available to Customers under NDA.
Infrastructure.
6.1 Cloud providers
Facet operates on a managed-service stack. Primary components: Supabase (managed PostgreSQL + Edge Functions + object storage, us-east-2); Netlify (edge routing + static hosting + host-router); Cloudflare (DNS + WAF + DDoS protection + rate-limiting); GitHub (source-control + CI/CD). Subprocessor relationships and governance are in Section 11 and DPA v2.1 Annex III.
6.2 Network controls
Cloudflare provides WAF rule sets tuned for Facet's threat model, DDoS mitigation at the edge, bot management (including signed-bot verification), and rate-limiting. Netlify enforces TLS, header policy, and edge caching consistent with the CSP. Traffic to Supabase is via the Supabase-managed connection pooler over TLS 1.3.
6.3 Physical security (delegated)
Physical security of cloud data centers is delegated to the subprocessors listed in Section 11 (Supabase via AWS; Netlify via AWS; Cloudflare on its own data-center estate). Facet reviews the physical-security posture of each subprocessor as part of the annual Sub-Processor assessment described in DPA v2.1 Annex II.5.
6.4 Configuration baselines
Infrastructure configuration is defined in code ("IaC") and reviewed in pull requests. Drift between declared and actual state is monitored and alerted. Hardening baselines align to CIS benchmarks where applicable.
Monitoring and incident response.
7.1 Logging and monitoring
Facet maintains append-only audit logs for every significant action (admin sign-ins, configuration changes, key rotations, signature operations, billing events, policy acknowledgments). Infrastructure metrics, application metrics, and error traces are captured and retained per Privacy Policy v2.1 § 8. Anomaly detection runs on agent-traffic patterns, rate-limit excursions, and admin-session behavior.
7.2 Incident-response program
Facet maintains a written Incident Response Plan ("IRP") with severity classification (P1 to P4), on-call rotation with 24×7 engagement for P1 events, defined roles (Incident Commander, Deputy, Communications, Scribe), and post-incident review. Facet runs tabletop exercises at least annually and full live-drill exercises at least once every two (2) years.
7.3 Breach notification
Breach-notification timelines are governed by Privacy Policy v2.1 § 9.3 and DPA v2.1 § 8. As Processor, Facet notifies Customer within forty-eight (48) hours of confirmation. As Controller, Facet notifies supervisory authorities and, where applicable, data subjects within the statutory windows (GDPR Art. 33 72 hours; Cal. Civ. Code § 1798.82 “most expedient time possible and without unreasonable delay”; state-specific variants).
7.4 Post-incident reports
For confirmed incidents affecting Customer Personal Data or service availability at or above defined thresholds, Facet produces a post-incident report covering timeline, impact, root cause, remediation actions, and verification, and provides it to affected Customers within thirty (30) days of incident closure.
Business continuity and disaster recovery.
8.1 RTO / RPO targets by tier
Recovery Time Objective ("RTO") and Recovery Point Objective ("RPO") targets are set by subscription tier:
| Tier | RTO target | RPO target | Notes |
|---|---|---|---|
| Free | Best-effort | Best-effort | No BC/DR commitment; Free tier is not covered by the SLA |
| Pro | 24 hours | 24 hours | Aligned with 99.0% Monthly Uptime (Terms v2.0 § 12.2) |
| Pro+ | 4 hours | 1 hour | Aligned with 99.9% Monthly Uptime (Terms v2.0 § 12.2) |
| Enterprise | 1 hour | 15 minutes | Dedicated provisioning; negotiated Order Form may supersede |
8.2 Backup strategy
Supabase point-in-time-recovery is enabled with backups retained on a rolling thirty (30) day window and overwritten in the ordinary course. Multi-region backup replication is enabled for Pro+ and Enterprise-tier Customers. Backups are encrypted at rest (AES-256) and exercised at least quarterly by automated restore-verification jobs.
8.3 Testing cadence
BC/DR tests run at least annually with live failover exercises; results are documented in the BC/DR report and remediation is tracked to closure. Enterprise Customers may request dedicated failover testing on a negotiated schedule.
8.4 Chronic-breach interplay
A Customer whose tier-applicable SLA uptime target is missed in the frequency described in Terms of Service v2.1 § 12.8 may terminate the affected Order; RTO/RPO misses are factored into uptime calculations consistent with Terms v2.0 § 12.3.
Vulnerability disclosure and bug bounty.
9.1 How to report
Report suspected vulnerabilities to [email protected]. Our machine-readable security contact is published at /.well-known/security.txt. If your report is sensitive, say so in your first email and we will arrange an encrypted channel. Please include: (a) a description of the vulnerability; (b) reproduction steps; (c) the impact you believe it has; and (d) any proof-of-concept artifacts.
9.2 Facet’s response
Facet acknowledges reports within two (2) business days, triages within five (5) business days, and keeps reporters informed of remediation progress. Facet targets remediation of critical issues within forty-eight (48) hours, high within fourteen (14) days, medium within thirty (30) days, and low within ninety (90) days, from triage.
9.3 Safe harbor for good-faith research
Facet will not pursue civil action or initiate a complaint to law enforcement against a security researcher for conduct that: (a) respects the scope in Section 9.4; (b) stays within the out-of-scope limits in Section 9.5; (c) avoids service disruption, Personal Data exposure beyond what is necessary to demonstrate the vulnerability, and disruption of production data; (d) reports the finding through [email protected] and provides a reasonable opportunity to remediate before public disclosure; and (e) does not attempt to extort, monetize, or otherwise misuse the finding. This safe harbor does not authorize conduct prohibited by law (for example, CFAA 18 U.S.C. § 1030); Facet's position is that good-faith research within this framework is not prohibited.
9.4 In scope
- The Facet marketing site facet.llc.
- The admin dashboard at app.facet.llc.
- The audit property audit.facet.llc.
- The public Terminal endpoints exposed by Customer properties on Facet-issued paths.
- The Facet SDKs and command-line tools distributed by Facet on its public package registries.
- The Identity Gateway and Facet KYA / KYAPay / DID verification flows operated by Facet.
- The signed-response / RFC 9421 provenance implementation operated by Facet.
9.5 Out of scope
The following are out of scope for the Facet vulnerability-disclosure program and the safe harbor in Section 9.3:
- Social engineering against Facet personnel, Customers, or Agent Operators.
- Physical intrusion into Facet offices, homes, or those of subprocessors.
- Denial-of-service or distributed denial-of-service testing; load testing without prior written approval.
- Spam, phishing, and unsolicited mass email to Facet, Customers, or third parties.
- Third-party systems Facet does not operate, including Customer properties running a Facet Terminal. Those are in the Customer's scope, not Facet's.
- Subprocessor-operated infrastructure, report vulnerabilities in Supabase, Netlify, Cloudflare, Stripe, Microsoft, Google, or GitHub directly to those vendors.
- Missing security headers on marketing-only domains where the missing header does not enable a concrete exploit (for example, missing X-Frame-Options on a static marketing page with no sensitive actions).
- Self-XSS without a plausible exploitation vector (for example, requiring the victim to paste into their own devtools console).
- Clickjacking on pages with no sensitive actions.
- Best-practice reports without an exploitable finding (for example, “TLS version recommendation” absent a concrete downgrade vector).
- Vulnerabilities in end-of-life, unmaintained, or explicitly deprecated components where Facet has published notice of the deprecation.
- Access to another person’s Personal Data beyond what is minimally necessary to demonstrate the vulnerability; researchers must stop at minimal demonstration.
- Conduct violating applicable law, including CFAA-prohibited access, wiretap laws, and export-control laws.
9.6 Bug bounty
Facet operates a private bug-bounty program on a platform of record with rewards scaled by severity. The program is open by invitation in its initial phase; researchers may request an invitation by emailing [email protected]. Program rules, scope, and reward schedule supersede this page for invited researchers.
9.7 Public disclosure
Researchers are asked to give Facet a reasonable remediation window, typically ninety (90) days from the triage date, or sooner where a patch is issued earlier, before public disclosure. Facet will work with researchers on coordinated-disclosure publication (credit, timeline, embargo).
Personnel security.
10.1 Screening
Background checks are conducted on new hires proportionate to role and jurisdiction, subject to applicable law (for example, FCRA 15 U.S.C. § 1681 et seq. in the United States; Ban-the-Box provisions where applicable).
10.2 Training
All personnel complete security and data-protection training on hire and annually. Engineering personnel complete additional secure-development training. Role-specific training covers incident response, access management, and sub-processor oversight.
10.3 Confidentiality
Personnel are bound by written confidentiality obligations surviving termination of employment or engagement.
10.4 Termination hygiene
On termination, personnel access to production systems, email, code, and secrets is revoked within one (1) business day. Physical assets are recovered; data on personal devices subject to BYOD policies is wiped per the device-management runbook.
Subprocessors.
The following subprocessors are engaged by Facet as of the Effective Date. This list is the canonical subprocessor list referenced by the Privacy Policy v2.1 § 6.1 and the DPA v2.1 Annex III. The three references are kept byte-for-byte in sync. Facet provides thirty (30) days prior written notice before adding or replacing a subprocessor; Customer's objection right is in DPA v2.1 § 6.3.
| Subprocessor | Purpose | Location | Transfer mechanism |
|---|---|---|---|
| Supabase, Inc. | Managed PostgreSQL, Edge Functions, object storage | USA (us-east-2) | SCC Dec. 2021/914 Module 3; UK IDTA; Swiss FADP addendum; EU-US DPF where certified (verify at dataprivacyframework.gov) |
| Netlify, Inc. | Edge routing, static hosting, host-router | USA (primary); global edge | SCC Module 3; UK IDTA; Swiss Addendum; EU-US DPF |
| Cloudflare, Inc. | DNS, WAF, DDoS protection, rate-limiting at the edge | USA (primary); global edge | SCC Module 3; UK IDTA; Swiss Addendum; EU-US DPF |
| Stripe, Inc. | Subscription billing; tax calculation; agent-originated card-rail (Visa, Mastercard) settlement | USA | SCC Module 3 (P2P) / Module 2 where Stripe acts as Controller; UK IDTA; Swiss Addendum; EU-US DPF |
| Skyfire Systems, Inc. (KYAPay) | KYAPay issuer services; agent identity | USA | SCC Module 3; UK IDTA; Swiss Addendum |
| Microsoft Corporation (Entra ID) | OIDC identity-provider (multitenant) for admin sign-in | USA (primary); EU regions for EU tenants | SCC Module 3; UK IDTA; Swiss Addendum; EU-US DPF |
| Google LLC (Workspace OIDC) | OIDC identity-provider (Workspace tenants) | USA (primary); regional replicas | SCC Module 3; UK IDTA; Swiss Addendum; EU-US DPF |
| GitHub, Inc. (Microsoft) | Source-control, CI/CD, deployment pipeline (no end-user Personal Data) | USA (primary); global edge | SCC Module 3; UK IDTA; Swiss Addendum; EU-US DPF |
Agent-originated USDC settlement occurs non-custodially on-chain via the x402 protocol and Boson escrow. Funds move directly between the Agent Operator's and Supplier's own addresses; Facet does not hold, custody, or process those funds, and no subprocessor is engaged for that transfer.
11.1 Assurance artifacts
Each subprocessor's assurance artifacts (SOC 2 Type II, ISO/IEC 27001 certification, DPF self-certification status) are reviewed at least annually and on any material change. Customers may request summary assurance artifacts from [email protected] under NDA.
Open-source software attribution.
Facet's SDKs, command-line tools, and client libraries incorporate open-source software. Each component is governed by its own license (MIT, BSD-2 / BSD-3, Apache-2.0, ISC, and similar). The authoritative component list is generated from the SBOM maintained in the Facet source repository and is published here on each material release. Notable component categories include:
- HTTP and JSON parsers.
- Cryptographic primitives (Ed25519 signing and verification; JWT ES256 verification for Facet KYA and KYAPay).
- Supabase and PostgreSQL client libraries.
- OIDC client libraries for Microsoft Entra ID and Google Workspace.
- Testing and developer-experience tools (vitest, playwright, eslint, typescript, prettier).
Component license texts are preserved in the source distribution. Where a component's license requires reproduction of a notice, the notice is reproduced in the appropriate documentation and in the installed package. A machine-readable SBOM (CycloneDX JSON) is available on request to [email protected].
Contact.
Security / vulnerability disclosure: [email protected]
Privacy / data-subject requests: [email protected]
Legal / governance: [email protected]
Postal: Facet, LLC, Attn: Security, 1 Market St, Suite 100, San Francisco, CA 94105