Free MuleSoft CONNECT Keynote & Expo Pass Available!

Register now+
Nav

X12 EDI Connector Reference

Default Configuration

Parameters

Name Type Description Default Value Required

Name

String

The name for this configuration. Connectors reference the configuration with this name.

x

Expiration Policy

ExpirationPolicy

Configures the minimum amount of time that a dynamic configuration instance can remain idle before the runtime considers it eligible for expiration. This does not mean that the platform expires the instance at the exact moment that it becomes eligible. The runtime actually purges the instances as it sees fit.

Mule ID qualifier

String

ID qualifier for Mule in exchange (ISA segment). This value is used in combination with the Self Identification Interchange ID value, and if one is set the other must also be set. If this value is set, it affects both send and receive message handling. On the receive side, the ISA Interchange Receiver ID Qualifier must match this value. On the send side, this value is used as the default ISA Interchange Sender ID Qualifier when not set in the message data.

Mule interchange ID

String

ID for Mule in exchange (ISA segment). This value is used in combination with the Self Identification Interchange ID qualifier value, and if one is set the other must also be set. If this value is set, it affects both send and receive message handling. On the receive side, the ISA Interchange Receiver ID must match this value. On the send side, this value is used as the default ISA Interchange Sender ID when not set in the message data.

Mule application code

String

Application Code for Mule in group (GS segment). If this value is set, it affects both send and receive message handling. On the receive side, the GS Application Receiver’s Code must match this value. On the send side, this value is used as the default GS Application Sender’s Code when when not set in the message data.

Partner ID qualifier

String

ID qualifier for partner in exchange (ISA segment). This value is used in combination with the Partner Identification Interchange ID value, and if one is set the other must also be set. If this value is set, it affects both send and receive message handling. On the receive side, the ISA Interchange Sender ID Qualifier must match this value. On the send side, this value is used as the default ISA Interchange Receiver ID Qualifier when not set in the message data.

Partner interchange ID

String

ID for partner in exchange (ISA segment). This value is used in combination with the Partner Identification Interchange ID qualifier value, and if one is set the other must also be set. If this value is set, it affects both send and receive message handling. On the receive side, the ISA Interchange Sender ID must match this value. On the send side, this value is used as the default ISA Interchange Receiver ID when not set in the message data.

Partner application code

String

Application Code for partner in group (GS segment). If this value is set, it affects both send and receive message handling. On the receive side, the GS Application Sender’s Code must match this value. On the send side, this value is used as the default GS Application Receiver’s Code when not set in the message data.

Form and validation

Enumeration, one of:

  • X12

  • HIPAA_SNIP1

  • HIPAA_SNIP2

Schema form and validation level. Schemas used in the configuration must match the form selected, either X12 or HIPAA. SNIP Type 1 and Type 2 validation only applies to HIPAA schemas.

X12

Schema definitions

Array of String

List of paths for schemas to be used by connector. The paths may be either for file system or classpath.

x

Character encoding

Enumeration, one of:

  • PLATFORM

  • ASCII

  • ISO8859_1

  • IBM1047

  • UTF8

Character encoding for messages. This character encoding is always used for both send and receive messages.

PLATFORM

Character set

Enumeration, one of:

  • BASIC

  • EXTENDED

  • UNRESTRICTED

Characters allowed in string data. Invalid characters are replaced by the substitution character, if used, or rejected as errors if no substitution character is set or enabled for receive messages in parser options. Either way the invalid characters are logged, and for receive messages are reported in 997 functional acknowledgments.

EXTENDED

Substitution character

String

Substitution character used to replace invalid characters in string values.

Version identifier suffix

String

Version identifier code suffix for group (GS segment). If this value is set, it affects both send and receive message handling. On the receive side, the the GS Version, Release, and Industry Identifier Code must consist of the X12 schema version (004010, 005010, etc.) followed by this suffix. If this value is not set, the receive only verifies that the GS version identifier code starts with the configured schema version. On the send side, the combination of the X12 schema version and this suffix is used as the GS version identifier code.

Enforce length limits

Boolean

Enforce minimum and maximum lengths for receive values. If true, a transaction with values too long or too short is rejected; if false, the values are used anyway and the transaction is not rejected. In either case the error is logged and reported in 997/999 acknowledgments.

true

Enforce character set

Boolean

