This site contains the documentation that is relevant to older WSO2 product versions and offerings.
For the latest WSO2 documentation, visit https://wso2.com/documentation/.

Configuring ISO8583 Inbound Operations

ISO8583 Inbound endpoint allows the ISO8583 standard messages through WSO2 ESB. ISO8583 is a message standard which is using in financial transactions. There are various versions in ISO8583 standard, Here the Inbound is developed based on 1987 version. For more information about ISO8583 Standard, go to ISO8583 Documentation.

WSO2 ESB ISO8583 inbound endpoint acts as a message consumer. Since it is listening inbound, it is listening on port 5000. When a client is connected on port 5000 , WSO2 ESB ISO8583 inbound starts to consume the ISO8583 standard messages and inject the messages in xml format into sequence.

In order to use the ISO8583 inbound endpoint, you need to download the inbound org.wso2.carbon.inbound.iso8583-1.0.0.jar from the https://store.wso2.com/store/assets/esbconnector/ISO8583, download the jpos-1.9.4.jar from the http://mvnrepository.com/artifact/org.jpos/jpos/1.9.4 , download jdom-1.1.3.jar from http://mvnrepository.com/artifact/org.jdom/jdom/1.1.3 and download commons-cli-1.3.1.jar from http://mvnrepository.com/artifact/commons-cli/commons-cli/1.3.1. Then copy the jars to the <ESB_HOME>/repository/components/lib directory. The recommend ESB version is 4.9 and later .

Note

jpos is the third party library , and jposdef.xml has the field definitions of the standard ISO8583 Messages. According to the field definitions each and every ISO8583 Messages which  comes from the client, will be unpacked and identify the fields of the ISO8583 Standard messages.

Sample Configuration

The inbound configuration can be added in the Inbound UI . Here the Port is the main  parameter and the client need to connect with inbound by using the port.


<inboundEndpoint
        class="org.wso2.carbon.inbound.iso8583.listening.ISO8583MessageConsumer"
        name="custom_listener" onError="fault" sequence="request" suspend="false">
        <parameters>
            <parameter name="sequential">true</parameter>
            <parameter name="inbound.behavior">listening</parameter>
            <parameter name="port">5000</parameter>
        </parameters>
</inboundEndpoint>

ISO8583 inbound endpoint parameters for sample configuration

Note

To handle the concurrent messages in inbound , need to create the threadpool and it can contain a varying amount of threads. The number of threads in the pool is determined by these variables:

  • corePoolSize           : The number of threads to keep in the pool , even if they are idle.
  • maximumPoolSize  : The maximum number of threads to allow in the pool.

Another parameter in threadPool configuration is keepAliveTime, Which is the maximum time that excess idle threads will be alive for new tasks before terminating.  


ParameterDescriptionRequiredPossible ValuesDefault Value
portHosts have ports, socket connection will create according to that port and server started to listening to that port , once the socket connection is established.Yes0-655355000
coreThreadsThe number of threads to keep in the pool.No

maxThreadsThe maximum number of  threads to allow in the pool.No

keepAliveIf the pool currently has more than corePoolSize threads, excess threads will be terminated if they have been idle for more than the keepAliveTime.No

Note

To send ISO8583 Standard message to inbound, can use Java  clients applications. client need to produce the ISO8583 Standard messages and get the acknowledgement from inbound.

A Sample test client program is provided in https://github.com/wso2-docs/CONNECTORS/tree/master/ISO8583/ISO8583TestClient. You can use this sample client to test the inbound.


1999