SWIFTNet7 Adapter

The SWIFTNet7 adapter communicates to the SWIFTNet Network through the SWIFTNet MEFG Servers for SWIFTNet version 7. It responds to and accepts InterAct and FileAct messages that are sent by remote SWIFTNet correspondents. The following table provides an overview of the SWIFTNet7 adapter:

System Name
SWIFTNet7 Adapter
Graphical Process Modeler (GPM) categories)
All services
Description
This adapter is responsible for receiving and responding to SWIFTNet InterAct and FileAct messages using the SWIFTNet MEFG Servers for SWIFTNet version 7. Additionally, it allows you to configure the MEFG Servers and start and stop the MEFG Server. Additionally, it enables you to use multiple queues and configure your output channel.
Business usage
A business would use this adapter in order to exchange SWIFTNet InterAct and FileAct messages with its trading partners over the SWIFTNet system. This adapter also enables you to configure your input channel.
Note: You will also need to configure this adapter if you are transporting CHIPS messages using the SWIFTNet7 transport mode. This adapter also sends acknowledgements to CHIPS. CHIPS uses the SWIFTNet Server adapter for SWIFTNet version 6.x by default.
Important: A new property, maxShutdownConflictCyclesAllowed, is added in the swiftnet7.properties file. It allows the SWIFTNet7AdapterScheduler process to close an adapter in conflicted state, when the value is greater than 0. The default value is 0.
Usage example
From the Service Configuration page, you can start and stop the MEFG Servers by enabling or disabling this adapter.
Preconfigured?
No, you must configure it.
Requires third party files?
No third party files are required.
Platform availability
All supported Sterling B2B Integration platforms.
Related services
This is designed to work in conjunction with the SWIFTNet MEFG Servers and the Command Line Adapter 2. This service works with the SWIFTNet7 HTTP Server adapter to provide SSL support, and works with the SWIFTNet7 HTTP Client adapter, SWIFTNet7 HTTP File System adapter, SWIFTNet7 Adapter Scheduler, SWIFTNet7 Client Service, SWIFTNet7 Server Service, SwiftNet Import ASP Service, and SwiftNet Import RMA Service.
Application requirements
SSL can be implemented between IBM® Sterling B2B Integrator and the MEFG Server if the SWIFTNet HTTP Server adapter is configured for that setup.
Initiates business processes?
Initiates business processes.
Invocation
By the Multi-Enterprise Financial Gateway for SWIFTNet application.
Business process context considerations
None.
Returned status values
  • Fatal—non-recoverable error
  • Transient—recoverable error
  • Logic—recoverable error
  • Success—Success
  • Warning—Success with warning
Restrictions
Only one SWIFTNet MEFG Server can be configured to talk to one SWIFTNet7 Adapter instance in the IBM Sterling B2B Integrator.
Persistence level
N/A
Testing considerations
N/A

How the SWIFTNet7 Adapter Works

The SWIFTNet7 adapter is comprised of two parts: the service part (SWIFTNet7 Server Service and SWIFTNet7 Client Service) and the adapter part. The service part is used in a business process that does not require configuration except for enabling it for document tracking. The adapter part is configured through the Admin Console or the GPM, and this adapter is responsible for starting and stopping the SWIFTNet MEFG Servers from the IBM Sterling B2B Integrator using the Command Line Adapter 2 (CLA2), which is built into the SWIFTNet7 adapter. Starting and stopping the operation of the SWIFTNet MEFG Servers will only work correctly if the CLA2Client.jar is deployed in the same machine where the SWIFTNet MEFG Servers is installed. The CLA2Client.jar file must also be started by a user who has permission to access the SWIFTNet MEFG Servers home directory.

The SWIFTNet7 adapter (in conjunction with the SWIFTNet7 HTTP Server adapter) enables you to use Secure Sockets Layer (SSL) to provide secure authentication, using the SWIFTNet7 HTTP Server adapter to accept the forwarded request from the SWIFTNet MEFG Servers. When you use SSL with the IBM Sterling B2B Integrator, two channels are secured: an Outbound channel (IBM Sterling B2B Integrator acting as the Requestor) and an Inbound channel (IBM Sterling B2B Integrator acting as the Responder).

You will need 2 pairs of certificates. The first pair belongs to the SWIFTNet MEFG Server and is used to secure the outbound channel. The second pair of certificates belongs toe IBM Sterling B2B Integrator and is used to secure the inbound channel. In all, you need:

  • A public key certificate file belongs to the SWIFTNet MEFG Server that is configured on the SWIFTNet Client service (the certificate is specified for the CA Certificate parameter).
  • A private key certificate file that is stored on the SWIFTNet MEFG Server as a key file (which you configure through the SSL Configuration utility named sslUtil.jar in the SWIFTNet MEFG Server installation bin subdirectory). The sslUtil.jar file is located in the bin subdirectory of the SWIFTNet MEFG Server installation directory.
  • A private key certificate file that is configured on the SWIFTNet HTTP Server adapter (the certificate is specified for the System Cert parameter).
  • A public key file that belongs to the IBM Sterling B2B Integrator and is stored for the SWIFTNet MEFG Server as a CA Cert file or trusted list (that you configure through the SSL Configuration utility named sslUtil.jar in the SWIFTNet MEFG Server installation directory).
Note: To configure SSL on the SWIFTNet MEFG Server, run the following command in the bin directory of the MEFG SWIFTNet Server installation bin sub-directory:

java -jar sslUtil.jar

The IBM Sterling B2B Integrator enables you easily renew certificates.

Implementing the SWIFTNet7 Adapter

To implement the SWIFTNet7 adapter, complete the following tasks:

  1. Create a configuration of the Command Line Adapter 2.
    1. Locate the client jar (CLA2Client.jar) that contains the necessary classes.
    2. Move the client jar to the machine where you will be running the remote adapter.
    3. Start the remote adapter using the following command:
      
      java -jar CLA2Client.jar <port> [debug]
      
    Note: The [debug] option is not required, but is provided for your convenience. If you upgrade the IBM Sterling B2B Integrator, you may need to obtain a new CLA2Client.jar file to avoid a Class Conflict error.
  2. Create a configuration of the SWIFTNet7 adapter.
  3. Specify field settings for the adapter configuration in the IBM Sterling B2B Integrator Admin Console and in the GPM as necessary.
  4. Configure the business process you are using for the SWIFTNet7 adapter.

    The business processes that work with SWIFTNet7 adapter include the following:

    • handleSWIFTNet7ContextReport
    • handleSWIFTNet7Events
    • handleSWIFTNet7FileActDelNotif
    • handleSWIFTNet7FileActEvent
    • handleSWIFTNet7FileActRequest
    • handleSWIFTNet7FileActSnFRequest
    • handleSWIFTNet7InterActRequest
    • handleSWIFTNet7InterActSnFRequest
    • handleSWIFTNet7OpenChannels
    • handleSWIFTNet7ResponseInfo
    • handleSWIFTNet7SnFDelNotif
  5. Define the SI HTTP Sever Adapter Port in the SWIFTNet7 Adapter configuration that should have the same value as the HTTP Listen Port defined in the SWIFTNet HTTP Server adapter instance.
  6. Specify field settings in the business process.

