Deploy the neaPay ISO8583 Payments converter in a test environment
Posted on 25th Jan 2019 8672 views

Hello and welcome to this deployment tutorial. We will walk you through the deployment steps of a neaPay ISO8583 Message Conveter demo to a Windows environment with Java8.
In the next article we will deploy the same configuration, but in a production environment, to a Virtual Machine, with Docker, for reliability. With Docker we are able to scale as much as needed.
If you are deploying a demo or a a custom delivery, you will receive a link with a delivery to download.
For the first delivery, we will pack it for you with java8 in the package, so all you need to do is unpack a zip file. The following deliveries are likely to arrive without java 8, since you already have it.
So just download and unpack the delivery zip received. You should have the following structure on the disk:

If all is well, you have the same structure above, and you are ready to run. If not, contact us to help.
Next step is to run your configuration.
We have the following Architecture of the payments environment:
The Acquirer, in this case, residing in folder acquirer_ISO8583-93. It needs to connect to an Issuer.
The Issuer, in this case, residing in folder converter_ISO8583-93_HTTP-JSON, which is also doing the conversion to a HTTP request, to a web server. So it needs to connect to a Web server.
The Web Server, residing in case webServer, is a service that waits for HTTP requests and responds based on some logic. In this case, it checks for a card in a database.
The logic for startup is the reverse connectivity flow. So if the Acquirer needs and Issuer and the Issuer needs a web server, then we first start the Web Server, then the Issuer, then the Acquirer, so they are available when needed.
Frst, we start the Web Server

By default, the web server starts and then it tests itself by making a HTTP GET request to itself. This is just a sample behaviour which can be replaced with initialization behaviour, like loading some keys.
Then we start the Issuer Converter

The converter starts first the TCP server on the port configured under Connections ->TCPChannel. This is a non-stop server, it is expected to always be able to receive messages, with non-stop connections from clients. It does not establish a permanent HTTP connection because that is a request-response connection and is made for each request.
Finally, we start the Acquirer which is an ISO8583 TCP client. It immediately connects to the server with a permanent connection.

The Acquirer client confirms connectivity with the server and loads the test cases. Additional logic can be added to trigger logon automatically, key exchanges and other initialization tasks.
At this step you are ready to run testing in your environment, before moving things to production.
If you are deploying on Linux or MAC, download the appropriate java as zip/tar , extract it next to the delivered folders with the name jre1.8.
Download Java:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
If you want to use the installed java version on your machine, edit the startup script to use your installed java. For example,
nano start_neaPay_Mac.sh
edit line
../jre1.8/Contents/Home/bin/java -jar ./neaPayCore4.0.jar
to
java -jar ./neaPayCore4.0.jar
Anything not working OK? Ask us a question?
All working Fine? Run your converter in production with Docker!