Contact Us 1-800-596-4880

Lab 6: Process Resume Documents and Create Contacts with MuleSoft for Flow: IDP

Overview

In this lab you’ll learn how to use MuleSoft for Flow: IDP directly within Salesforce to process documents and automate business processes. You’ll create a Document Processing Configuration that extracts data from resumes, then build a Salesforce Flow that uses this extracted information to automatically create a new Contact record.

  • This represents the next generation of intelligent document processing, bringing IDP capabilities natively into the Salesforce platform without requiring RPA infrastructure or Anypoint Platform.

  • As part of the exercise, you’ll leverage auto-extraction to generate a schema from a sample resume, configure specific extraction fields, and build an automated flow. Following you see the completed flow you’ll be working on:

    module g  lab6 overview flow
    module g  lab6 overview preview

Prerequisites

  • Access to a Salesforce org with the Automation App and MuleSoft for Flow: IDP enabled

    • When MuleSoft for Flow: IDP is provisioned properly, a new "Document Processing" tab becomes available in the Automation app and an "Extract Data from Document" action will become available inside Flow Builder

  • Basic familiarity with Salesforce Flow Builder

  • Sample resumes for testing (PDF, PNG, JPG, or JPEG format)

    • Sample resumes will be provided

    • Feel free to use other resumes, just ensure they include a First Name, Last Name, and Phone Number

Important: Shared Org Naming Convention

Since a single Salesforce org is being shared for this workshop, you will use unique names when creating Flows, Document Configurations, and API Names to avoid conflicts (as indicated in the step by step instructions below).

  • Format: <your initials>_API_Name and <your initials>_Label_Name

  • Why this matters: Salesforce won’t allow duplicate Flows Names, Document Configuration Names, and API Names in the same org. If you try to save a Flow with an API Name that already exists, you’ll get an error. Using your initials prevents save errors and helps you identify your own work.

  • Example:

    • API Name: RJ_Extract_Resume_Data

    • Label: RJ_Extract Resume Data

  • Note: Once your configurations are working correctly, you can always go back and clean up the labels to make them more readable if desired.

Step 1: Navigate to Document Processing

Log on to your Salesforce org

  1. Click the App Launcher icon (grid icon with 9 dots) in the top left corner

  2. In the search box, type Automation

  3. Click on Automation from the Apps section

    module g  lab6 new doc config btn
  4. Once the Automation app loads, select the *Document Processing tab in the navigation bar

    module g  lab6 upload resume

Step 2: Create a New Document Processing Configuration

Create a new Document Processing Configuration and upload a sample resume

  1. Click the blue New Document Processing Configuration button in the top right

  2. Select Upload Files on the left side of the screen and navigate to the resume you want to process

  3. Click Open

  4. Wait for the upload to complete

  5. Click Done

Step 3: Use Auto-Extraction to Generate Schema

This is where MuleSoft for Flow: IDP showcases its AI capabilities by automatically analyzing the document structure.

  1. Select Using Auto-Extraction (Note - this option only activates if you completed Step 2 and uploaded a document already)

    module g  lab6 auto extraction
  2. Click Next

  3. Wait while the system analyzes your resume and identifies potential fields

  4. Review the auto-generated fields that appear

  5. For example - these fields were auto-generated, not manually created

    module g  lab6 add field first name

Step 4: Add Additional Fields

Now you’ll specifically add and configure the 3 new Fields: First Name, Last Name, and Phone Number.

module g  lab6 add field phone

Add First Name

  1. Select + Add Field and then enter the following details:

    • Name: First Name

    • Field Type: string (already selected)

    • Confidence Threshold: 80

    • Prompt Instructions: Locate the full name of the candidate and extract the first name in Title Case

  2. Click Add

Add Last Name

  1. Select + Add Field and then enter the following details:

    • Name: Last Name

    • Field Type: string

    • Confidence Threshold: 80

    • Prompt Instructions: Locate the full name of the candidate and extract the last name in Title Case

  2. Click Add

Add Phone Number

  1. Select + Add Field and then enter the following details:

    • Name: Phone Number

    • Field Type: string

    • Confidence Threshold: 80

    • Prompt Instructions: Extract the primary phone number in standard format

  2. Click Add

Step 5: Test, Save and Activate the Document Processing Configuration

  1. Click Test and wait a few seconds

    • Review the extracted fields that appear

    • Optional: Add or modify fields (except for the 3 required fields you just created)

    • Optional: Upload additional resumes and review the results

  2. Select Save

    • Name: <your initials>_IDP Resume Parser

    • API Name: <your initials>_IDP_Resume_Parser

    • Description (optional): Extracts data from uploaded resumes

  3. Click Activate

    • Congrats! Your new Document Configuration is now complete

  4. Please Note! It may take a few minutes for this new document processing configuration to show up in Salesforce flow. A logoff/login may be necessary in the org.

  5. Use the Back Arrow on the top left to exit this area and go back to the Automation app

Step 6: Create a New Salesforce Screen Flow

Now you’ll build a new Screen Flow that uses your Document Processing Configuration