Configuring the SWIFTNet7 Adapter

  1. Select Deployment > Services > Configuration.
  2. Search for SWIFTNet7 adapter or select it from the list and click Go!.
  3. Click Edit.
  4. Specify field settings in the Admin Console—alternatively you can specify field settings in the GPM, but you will need to access the adapter instance through the Admin console to enable the instance (as described in step 5).
    Note: Specify failover processing to ensure that failover is supported if a SAG connection fails by configuring the Configure for failover SAG parameter.
    Note: For specific instructions on configuring an input channel, see SWIFT Input Channel.
  5. Once the SWIFTNe7 Adapter is configured and saved, click the Enabled check box on the Services Configuration page. This starts the SWIFTNet7 MEFG Server.
  6. On the Confirm page, verify that the Enable Service for Business Processes check box is selected to enable the adapter instance.

You must specify field settings in IBM Sterling B2B Integrator.

Creating or Setting Up a Adapter Configuration in the Admin Console

Use the field definitions in the following table to create a new configuration of the SWIFTNet7 Adapter.

Note: The business entities (accessible through the Business Entities wizard as part of the SWIFTNet7 adapter configuration) are shared by both RA1 and RA2. The Business Entities wizard enables you to add multiple entities.
Field
Description
Name
Unique and meaningful name for the adapter configuration. Required.
Description
Meaningful description for the adapter configuration, for reference purposes. Required.
Environment
Select the environment in which the adapter will run. Required.
Note: The adapter is not eligible to run in the adapter container.
Select a Group
Select one of the options:
  • None – Do not include the configuration in a service group at this time.
  • Create New Group – Enter a unique name for a new group, which will be created with this configuration. (You can then add other services to the group as well.)
  • Select Group – If service groups already exist for this service type, they are displayed in the list. Select a group from the list.
Note: Only select group if this adapter is clustered in a group. See Managing Services and Services.
SI Server Address
The callback IP of Sterling B2B Integrator for the SWIFTNet MEFG Servers. Required.
Note: The default value is the IP address of the machine where the Sterling B2B Integrator is installed.
SI HTTP Server Adapter Port
This is the listening port for the SWIFTNet7 HTTP Server Adapter. Required. The default populated value is the instance port number of the Sterling B2B Integrator instance plus 53. For example, if the Sterling B2B Integrator instance port is 34600, the listening port populated by default is 34653.
Note: The HTTP Server adapter functions between the SWIFTNet7 adapter and the SWIFTNet MEFG Servers. For an SSL connection, this value should be server name because the certificate is made with the server name.
Note: If you are using the SWIFTNet7 adapter in your current installation, prior to installing a new version of the Standards Library, you need to note the value you have configured for this parameter. This parameter may be overwritten during the upgrade process (replaced with the default value). If this parameter is overwritten, you need to restore it to the original value after the upgrade process is complete.
MEFG SWIFTNet Address
The IP address of the SWIFTNet MEFG Servers. Required.
MEFG SWIFTNet Port
The port of the SWIFTNet MEFG Servers. Required.
CLA2Client Listening Port
The listening port used by the client command adapter (CLA2Client) running along the SWIFTNet MEFG Servers. Required.
Note: This port listens for requests to start and stop the SWIFTNet MEFG Servers.
MEFG SWIFTNet Home
The home directory of the SWIFTNet MEFG Servers. Required.
Start MEFG SWIFTNet despite errors
Whether to start the MEFG Servers if errors occur. The default is unchecked (do not start the MEFG Servers if errors occur). Optional.
Use SSL
Whether to enable Secure Socket Layer (SSL) over HTTP communication between the Sterling B2B Integrator and the SWIFTNet MEFG Servers. Valid values are False (default) and True. Select True to use SSL with an Input Channel.
Event Status Tracking
The event status tracking for the adapter. Required. Valid selections are Minimal (Only Completed, Rejected, Duplicated status) - this is the default, and Full.
Cipher Strength
Specifies the strength of the algorithms (cipher suites) used to encrypt data. Valid values are:
  • STRONG - Required if Use SSL is Must
  • ALL - All cipher strengths are supported
  • WEAK - Often required for international trade, because government regulations prohibit STRONG encryption from being exported

Default is ALL. Required if Use SSL is checked.

CA Certificate
Move one or more CA Certificates to the use column. These are the digital security certificates that the SSL server will use to authenticate the client. Required if SSL is selected.
Message Partner Client Name
The client message partner name that the SNL server application recognizes for the SWIFTNet MEFG Servers client application.
Note: The Message Partner Client Name must correspond to the Application Interface Message Partner that is defined on the SAG as the client interface for the SWIFTNet MEFG Servers.
Message Partner Server Name
The server message partner name that the SNL server application recognizes for the SWIFTNet MEFG Servers server application.
Note: The Message Partner Server Name must correspond to the Application Interface Message Partner that is defined on the SAG as the client interface for the SWIFTNet MEFG Servers.
Delivery Notification
Determines whether the server requests a delivery notification when a business partner is downloading. Possible values are True and False (default). Required.
Delivery Notification Request Type
The request type of the delivery notification is the value SI SWIFTNet Server uses in the response after getting a request from a remote client. Required.
Configure for failover SAG?
Enables you to set up Failover SAG Configuration using two separate instances of the Remote API (RA), RA1 and RA2. Each RA should be configured to point to a different SAG to support failover processing. Possible values are True and False (default). Required.
Note: This parameter specifies whether to support failover if one SAG fails. When this parameter is set to True, you are presented with parameters for both an RA1 Profile and an RA2 Profile.

