---
schema_version: "1"
id: 9008e57c588f1155319f9218f1eae5527f5adc84a5613b6d2329d722fe023973
title: EDIFACT EDI Connector 3.0 Reference
collection: mulesoft
version: current
locale: en-us
portal_url: https://docs.salesforce.com/mulesoft/current/en-us/edifact-edi-connector/latest/edifact-edi-connector-reference.md
canonical_url: https://docs.mulesoft.com/edifact-edi-connector/latest/edifact-edi-connector-reference
source_site: docs.mulesoft.com
content_type: documentation
content_hash: dc174cb1bed18dc36d60900f7aaed2ed69bb840f69368c2c75716794da020503
description: MuleSoft Documentation Site
release: "3.0"
latest: true
---
---
product: EDIFACT EDI Connector
version: 3.0
is-latest-version: true
---

# EDIFACT EDI Connector 3.0 Reference

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

## Default Configuration

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Name</p></td><td><p>String</p></td><td><p>ID used to reference this configuration.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Expiration Policy</p></td><td><p>ExpirationPolicy</p></td><td><p>Configures the minimum amount of time that a dynamic configuration instance can remain idle before Mule considers it eligible for expiration. This does not mean that the instance expires at the exact moment that it becomes eligible. Mule purges the instances when appropriate.</p></td><td></td><td></td></tr><tr><td><p>Mule interchange ID</p></td><td><p>String</p></td><td><div><div><p>Identification for the Mule app in the exchange (UNB segment). This value is used in combination with the value of the <strong>Mule ID qualifier</strong> field, and if one field is set, the other must also be set.<br><br>If set, this value affects both send and receive message handling:</p></div><div><ul><li><p>On the receive side, the UNB interchange recipient identification must match this value.</p></li><li><p>On the send side, the connector uses this value as the UNB interchange sender identification unless it is overridden in the message parameters.</p></li></ul></div></div></td><td></td><td></td></tr><tr><td><p>Mule ID qualifier</p></td><td><p>String</p></td><td><div><div><p>Identification qualifier for the Mule app in the exchange (UNB segment). This value is used in combination with the value of the <strong>Mule interchange ID</strong> field, and if one field is set, the other must also be set.<br><br>If set, this value affects both send and receive message handling:</p></div><div><ul><li><p>On the receive side, the UNB interchange recipient identification code qualifier must match this value.</p></li><li><p>On the send side, the connector uses this value as the UNB interchange sender identification code qualifier unless it is overridden in either the send configuration or the message parameters.</p></li></ul></div></div></td><td></td><td><p>1</p></td></tr><tr><td><p>Mule application sender/recipient ID</p></td><td><p>String</p></td><td><div><div><p>Identification for the Mule app in the exchange (UNG segment). This value is used in combination with the value of the <strong>Mule application sender/recipient ID qualifier</strong> field, and if one field is set, the other must also be set.<br><br>If set, this value affects both send and receive message handling:</p></div><div><ul><li><p>On the receive side, the UNG group recipient identification must match this value.</p></li><li><p>On the send side, the connector uses this value as the UNG group sender identification unless it is overridden in the message parameters.</p></li></ul></div></div></td><td></td><td></td></tr><tr><td><p>Mule application sender/recipient ID qualifier</p></td><td><p>String</p></td><td><div><div><p>Identification qualifier for the Mule app in the exchange (UNG segment). This value is used in combination with the value of the <strong>Mule application sender/recipient ID</strong> field, and if one field is set, the other must also be set.<br><br>If set, this value affects both send and receive message handling:</p></div><div><ul><li><p>On the receive side, the UNG group recipient identification code qualifier must match this value.</p></li><li><p>On the send side, the connector uses this value as the UNG group sender identification code qualifier unless it is overridden in either the send configuration or the message parameters.</p></li></ul></div></div></td><td></td><td></td></tr><tr><td><p>Partner interchange ID</p></td><td><p>String</p></td><td><div><div><p>Identification for the partner in the exchange (UNB segment). This value is used in combination with the value of the <strong>Partner ID qualifier</strong> field, and if one field is set, the other must also be set.<br><br>If set, this value affects both send and receive message handling:</p></div><div><ul><li><p>On the receive side, the UNB interchange sender identification must match this value.</p></li><li><p>On the send side, the connector uses this value as the UNB interchange recipient identification code unless it is overridden in either the send configuration or the message parameters.</p></li></ul></div></div></td><td></td><td></td></tr><tr><td><p>Partner ID qualifier</p></td><td><p>String</p></td><td><div><div><p>Identification qualifier for the partner in the exchange (UNB segment). This value is used in combination with the value of the <strong>Partner Interchange ID</strong> field, and if one field is set, the other must also be set.<br><br>If set, this value affects both send and receive message handling:</p></div><div><ul><li><p>On the receive side, the UNB interchange sender identification code qualifier must match this value.</p></li><li><p>On the send side, the connector uses this value as the UNB interchange recipient identification code qualifier unless it is overridden in either the send configuration or the message parameters.</p></li></ul></div></div></td><td></td><td></td></tr><tr><td><p>Partner application sender/recipient ID</p></td><td><p>String</p></td><td><div><div><p>Identification for the partner in the exchange (UNG segment). This value is used in combination with the value of the <strong>Partner application sender/recipient ID qualifier</strong> field, and if one field is set, the other must also be set.<br><br>If set, this value affects both send and receive message handling:</p></div><div><ul><li><p>On the receive side, the UNG group sender identification must match this value.</p></li><li><p>On the send side, the connector uses this value as the UNG group recipient identification code unless it is overridden in either the send configuration or the message parameters.</p></li></ul></div></div></td><td></td><td></td></tr><tr><td><p>Partner application sender/recipient ID qualifier</p></td><td><p>String</p></td><td><div><div><p>Identification qualifier for the partner in the exchange (UNG segment). This value is used in combination with the value of the <strong>Partner application sender/recipient ID</strong> field, and if one field is set, the other must also be set.<br><br>If set, this value affects both send and receive message handling:</p></div><div><ul><li><p>On the receive side, the UNG group sender identification code qualifier must match this value.</p></li><li><p>On the send side, the connector uses this value as the UNG group recipient identification code qualifier unless it is overridden in either the send configuration or the message parameters.</p></li></ul></div></div></td><td></td><td></td></tr><tr><td><p>Schema definitions</p></td><td><p>Array of String</p></td><td><p>List of schema file system paths or class paths for the module to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Substitution character</p></td><td><p>String</p></td><td><p>Substitution character used to replace invalid characters in string values when using syntax level <code>UNOA</code> or <code>UNOB</code>. The use of this substitution character, if set, is controlled by separate parser and writer flags.</p></td><td></td><td></td></tr><tr><td><p>Separators usage</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>USE_DEFAULTS</p></li><li><p>USE_SPECIFIED_FOR_WRITES</p></li><li><p>USE_SPECIFIED_FOR_ALL</p></li></ul></div></div></td><td><div><div><p>Defines how specified separator and release characters are used:</p></div><div><ul><li><p>USE_DEFAULTS</p><div><p>Use defaults as defined by EDIFACT syntax version standards.</p></div></li><li><p>USE_SPECIFIED_FOR_WRITES</p><div><p>Use standard default delimiters for reads and specified delimiters as defaults for writes.</p></div></li><li><p>USE_SPECIFIED_FOR_ALL</p><div><p>Use specified delimiters as the defaults for both reads and writes.</p></div></li></ul></div></div></td><td><p>USE_SPECIFIED_FOR_ALL</p></td><td></td></tr><tr><td><p>Data element separator</p></td><td><p>String</p></td><td><p>Default data element separator character.</p></td><td><p>+</p></td><td></td></tr><tr><td><p>Component element separator</p></td><td><p>String</p></td><td><p>Component element separator character.</p></td><td><p>:</p></td><td></td></tr><tr><td><p>Repetition separator</p></td><td><p>String</p></td><td><p>Repetition separator character.</p></td><td><p>*</p></td><td></td></tr><tr><td><p>Segment terminator</p></td><td><p>String</p></td><td><p>Segment terminator character.</p></td><td><p>'</p></td><td></td></tr><tr><td><p>Release character</p></td><td><p>String</p></td><td><p>Release character.</p></td><td><p>?</p></td><td></td></tr><tr><td><p>Timezone offset</p></td><td><p>String</p></td><td><p>Time zone offset from the UTC to apply to the date and time elements in the Interchange Header (UNB) segment. This field accepts only values compliant with ISO 8601 (which are UTC-based), for example, <code>-01:00</code>, `0100`, `-0130`, and so on. {sp}<br>If you don’t specify a value for this field, the Interchange Header segment date and times are set to the local time of the Mule runtime.</p></td><td></td><td></td></tr><tr><td><p>Enforce length limits</p></td><td><p>Boolean</p></td><td><div><div><p>Enforce minimum and maximum lengths for receive values:</p></div><div><ul><li><p>true</p><div><p>The connector rejects messages with values that are too long or too short.</p></div></li><li><p>false</p><div><p>The connector uses the values and does not reject the messages.</p></div></li></ul></div><div><p>In either case, the error is logged and reported in CONTRL functional acknowledgments.</p></div></div></td><td><p>true</p></td><td></td></tr><tr><td><p>Enforce value repeats</p></td><td><p>Boolean</p></td><td><div><div><p>Enforce repetition count limits for receive values:</p></div><div><ul><li><p>true</p><div><p>The connector rejects messages that have values repeated too many or too few times.</p></div></li><li><p>false</p><div><p>The connector uses the values and does not reject the messages.</p></div></li></ul></div><div><p>In either case, the error is reported in CONTRL functional acknowledgments.</p></div></div></td><td><p>true</p></td><td></td></tr><tr><td><p>Enforce valid characters</p></td><td><p>Boolean</p></td><td><div><div><p>Enforce valid characters when using syntax levels UNOA and UNOB:</p></div><div><ul><li><p>true</p><div><p>The connector rejects received messages that contain characters that the syntax level does not allow.</p></div></li><li><p>false</p><div><p>If a substitution character is set, the connector uses it in place of the disallowed characters. Otherwise, the connector passes the disallowed characters through.</p></div></li></ul></div></div></td><td><p>true</p></td><td></td></tr><tr><td><p>Allow unknown segments</p></td><td><p>Boolean</p></td><td><div><div><p>Allow unknown segments in a message:</p></div><div><ul><li><p>true</p><div><p>The connector ignores the unknown segments and does not reject the messages.</p></div></li><li><p>false</p><div><p>The connector rejects messages that contain unknown segments.</p></div></li></ul></div><div><p>In either case, the error is reported in CONTRL functional acknowledgments.</p></div></div></td><td><p>false</p></td><td></td></tr><tr><td><p>Enforce segment order</p></td><td><p>Boolean</p></td><td><div><div><p>Enforce segment order in a message:</p></div><div><ul><li><p>true</p><div><p>The connect rejects messages that have out-of-order segments.</p></div></li><li><p>false</p><div><p>The connector does not reject messages if their out-of-order segments can be reordered.</p></div></li></ul></div><div><p>In either case, the error is reported in CONTRL functional acknowledgments.</p></div></div></td><td><p>true</p></td><td></td></tr><tr><td><p>Allow unused segments</p></td><td><p>Boolean</p></td><td><div><div><p>Allow segments marked as <code>Unused</code> in the schema:</p></div><div><ul><li><p>true</p><div><p>The connector ignores unused segments and does not reject the messages.</p></div></li><li><p>false</p><div><p>The connector rejects messages that contain segments marked as <code>Unused</code> in the schema.</p></div><div><p>In either case, the error is reported in CONTRL functional acknowledgments.</p></div></li></ul></div></div></td><td><p>true</p></td><td></td></tr><tr><td><p>Enforce segment repeats</p></td><td><p>Boolean</p></td><td><div><div><p>Enforce segment repetition count limits in a message:</p></div><div><ul><li><p>true</p><div><p>The connector rejects messages that have a segment repeated too many times.</p></div></li><li><p>false</p><div><p>The connector does not reject the messages.</p></div></li></ul></div><div><p>In either case, the error is reported in CONTRL functional acknowledgments.</p></div></div></td><td><p>true</p></td><td></td></tr><tr><td><p>Character encoding override</p></td><td><p>String</p></td><td><p>Character encoding override for receive messages, which must be a Java character encoding name. Normally, character encoding is determined by the syntax identifier in the UNB header segment, but the connector uses this value instead, if it is set.</p></td><td></td><td></td></tr><tr><td><p>Require unique interchanges</p></td><td><p>Boolean</p></td><td><div><div><p>Reject an interchange if the Interchange Control Reference has previously been processed:</p></div><div><ul><li><p>true</p><div><p>Record the interchange numbers previously processed and reject any duplicate interchange numbers from the same partner, as determined by the interchange sender and receiver identification.</p></div></li><li><p>false</p><div><p>The application flow tracks the numbers and handles them appropriately.</p></div></li></ul></div></div></td><td><p>false</p></td><td></td></tr><tr><td><p>Require unique groups</p></td><td><p>Boolean</p></td><td><div><div><p>Reject a group if the group control reference was processed previously:</p></div><div><ul><li><p>true</p><div><p>Record the group numbers processed previously and reject duplicate group numbers from the same partner, as determined by the interchange sender and receiver identification.</p></div></li><li><p>false</p><div><p>The application flow tracks the numbers and handles them appropriately.</p></div></li></ul></div></div></td><td><p>false</p></td><td></td></tr><tr><td><p>Require unique messages</p></td><td><p>Boolean</p></td><td><div><div><p>Enforce globally unique Message Reference Numbers (UNH.1) for received messages:</p></div><div><ul><li><p>true</p><div><p>Message reference numbers must be unique across all interchanges received from the same partner and application, as determined by the interchange sender and recipient identification.</p></div></li><li><p>false</p><div><p>Message reference numbers must be unique within a particular interchange.</p></div></li></ul></div></div></td><td><p>false</p></td><td></td></tr><tr><td><p>Store time-to-live</p></td><td><p>Number</p></td><td><p>Minimum number of days to store interchange and message numbers in the default persistent object store. This value is used only when the configuration requires unique interchanges, message numbers, or both. It sets the entry time-to-live for these stored values.</p></td><td><p>30</p></td><td></td></tr><tr><td><p>Write character encoding</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>ASCII_A</p></li><li><p>ASCII_B</p></li><li><p>ISO8859_1</p></li><li><p>ISO8859_2</p></li><li><p>ISO8859_3</p></li><li><p>ISO8859_4</p></li><li><p>ISO8859_5</p></li><li><p>ISO8859_6</p></li><li><p>ISO8859_7</p></li><li><p>ISO8859_8</p></li><li><p>ISO8859_9</p></li><li><p>UTF8</p></li></ul></div></div></td><td><p>Character encoding used for writing messages.</p></td><td><p>ASCII_B</p></td><td></td></tr><tr><td><p>Syntax version</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>VERSION1</p></li><li><p>VERSION2</p></li><li><p>VERSION3</p></li><li><p>VERSION4</p></li></ul></div></div></td><td><p>Syntax version for send messages. This version determines the data structures used for service segments and CONTRL acknowledgment message structures in DataSense metadata for both send and receive messages. The actual message data for receive messages reflects the syntax version used in the received interchange.</p></td><td><p>VERSION4</p></td><td></td></tr><tr><td><p>Segment line ending</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>NONE</p></li><li><p>LF</p></li><li><p>CRLF</p></li><li><p>CR</p></li></ul></div></div></td><td><p>Line ending to add between segments. This can improve the readability of the output message text.</p></td><td><p>NONE</p></td><td></td></tr><tr><td><p>Always send UNA</p></td><td><p>Boolean</p></td><td><div><div><ul><li><p>true</p><div><p>Always send a UNA service segment.</p></div></li><li><p>false</p><div><p>Include a UNA in an interchange when the syntax separator characters don’t match the defaults for the syntax version and character encoding in use.</p></div></li></ul></div></div></td><td><p>false</p></td><td></td></tr><tr><td><p>Enforce valid characters</p></td><td><p>Boolean</p></td><td><div><div><p>Enforce valid characters when using syntax levels UNOA and UNOB.</p></div><div><ul><li><p>true</p><div><p>The connector rejects received messages that contain characters not allowed by the syntax level.</p></div></li><li><p>false</p><div><p>The connector either uses a substitution character if one is set, or passes the disallowed characters through.</p></div></li></ul></div></div></td><td><p>true</p></td><td></td></tr><tr><td><p>Use Functional Groups</p></td><td><p>Boolean</p></td><td><div><div><p>Group messages with the same functional group identifier inside UNG-UNE envelopes:</p></div><div><ul><li><p>true</p><div><p>Groups messages into UNG-UNE segments.</p></div></li><li><p>false</p><div><p>Writes all messages in the same interchange.</p></div></li></ul></div></div></td><td><p>false</p></td><td></td></tr><tr><td><p>Unique group numbers</p></td><td><p>Boolean</p></td><td><div><div><p>Send unique message reference numbers (UNG.5):</p></div><div><ul><li><p>true</p><div><p>Assigns unique transaction set numbers across all groups sent to the same partner, as determined by the group sender and recipient identification.</p></div></li><li><p>false</p><div><p>Assigns message reference numbers sequentially within each group and reuses them in different interchanges.</p></div></li></ul></div></div></td><td><p>false</p></td><td></td></tr><tr><td><p>Unique message numbers</p></td><td><p>Boolean</p></td><td><div><div><p>Send unique Message Reference Numbers (UNH.1):</p></div><div><ul><li><p>true</p><div><p>Assigns unique transaction set numbers across all interchanges sent to the same partner, as determined by the interchange sender and recipient identification.</p></div></li><li><p>false</p><div><p>Assigns message reference numbers sequentially within each interchange and reuses them in different interchanges.</p></div></li></ul></div></div></td><td><p>false</p></td><td></td></tr><tr><td><p>Initial group reference</p></td><td><p>String</p></td><td><p>The initial group control reference used for outgoing messages.</p></td><td><p>1</p></td><td></td></tr><tr><td><p>Initial interchange reference</p></td><td><p>String</p></td><td><p>The initial interchange control reference used for outgoing messages.</p></td><td><p>1</p></td><td></td></tr><tr><td><p>Initial message reference</p></td><td><p>String</p></td><td><p>The initial message reference number used for outgoing messages.</p></td><td><p>1</p></td><td></td></tr><tr><td><p>Request acknowledgments</p></td><td><p>Boolean</p></td><td><div><div><p>Requests acknowledgments for Send interchanges using the Acknowledgment Request field (UNB.9):</p></div><div><ul><li><p>true</p><div><p>Requests CONTRL acknowledgments in all sent interchanges.</p></div></li><li><p>false</p><div><p>Requests receipt confirmations.</p></div></li></ul></div></div></td><td><p>false</p></td><td></td></tr><tr><td><p>Test indicator</p></td><td><p>String</p></td><td><p>Test indicator digit to use on Send interchanges. By default, interchanges are not sent as tests.</p></td><td></td><td></td></tr><tr><td><p>Use Supplied Values</p></td><td><p>Boolean</p></td><td><div><div><p>Whether to generate control numbers when writing or use supplied values for control-segment information such as control numbers:</p></div><div><ul><li><p>true</p><div><p>The connector uses the provided control-segment information.</p></div></li><li><p>false</p><div><p>The connector automatically generates control numbers when writing.</p></div></li></ul></div></div></td><td><p>false</p></td><td></td></tr><tr><td><p>Interchange control number key</p></td><td><p>String</p></td><td><p>Key-value pair of the interchange control key and interchange control number.</p></td><td><p>NONE</p></td><td></td></tr><tr><td><p>Message control number key</p></td><td><p>String</p></td><td><p>Key-value pair of the message control key and message control number.</p></td><td><p>NONE</p></td><td></td></tr><tr><td><p>Group control number key</p></td><td><p>String</p></td><td><p>Key-value pair of the group control key and group control number.</p></td><td><p>NONE</p></td><td></td></tr><tr><td><p>Truncate values exceeding the length limits</p></td><td><p>Boolean</p></td><td><div><div><p>Whether to truncate values that exceed the length limits:</p></div><div><ul><li><p>true</p><div><p>If the <strong>Enforce length limits</strong> field is also true, the connector trims values that exceed the maximum length.</p></div></li><li><p>false</p><div><p>The connector writes the values as they are.</p></div></li></ul></div></div></td><td><p>false</p></td><td></td></tr><tr><td><p>Enforce code set validations</p></td><td><p>Boolean</p></td><td><div><div><p>Whether to enforce code set validations:</p></div><div><ul><li><p>true</p><div><p>The connector enforces code set validations, as defined in the EDIFACT schemas.</p></div></li><li><p>false</p><div><p>The connector does not enforce code set validations.</p></div></li></ul></div></div></td><td><p>false</p></td><td></td></tr><tr><td><p>Use Version Association Code</p></td><td><p>Boolean</p></td><td><div><div><p>Whether to use UNH0205 (Version Association Code):</p></div><div><ul><li><p>true</p><div><p>The connector uses UNH0205 (Version Association Code).</p></div></li><li><p>false</p><div><p>The connector does not use UNH0205 (Version Association Code)</p></div></li></ul></div></div></td><td><p>false</p></td><td></td></tr><tr><td><p>Use segment line ending in the last line</p></td><td><p>Boolean</p></td><td><div><div><p>Whether to use segment line ending characters in the last line of the segment:</p></div><div><ul><li><p>true</p><div><p>The connector uses the configured <strong>Segment line ending</strong> value at the end of the last line in the segment.</p></div></li><li><p>false</p><div><p>The connector does not use the configured <strong>Segment line ending</strong> value at the end of the last line in the segment.</p></div></li></ul></div></div></td><td><p>false</p></td><td></td></tr><tr><td><p>Lock Mechanism</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>AUTO</p></li><li><p>RUNTIME_LOCK_MANAGER</p></li><li><p>OBJECT_STORE</p></li></ul></div></div></td><td><div><div><p>Determines the mechanism used to manage locks for control number sequencing. Valid values are:</p></div><div><ul><li><p><code>AUTO</code></p><div><p>The connector chooses between <code>OBJECT_STORE</code> and <code>RUNTIME_LOCK_MANAGER</code> based on the environment in which the Mule app is running.</p></div><div><ul><li><p>When the app is deployed to CloudHub 1.0, the connector uses the <code>OBJECT_STORE</code> mechanism for lock management.</p></li><li><p>When the app is deployed to standalone Mule runtime, Runtime Fabric, or CloudHub 2.0, the connector uses the <a href="https://docs.mulesoft.com/mule-runtime/latest/distributed-locking">runtime’s distributed locking</a>.</p></li></ul></div><div><p>You can use this option with:</p></div><div><ul><li><p>CloudHub 1.0 deployments with multiple workers or replicas</p></li><li><p>CloudHub 2.0 and Runtime Fabric deployments with one worker or replica</p></li><li><p>Hybrid standalone deployments, including clustered Mule runtimes</p></li></ul></div></li><li><p><code>RUNTIME_LOCK_MANAGER</code></p><div><p>The connector always uses the runtime’s distributed locking mechanism. (Recommended when the environment has only one worker.)</p></div><div><p>You can use this option with:</p></div><div><ul><li><p>CloudHub 1.0, CloudHub 2.0, and Runtime Fabric deployments with one worker or replica</p></li><li><p>Hybrid standalone deployments, including clustered Mule runtimes</p></li></ul></div></li><li><p><code>OBJECT_STORE</code></p><div><p>The connector always uses an alternative mechanism in environments in which the runtime’s distributed locking mechanism doesn’t work. (Recommended when the environment has more than one worker.)</p></div><div><p>You can use this option with:</p></div><div><ul><li><p>CloudHub 1.0, CloudHub 2.0, and Runtime Fabric deployments with multiple workers or replicas</p></li><li><p>Hybrid standalone deployments, including clustered Mule runtimes</p></li></ul></div></li></ul></div></div></td><td><p>AUTO</p></td><td></td></tr><tr><td><p>Acknowledge every transaction</p></td><td><p>Boolean</p></td><td><div><div><p>Whether to include the UCM Segment in the acknowledgement of every transaction:</p></div><div><ul><li><p>true</p><div><p>The connector uses the configured <strong>ackAllSets</strong> value to include the UCM Segment for every transaction, even if the EDIFACT message is not rejected.</p></div></li><li><p>false</p><div><p>The connector only includes the UCM segment when the EDIFACT message is rejected, not for every transaction.</p></div></li></ul></div></div></td><td><p>false</p></td><td></td></tr><tr><td><p>Send UNA segment</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>ALWAYS</p></li><li><p>DEPEND_ON_SEPARATORS</p></li><li><p>NEVER</p></li></ul></div></div></td><td><div><div><p>Determines whether the generated EDIFACT interchange begins with a UNA segment. This configuration behavior is dependent on the <strong>Always send UNA</strong> configuration. Valid values are:</p></div><div><ul><li><p><code>ALWAYS</code></p><div><p>Includes UNA at the start of every interchange, even when the separators match the defaults for the selected syntax version and character encoding. Existing configuration <strong>Always send UNA</strong> has same behavior.</p></div></li><li><p><code>NEVER</code></p><div><p>Omits UNA, including when custom separators are used. The interchange begins with UNB. A configuration error is thrown if this option is combined with <strong>Always send UNA</strong>.</p></div></li><li><p><code>DEPEND_ON_SEPARATORS</code></p><div><p>Includes UNA when the resolved separators differ from the defaults for the selected syntax version and character encoding, otherwise omits it. When <strong>Always send UNA</strong> configuration is true, the setting overrides this value and forces UNA to be included.</p></div></li></ul></div></div></td><td><p>DEPEND_ON_SEPARATORS</p></td><td></td></tr></tbody></table>