Enforce allowed character set flag. If true, a transaction with invalid characters is rejected; if false, the characters are either passed through or substituted and the transaction is not rejected. In either case the error is reported in 997/999 acknowledgments.

true

Enforce value repeats

Boolean

Enforce repetition count limits for receive values. If true, a transaction with values repeated too many or too few times is rejected; if false, the value are accepted and the transaction is not rejected. In either case the error is reported in 997/999 acknowledgments.

true

Allow unknown segments

Boolean

Allow unknown segments in a transaction set. If false, a transaction containing any unknown segments is rejected; if true, unknown segments are ignored and the transaction is not rejected. In either case the error is reported in 997/999 acknowledgments.

false

Enforce segment order

Boolean

Enforce segment order in a transaction set. If true, a transaction with segments out of order is rejected; if false and the segment can be reordered the transaction is not rejected. In either case the error is reported in 997/999 acknowledgments.

true

Allow unused segments

Boolean

Allow segments marked as 'Unused' in a transaction set. If false, a transaction containing segments marked as unused in the schema is rejected; if true, the transaction is not rejected and the unused segments are ignored. In either case the error is reported in 997/999 acknowledgments.

false

Enforce segment repeats

Boolean

Enforce segment repetition count limits in a transaction set. If true, a transaction with a segment repeated too many times is rejected; if false, the transaction is not rejected. In either case the error is reported in 997/999 acknowledgments.

true

Require unique interchanges

Boolean

Require unique Interchange Control Numbers (ISA13) for received interchanges. The normal behavior is to 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). If false, this instead allows processing of the received interchange to continue and leaves it to the application flow to track numbers and handle appropriately.

true

Require unique groups

Boolean

Enforce globally unique Group Control Numbers (GS06) for received functional groups. By default, group numbers only need to be unique with an interchange. If true, this instead requires group numbers to be unique across all interchanges received from the same partner and application (as determined by the interchange sender and receiver identification, combined with the functional group sender and receiver application codes).

false

Require unique transactions

Boolean

Enforce globally unique Transaction Set Control Numbers (ST02) for received transaction sets. By default, transaction set control numbers only need to be unique with a particular functional group. If true, this instead requires transaction set numbers to be unique across all functional groups received from the same partner and application (as determined by the interchange sender and receiver identification, combined with the functional group sender and receiver application codes).

false

Store time-to-live

Number

Minimum number of days to store interchange, group, and transaction set numbers for checking uniqueness. This value is only used when unique interchange, group, and/or transaction set numbers are required by the configuration. The default persistent object store from the Mule configuration is always used for storing the received identifier numbers, and this parameter sets the entry time-to-live for these stored values.

30

Acknowledge every transaction

Boolean

Include a separate AK2/AK5 (997) or AK2/IK5 (999) acknowledgment for every received transaction set. By default, only transaction sets containing errors are included in the acknowledgment, with transaction sets which aren’t included implicitly acknowledged. Changing this flag causes each received transaction set to be explicitly acknowledged.

false

Generate 999 acknowledgments

Boolean

Generate 999 Implementation Acknowledgments, rather than 997 Functional Acknowledgments. By default, 997 Functional Acknowledgment transaction sets are generated for each received interchange. Changing this flag causes 999 Implementation Acknowledgments to be generated instead. Note that the support for 999 Implementation Acknowledgments does not include CTX segment generation.

false

Report segment details

Boolean

Report segment error details to sender in 997/999. If true, the details of any segment errors are included in a generated 997/999. If false, the details are not included.

true

Include Acknowledgment schema

Boolean

Expect 997 or 999 Functional Acknowledgments and include 997/999 schema. By default, the schema for 997/999 acknowledgment transaction sets is automatically included in the set of schemas used by the X12 EDI Module. If false, you need to directly specify the 997 and/or 999 schema if you want these to be processed as input. The schemas used for generating 997 or 999 Functional Acknowledgments are hardcoded and cannot be modified.

true

Data element separator

String

Data element separator character. The configured value is used by default for all output messages, but can be overridden at the message level.

*

Component element separator

String

Component element separator character. The configured value is used by default for all output messages, but can be overridden at the message level.

>

Repetition separator

String

Repetition separator character (if used). The configured value is used by default for all output messages, but can be overridden at the message level. The value 'U' means repetitions are not used.

U

Segment terminator

String

Segment terminator character. The configured value is used by default for all output messages, but can be overridden at the message level.

~

