FilePreserve is a Salesforce managed package that archives files to an Amazon S3 bucket you own, keeps a chain-of-custody record in your org, and merges live and archived files back into one PDF on demand.

1. Scope: files, not records

An Archive Job names a source object, filter criteria and a schedule. FilePreserve works on the files attached to matching records (and, if enabled, related records). It never archives, moves or deletes the record's own field data.

2. Archive and verify

Each file is written to your S3 bucket through a Salesforce Named Credential that uses AWS Signature Version 4, then verified with a SHA-256 checksum. Only checksum-verified files are ever eligible for later steps.

3. Marker and index

The file in Salesforce is replaced by a small text marker, and an archive index record in your org stores the checksum, storage location, legal hold and retention state, and a snapshot of the source object's shape so the entry stays self-describing if the object changes later.

4. Retrieval

When a user selects records for the file merge, archived files are detected and read back from your bucket automatically, checked against the stored checksum, and merged with live files into one PDF. No separate restore step.

5. Retention, legal hold and disposal

Retention is set per job in months. A legal hold blocks disposal until lifted. Three disposal modes exist: preserve forever (default), ask first, and delete after notice. Eligibility is re-checked at the moment of deletion, the S3 copy is deleted before the Salesforce file, and every attempt is written to a Disposal Audit Log. See the retention and disposal guide.

6. Security and data handling

All data-touching Apex runs with sharing and enforces the running user's field and object permissions. The only outside network destination for customer data is your own S3 bucket. FilePreserve's publisher hosts no customer data. See Security and Privacy.

7. Limits, stated plainly