Incoming file split control summary

This example shows a summary of the elements within the XML processing control file for controlling an incoming file split:
<destinations>
 <destRouting routingNum="">
  <icpcsRouting fileType="ECP/ECPD/ECPI/FATF/ICL/SA_ECP/SA_ECPF/SA_ECPI/VLF">
    <incoming originRT="" fedWorkType="">
      <IQA enable="true/false"/>

      <fileRouteMode type="FORWARD/PROCESS/SPLIT">
        <forward type="FTP/FILE,Connect:Direct">
          <FTPForward>
            <FTPaddress></FTPaddress>
            <FTPpath></FTPpath>
            <FTPuserID></FTPuserID>
            <FTPpassword></FTPpassword>
          </FTPForward>
          <ConnectDirectForward>
            <ConnectDirectHost></ConnectDirectHost>
            <ConnectDirectConfig></ConnectDirectConfig>
            <ConnectDirectUserId></ConnectDirectUserId>
            <ConnectDirectPassword></ConnectDirectPassword>
          </ConnectDirectForward>
          <fileDirectory></fileDirectory>
        </forward>
        <split type="Returns/Exceptions/Holdovers">
          <fileRouteMode type="FORWARD/PROCESS"
            <forward type="FTP/FILE,Connect:Direct">
               (same as forward above)
            </forward>
          </fileRouteMode>
        </split>
      </fileRouteMode>
    </incoming>
  </icpcsRouting>
 </destRouting>
</destinations>
The first four attributes in this summary form a search key that Gateway Server uses to find a matching routing rule in the XML processing control file. The following table describes the attributes that make up the search key.
Table 1. Search key attributes
Attribute name Description
routingNum Receiving point routing number (matched to the Immediate Destination Routing Number from the file header record (Type 01))
fileType Transmission type (matched to the Gateway Server defined interpretation of the first cash letter header - it can be one of the following values.
  • BATCH
  • CIFF
  • ECP
  • ECPD
  • ECPI
  • FATF
  • ICL
  • ICLR
  • SA_ECP
  • SA_ECPF
  • SA_ECPI
  • VLF
)
originRT Sending point routing number (matched to the Immediate Origin Routing Number from the file header record (Type 01)
fedWorkType Work type, which is matched to the work type from the first non-empty cash letter header record (Type 10)
Specifying a white-space-delimited list of values in any of these attributes causes Gateway Server to broaden the search. For example, to allow a particular rule to match on Federal Reserve work types 7, 8, and E and no others, use the XML:
<incoming fedWorkType="7 8 E">
This method also works for lists of routing numbers and transmission types. To broaden the search even further, omit any or all of these attributes to make them always match. For example, to allow a particular rule to match on any origin routing number and any Federal Reserve work type, use the XML:
<incoming>
Gateway Server searches for the routing rule in the following order. It searches until it finds a match or reaches the end of the list:
  1. It searches the rules present in any rteFileExt processing control file that is found with the incoming file.
  2. It reads the process control file from the Transaction Server endpoint table entry 0.
  3. It uses the values from the Gateway Server properties file.
The Gateway Server does not load a default rule for all incoming files and then override with the data from a more specific rule. All relevant values must be contained by the first rule that matches the search criteria.

Multiple rules can be put in the XML processing control file. Potentially, more than one might match a given incoming x9.37 (2003) file. The Gateway Server searches each rule, in the order that is entered in the XML processing control file until it finds a match. The first match is the applicable rule. Create a default scheme by placing more specific rule earlier in the XML processing control file, followed by less specific rules (for example, omitting routingNum, fileType, originRT, and fedWorkType).

XML element structure

The outer fileRouteMode XML element can have a type of:
FORWARD
This file route mode type contains a forward XML element. The forward XML element can have a type of:
FTP
This type contains a FTPForward XML element.
FILE
This type contains a fileDirectory XML element.
Connect:Direct®
This type contains a ConnectDirectForward XML element.
PROCESS
No enclosed element is needed for this file route mode type. The Gateway Server processes the file normally.
SPLIT
This file route mode type contains a split XML element. The split XML element can have a type of:
  • Returns
  • Exceptions
  • Holdovers
These type values represent the types of cash letters in an ECP-D file. Omit the type on the split element to cause this split to apply to all otherwise unspecified ECP-D cash letter types. Each Split XML element contains an inner fileRouteMode XML element with a type of FORWARD or PROCESS. The forward and process types work the same as described for the outer fileRouteMode. In this way, the three cash letters within an ECP-D file can be forwarded to up to three distinct locations.

Example file split process control file

The following figure shows a specific XML example of a process control file:
Figure 1. XML example of a process control file
<?xml version="1.0" encoding="UTF-8"?>
<destinations xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="RoutingFileSchema.xsd">
  <destRouting routingNum="11122233">
    <icpcsRouting>
      <outgoing>
        <routingMode>FTP</routingMode>
        <FTPaddress>127.0.0.1</FTPaddress>
        <FTPpath>/target/path</FTPpath>
        <FTPuserID>userid</FTPuserID>
        <FTPpassword>pw</FTPpassword>
        <FileSizeWarning>0</FileSizeWarning>
        <FileSizeError>2000000000</FileSizeError>
        <Type54Records>Include</Type54Records>
        <Type27Records>Include</Type27Records>
        <Type34Records>Include</Type34Records>
        <viewsToInclude>
          <viewValue>FBW</viewValue>
          <viewValue>RBW</viewValue>
        </viewsToInclude>
        <characterEncoding>EBCDIC</characterEncoding>
      </outgoing>
    </icpcsRouting>
  </destRouting>
  <destRouting>
    <icpcsRouting fileType="ECPD">
      <incoming>
        <fileRouteMode type="SPLIT">
          <split type="Exceptions">
            <fileRouteMode type="FORWARD">
              <forward type="FTP">
                <FTPForward>
                  <FTPaddress>example.com</FTPaddress>
                  <FTPpath>gw/test</FTPpath>
                  <FTPuserID>anonymous</FTPuserID>
                  <FTPpassword>pw</FTPpassword>
                </FTPForward>
              </forward>
            </fileRouteMode>
          </split>
          <split type="Holdovers">
            <fileRouteMode type="FORWARD">
              <forward type="FILE">
                <fileDirectory>c:/temp</fileDirectory>
              </forward>
            </fileRouteMode>
          </split>
        </fileRouteMode>
      </incoming>
    </icpcsRouting>
  </destRouting>
</destinations>