Last updated August 20, 2026
Security
This page is maintained by the Togetherward team to explain how we protect your case data — what is end-to-end encrypted, what stays server-readable, and what our team can and cannot see. It describes controls that are currently enabled, not a certification or independent audit.
End-to-end encryption for protected content
Once a case has encryption enabled, protected content is encrypted on your device before it leaves your browser. Togetherward does not hold the decryption keys. Only the partners who are members of that case can decrypt it.
Protected content covers:
- File bytes and user-authored details for new document and evidence uploads
- Shared note bodies, titles, and note types
- Case memory bodies, titles, dates, and categories
- Attorney-question drafts and their answers
Encryption uses AES-256-GCM with per-file random nonces. Each user holds a random key-encryption key (KEK) protected by a verified passkey-capable credential or a device-local key, plus a separate emergency recovery code. Each case has its own content-encryption key (CEK) wrapped separately for every member. Our servers, storage layer, operators, and any automated processing (OCR, AI, previews, intake) only see ciphertext for the categories above.
Consequence: if every member loses all active unlock methods and emergency recovery codes, encrypted content cannot be recovered. We hold no escrow key.
What Togetherward cannot access
- The contents of your uploaded documents and evidence files on encrypted cases.
- The text of your shared notes and case memories on encrypted cases.
- Attorney-question drafts and answers on encrypted cases.
- Your account password. We store only a salted hash used to verify sign-in.
- Your case decryption keys. They are derived and unwrapped on your device.
What Togetherward can access (server-readable)
To route ciphertext, enforce access, connect records, and operate accounts and billing, some structural metadata stays readable by our servers. This is not end-to-end encrypted.
- Opaque document identifiers and storage paths, ciphertext sizes and hashes, upload timestamps, and coarse file families.
- Timeline event titles, dates, statuses, appointment locations, and reminder schedules.
- Task titles, due dates, and completion state.
- Travel segments, dates, and routing.
- Evidence links, requirement statuses, and workspace structure.
- Account data: email address, sign-in method, MFA factors, active sessions.
- Billing metadata: plan, subscription status, invoice history via Stripe.
- Operational logs and product analytics as described below.
Named individuals on the Togetherward team can access this metadata for support, debugging, abuse response, and billing. Access is logged and minimized; we do not use it to train external AI models.
Legacy and demo content
Automated processing (OCR, AI, previews)
Access controls
- Every case is protected by row-level security scoped to case membership.
- Partners join a case only via an invite that must match the invited email address.
- Case owners are the only accounts that can invite, remove members, or delete a case.
- Destructive actions (deletion, ownership transfer, encryption reset, admin actions) require re-verifying your identity — a fresh sign-in or MFA challenge — and are enforced server-side, not only in the UI.
- Invite tokens expire and can be revoked at any time by the case owner.
- Admin roles are stored in a separate table and checked server-side; roles cannot be self-assigned.
Authentication
Data storage and transport
- Application data lives in managed Postgres on Supabase, hosted on cloud infrastructure with encryption at rest managed by our provider.
- Uploaded documents live in a private object-storage bucket. Downloads use short-lived signed URLs generated only for the requesting member.
- All traffic to togetherward.app is served over HTTPS.
- Application secrets are stored server-side and never sent to the browser.
Backups and recovery
Logging and telemetry
Third-party subprocessors
- Supabase — managed Postgres, authentication, and object storage.
- Cloudflare — hosting, edge network, and DNS.
- Stripe — billing and subscription management.
- Togetherward-hosted email service — transactional email delivery.
Subprocessors see only the ciphertext and metadata described above. None of them hold your case decryption keys.
Reporting a vulnerability
Shared responsibility
Related pages
Not legal advice.
Togetherward is an organizational and planning tool for couples navigating international immigration paperwork. It is not a law firm, is not affiliated with any government agency, and does not guarantee any immigration outcome, eligibility, or admission. For legal advice, consult a licensed attorney in the relevant jurisdiction.