Add extra custom fields to the ISO8583 simulator

Posted on 10th Feb 2021 6152 views

Because Every ISO8583 implementation has its own particularities, variations and custom behaviour, the ISO8583 simualtor from neaPay is designed from the begining for super fast configuration and customization.

Adding or removing extra fields or changing their behaviour is designed from the begining to be ultra easy.

 

Adding extra, custom fiedls to the ISO8583 simualtor is very easy.

Edit the spreadsheet and save, and you are done with test data configuration.

Edit the message that reads the test data and you can use the data in the simualtor

Edit the ISO8583 message fields building behaviour, and you have loaded the data into the transaction.

 

 

Edit Test Data Structure

In order to edit ISO8583 test data structure for the neaPay simulator, locate folder named test_data and open the spreadsheet inside.

The spreasheet will be called something like 

ISO8583_TestCases_v3.5.xlsm

Inside the spreadsheet file you will find several sheets, and for this example we will add a field on the Acquirer Sheet, which holds Acquirer specific data.

Edit ISO8583_Acquirer sheet to add a new field, a new column

For examplea add after column DE126, columns DE126.1, DE126.2, DE126.3 and so on, to be used as subfields. DE126 = data Element 126

Add values on the columns.

Press "Save Test Data CSV" button within the sheet.  IMPORTANT! 

That button exports csv. Check that on disk, file "ISO8583_Acquirer.csv" has been updated. 

Now the test data is updated.

 

Edit Acquirer sheet reading message

The Acquirer sheet is being read in the simulator like a normal connection.

The communication of the simulator with via the connection is done via a message.

All messages are configured in script_variables.js.

 

If you want to learn how to find out where a connection is used, read section below . Otherwise skip to section below. 

All connections are defined in script_connections.js

To find out how the "connection" to this test data is read, open script_connections.js and locate the name ISO8583_Acquirer.csv

The name of the connection is "AcquirerDataFile"

Search for "AcquirerDataFile" in script_acquirer.js

 

The line that uses this connection is 

receivedAcquirerDatamessage = receive(AcquirerData, AcquirerDataFile, true);

Which can be read as:

"receivedAcquirerDatamessage" takes values from receiving "AcquirerData" messages from "AcquirerDataFile" connection.

 

Update the test data reading message

If we want to read the updated data structure, then we need to update the structure of the message that reads it.

We go to script_variables.js and locate AcquirerData message

This message has all the columns of ISO8583_Acquirer sheet mapped to fields.

There is no naming correspondence, the fields are read from the csv file "ISO8583_Acquirer.csv" in order, meaning the 20th column goes to 20th field, no matter the name.

We will need to add our fields after field F126.

Copy this row to the next (duplicate), for as many rows as you have added columns to the sheet. 

Use suggestive names for the fields, because these names will be used in the scripts, later.

For example F126_1, F126_2, F126_3.

Now, if you start the simulator, these fields will be automatically read and available. But not used, Yet.

 

Use the values of the new fields.

The best approach is to look at existing scripting.

Simples way is to look up where field 126 is used, so search F126 in script_acquirer.js but we notice we do not use it.

So search for other fields for reference, like F125 or F127. 

 

We find function

function build_F125_Reserved{...}

and we can duplicate it into 

function build_F126_Custom{...}

and add a call to this funtion to 

function buildMessage(acquirerDataFromCsv);

This is where we call only the functions that we need to populate the fields.

 

Script building the field

In this function you can script the functionality you need, to populate this field.

Look at other functions and use various methods to populate the data. You can populate it automatically with date and time, or you can copy the values from the test data sheet.

For example, if you want to  set the value of F126 as a concatenation of its sub-fields, you can script it like below.

 

function build_F126_Custom(acquirerDataFromCsv) {
setVal(isoMessageAcqRq.F126,
acquirerDataFromCsv.F126_1.value+
   acquirerDataFromCsv.F126_2.value+
   acquirerDataFromCsv.F126_3.value
   );
setBitON(isoMessageAcqRq.F126.bitmap_position)
}

 

Some scripting skills are required for this section.

Contact us if you need help.

 

Keep in mind that the ISO8583 format is automatically protected by the core, all you need to supply is the value. The core will automatically set the lenght, trim or pad, convert , as needed.

 

 

 