Segment line ending

Enumeration, one of:

  • NONE

  • LF

  • CRLF

  • CR

Line ending to add between segments. This allows you to add line endings between segments to improve the readability of the output message text.

NONE

Unique group numbers

Boolean

Send globally unique Group Control Numbers (GS06). By default, functional group control numbers are assigned sequentially within each interchange and are reused in different interchanges. If true, this instead assigns unique group numbers across all interchanges sent to the same partner and application (as determined by the interchange sender and receiver identification, combined with the functional group sender and receiver application codes).

false

Unique transaction numbers

Boolean

Send globally unique Transaction Set Control Numbers (ST02). By default, transaction set control numbers are assigned sequentially within each functional group and are reused in different groups. If true, this instead assigns unique transaction set numbers across all interchanges sent to the same partner and application (as determined by the interchange sender and receiver identification, combined with the functional group sender and receiver application codes).

false

Implementation reference

String

Implementation convention reference for transactions (ST03). If this value is set, it is used as the ST03 Implementation Convention Reference unless overridden in the message parameters.

Initial interchange number

Number

The initial Interchange Control Number used for outgoing messages.

1

Initial group number

Number

The initial Group Control Number used for outgoing messages.

1

Initial transaction number

Number

The initial Transaction Set Control Number used for outgoing messages.

1

Request acknowledgments

Boolean

Request acknowledgments for sent transactions flag (ISA14). If true, 997/999 acknowledgments are requested for all sent transactions.

false

Default usage indicator

String

Default interchange usage indicator (ISA15): I for Information, P for Production Data, and T for Test Data.

P

Associated Operations

  • read

  • write

Read

<x12:read>

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

Parameters

Name Type Description Default Value Required

Configuration

String

The name of the configuration to use.

x

Read Content

Binary

#[payload]

Target Variable

String

The name of a variable that stores the operation’s output.

Target Value

String

An expression to evaluate against the operation’s output and to store the outcome of that expression in the target variable.

#[payload]

Output

Type

Object

For Configurations

  • config

Throws

  • X12:UNKNOWN

  • X12:WRITE

  • X12:SCHEMA

  • X12:PARSE

Write

<x12:write>

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

Parameters

Name Type Description Default Value Required

Configuration

String

The name of the configuration to use.

x

Write Content

Object

#[payload]

Streaming Strategy

  • repeatable-in-memory-stream

  • repeatable-file-store-stream

  • non-repeatable-stream

Configure if repeatable streams should be used and their behavior.

Target Variable

String

The name of a variable that stores the operation’s output.

Target Value

String

An expression to evaluate against the operation’s output and to store the outcome of that expression in the target variable.

#[payload]

Output

Type

Binary

For Configurations

  • config

Throws

  • X12:UNKNOWN

  • X12:WRITE

  • X12:SCHEMA

  • X12:PARSE

Expiration Policy Type

Field Type Description Default Value Required

Max Idle Time

Number

A scalar time value for the maximum amount of time a dynamic configuration instance should be allowed to be idle before it’s considered eligible for expiration.

Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

A time unit that qualifies the maxIdleTime attribute.

Repeatable In Memory Stream Type

Field Type Description Default Value Required

Initial Buffer Size

Number

The amount of memory to allocate to consume the stream and provide random access to it. If the stream contains more data than can be fit into this buffer, then the buffer expands according to the bufferSizeIncrement attribute, with an upper limit of maxInMemorySize.

Buffer Size Increment

Number

By how the buffer expands if it exceeds its initial size. Setting a value of zero or lower means that the buffer should not expand, meaning that a STREAM_MAXIMUM_SIZE_EXCEEDED error is raised when the buffer gets full.

Max Buffer Size

Number

This is the maximum amount of memory to use. If more than that is used then a STREAM_MAXIMUM_SIZE_EXCEEDED error is raised. A value lower or equal to zero means no limit.

Buffer Unit

Enumeration, one of:

  • BYTE

  • KB

  • MB

  • GB

The unit in which all these attributes are expressed.

Repeatable File Store Stream Type

Field Type Description Default Value Required

Max In Memory Size

Number

Defines the maximum memory that the stream should use to keep data in memory. If more than that is consumed then it starts to buffer the content on disk.

Buffer Unit

Enumeration, one of:

  • BYTE

  • KB

  • MB

  • GB

The unit in which maxInMemorySize is expressed.