Customer management.
Search and paginate customer records from a single dashboard, with associated cards, files, and activity at a glance.
The product
The four vaults
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.
The problem
Every team still collecting sensitive documents this way is running an unencrypted archive of exactly what a regulator cares about, and nobody decided to.
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
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.
The product
Customer Vault is priced by engagement. See Customer Vault pricing.
Search and paginate customer records from a single dashboard, with associated cards, files, and activity at a glance.
One centralized record per customer: tokenized cards, encrypted files, signatures, and custom fields, all linked to a single profile.
Customers submit cards, files, signatures, and sensitive fields through public links. Public intake links need no account and are branded per tenant.
A shared inbox where staff assign submissions to customer profiles.
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.
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.
Canvas-based signature capture through intake forms, stored encrypted and linked to the customer record with a full audit trail.
Every sensitive value on a profile carries explicit reveal, hide, and delete controls, and every reveal is logged.
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
01
Generate a branded, public link. Your customers submit cards, upload files, and sign documents without creating an account.
02
All data is encrypted in transit and at rest. Submissions land in your staff inbox.
03
Your team reviews, assigns to profiles, shares files securely, and manages the relationship from there.
Security
Staff can sign in with FIDO2 passkeys, leaving no password to steal, phish, or brute-force.
Staff sign in with passkeys or TOTP, and tenants can require MFA for every account.
Tenant-scoped data, credentials and branding, with role-based access control.
Cards are tokenized at capture. Authorized staff can reveal a card number when they need it, and every reveal is logged.
Every user action logged with user ID, action type, timestamp, and affected resources. The compliance trail writes itself.
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
Anywhere a client is asked to send in a card, an ID, a signature, or a document before the work can start.
Patient intake with insurance cards, signed consents, and medical history before the appointment. Results shared through expiring, password-protected links instead of unsecured email.
Signed retainers, sensitive case documents, and payment details collected securely, with filings shared through protected expiring links and full download audit trails.
W-2s, bank statements, and financial records collected through encrypted intake, and completed returns delivered through protected links instead of attachments.
Onboard members with forms that collect dues cards, signed agreements, and ID documents, all linked to the member profile.
Catering clients and event bookings with stored corporate cards for recurring orders, signed event contracts, and invoices shared through secure links.
Passport copies, insurance documents, and traveler cards collected by branded links, with itineraries and visa documents shared through time-limited links.
Rental applications with signed leases, ID copies, and deposit payments through branded forms, with tenant profiles and renewal documents managed securely.
Policy applications with signed disclosures, ID documents, and payment cards, and claims correspondence shared through secure, auditable links.
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
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.
File uploaded, card submitted, signature captured, field saved. Every payload signed with HMAC-SHA256.
Lightweight counts or full detail mode, with lookups by your own external IDs.
Set your webhook URL and signing secret through the API. The secret is write-only and never readable.
# 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, ... } }
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.”