When you are operating in an environment with multiple SAGs configured in failover SAG mode, setting this parameter enables you to define an alternate RA connection to a secondary SAG for failover support.
Delivery Notification
Determines whether the RA1 server is handling a delivery notification. Possible values are True and False (default). Optional. This is used for a FileAct Get.
Delivery Notification DN
Distinguished name of the responder of the delivery notification. This is used for a FileAct Get. Optional.
Request Type of Del. Notifn
Request type of the delivery notification. This is used for a FileAct Get. Optional.
Return Signature List
Whether you want to receive your own signature to safe store it in case of any dispute in the future. Valid values are False or True. Applicable only if Signature List is used. Optional for T-Copy and Y-Copy implementation.
SWIFTNet RA
The absolute path of the RA1 installation directory for RA1 SWIFTNet. Required. For example, /SWIFTAlliance/RA.
Note: This parameter specifies where to pick up the remote API and execute to SAG.
Config
The relative path of the RA1 instance configuration directory (relative to the RA installation directory). Required. For example, RA1/cfg.
Note: If you are using the SWIFTNet7 Adapter in your current installation, prior to installing a new version of the Standards Library, you need to note the value you have configured for this parameter. This parameter may be overwritten during the upgrade process (replaced with the default value). If this parameter is overwritten, you need to restore it to the original value after the upgrade process is complete.
Bin
This is added to the PATH environment variable to contain the SWIFTNet MEFG Server binaries. Possible value is bin. Required.
Note: If you are using the SWIFTNet7 Adapter in your current installation, prior to installing a new version of the Standards Library, you need to note the value you have configured for this parameter. This parameter may be overwritten during the upgrade process (replaced with the default value). If this parameter is overwritten, you need to restore it to the original value after the upgrade process is complete.
Lib
This is added to the library path environment variable. Possible value is lib. Required.
Note: If you are using the SWIFTNet7 Adapter in your current installation, prior to installing a new version of the Standards Library, you need to note the value you have configured for this parameter. This parameter may be overwritten during the upgrade process (replaced with the default value). If this parameter is overwritten, you need to restore it to the original value after the upgrade process is complete.
Category
This is the category of RA. Possible values are:
  • RA (SNL facade library to access an SAG)
  • SNL (a native SNL interface)
  • DEFAULT (default set for the RA1 instance)

Required.

Note: If you are using the SWIFTNet7 Adapter in your current installation, prior to installing a new version of the Standards Library, you need to note the value you have configured for this parameter. This parameter may be overwritten during the upgrade process (replaced with the default value). If this parameter is overwritten, you need to restore it to the original value after the upgrade process is complete.
Delivery Responder DN
The distinguished name of the responder to which delivery notifications requested by the sender are sent. Optional.
Note: If left blank, Delivery Notifications requested by the server are sent to the responder indicated in the message; otherwise, it is sent to this responder
SWIFTNet RA
The absolute path of the RA2 installation directory for RA2 SWIFTNet. Required (based on Failover SAG Configuration). For example, /SWIFTAlliance/RA.
Note: This parameter is only displayed if Failover SAG Configuration is set to True.
Config
The relative path of the RA2 instance configuration directory (relative to the RA2 installation directory). Required (based on Failover SAG Configuration). For example, /RA2/cfg.
Note: This parameter is only displayed if Failover SAG Configuration is set to True.
Note: If you are using the SWIFTNet7 Adapter in your current installation, prior to installing a new version of the Standards Library, you need to note the value you have configured for this parameter. This parameter may be overwritten during the upgrade process (replaced with the default value). If this parameter is overwritten, you need to restore it to the original value after the upgrade process is complete.
Bin
This is added to the PATH environment variable to contain the SWIFTNet MEFG Server binaries. Required (based on Failover SAG Configuration).
Note: This parameter is only displayed if Failover SAG Configuration is set to True.
Note: If you are using the SWIFTNet7 Adapter in your current installation, prior to installing a new version of the Standards Library, you need to note the value you have configured for this parameter. This parameter may be overwritten during the upgrade process (replaced with the default value). If this parameter is overwritten, you need to restore it to the original value after the upgrade process is complete.
Lib
This is added to the library path environment variable. Required (based on Failover SAG Configuration).
Note: This parameter is only displayed if Failover SAG Configuration is set to True.
Note: If you are using the SWIFTNet7 Adapter in your current installation, prior to installing a new version of the Standards Library, you need to note the value you have configured for this parameter. This parameter may be overwritten during the upgrade process (replaced with the default value). If this parameter is overwritten, you need to restore it to the original value after the upgrade process is complete.
Category
This is the category of RA2. Possible values are:
  • RA (SNL facade library to access an SAG)
  • SNL (a native SNL interface)
  • DEFAULT (default set for the RA1 instance)

Required (based on Failover SAG Configuration).