## Operations

- [Read](#read)

- [Write](#write)

- [Write batch](#write-batch)

### Read

`<edifact:read>`

Transforms an input stream of EDI text into maps and lists the structure of EDI data.

#### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>Name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Read Content</p></td><td><p>Binary</p></td><td><p>Input payload.</p></td><td><p><code>#[payload]</code></p></td><td></td></tr><tr><td><p>Target Variable</p></td><td><p>String</p></td><td><p>Name of the variable that stores the operation’s output.</p></td><td></td><td></td></tr><tr><td><p>Target Value</p></td><td><p>String</p></td><td><p>Expression that evaluates the operation’s output. The expression outcome is stored in the <strong>Target Variable</strong> field.</p></td><td><p><code>#[payload]</code></p></td><td></td></tr></tbody></table>

#### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><div><div><p>Type</p></div></div></td><td><div><div><p>Object</p></div></div></td></tr></tbody></table>

#### For Configurations

- config

#### Throws

- EDIFACT:SCHEMA

- EDIFACT:WRITE

- EDIFACT:UNKNOWN

- EDIFACT:PARSE

### Write

`<edifact:write>`

Transforms the maps and lists the structure of EDI data in the EDI text stream.

#### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>The name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Write Content</p></td><td><p>Object</p></td><td><p>Input payload.</p></td><td><p><code>#[payload]</code></p></td><td></td></tr><tr><td><p>Streaming Strategy</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p><a href="#repeatable-file-store-stream">Repeatable file store stream</a></p></li><li><p><a href="#repeatable-in-memory-stream">Repeatable in memory stream</a></p></li><li><p>Non repeatable stream</p></li></ul></div></div></td><td><p>Configures how Mule processes streams.</p></td><td><p>Repeatable file store stream</p></td><td></td></tr><tr><td><p>Target Variable</p></td><td><p>String</p></td><td><p>Name of the variable that stores the operation’s output.</p></td><td></td><td></td></tr><tr><td><p>Target Value</p></td><td><p>String</p></td><td><p>Expression that evaluates the operation’s output. The outcome of the expression is stored in the <strong>Target Variable</strong> field.</p></td><td><p><code>#[payload]</code></p></td><td></td></tr></tbody></table>

#### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><div><div><p>Type</p></div></div></td><td><div><div><p>Binary</p></div></div></td></tr></tbody></table>

#### For Configurations

- config

#### Throws

- EDIFACT:SCHEMA

- EDIFACT:WRITE

- EDIFACT:UNKNOWN

- EDIFACT:PARSE

### Write batch

`<edifact:write-batch>`

Merges individual EDIFACT messages created and accumulated over a period of time into a single
interchange (UNB).

#### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>Name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Batch Content</p></td><td><p>Binary</p></td><td><p>Input payload.</p></td><td><p><code>#[payload]</code></p></td><td></td></tr><tr><td><p>Target Variable</p></td><td><p>String</p></td><td><p>Name of the variable that stores the operation’s output.</p></td><td></td><td></td></tr><tr><td><p>Target Value</p></td><td><p>String</p></td><td><p>Expression that evaluates the operation’s output. The outcome of the expression is stored in the <strong>Target Variable</strong> field.</p></td><td><p><code>#[payload]</code></p></td><td></td></tr></tbody></table>

#### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><div><div><p>Type</p></div></div></td><td><div><div><p>Binary</p></div></div></td></tr></tbody></table>

#### For Configurations

- config

#### Throws

- EDIFACT:SCHEMA

- EDIFACT:WRITE

- EDIFACT:UNKNOWN

- EDIFACT:PARSE

## Types

### Expiration Policy

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Max Idle Time</p></td><td><p>Number</p></td><td><p>Configures the maximum amount of time that a dynamic configuration instance can remain idle before Mule considers it eligible for expiration.</p></td><td></td><td></td></tr><tr><td><p>Time Unit</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>NANOSECONDS</p></li><li><p>MICROSECONDS</p></li><li><p>MILLISECONDS</p></li><li><p>SECONDS</p></li><li><p>MINUTES</p></li><li><p>HOURS</p></li><li><p>DAYS</p></li></ul></div></div></td><td><p>A time unit that qualifies the <strong>Max Idle Time</strong> field.</p></td><td></td><td></td></tr></tbody></table>

### Repeatable in memory stream

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Initial Buffer Size</p></td><td><p>Number</p></td><td><p>Initial amount of memory to allocate to the data stream. If the streamed data exceeds this value, the buffer expands by <strong>Buffer Size Increment</strong>, with an upper limit of the <strong>Max In Memory Size</strong> value.</p></td><td></td><td></td></tr><tr><td><p>Buffer Size Increment</p></td><td><p>Number</p></td><td><p>Amount by which the buffer size expands if it exceeds its initial size. Setting a value of <code>0</code> or lower specifies that the buffer can’t expand.</p></td><td></td><td></td></tr><tr><td><p>Max Buffer Size</p></td><td><p>Number</p></td><td><p>Maximum size of the buffer. If the buffer size exceeds this value, Mule raises a <code>STREAM_MAXIMUM_SIZE_EXCEEDED</code> error. A value of less than or equal to <code>0</code> means no limit.</p></td><td></td><td></td></tr><tr><td><p>Buffer Unit</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>BYTE</p></li><li><p>KB</p></li><li><p>MB</p></li><li><p>GB</p></li></ul></div></div></td><td><p>The unit in which the fields in this table are expressed.</p></td><td></td><td></td></tr></tbody></table>

### Repeatable file store stream

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Max In Memory Size</p></td><td><p>Number</p></td><td><div><div><p>Maximum amount of memory that the stream can use for data. If the amount of memory exceeds this value, Mule buffers the content to disk. To optimize performance:</p></div><div><ul><li><p>Configure a larger buffer size to avoid the number of times Mule needs to write the buffer on disk.<br><br>This increases performance, but it also limits the number of concurrent requests your application can process, because it requires additional memory.</p></li><li><p>Configure a smaller buffer size to decrease memory load at the expense of response time.</p></li></ul></div></div></td><td></td><td></td></tr><tr><td><p>Buffer Unit</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>BYTE</p></li><li><p>KB</p></li><li><p>MB</p></li><li><p>GB</p></li></ul></div></div></td><td><p>Unit for the <strong>Max In Memory Size</strong> field.</p></td><td></td><td></td></tr></tbody></table>

## See Also

- [Salesforce Help](https://help.salesforce.com)
