Description:
The XML Output File step is an ETL destination component that exports processed datasets as structured XML documents.
The step is configured by specifying:
- The output file location
- The XML root element name
- The XML node name representing each record
- An optional workflow variable or global variable to store the generated virtual file path
During execution, the ETL engine processes every incoming row, creates the specified XML document structure, writes the configured root element, generates one XML node for each record, and saves the completed XML document to the configured location.
XML remains one of the most widely used formats for enterprise system integration because it provides a structured, platform-independent representation of business data that is compatible with ERP systems, CRM platforms, accounting software, government portals, middleware, SOAP services, and legacy enterprise applications.
The optional Variable/Global to Hold Virtual Path property enables subsequent workflow activities to reference the generated XML document without hard-coding its location, making it particularly useful when documents must be attached to emails, uploaded into document management systems, or passed to downstream workflow steps.
The XML Output File step is typically the final component in an ETL pipeline.
The step supports:
- XML document generation
- Configurable XML root element
- Configurable record node element
- Enterprise XML exports
- Virtual path storage
- Integration with FlowWright ETL pipelines
Typical business uses include:
- ERP data exports
- Customer master synchronization
- Purchase order generation
- XML document exchange
- Regulatory submissions
- Financial reporting
- Enterprise application integration
Inputs
- Enter Output File Path – Specifies where the generated XML document will be written.
- XML Root Element Name - Defines the top-level XML element that contains all exported records.
- XML Node Name - Defines the XML element created for each individual record in the dataset.
- Enter Variable/Global to Hold Virtual Path - Optionally stores the generated XML file's virtual path in a workflow variable or global variable for use by subsequent workflow steps.
Returns
- The XML Output File step does not define explicit return paths.
Note: After successfully generating the XML document, ETL processing completes. Any file system, configuration, or XML generation errors are recorded in the ETL execution log. Because this is an ETL destination component, it represents the end of the ETL pipeline and does not provide outgoing connections.
Usage:
The XML Output File step is typically the last component in an ETL definition.
During execution, each incoming ETL row is converted into an XML node using the configured element names. After all rows have been processed, the completed XML document is written to the specified output location.
A typical ETL pipeline might look like this:

Typical usage scenarios include:
- Exporting customer master records
- Producing XML invoices
- Creating procurement documents
- Generating ERP import files
- Delivering XML files to integration platforms
- Producing regulatory XML submissions
- Archiving processed business data
The generated XML document can subsequently be uploaded, emailed, archived, imported into another system, or consumed by downstream business workflows.
Prerequisite:
The ETL process engine service should be running to execute the ETL definitions.

Example:
Let’s build and execute the “clsInputXMLDef” example.
- Create a new definition named “clsInputXMLDef” and open it in designer mode.
- Drag “clsInputXML, clsTransformCase, and clsOutputXML” steps to the canvas.
- Connect the dots between the “clsInputXML” and other steps, as shown above.
- Define a variable or a global variable to hold the virtual path.
- Click the "clsInputXML" step to configure its "Required" properties. Provide a name for the step. Provide the path to the input XML file on the application server. Provide the XML node element name that contains all the data. Select the ETL data schema from the drop-down list. Note: The schema's column names should match those in the input file. Click the Save button. Click here to learn about the ETL Data Schema Designer.

- Click the "clsInputXML" step to view its "Optional" properties. Select the Show Schema button. The pop-up window displays the schema columns as shown below. This function helps to understand the schema at a glance.

- Click the "clsTransformCase" step to configure its "Required" properties. Enter the step name. Click the button to configure the transform list. Then click the Save button.

- Click the "clsTransformCase" step to configure the transform list. The configuration pop-up window appears. Click the Add Row (+) button to insert an empty row. Select the column name (string type) from the drop-down list. Select the case transformation type from the drop-down list. Click the Save button. You may add multiple rows for transformation using the Add Row button.

- Click the "clsOutputXML" step to configure its "Required" properties. Enter a name for the step. Enter the path to the output XML file on the application server. Click the Save button.

- Click the "clsOutputXML" step to configure its "Optional" properties. Enter the XML root element name. Enter the XML node name. Enter the variable or global reference to store the virtual output path. Click the Save button.

- The “Logging” configuration is necessary for documentation and also measures workflow progress and percent complete. This is achieved by configuring the step state and percent fields individually, as shown below. Configure the “Logging” using the following properties.

- Save the ETL definition, create a new instance, and then execute it. Render the ETL instance. Click the Items—Variables menu option to view the variable values. The “clsInputXML” step facilitates transforming the input file. The variable or global holds the output file’s virtual path as shown below.

- The input XML image is provided here for reference.

- The output XML image is provided here for reference.

Tips:
- Choose meaningful XML root and node names that align with downstream application requirements.
- Verify that the output directory exists and that the ETL service account has write permissions.
- Use workflow variables to store generated file locations when subsequent workflow steps need to reference the exported XML document.
- Validate the XML structure before sending files to external systems.
- Maintain consistent XML naming conventions across enterprise integrations.
- Use descriptive node names to improve interoperability with partner systems.
- Combine this step with Validate Data, Transform Date by Format, Transform Text Trim, Sorting Transform, Group By Transform, XML Input File, JSON Output File, or CSV Output File to build complete enterprise ETL solutions.
Notes:
- The output file path must be accessible by the FlowWright ETL server.
- XML root and node names determine the structure of the generated XML document.
- Each incoming ETL row becomes a single XML node beneath the configured root element.
- The optional workflow variable or global variable stores the generated virtual path for use by subsequent workflow activities.
- File system permissions, invalid paths, or XML generation errors may prevent successful execution.
- Because this is an ETL destination component, it has no outgoing connections and typically concludes the ETL pipeline.
- This step is commonly used for enterprise integration, ERP exports, CRM synchronization, financial reporting, regulatory submissions, application interoperability, document generation, and business process automation.
XML Output File vs. JSON Output File:
Both components export ETL datasets, but they generate different output formats.
| XML Output File | JSON Output File |
|---|---|
| Generates structured XML documents. | Generates structured JSON documents. |
| Uses configurable root and record node elements. | Uses JSON objects and arrays. |
| Commonly used for ERP systems, SOAP services, and legacy enterprise integrations. | Commonly used for REST APIs, cloud services, and modern web applications. |
| Produces hierarchical XML output suitable for enterprise document exchange. | Produces lightweight JSON output optimized for modern integrations. |
As a general guideline:
- Use XML Output File when downstream applications require XML documents or enterprise XML-based integrations.
- Use JSON Output File when integrating with REST APIs, cloud platforms, or JSON-based applications.
Definition Sample:
You may download the sample ETL definition(s) from the link provided and later import them into your FlowWright ETL Designer.
Note: Verify and complete any missing configuration after importing the sample, including:
- Output file location
- XML root element name
- XML node name
- Workflow variable or global variable (if required)
- Destination folder permissions
- Environment-specific file paths
- Downstream workflow configuration
After verifying the configuration, save the ETL Definition before execution.