Document Mapper handles all of it in one place. You pick a Salesforce object, describe what you want in plain language, and AI does the extraction, the matching, and the record creation — no code, and no jumping between tools. Every field type on your object is supported natively, so there's nothing a document can throw at you that has to be handled somewhere else.
Each configuration you build is saved with a unique Config ID that stores your mapping logic and can be reused anywhere — a list view button, a record detail button, or a Salesforce Flow.

Every Field Type, Handled in One Place
The heart of Document Mapper is a single workspace where every field on your object is mapped the same simple way. Fields are automatically grouped by the role they play — Main Record, Lookups, and Child Relationships — and each field carries a type badge so you always know what you're working with. Whatever the type, the approach is the same: tell the mapper what you want in plain language, and it takes care of the rest.

For most fields — text, numbers, currency, dates, and the like — a short description of what to pull from the document is all it takes. The AI finds the value and formats it correctly for the field. The field types that usually need extra care are handled just as easily here:
Picklists are matched to your exact Salesforce values, even when the document uses different wording. You can add a short prompt to any value to tell the AI precisely when that value should be chosen, so results always land on valid, on-model options.

Multi-select picklists work the same way, with the AI free to choose more than one value when the document calls for it — capturing every applicable option rather than forcing a single choice.
Lookups — the fields that usually mean writing code — are resolved right inside the mapper. Describe the match in plain language and the AI turns it into a reliable matching plan: typically a fuzzy match that tolerates small differences in spelling, spacing, or formatting between the document and your Salesforce records, though you can also ask for an exact match or a multi-step strategy that tries one approach and falls back to another. You keep clear control over what happens if nothing matches or several records match, and for teams that already have custom logic, an existing Salesforce Flow can be plugged in just as easily. Either way, unmatched documents are held back rather than creating bad data.


Child relationships let a single document populate several related records at once — line items on an order, partners on an account, purchase orders against a contract. Instead of processing the document once per record, Document Mapper reads the parent and all its related rows in one pass: you describe how to recognize each row in the document, map the fields on it, and the mapper creates every related record and links it back to the parent automatically. Rows can even carry their own lookups, matched to existing records the same way — so a document with one account and a dozen line items becomes a fully linked set of records in a single run.

See the Result Before You Commit
Nothing is written to Salesforce until you're ready. Upload one or more sample documents, choose which of them to run the test on — testing on fewer documents uses fewer tokens — and Document Mapper shows you exactly what it extracted from each: every field value alongside a confidence score and a plain-language explanation of where it came from, plus the full set of related records it would create.


You can refine your descriptions and run again as many times as you like until the output is exactly right — all without leaving the mapper.
Once you go live, you decide how much oversight each run gets. Leave a configuration on auto-approve and extracted records are written to Salesforce as soon as a run finishes. Switch it to send-to-review and every run pauses first for a person to check and approve — covered next.
A Full Record of Every Run
Every time a configuration processes a document, it's logged as a CloudFiles DocAI Run — giving you a complete, searchable history of what was processed, when, and how it turned out. Each run captures its status, the Config ID and version that produced it, the parent record it was tied to, and its owner.

If a run fails, its record explains what went wrong and offers a Reprocess button so you can retry it in one click. Reprocessing creates a fresh run rather than overwriting the original, so your history stays intact and you can always see exactly what happened.

Review, Edit, and Approve Before Anything Is Written
Not every run should write to Salesforce the instant it finishes. When a configuration is set to send-to-review, each run lands in a Pending Review status and waits for a person to sign off — turning the run record into a full review workspace rather than just a log entry.
Open the run and you get the extracted result side-by-side with the source document itself, so you can check every value against the page it came from without switching tabs or opening the file separately.
The review is organized exactly the way the mapping is. The Details tab holds the main-record fields, and the Related tab holds every child record the run produced — line items, partners, and the like — shown in a grid you can work through row by row. Everything is editable in place: correct a mistyped value, adjust a quantity, or use Add Row to include something the extraction missed. If a run doesn't look right at all, Reject it instead.

When the record is exactly right, Approve & Write to Salesforce commits the parent and all its related records in one step. Not finished in one sitting? Save Progress keeps your edits on the run so you can come back to it later. Nothing reaches Salesforce until you approve — so a human always has the final say, with the document right there to check against.
One Configuration, Many Ways to Use It
Once saved, the same Config ID can be put to work wherever you need it:
- List View Button — upload a document and create new records straight from a list view.
- Detail Page Button — upload against an existing record to update its fields or add related records.
- Flow Action — drop the same configuration into a Salesforce Flow to fold document extraction into larger automation.
Because every method shares one Config ID, you build the mapping once and reuse it everywhere.
Built for Any Team
Document Mapper is versatile across industries. Sales teams can spin up Accounts and Opportunities from client documents without manual entry, and operations teams can process contracts, invoices, or onboarding forms in a few clicks — with related records matched and linked automatically along the way.
Head to Document AI → Document Mapper → Create New Configuration and see how effortless record creation and updates can be. Try it out today!