module g  lab6 test save activate
  1. Select the Flows Tab in the Automation App

  2. Click the New button on the top right

  3. Select Screen Flow (in the Frequently Used section)

    • You are now in the Flow Builder

    • On the Flow canvas, the Flow automatically starts with a Screen Flow Start element

      module g  lab6 flow builder start
  4. Click the + icon below the Start element

  5. Select Screen

  6. Configure the Screen Properties on the right side:

    • Label: <your initials>_Upload File to Send to IDP

    • API Name: <your initials>_Upload_File_to_Send_to_IDP (auto-populated)

  7. On the left side, search for and select the Component called File Upload which adds it to the screen canvas

    module g  lab6 file upload screen
  8. On the right side, configure the File Upload properties:

    • API Name: <your initials>_Upload_Resume (Type this in, don’t use the auto-suggest option)

    • Label: <your initials>_Upload Resume (Type this in, don’t use the auto-suggest option)

      module g  lab6 loop config
  9. Click Done

Step 7: Add a Loop to Process Files

The File Upload component returns a collection of files. Even though users will only upload one resume at a time, we need a Loop to access the individual file’s Content Document ID.

  1. Click the + icon after the Upload File screen

  2. Search for and Select Loop

  3. Configure the Loop element:

    • Label: <your initials>_Process File in IDP

    • API Name: <your initials>_Process_File_in_IDP (auto-populated)

    • Collection Variable: Click through these 3 fields to navigate to select Content Document IDs:

      • Screen: <your initials>_Upload File to Send to IDP

      • Screen Components: <your initials>_File_Upload

      • Outputs: Content Document IDs

        module g  lab6 extract action search
  4. Click the X on the top right to close the Loop properties

Step 8: Add the IDP Action

Now add the IDP action inside the Loop.

  1. Click the + icon in the For Each path of the Loop

    module g  lab6 extract data action
  2. Select Action

  3. In the search box, type: Extract Data from Document

  4. Select Extract Data from Document from the search results

    module g  lab6 idp action config
  5. Configure the action:

    • Label: <your initials>_Data Extraction from IDP

    • API Name: <your initials>_Data_Extraction_from_IDP (auto-populated)

    • Description: (optional, leave blank)

  6. In the Set Input Values for the Selected Action section:

    • Add a Content Document ID: Click in the field and you’ll see Quick Resources, select the Current Item from Loop… option

    • Document Processing Configuration: Select <your_initials>_IDP_Resume_Parser

  7. Click the X on the top right to close these properties

Step 9: Add a Create Records Element

Still inside the Loop, add the element to create a Contact record from the extracted data.

  1. Click the + icon after the Data Extraction from IDP action (still in the For Each path)

    module g  lab6 create records
  2. Select Create Records

  3. Configure the Create Records element:

    module g  lab6 map fields contact
    • Label: <your initials>_Create Contact

    • API Name: <your initials>_Create_Contact (auto-populated)

    • How to set record field values: Select Manually from the dropdown

    • Object: Select Contact

    • Set Field Values for the Contact: (You will map the 3 fields that we know exist in your IDP Extracted data)

      • Last Name

        • Field: Select Last Name

        • Value: Drill down to get to the appropriate selections

          1. Action Outputs from <your initials>_Data_Extraction_from_IDP

          2. Outputs: Extracted Data

          3. Properties: Last Name

          4. Properties: value

      • First Name

        • Field: Select First Name

        • Value: Select

          1. Action Outputs from <your initials>_Data_Extraction_from_IDP

          2. Outputs: Extracted Data

          3. Properties: First Name

          4. Properties: value

      • Business Phone

        • Field: Select Business Phone

        • Value: Select

          1. Action Outputs from <your initials>_Data_Extraction_from_IDP

          2. Outputs: Extracted Data

          3. Properties: Phone Number

          4. Properties: value

  4. Click the X on the top right to close these properties

Step 10: Save and Test the Flow

Since we’re using shared files, your Contact might already be in the system! Just give it a quick look and delete out any existing Contact records for your resume person before you run your test.

  1. Click the Save button in the top right

  2. Fill in the flow details:

    • Flow Label: <your initials>_IDP Resume to Contact

    • Flow API Name: <your initials>_IDP Resume to Contact (auto-populated)

    • Description: (Optional) Screen Flow that allows users to upload resumes and automatically create a Contact records using MuleSoft for Flow: IDP

  3. Click Save

  4. Click Debug to test your Flow immediately

  5. Click Run

  6. Select Upload Files and select a resume from your computer; select Done once it uploads

  7. Click Next (right side of screen)

  8. It will take a few seconds to run. On the left side you’ll see the Debug Flow Interview details, and you can open the details to see the Create Records details.

    module g  lab6 flow debug
  9. Select the Back Arrow to exit the Flow builder and note that your Flow has:

    • Processed the uploaded file through your Document Processing Configuration

    • Extracted the data (First Name, Last Name, Phone, Email, etc.)

    • Created a new Contact record

Step 11: Verify the Contact was Created

  1. Navigate to Contacts (use the App Launcher or navigation menu)

  2. Look for the newly created Contact with the name from your processed resume

  3. Open the Contact record and verify:

    • Salesforce will automatically create the Full Name from the First Name and Last Name fields

    • Phone is populated with the phone number from the resume

      module g  lab6 contact record
  4. Please delete the contact so that the next user can test with the same sample file(s)

Congratulations!

In this lab, you:

  • Created a Document Processing Configuration using MuleSoft for Flow: IDP

  • Uploaded a sample resume and leveraged auto-extraction to automatically generate an extraction schema

  • Configured specific extraction fields (First Name, Last Name, Phone Number) with custom prompt instructions

  • Tested document processing and validated extraction quality

  • Built a Screen Flow that allows users to upload resumes on-demand

  • Used a Loop to process uploaded files through IDP

  • Added an Action to extract data using your Document Processing Configuration

  • Created a Contact record automatically with the extracted data