LinkedIn

Docs Home ISO8583 Simulator Simulator Tutorials ISO8583 Converter Cards Issuer BASE24 Base24-eps Reference Guide ISO8583 Switch HSM Simulator POS Simulator Products


Top Read Articles


BIN List & Range for MasterCard, Visa, Amex, Diners, Discover, JCB, CUP 165660 views

ISO8583 Response Codes for Transaction processing 67309 views

Read smart card chip data with APDU commands ISO 7816 63833 views

ISO8583 Processing Codes for Transaction Processing 31416 views

ISO8583 Message Types for Transaction Processing 31392 views

Deploy, run and generate with neaPay Card Data Generator 21445 views

MCC Codes - Merchant Category Codes to use in ISO8583 Field 18 21005 views

Run the neaPay ISO8583 simulator 20924 views

ISO8583 payments message format, programmers guide 18443 views

ISO8583 message: The list of ISO 4217 currency codes for data elements 49 and 52 17597 views

ISO8583 ATM POS Crypto API integration with exchanges like Coinbase or Binance 17068 views

ISO8583 Message Converter JSON and XML interface specification mapping 14016 views

Cards and Banks Training 13631 views

Java version for neapay products Simulator Converter Switch Authorization Cards Issuer 10717 views

Support for the neaPay products: Authorization, Switch, Converter, Simulator, Issuer 10122 views

Log Files in BASE24 classic 9837 views

Create a new test case in the neaPay ISO8583 simulator Video guide 9096 views

BASE24 classic vs BASE24-eps 8789 views

BASE24 documentation to read 8635 views

BASE24 classic interview questions 8562 views

Deploy the neaPay ISO8583 simulator - video guide 8504 views

EMV explained for programmers 8192 views

ISO8583 Simulator neapay- Performance testing at 500, 1000 and 1500 Transactions per second 8119 views

ISO8583 converter to JSON XML SQL to HTTP host - message flow - video guide - Part.2 7781 views

ISO8583 converter to JSON XML SQL to HTTP Host - host unavailable - video guide- Part.3 7309 views

ISO8583 converter to JSON XML SQL to HTTP host - start& run - video guide - Part.1 7152 views

Adding your own card to the Payments simulator to test your system 7148 views

Card readers supported by neaPay payments simulator, CHIP and NFC 7074 views

Changing fields definitions in the ISO8583 simulator and message converter 7060 views

Run the neaPay ISO8583 converter to JSON, XML, SQL, in a test environment 7034 views

Connect the neaPay ISO8583 Acquirer simulator to your own host or Issuer 7032 views

BASE24 classic screens examples explained 7028 views

Load Test enabling and performance testing at 1TPS and 100TPS 6977 views

Run One, Run Scenario, Run All, Run Load in the neaPay ISO8583 Simulator - Use guide 6977 views

Sample Recommended design for an Acquirer test cases suite, Scenarios and Regression 6970 views

Enabling traces in the payments simulator 6964 views

How the fingerprint reader works in the ISO8583 payments simulator 6952 views

Deploy the neaPay ISO8583 Payments converter in a test environment 6947 views

Altering test cases in Excel for the ISO8583 simulator 6944 views

BASE24-eps interview questions 6882 views

Deploy the neaPay HSM simulator in a test environment 6801 views

Regression Testing in 1 click with instant Analytics and CSV report 6658 views

Deploy the Payments Switch Router in a test environment 6540 views

BASE24 classic ATM configuration Tutorial in ATD and XPNET with examples 6249 views

Add extra custom fields to the ISO8583 simulator 6153 views

BASE24 classic cards configuration tutorial with Examples 6143 views

Trace configuration in neaPay Simulator, Converter, Switch, Authorization and Cards Issuer 6119 views

PCI compliant with neapay switch 5728 views

ISO8583 Message Converter to XML SQL CSV interface specification mapping 5695 views

BASE24-EPS ACI DESKTOP tutorial - Getting started 5527 views

BASE24 classic prefix configuration tutorial CPF with examples 4096 views

BASE24 classic tracing of transactions. Audits, configuration, enabling and opening 3952 views

ACI BASE24 classic automatic extract configuration 3647 views