Note: This parameter is only displayed if Failover SAG Configuration is set to True.
Note: If you are using the SWIFTNet7 Adapter in your current installation, prior to installing a new version of the Standards Library, you need to note the value you have configured for this parameter. This parameter may be overwritten during the upgrade process (replaced with the default value). If this parameter is overwritten, you need to restore it to the original value after the upgrade process is complete.
Delivery Responder DN
The responder to which delivery notifications requested by the sender are sent. Required (based on the failover SAG configuration).
Note: If left blank, Delivery Notifications requested by the server are sent to the responder indicated in the message; otherwise, it is sent to this responder This parameter is only displayed if failover SAG Configuration is set to True.
New Security Context
Click add to create a new security context for the Output Channel Configuration or click edit to modify an existing entry.
Note: You must have at least one security context created to proceed. This is the authorization context to open the output channel.
UserId
The user identifier for this business entity (to log in to SWIFTNet). Required for each configured entity.
Password (RA1)
The user password for this security context for RA1. Required for each configured entity.
Note: This password is automatically encrypted. This parameter is only displayed if you edit an existing Security Context or add a new Security Context.
Password (RA2)
The user password for this security context for RA2. If not specified, the RA2 password is considered to be equal to the RA1 password. Optional.
Note: This password is automatically encrypted. This parameter is only displayed if you edit an existing Security Context or add a new Security Context.
New Business Entity
Click add to create a new business entity or click edit to modify an existing entity.
Note: You must have at least one business entity created to proceed.
Entity
Identifies the security context to be used. For the client, the business entity is the requester. For the server, the business entity is the responder.
The SWIFTNet7 Adapter enhances business entities. You are not required to define an exact match for every distinguished name used for requestor or responder. The SWIFTNet Client Adapter uses the best matching algorithm to find the business entity and associated context. Therefore, if all the distinguished names used belong to the same organization (for example: o=abcdefgh,o=swift), it is sufficient for you to define one and only one business entity: o=abcdefgh,o=swift. However, if necessary, (for example if you want to ensure that cn=xyz,o=abcdefgh,o=swift will use different context), you may define another business entity for this particular distinguished name.
Note: This is the distinguished name created by SWIFT. This parameter is only displayed if you edit an existing Business Entity or add a new Business Entity. The business entities are shared by both the RA1 and RA2 profiles.
UserId
The user identifier for this business entity (to log in to SWIFTNet). Required for each configured entity.
Note: The UserName is created in SAG (in the Users Module) and must also have a certificate created for it in the SAG. This parameter is only displayed if you edit an existing Business Entity or add a new Business Entity. The SWIFTNet Client Adapter allows you to use a different security context for RA1 and RA2.
UserId for RA2 (if different)
The user identifier for the RA2 business entity (to log in to SWIFTNet). Required for each configured entity.
Note: The UserName is created in SAG (in the Users Module) and must also have a certificate created for it in the SAG. This parameter is only displayed if you edit an existing Business Entity or add a new Business Entity and only displayed if Failover SAG Configuration is enabled.
Use Default Delivery Notification
Indicates whether to use the default delivery notification configuration. Required.
Delivery Notification (Del. Notifn)
Indicates whether the sender asked the receiver to send a delivery notification. Optional. Valid values are True (default) or False.
Note: This parameter is only available when Use Default Delivery Notification is not selected.
Request Type of Del. Notifn
If Delivery Notification (Del. Notifn) is set to True, the value of this parameter is used to request a specific delivery notification message from the remote receiving server application when it returns the delivery notification. Optional.
Note: This parameter is only available when Use Default Delivery Notification is not selected.
Use Input Channel (for InterAct Store and Forward only)
Whether to use the input channel with this adapter. Valid values are False (default) and True. You must select True if you are using an input channel. Required.
Note: Used for InterAct store-and-forward only. If you configure this parameter, the SWIFTNet MEFG Servers opens the Input Channel automatically during the startup (when the SWIFTNet7 Adapter is enabled). This Input Channel remains open until the SWIFTNet MEFG Servers is shut down (or the SWIFTNet7 Adapter is disabled). During this time, you still have an option to send message using the input channel or without the input channel. All you need to do is to indicate this by using this parameter in SWIFTNet Client profile.
Use Output Channel (for Store and Forward only)
Whether to use the output channel with this adapter. Valid values are False (default) and True. You must select True if you are using an output channel. Required.
Note: Used for store-and-forward only.
Input Channel Name
The name of the input channel. Required only if you specified True for Use Input Channel.
Authoriser DN
The authorized distinguished name that will be used to open the input channel. Required only if you specified True for Use Input Channel.
Force Open the Input Channel
Whether to force open the input channel or use normal mode. Valid values are False (use normal mode, which is the default) and True (force the input channel). Required only if you specified True for Use Input Channel.
Max. Resend Attempts
The maximum number of retries that should be attempted before sending the Resolve Gap request. Required. The default is three.
New Queue
Click add to create a new queue or click edit to modify an existing entry.
Note: If you are using an Output Channel, you must have at least one queue created to proceed.
Queue Name
The name of the queue you are creating. Optional.
Output Channel Name
The name of the output channel. Required if you are using an Output Channel.
Note: This name must be unique and can only be associated with one SWIFTNet7 Adapter instance. By default there is an output channel with the same name as the queue name. Alternatively, you may create the output channel first using the utility provided.
Operating DN
The distinguished name of the operator. Optional.
SNL Endpoint
The endpoint for SNL. Optional.
Traffic Filter #1
Traffic filter to be applied first. Optional. Valid values are System, InterAct, FileAct, Urgent, Normal, System_Urgent, System_Normal, InterAct_Urgent, InterAct_Normal, FileAct_Normal, FileAct_Urgent, Not Applicable.
Traffic Filter #2
Traffic filter to be applied second. Optional. Valid values are System, InterAct, FileAct, Urgent, Normal, System_Urgent, System_Normal, InterAct_Urgent, InterAct_Normal, FileAct_Normal, FileAct_Urgent, Not Applicable.
Traffic Filter #3
Traffic filter to be applied third. Optional. Valid values are System, InterAct, FileAct, Urgent, Normal, System_Urgent, System_Normal, InterAct_Urgent, InterAct_Normal, FileAct_Normal, FileAct_Urgent, Not Applicable.
Traffic Filter #4
Traffic filter to be applied fourth. Optional. Valid values are System, InterAct, FileAct, Urgent, Normal, System_Urgent, System_Normal, InterAct_Urgent, InterAct_Normal, FileAct_Normal, FileAct_Urgent, Not Applicable.
Traffic Filter #5
Traffic filter to be applied fifth. Optional. Valid values are System, InterAct, FileAct, Urgent, Normal, System_Urgent, System_Normal, InterAct_Urgent, InterAct_Normal, FileAct_Normal, FileAct_Urgent, Not Applicable.
Traffic Filter #6
Traffic filter to be applied sixth. Optional. Valid values are System, InterAct, FileAct, Urgent, Normal, System_Urgent, System_Normal, InterAct_Urgent, InterAct_Normal, FileAct_Normal, FileAct_Urgent, Not Applicable.
Reception Directory
The full directory path where the file is received and stored during FileAct Put mode. Required for FileAct. Optional.
Download Directory
The full directory path where the file is picked up and sent to the requestor during FileAct Get mode. Required for FileAct. Optional.
Enable Service for Business Process
Whether the adapter is enabled to be used with business processes. Optional.

Business Process Example

The service part of the SWIFTNet7 Adapter that is used in the business process is bootstrapped when the SWIFTNet MEFG Servers post the request through the URI defined in the HTTP Server adapter.

Renewing a Certificate

You can create a business process and schedule it to be executed at an interval of three months. You only need to pass in the distinguished name that is specified in the SWIFTNet7 Adapter Business Entities. When the request is passed to the SWIFTNet MEFG Servers, it looks up the user identifier and the encrypted password in the configuration file. The SWIFTNet MEFG Servers then performs an initRequest and CreateSecurityContext to open the certificate

<process name="SWIFTNet7RenewSecContext">
  <sequence name="Renewing Security Context">
    <operation name="Setting UserToken">
      <participant name="SetUserToken"/>
      <output message="SetUserTokenMessage">
        <assign to="USER_TOKEN">admin</assign>
        <assign to="." from="*"/>
      </output>
      <input message="inmsg">
        <assign to="." from="*"/>
      </input>
    </operation>
    <operation name="Send Renew Security Context Request">
      <participant name="SWIFTNet7ClientService"/>
      <output message="renewSecurityContext">
        <assign to="username">certest1</assign>
        <assign to="." from="*"/>
      </output>
      <input message="testing">
        <assign to="." from="*"/>
      </input>
    </operation>
    <operation name="Receive Renew Security Context Response">
      <participant name="SWIFTNet7ClientService"/>
      <output message="handleRenewContextResponse">
        <assign to="." from="*"/>
      </output>
      <input message="renewContextOut">
        <assign to="." from="*"/>
      </input>
    </operation>
  </sequence>
</process>

InterAct Business Process Without Store-and-Forward Processing

The following business process example (in which the service part of the SWIFTNet7 adapter as part of InterAct processing) is used if you are not using store-and-forward processing:

