---
schema_version: "1"
id: ae7768d7c92052ae0bd8002711520c5dd31f36087939e3bf7fb628cec55b2bfd
title: Getting Started with Document Processing
collection: mulesoft
version: current
locale: en-us
portal_url: https://docs.salesforce.com/mulesoft/current/en-us/idp/document-processing.md
canonical_url: https://docs.mulesoft.com/idp/document-processing
source_site: docs.mulesoft.com
content_type: documentation
content_hash: 53e10df64b49b27234b5076bd7d3729ddc79de5664c5efb5f562caebbe07ba39
description: MuleSoft Documentation Site
latest: true
---
---
product: IDP
---

# Getting Started with Document Processing

> For the full documentation index, see: https://docs.mulesoft.com/llms.txt

Before you analyze documents with IDP, you must create and publish document actions, the
configurable schema definitions containing the necessary instructions to process your documents.

After you publish a document action to Anypoint Exchange, you can programatically call the IDP API
to execute the document action and extract data from a document. As a result, the document action
analyzes the provided document and returns a response in JSON format with all the extracted fields.
You can query the IDP API to check the status of an execution at any time.

Processing documents consumes Automation Credits. IDP charges Automation Credits per execution,
based on the number of pages in the submitted document, regardless of whether the document was
previously processed. See
[Automation Credits Usage and Rates](https://docs.mulesoft.com/general/automation-credits-usage-and-rates) for details.

> [!IMPORTANT] Resubmitting the same document, retrying a failed or partially failed execution, and
> reprocessing a document all create a new execution. Each of these executions consumes Automation
> Credits in full. IDP doesn’t deduplicate submissions or discount credits for documents that were
> already processed.

## Document Actions

A _document action_ is a multi-step process that uses multiple AI engines to scan a document, filter
out fields, and return a structured response as a JSON object. Each document action defines the
types of documents it expects as input, the fields to extract, and the fields to filter out from the
response.

IDP provides preconfigured **Invoice** and **Purchase Order** templates for creating custom document
actions. Each template provides a set of expected fields to extract from the document into a
structured response. When creating a new document action, choose the type that aligns best with the
document to process. For example, the **Invoice** type can process invoices, receipts, and similar
documents. If none of these types align with your documents, use the **Generic** type to fully
customize the fields to extract by asking questions in natural language.

Configure document action settings to select the large language models (LLMs) to use when extracting
the data, enable PII masking or image recognition. IDP supports the following models:

- OpenAI’s `GPT-4o (gpt-4o)` LLM

- OpenAI’s `GPT-4o Mini (gpt-4o-mini)` LLM

- OpenAI’s `GPT-5.1` LLM

- OpenAI’s `GPT-5.2` LLM

- Google’s `GEMINI-3.5 Flash` LLM

- Anthropic’s `Claude Sonnet 4.6` LLM

- Anthropic’s `Claude Opus 4.6` LLM

> [!WARNING] **Einstein OpenAI GPT-4o and Einstein OpenAI GPT-4o Mini retire January 31, 2027**.
>
> To prevent service interruption, migrate actions to a supported model by January 31, 2027.

After you create a document action, publish it to Anypoint Exchange to make it available for
consumption from RPA and through the IDP API.

> [!WARNING] Do not delete document action assets from Anypoint Exchange. Because the asset is
> discoverable, existing integrations might be using it. Deleting the asset from Exchange breaks
> those integrations and leaves an orphan document action in the IDP UI that is no longer tied to
> any Exchange asset. To retire a document action, see
> [Retire a Document Action](https://docs.mulesoft.com/idp/publishing-document-actions#retire-document-action).

## Reviews

Document actions return a JSON response that contains the extracted fields and their detected
values. Each of these values has a confidence score that determines the accuracy of the value during
the extraction.

A document is queued for review if any of the following conditions is met:

- At least one non-hidden field shows a confidence score lower than the configured threshold.

- At least one non-hidden field marked as required is missing or could not be extracted.

After a reviewer verifies and approves the result, the execution status changes to `SUCCEEDED`. If a
reviewer dismisses the review instead, the status changes to `DISMISSED` and the extracted results
aren’t submitted. For the possible statuses and their definitions, see the
[Execution Status Reference](https://docs.mulesoft.com/idp/automate-document-processing-with-the-idp-api#execution-status-reference).

## IDP API

You can trigger the execution of any of your published document actions to analyze the provided
documents and query the results of the execution by using the IDP API. You must configure a
connected app to call the IDP API.

For configuration and usage instructions, see:
[Processing Documents and Retrieving Results With the API](https://docs.mulesoft.com/idp/automate-document-processing-with-the-idp-api).

## IDP and RPA Integration

You can execute your published document actions and query the results by using the Submit Document
to MuleSoft IDP and Retrieve Results from MuleSoft IDP action steps from MuleSoft RPA. You must
configure a connected app to call IDP and you must publish your document actions to make them
available to RPA.

For configuration and usage instructions, see:
[Processing Documents and Retrieving Results With RPA](https://docs.mulesoft.com/idp/automate-document-processing-with-rpa).

## See Also

- [Analyzing Documents Using Pre-Built Schemas](https://docs.mulesoft.com/idp/creating-document-actions)

- [Publishing Document Actions](https://docs.mulesoft.com/idp/publishing-document-actions)

- [Reviewing Processed Documents](https://docs.mulesoft.com/idp/reviewing-processed-documents)