BASE24 classic Institution configuration Tutorial with example 3611 views

BASE24 classic balance file configuration PBF with example 3523 views

POS simulator format SPDH HPDH Verifone and custom 3472 views

First steps with BASE24 Classic 3372 views

Getting started with using Prognosis for BASE24 and BASE24-eps 3090 views

ISO8583 simulator Visa MasterCard Amex CUP configuration demo video 316 views

ISO8583 simulator scheduling tasks and test regressions 84 views

Swift Message Structure ISO 15022 and ISO 20022 73 views

SWIFT Message types complete list reference 72 views

POS Transaction types explained 70 views

SWIFT Common Message Type List with examples 69 views

Contact    

Iso8583 - articles


ISO8583 Simulator   84 views

ISO8583 simulator scheduling tasks and test regressions


The neaPay ISO8583 simulator improves automated testing with full capabilities for scheduling minutely message exchanges, duration tests, nightly or w ...
ISO8583 Converter   5695 views

ISO8583 Message Converter to XML SQL CSV interface specification mapping


ISO8583 Converter creating an XML,  SQL and CSV object from an incoming TCP/IP ISO8583 binary message, and then sending it to a HTTP host as ...
ISO8583 Switch   5728 views

PCI compliant with neapay switch


PCI compliant with neapay switch Steps and procedure: Configuration parameters to acheive service PCI DSS compliance   ...
Products   6119 views

Trace configuration in neaPay Simulator, Converter, Switch, Authorization and Cards Issuer


Trace configuration in neaPay Simulator, Converter, Switch, Authorization and Cards Issuer ...
ISO8583 Simulator   6153 views

Add extra custom fields to the ISO8583 simulator


Adding extra, custom fields to the ISO8583 simulator in 3 simple steps is as easy as running the tests: Edit the spreadsheet and save it; Edit th ...
ISO8583 Switch   6540 views

Deploy the Payments Switch Router in a test environment


Deploy then neaPay Payments switch router to easily route transactions based on BIN/prefix, amount, merchant, originating or destination insytitution, ...
ISO8583 Simulator   6658 views

Regression Testing in 1 click with instant Analytics and CSV report


The neaPay Payments simulator is designed from the start to follow the life of a project, and therefore, after all testing has been completed, we need ...
ISO8583 Simulator   6944 views

Altering test cases in Excel for the ISO8583 simulator


When you need to customize your own test case, you need to follow some simple steps all the time.In order to obtain this, you need to alter test data ...
ISO8583 Converter   6947 views

Deploy the neaPay ISO8583 Payments converter in a test environment


When you receive a delivery from neaPay for an iso8583 convertor, you will get 1 zip file.  This step by step guide will guide you through ...
ISO8583 Simulator   6952 views

How the fingerprint reader works in the ISO8583 payments simulator


Step by step guide to enable and disable fingerprint reading, enrollment and verification with the neapay Simulator is pretty straight forward and ass ...
ISO8583 Simulator   6964 views

Enabling traces in the payments simulator


Enabling traces in the ISO8583 Payments Simulator, just like the ISO8583 message converter and the ISO8583 Host, is a call to the system core to write ...
ISO8583 Simulator   6970 views

Sample Recommended design for an Acquirer test cases suite, Scenarios and Regression


A test suit is composed of different scenarios which follow in a functional (or another) way in order to cover the full, or as much as possible, of th ...

Choose the product you need



ISO8583 Converter

Convert ISO8583 to JSON XML SQL


ISO8583 Interface

ISO8583 Interface Handler


ISO20022 Converter

Convert ISO20022 to ISO8583 ...


ISO8583 Builder

Build ISO8583 from scratch


ISO8583 Switch

ISO8583 Router by criteria


ISO8583 Authorization

Authorize cards and ledger


Payments Acquirer

Acquiring host from devices


Cards Issuing

Generate and issue cards


ISO8583 Simulator

ISO8583 HISO98 HISO87 simulator


ISO20022 Simulator

ISO20022 & SWIFT simulator


POS Simulator

POS protocols simulator


Web Api Simulator

Web API tester Performance

 

Get a free quote, Ask for details
Get help

Contact us

Try the software yourself
Download

Download software

Read Documentation and Start guides

Documentation

Online Tools Overview

Online Tools