Note: This business process is from the handleSWIFTNet7InterActRequest business process.
<process name="handleSWIFTNet7InterActRequest">
  <rule name="ActionInvokeWorkflow">
    <condition>RuleAction/text() = 'BP'</condition>
  </rule>
  <rule name="ActionStoreInMailbox">
    <condition>RuleAction/text() = 'MB'</condition>
  </rule>
  <rule name="ActionStoreInFSystem">
    <condition>RuleAction/text() = 'FS'</condition>
  </rule>
  <rule name="NeedToRetrieveTemplate">
    <condition>NeedTemplate/text() = 'TRUE'</condition>
  </rule>
  <sequence name="HandleRequest">
    <operation name="Setting UserToken">
      <participant name="SetUserToken"/>
      <output message="SetUserTokenMessage">
        <assign to="USER_TOKEN">admin</assign>
        <assign to="." from="*"/>
      </output>
      <input message="inmsg">
        <assign to="." from="*"/>
      </input>
    </operation>
    <operation name="SOAP-Deenveloping">
      <participant name="SOAPInbound"/>
      <output message="output">
        <assign to="." from="*"/>
        <assign to="bootstrap">false</assign>
        <assign to="SOAP_INTERMEDIATE_NODE">false</assign>
      </output>
      <input message="input">
        <assign to="." from="*"/>
      </input>
    </operation>
    <operation name="Receive the request">
      <participant name="SWIFTNet7ServerService"/>
      <output message="handleServerRequest">
        <assign to="." from="*"/>
      </output>
      <input message="testing">
        <assign to="." from="*"/>
      </input>
    </operation>
    <!-- Do backend processing -->
    <choice>
      <select>
        <case ref="ActionInvokeWorkflow" activity="DoInvokeWorkflow"/>
        <case ref="ActionStoreInMailbox" activity="DoStoreInMailbox"/>
        <case ref="ActionStoreInFSystem" activity="DoStoreInFSystem"/>
      </select>
      <!-- Invoke Workflow: 'WFD_NAME' and 'INVOKE_MODE' already in ProcessData -->
      <operation name="DoInvokeWorkflow">
        <participant name="InvokeSubProcessService"/>
        <output message="Xout">
          <assign to="." from="*"/>
        </output>
        <input message="Xin">
          <assign to="." from="*"/>
        </input>
      </operation>
      <!-- Store in Mailbox: 'MailboxPath' already in ProcessData -->
      <operation name="DoStoreInMailbox">
        <participant name="MailboxAdd"/>
        <output message="AddRequest">
          <assign to="." from="*"/>
          <assign to="MessageName" from="concat('IA_', translate(SwiftServerRequest/SwiftRef/text(),':','.'))"/>
          <assign to="ExtractableCount">1</assign>
          <assign to="ContentType">ascii</assign>
        </output>
        <input message="inmsg">
          <assign to="AddResults" from="*"/>
        </input>
      </operation>
      <!-- Store in File System: 'extractionFolder' already in ProcessData -->
      <operation name="DoStoreInFSystem">
        <participant name="SWIFTNet7FileSystem"/>
        <output message="FS_In">
          <assign to="Action">FS_EXTRACT</assign>
          <assign to="assignFilename">true</assign>
          <assign to="assignedFilename" from="concat('IA_', translate(SwiftServerRequest/SwiftRef/text(),':','.'))"/>
          <assign to="." from="*"/>
        </output>
        <input message="FS_Out">
          <assign to="." from="*"/>
        </input>
      </operation>
    </choice>
    <!-- Collect Response Template if required -->
    <choice>
      <select>
        <case ref="NeedToRetrieveTemplate" activity="DoCollectTemplate"/>
      </select>
      <!-- Collect Response Template: 'collectionFolder' and 'filter' already in ProcessData -->
      <operation name="DoCollectTemplate">
        <participant name="SWIFTNet7FileSystem"/>
        <output message="FileSystemInputMessage">
          <assign to="Action">FS_COLLECT</assign>
          <assign to="deleteAfterCollect">false</assign>
          <assign to="." from="*"/>
        </output>
        <input message="inmsg">
          <assign to="." from="*"/>
        </input>
      </operation>
    </choice>
    <!-- this is to construct the server response message back to SI Server application -->
    <operation name="Send the response">
      <participant name="SWIFTNet7ServerService"/>
      <output message="handleServerResponse">
        <assign to="." from="*"/>
        <assign to="Status" from="SwiftServerRequest/Status/text()"/>
      </output>
      <input message="testing">
        <assign to="." from="*"/>
      </input>
    </operation>
    <operation name="SOAP-Enveloping">
      <participant name="SOAPOutbound"/>
      <output message="output">
        <assign to="." from="*"/>
        <assign to="SOAP_MODE">respond</assign>
      </output>
      <input message="input">
        <assign to="." from="*"/>
      </input>
    </operation>
    <assign to="doc-has-headers">true</assign>
    <operation name="HttpResponse">
      <participant name="HttpRespond"/>
      <output message="Xout">
        <assign to="." from="*"/>
      </output>
      <input message="Xin">
        <assign to="." from="*"/>
      </input>
    </operation>
    <onFault>
      <!-- On Fault, reconstruct PrimDoc with failed/rejected response -->
      <sequence>
        <operation name="ReleasePrimDoc">
          <participant name="ReleaseService"/>
          <output message="outmsg">
            <assign to="TARGET">/ProcessData/PrimaryDocument</assign>
            <assign to="." from="*"/>
          </output>
          <input message="inmsg"/>
        </operation>
        <operation>
          <participant name="SWIFTNet7ServerService"/>
          <output message="handleServerError">
            <assign to="." from="*"/>
          </output>
          <input message="inmsg">
            <assign to="." from="*"/>
          </input>
        </operation>
        <operation name="SoapOut">
          <participant name="SOAPOutbound"/>
          <output message="output">
            <assign to="." from="*"/>
            <assign to="SOAP_MODE">respond</assign>
          </output>
          <input message="input">
            <assign to="." from="*"/>
          </input>
        </operation>
        <assign to="doc-has-headers">true</assign>
        <operation name="HttpResponse">
          <participant name="HttpRespond"/>
          <output message="Xout">
            <assign to="." from="*"/>
          </output>
          <input message="Xin">
            <assign to="." from="*"/>
          </input>
        </operation>
      </sequence>
    </onFault>
  </sequence>
</process>

InterAct Business Process With Store-and-Forward Processing

The following business process example demonstrates the service part of the SWIFTNet7 adapter being used as part of InterAct processing if you are using store-and-forward processing:

