Stop collecting sensitive data through email.

Customer Vault is secure document collection and intake software for teams that handle sensitive customer information. It is a turnkey, branded web app that collects cards, documents, signatures, and sensitive fields through secure links your customers can use without an account. Everything arrives encrypted, audit-logged, and isolated per tenant. No developers, no integration, live the same day.

WebAuthn passkeysAES-256 encryptionPer-tenant isolationAudit logged
Customer Vault, secure customer intake

The problem

Email, fax, and shared drives were never built for this.

Every team still collecting sensitive documents this way is running an unencrypted archive of exactly what a regulator cares about, and nobody decided to.

  • Not encrypted end to end
  • Forwardable to anyone, by anyone
  • Hard to audit after the fact
  • Attachments live in inboxes permanently
  • A standing PCI and compliance risk
Instead

Customer Vault replaces all of it with encrypted intake links, expiring downloads, tokenized card capture, and audit-ready logs, on infrastructure certified to PCI DSS Level 1.

No engineering required

Operators go live with secure intake the same day they sign.

How it fits

Drop-in. No schema changes.

Customer Vault sits alongside your existing application. Sensitive customer records are stored, encrypted, and served back over a clean API, while your data formats and application structure stay exactly as they are.

Use it standalone from day one, and connect it to your systems whenever you are ready.

  • Nothing to migrate
  • No database changes
  • Standalone on day one
  • API and webhooks when you want them

The product

Collect, manage and share customer information securely.

Customer Vault is priced by engagement. See Customer Vault pricing.

Customer management.

Search and paginate customer records from a single dashboard, with associated cards, files, and activity at a glance.

Customer profiles.

One centralized record per customer: tokenized cards, encrypted files, signatures, and custom fields, all linked to a single profile.

Branded intake forms.

Customers submit cards, files, signatures, and sensitive fields through public links. Public intake links need no account and are branded per tenant.

Staff inbox.

A shared inbox where staff assign submissions to customer profiles.

Secure file sharing.

Share files through expiring links, with optional password protection, download tracking, and a full audit trail. Links expire after 24 hours. Every file encrypted with AES-256-GCM.

Custom sensitive fields.

Define fields beyond payment cards, per tenant, automatically tokenized through the Data Vault. Presets for SSN, driver’s license, passport, date of birth, and tax ID, with custom pattern validation for anything else.

Electronic signatures.

Canvas-based signature capture through intake forms, stored encrypted and linked to the customer record with a full audit trail.

Reveal, hide, delete.

Every sensitive value on a profile carries explicit reveal, hide, and delete controls, and every reveal is logged.

Connected when you want.

Signed webhooks and a full lifecycle API let engineering wire intake into your systems later, without changing how your team works today.

How it runs

Three steps to secure customer data.

01

Create an intake link.

Generate a branded, public link. Your customers submit cards, upload files, and sign documents without creating an account.

02

Customer submits.

All data is encrypted in transit and at rest. Submissions land in your staff inbox.

03

Staff manages.

Your team reviews, assigns to profiles, shares files securely, and manages the relationship from there.

Security

Security your assessor will recognize.

WebAuthn passkeys.

Staff can sign in with FIDO2 passkeys, leaving no password to steal, phish, or brute-force.

MFA you can require.

Staff sign in with passkeys or TOTP, and tenants can require MFA for every account.

Tenant isolation.

Tenant-scoped data, credentials and branding, with role-based access control.

PCI scope reduction.

Cards are tokenized at capture. Authorized staff can reveal a card number when they need it, and every reveal is logged.

Activity audit logging.

Every user action logged with user ID, action type, timestamp, and affected resources. The compliance trail writes itself.

Encrypted at every layer.

Every file sealed with AES-256-GCM envelope encryption and every card tokenized the moment it enters the vault. Plaintext never touches your infrastructure.

Who uses it

Built for the teams that collect.

Anywhere a client is asked to send in a card, an ID, a signature, or a document before the work can start.

Health clinics and medical practices.

Patient intake with insurance cards, signed consents, and medical history before the appointment. Results shared through expiring, password-protected links instead of unsecured email.

Law firms and legal services.

Signed retainers, sensitive case documents, and payment details collected securely, with filings shared through protected expiring links and full download audit trails.

Accounting and tax firms.

W-2s, bank statements, and financial records collected through encrypted intake, and completed returns delivered through protected links instead of attachments.

Private clubs and membership organizations.

Onboard members with forms that collect dues cards, signed agreements, and ID documents, all linked to the member profile.

Restaurants and hospitality.

Catering clients and event bookings with stored corporate cards for recurring orders, signed event contracts, and invoices shared through secure links.

Travel agencies.

Passport copies, insurance documents, and traveler cards collected by branded links, with itineraries and visa documents shared through time-limited links.

Property management.

Rental applications with signed leases, ID copies, and deposit payments through branded forms, with tenant profiles and renewal documents managed securely.

Insurance agencies.

Policy applications with signed disclosures, ID documents, and payment cards, and claims correspondence shared through secure, auditable links.

Any regulated intake desk.

If the first step of your process is asking a client to send something sensitive, this replaces the part you would rather not be responsible for.

See it working

A walkthrough on your own intake process takes twenty minutes.

For developers

Embed it in your own application.

Everything the app does is available through the Enigma Vault API. Create customers, generate branded intake links, and receive real-time notifications the moment a customer submits.

Signed webhooks.

File uploaded, card submitted, signature captured, field saved. Every payload signed with HMAC-SHA256.

Status polling.

Lightweight counts or full detail mode, with lookups by your own external IDs.

Self-service config.

Set your webhook URL and signing secret through the API. The secret is write-only and never readable.

customervault — curl
# Authenticate
TOKEN=$(curl -s -X POST \
  https://api-auth.enigmavault.io/oauth2/token \
  -u "$CLIENT_ID:$CLIENT_SECRET" \
  -d "grant_type=client_credentials" \
  -d "scope=io.enigmavault/customervault" \
  | jq -r .access_token)

# Create a customer and get their intake link
curl -X POST \
  https://api.enigmavault.io/customervault/customers \
  -H "Authorization: Bearer $TOKEN" \
  -H "x-api-version: 1.12" \
  -H "Content-Type: application/json" \
  -d '{"externalId":"cust-001","firstName":"Jane","lastName":"Doe","email":"jane@example.com"}'

# Response:
# {
#   "customerId": "a1b2c3...",
#   "intakeUrl": "https://app.customervault.io/intake?customerId=a1b2c3...&tenant=acme"
# }

# Check intake status
curl -X GET \
  https://api.enigmavault.io/customervault/customers/cust-001 \
  -H "Authorization: Bearer $TOKEN" \
  -H "x-api-version: 1.12"

# Response: { "status": { "fileCount": 2, "cardCount": 1, ... } }

The land-and-expand door for non-technical teams.

Operators go live with intake the same day, and when engineering is ready, the same records are waiting behind the API. It is the fastest path from “we still use fax” to “everything is encrypted and logged.”