Note: This business process is from the handleSWIFTNet7InterActSnFRequest business process.
<process name="handleSWIFTNet7InterActSnFRequest">
  <rule name="NeedAuthorisation">
    <condition>AuthorizeRequest = 'YCopyFull'</condition>
  </rule>
  <rule name="ActionInvokeWorkflow">
    <condition>AuthorizeRequest = 'NA' and RuleAction/text() = 'BP'</condition>
  </rule>
  <rule name="ActionStoreInMailbox">
    <condition>AuthorizeRequest = 'NA' and RuleAction/text() = 'MB'</condition>
  </rule>
  <rule name="ActionStoreInFSystem">
    <condition>AuthorizeRequest = 'NA' and RuleAction/text() = 'FS'</condition>
  </rule>
  <sequence name="HandleRequest">
    <operation name="Setting UserToken">
      <participant name="SetUserToken"/>
      <output message="SetUserTokenMessage">
        <assign to="USER_TOKEN">admin</assign>
        <assign to="." from="*"/>
      </output>
      <input message="inmsg">
        <assign to="." from="*"/>
      </input>
    </operation>
    <operation name="SOAP-Deenveloping">
      <participant name="SOAPInbound"/>
      <output message="output">
        <assign to="." from="*"/>
        <assign to="bootstrap">false</assign>
        <assign to="SOAP_INTERMEDIATE_NODE">false</assign>
      </output>
      <input message="input">
        <assign to="." from="*"/>
      </input>
    </operation>
    <operation name="Receive the request">
      <participant name="SWIFTNet7ServerService"/>
      <output message="handleServerRequest">
        <assign to="." from="*"/>
      </output>
      <input message="testing">
        <assign to="." from="*"/>
      </input>
    </operation>
    <!-- Do backend processing -->
    <!-- For report system message request, it's possible to do backend processing -->
    <!-- For delivery notification or authorisation system message, no backend processing -->
    <choice>
      <select>
        <case ref="NeedAuthorisation" activity="InsertToMailbox"/>
        <case ref="ActionInvokeWorkflow" activity="DoInvokeWorkflow"/>
        <case ref="ActionStoreInMailbox" activity="DoStoreInMailbox"/>
        <case ref="ActionStoreInFSystem" activity="DoStoreInFSystem"/>
      </select>
      <!-- Insert to recipient mailbox for Y-Copy authorisation -->
      <operation name="InsertToMailbox">
        <participant name="MailboxAdd"/>
        <output message="AddRequest">
          <assign to="." from="*"/>
          <assign to="MessageName" from="concat('ThirdParty_', translate(SwiftServerRequest/copySnFReference/text(), ':', '.'))"/>
          <assign to="MailboxPath" from="concat('/', SwiftServerRequest/recipientDN/text(),'/',SwiftServerRequest/requestorDN/text())"/>
          <assign to="ExtractableCount">1</assign>
          <assign to="ContentType">ascii</assign>
        </output>
        <input message="inmsg">
          <assign to="AddResults" from="*"/>
        </input>
      </operation>
      <!-- Invoke Workflow: 'WFD_NAME' and 'INVOKE_MODE' already in ProcessData -->
      <operation name="DoInvokeWorkflow">
        <participant name="InvokeSubProcessService"/>
        <output message="Xout">
          <assign to="." from="*"/>
        </output>
        <input message="Xin">
          <assign to="." from="*"/>
        </input>
      </operation>
      <!-- Store in Mailbox: 'MailboxPath' already in ProcessData -->
      <operation name="DoStoreInMailbox">
        <participant name="MailboxAdd"/>
        <output message="AddRequest">
          <assign to="." from="*"/>
          <assign to="MessageName" from="concat('IA_', translate(SwiftServerRequest/SwiftRef/text(),':','.'))"/>
          <assign to="ExtractableCount">1</assign>
          <assign to="ContentType">ascii</assign>
        </output>
        <input message="inmsg">
          <assign to="AddResults" from="*"/>
        </input>
      </operation>
      <!-- Store in File System: 'extractionFolder' already in ProcessData -->
      <operation name="DoStoreInFSystem">
        <participant name="SWIFTNet7FileSystem"/>
        <output message="FS_In">
          <assign to="Action">FS_EXTRACT</assign>
          <assign to="assignFilename">true</assign>
          <assign to="assignedFilename" from="concat('IA_', translate(SwiftServerRequest/SwiftRef/text(),':','.'))"/>
          <assign to="." from="*"/>
        </output>
        <input message="FS_Out">
          <assign to="." from="*"/>
        </input>
      </operation>
    </choice>
    <!-- this is to construct the server response message back to SI Server application -->
    <operation name="Send the response">
      <participant name="SWIFTNet7ServerService"/>
      <output message="handleServerResponse">
        <assign to="." from="*"/>
        <assign to="Status" from="SwiftServerRequest/Status/text()"/>
      </output>
      <input message="testing">
        <assign to="." from="*"/>
      </input>
    </operation>
    <operation name="SOAP-Enveloping">
      <participant name="SOAPOutbound"/>
      <output message="output">
        <assign to="." from="*"/>
        <assign to="SOAP_MODE">respond</assign>
      </output>
      <input message="input">
        <assign to="." from="*"/>
      </input>
    </operation>
    <assign to="doc-has-headers">true</assign>
    <operation name="HttpResponse">
      <participant name="HttpRespond"/>
      <output message="Xout">
        <assign to="." from="*"/>
      </output>
      <input message="Xin">
        <assign to="." from="*"/>
      </input>
    </operation>
    <onFault>
      <!-- On Fault, reconstruct PrimDoc with failed/rejected response -->
      <sequence>
        <operation name="ReleasePrimDoc">
          <participant name="ReleaseService"/>
          <output message="outmsg">
            <assign to="TARGET">/ProcessData/PrimaryDocument</assign>
            <assign to="." from="*"/>
          </output>
          <input message="inmsg"/>
        </operation>
        <operation>
          <participant name="SWIFTNet7ServerService"/>
          <output message="handleServerError">
            <assign to="." from="*"/>
          </output>
          <input message="inmsg">
            <assign to="." from="*"/>
          </input>
        </operation>
        <operation name="SoapOut">
          <participant name="SOAPOutbound"/>
          <output message="output">
            <assign to="." from="*"/>
            <assign to="SOAP_MODE">respond</assign>
          </output>
          <input message="input">
            <assign to="." from="*"/>
          </input>
        </operation>
        <assign to="doc-has-headers">true</assign>
        <operation name="HttpResponse">
          <participant name="HttpRespond"/>
          <output message="Xout">
            <assign to="." from="*"/>
          </output>
          <input message="Xin">
            <assign to="." from="*"/>
          </input>
        </operation>
      </sequence>
    </onFault>
  </sequence>
</process>

FileAct Business Process Without Store-and-Forward Processing

The following business process example shows the service part of the SWIFTNet7 adapter as part of FileAct processing without using store-and-forward processing:

Note: This business process is from the handleSWIFTNet7FileActRequest business process.
<process name="handleSWIFTNet7FileActRequest">
  <sequence name="HandleFileRequest">
    <operation name="Setting UserToken">
      <participant name="SetUserToken"/>
      <output message="SetUserTokenMessage">
        <assign to="USER_TOKEN">admin</assign>
        <assign to="." from="*"/>
      </output>
      <input message="inmsg">
        <assign to="." from="*"/>
      </input>
    </operation>
    <operation name="SOAP-Deenveloping">
      <participant name="SOAPInbound"/>
      <output message="output">
        <assign to="." from="*"/>
        <assign to="bootstrap">false</assign>
        <assign to="SOAP_INTERMEDIATE_NODE">false</assign>
      </output>
      <input message="input">
        <assign to="." from="*"/>
      </input>
    </operation>
    <operation name="Receive the request">
      <participant name="SWIFTNet7ServerService"/>
      <output message="handleServerRequest">
        <assign to="." from="*"/>
      </output>
      <input message="testing">
        <assign to="." from="*"/>
      </input>
    </operation>
    <!-- this is to construct the server response message back to SI Server application -->
    <operation name="Send the response">
      <participant name="SWIFTNet7ServerService"/>
      <output message="handleServerResponse">
        <assign to="." from="*"/>
        <assign to="Status" from="SwiftServerRequest/Status/text()"/>
      </output>
      <input message="testing">
        <assign to="." from="*"/>
      </input>
    </operation>
    <operation name="SOAP-Enveloping">
      <participant name="SOAPOutbound"/>
      <output message="output">
        <assign to="." from="*"/>
        <assign to="SOAP_MODE">respond</assign>
      </output>
      <input message="input">
        <assign to="." from="*"/>
      </input>
    </operation>
    <assign to="doc-has-headers">true</assign>
    <operation name="HttpResponse">
      <participant name="HttpRespond"/>
      <output message="Xout">
        <assign to="." from="*"/>
      </output>
      <input message="Xin">
        <assign to="." from="*"/>
      </input>
    </operation>
    <onFault>
      <!-- On Fault, reconstruct PrimDoc with failed/rejected response -->
      <sequence>
        <operation name="ReleasePrimDoc">
          <participant name="ReleaseService"/>
          <output message="outmsg">
            <assign to="TARGET">/ProcessData/PrimaryDocument</assign>
            <assign to="." from="*"/>
          </output>
          <input message="inmsg"/>
        </operation>
        <operation>
          <participant name="SWIFTNet7ServerService"/>
          <output message="handleServerError">
            <assign to="." from="*"/>
          </output>
          <input message="inmsg">
            <assign to="." from="*"/>
          </input>
        </operation>
        <operation name="SoapOut">
          <participant name="SOAPOutbound"/>
          <output message="output">
            <assign to="." from="*"/>
            <assign to="SOAP_MODE">respond</assign>
          </output>
          <input message="input">
            <assign to="." from="*"/>
          </input>
        </operation>
        <assign to="doc-has-headers">true</assign>
        <operation name="HttpResponse">
          <participant name="HttpRespond"/>
          <output message="Xout">
            <assign to="." from="*"/>
          </output>
          <input message="Xin">
            <assign to="." from="*"/>
          </input>
        </operation>
      </sequence>
    </onFault>
  </sequence>
</process>

FileAct Business Process With Store-and-Forward Processing

The following business process example shows the service part of the SWIFTNet7 adapter used as part of FileAct processing with store-and-forward processing:

Note: This business process is from the handleSWIFTNet7FileActSnFRequest business process.
<process name="handleSWIFTNet7FileActSnFRequest">
  <rule name="IsYCopyHeaderType">
    <condition>AuthorizeRequest = 'YCopyHeader' and SwiftServerRequest/FileInfoForceMode != 'Refused'</condition>
  </rule>
  <rule name="IsYCopyFullType">
    <condition>AuthorizeRequest = 'YCopyFull' and SwiftServerRequest/FileInfoForceMode != 'Refused'</condition>
  </rule>
  <rule name="ForceRefusal">
    <condition>SwiftServerRequest/FileInfoForceMode = 'Refused'</condition>
  </rule>
  <rule name="IsFetchRequired">
    <condition>SendFetchRequest = 'TRUE'</condition>
  </rule>
  <sequence name="HandleFileRequest">
    <operation name="Setting UserToken">
      <participant name="SetUserToken"/>
      <output message="SetUserTokenMessage">
        <assign to="USER_TOKEN">admin</assign>
        <assign to="." from="*"/>
      </output>
      <input message="inmsg">
        <assign to="." from="*"/>
      </input>
    </operation>
    <operation name="SOAP-Deenveloping">
      <participant name="SOAPInbound"/>
      <output message="output">
        <assign to="." from="*"/>
        <assign to="bootstrap">false</assign>
        <assign to="SOAP_INTERMEDIATE_NODE">false</assign>
      </output>
      <input message="input">
        <assign to="." from="*"/>
      </input>
    </operation>
    <operation name="Receive the request">
      <participant name="SWIFTNet7ServerService"/>
      <output message="handleServerRequest">
        <assign to="." from="*"/>
      </output>
      <input message="testing">
        <assign to="." from="*"/>
      </input>
    </operation>
    <choice name="NeedFetch">
      <select>
        <case ref="IsFetchRequired" activity="SendFetchFileRequest"/>
      </select>
      <operation name="SendFetchFileRequest">
        <participant name="InvokeBusinessProcessService"/>
        <output message="Invoke_In">
          <assign to="." from="*"/>
          <assign to="INVOKE_MODE">ASYNC</assign>
          <assign to="WFD_NAME">SWIFTNet7FileActFetch</assign>
        </output>
        <input message="Invoke_Out">
          <assign to="." from="*"/>
        </input>
      </operation>
    </choice>
    <choice name="NeedAuthorization">
      <select>
        <case ref="IsYCopyHeaderType" activity="ExtractableInsert"/>
        <case ref="IsYCopyFullType" activity="NonExtractableInsert"/>
      </select>
      <!-- Put into a Mailbox so that it can bootstrap internal authorization business process later -->
      <!-- Mailbox path is based on SwiftServerRequest/recipientDN/requestorDN/ -->
      <operation name="ExtractableInsert">
        <participant name="MailboxAdd"/>
        <output message="AddRequest">
          <assign to="." from="*"/>
          <assign to="PrimaryDocument" from="HeaderInfo/@SCIObjectID"/>
          <assign to="MessageName" from="concat('ThirdParty_', SwiftServerRequest/copySnFReference/text())"/>
          <assign to="MailboxPath" from="concat('/', SwiftServerRequest/recipientDN/text(),'/',SwiftServerRequest/requestorDN/text())"/>
          <assign to="ExtractableCount">1</assign>
          <assign to="ContentType">ascii</assign>
        </output>
        <input message="inmsg">
          <assign to="AddResults" from="*"/>
        </input>
      </operation>
      <operation name="NonExtractableInsert">
        <participant name="MailboxAdd"/>
        <output message="AddRequest">
          <assign to="." from="*"/>
          <assign to="MessageName" from="concat('ThirdParty_', SwiftServerRequest/copySnFReference/text())"/>
          <assign to="MailboxPath" from="concat('/', SwiftServerRequest/recipientDN/text(),'/',SwiftServerRequest/requestorDN/text())"/>
          <assign to="ExtractableCount">0</assign>
          <assign to="ContentType">ascii</assign>
        </output>
        <input message="inmsg">
          <assign to="AddResults" from="*"/>
        </input>
      </operation>
    </choice>
    <operation name="Send the response">
      <participant name="SWIFTNet7ServerService"/>
      <output message="handleServerResponse">
        <assign to="." from="*"/>
        <assign to="Status" from="SwiftServerRequest/Status/text()"/>
        <assign to="Description" from="SwiftServerRequest/Description/text()"/>
        <assign to="Info" from="SwiftServerRequest/Info/text()"/>
      </output>
      <input message="testing">
        <assign to="." from="*"/>
      </input>
    </operation>
    <operation name="SOAP-Enveloping">
      <participant name="SOAPOutbound"/>
      <output message="output">
        <assign to="." from="*"/>
        <assign to="SOAP_MODE">respond</assign>
      </output>
      <input message="input">
        <assign to="." from="*"/>
      </input>
    </operation>
    <assign to="doc-has-headers">true</assign>
    <operation name="HttpResponse">
      <participant name="HttpRespond"/>
      <output message="Xout">
        <assign to="." from="*"/>
      </output>
      <input message="Xin">
        <assign to="." from="*"/>
      </input>
    </operation>
    <choice name="IsThirdPartyForceRefusal">
      <select>
        <case ref="ForceRefusal" activity="InvokeForceRefusalProcess"/>
      </select>
      <operation name="InvokeForceRefusalProcess">
        <participant name="InvokeBusinessProcessService"/>
        <output message="Invoke_In">
          <assign to="." from="*"/>
          <assign to="INVOKE_MODE">ASYNC</assign>
          <assign to="WFD_NAME">SWIFTNet7ThirdPartyForceRefusal</assign>
        </output>
        <input message="Invoke_Out">
          <assign to="." from="*"/>
        </input>
      </operation>
    </choice>
    <onFault>
      <!-- On Fault, reconstruct PrimDoc with failed/rejected response -->
      <sequence>
        <operation name="ReleasePrimDoc">
          <participant name="ReleaseService"/>
          <output message="outmsg">
            <assign to="TARGET">/ProcessData/PrimaryDocument</assign>
            <assign to="." from="*"/>
          </output>
          <input message="inmsg"/>
        </operation>
        <operation>
          <participant name="SWIFTNet7ServerService"/>
          <output message="handleServerError">
            <assign to="." from="*"/>
          </output>
          <input message="inmsg">
            <assign to="." from="*"/>
          </input>
        </operation>
        <operation name="SoapOut">
          <participant name="SOAPOutbound"/>
          <output message="output">
            <assign to="." from="*"/>
            <assign to="SOAP_MODE">respond</assign>
          </output>
          <input message="input">
            <assign to="." from="*"/>
          </input>
        </operation>
        <assign to="doc-has-headers">true</assign>
        <operation name="HttpResponse">
          <participant name="HttpRespond"/>
          <output message="Xout">
            <assign to="." from="*"/>
          </output>
          <input message="Xin">
            <assign to="." from="*"/>
          </input>
        </operation>
      </sequence>
    </onFault>
  </sequence>
</process>

Parameters Passed From Business Process to Adapter

The following table contains the parameters passed from the business process to the SWIFTNet7 adapter:

Parameter
Description
messageID
Message identifier for the incoming message. Required.
interfaceMode
This is the SWIFTNet interface. Possible values are InterAct (default) or FileAct. Required.
deliveryNotification
Determines whether the server is handling a delivery notification. Valid values are True and False. Required.
SnF
Indicates whether you are using the store-and-forward method. Valid values are True (use store-and-forward) and False (do not use store-and-forward—this is the default). Required.
Status
The status of the message. Possible values are:
  • Success
  • Failed

Required.

Description
Description of the message. Optional.
Note: Only necessary when there is an error message.
Information
Information about the message. Optional.
Note: Only necessary when there is an error message.
AdapterName
The name of the SWIFTNet7 Adapter.
PhysicalLocation
For FileAct, the actual physical location in MEFG to download or receive the file transfer
HeaderInfo
For a FileAct Get, if HeaderInfo is associated with the request.

Enabling SWIFTNet Document Tracking

You need to enable document tracking in the system business process you are using for the SWIFTNet7 adapter—handleSWIFTNet7InterActRequest or handleSWIFTNet7FileActRequest (if you are not using store-and-forward processing) or handleSWIFTNet7InterActSnFRequest or handleSWIFTNet7FileActSnFRequest (if you are using store-and-forward processing)—so the system can track the document during the process. In the business process text editor, you can easily enable SWIFTNet document tracking in the IBM Sterling B2B Integrator by selecting the Document Tracking check box on the Process Levels page. Set the following options as needed and leave the rest of the business process parameters as the defaults:

  • On the Deadline Settings page, set the deadline and notification options, if necessary.
  • On the Life Span page, set the life span, if necessary.

SWIFTNet Header Info Support

With SWIFTNet version 6.1, SWIFT introduced a new FileAct header field (HeaderInfo) to contain key summary information related to the file. The presence of Sw:HeaderInfo within the request is an indication to invoke the feature to validate the Sw:HeaderInfo. With SWIFTNet version 6.3, SWIFT performs stronger central validation on the HeaderInfo fields for FileAct. With SWIFTNet 7.0, SWIFT allows files with a HeaderInfo maximum size of 50KB.

Once a service is activated for the validation, SWIFT checks the HeaderInfo contents (that is, presence, syntax, and semantic). SWIFT rejects files with HeaderInfo contents that either do not pass this validation, or that do not use the HeaderInfo field according to the rules defined for the service.

Header Info Support on the Client (IBM Sterling B2B Integrator as Requestor)

As a requestor, the HeaderInfo is only allowed on the FileAct Put Request message. To specify the Header Info information, you must set the HeaderInfo parameter in the SWIFTNet Client Service accordingly.

Note: We recommend that you use ASP so the information regarding HeaderInfo can be retrieved from the service profile.

Header Info Support on the Server (IBM Sterling B2B Integrator as Responder)

As a responder, the HeaderInfo is only allowed on the FileAct Get Response message. When the FileAct Get request is received, the responder checks to see if there is a HeaderInfo file located in the same directory as the download file. The HeaderInfo file must have the same name as the logical filename specified in the request except with an additional filename extension (.hdr). For example, if the logical filename is payload.txt, the HeaderInfo filename should be payload.txt.hdr. Prior to the Get request, the responder is responsible to provide both the download file and the HeaderInfo file in the correct directory.