2.4 JSON Data Types and EHI Fields

This section describes the data types of the fields in the JSON message. You should use these details together with the information on Data Types for EHI GetTransaction messages.

The EHI feed does not send JSON fields to externally-hosted systems where the values for the field data are blank. This is different from EHI feeds with XML fields where the feed can send blank values.

Request Fields

Field

JSON Data Type

Null Allowed

Compatible with  IEEE 754 binary-64 (double precision) ?

Acquirer_id_DE32

String

 

N/A

ActBal

Number

Y

Y

Additional_Amt_DE54

String

 

N/A

Amt_Tran_Fee_DE28

String

 

N/A

Auth_Code_DE38

String

 

N/A

Avl_Bal

Number

Y

Y

Bill_Amt

Number

Y

Y

Bill_Ccy

String

 

N/A

BlkAmt

Number

Y

Y

Cust_Ref

String

 

N/A

FX_Pad

Number

Y

Y

Fee_Fixed

Number

Y

Y

Fee_Rate

Number

Y

Y

LoadSRC

String

 

N/A

LoadType

String

 

N/A

MCC_Code

String

 

N/A

MCC_Desc

String

 

N/A

MCC_Pad

Number

Y

Y

Merch_ID_DE42

String

 

N/A

Merch_Name_DE43

String

 

N/A

Note

String

 

N/A

POS_Data_DE22

String

 

N/A

POS_Data_DE61

String

 

N/A

POS_Termnl_DE41

String

 

N/A

POS_Time_DE12

String

 

N/A

Proc_Code

String

 

N/A

Resp_Code_DE39

String

 

N/A

Ret_Ref_No_DE37

String

 

N/A

Settle_Amt

Number

Y

Y

Settle_Ccy

String

 

N/A

Status_Code

String

 

N/A

Token

Number

Y

Y

Trans_link

String

 

N/A

Txn_Amt

Number

Y

Y

Txn_CCy

String

 

N/A

Txn_Ctry

String

 

N/A

Txn_Desc

String

 

N/A

Txn_GPS_Date

String

 

N/A

TXn_ID

Number

Y

Y

Txn_Stat_Code

String

 

N/A

TXN_Time_DE07

String

 

N/A

Txn_Type

String

 

N/A

Additional_Data_DE48

String

 

N/A

Authorised_by_GPS

String

 

N/A

AVS_Result

String

 

N/A

CU_Group

String

 

N/A

InstCode

String

 

N/A

MTID

String

 

N/A

ProductID

Number

Y

Y

Record_Data_DE120

String

 

N/A

SubBIN

Number

Y

Y

TLogIDOrg

Number

Y

Y

VL_Group

String

 

N/A

Dom_Fee_Fixed

Number

Y

Y

Non_Dom_Fee_Fixed

Number

Y

Y

Fx_Fee_Fixed

Number

Y

Y

Other_Fee_Amt

Number

Y

Y

Fx_Fee_Rate

Number

Y

Y

Dom_Fee_Rate

Number

Y

Y

Non_Dom_Fee_Rate

Number

Y

Y

Additional_Data_DE124

String

 

N/A

CVV2

String

 

N/A

Expiry_Date

Number

Y

Y

PAN_Sequence_Number

Number

Y

Y

PIN

String

 

N/A

PIN_Enc_Algorithm

String

 

N/A

PIN_Format

String

 

N/A

PIN_Key_Index

String

 

N/A

SendingAttemptCount

Number

Y

Y

source_bank_ctry

String

 

N/A

source_bank_account_format

String

 

N/A

source_bank_account

String

 

N/A

dest_bank_ctry

String

 

N/A

dest_bank_account_format

String

 

N/A

dest_bank_account

String

 

N/A

GPS_POS_Capability

String

 

N/A

GPS_POS_Data

String

 

N/A

Acquirer_Reference_Data_031

String

 

N/A

Response_Source

String

 

N/A

Response_Source_Why

Number

Y

Y

Message_Source

String

 

N/A

Message_Why

Number

Y

Y

traceid_lifecycle

String

 

N/A

Balance_Sequence

Number

Y

N

Balance_Sequence_Exthost

Number

Y

N

PaymentToken_id

Number

Y

Y

PaymentToken_creator

String

 

N/A

PaymentToken_expdate

String

 

N/A

PaymentToken_type

String

 

N/A

PaymentToken_status

String

 

N/A

PaymentToken_creatorStatus

String

 

N/A

PaymentToken_wallet

String

 

N/A

PaymentToken_deviceType

String

 

N/A

PaymentToken_lang

String

 

N/A

PaymentToken_deviceTelNum

String

 

N/A

PaymentToken_deviceIp

String

 

N/A

PaymentToken_deviceId

String

 

N/A

PaymentToken_deviceName

String

 

N/A

PaymentToken_activationCode

String

 

N/A

PaymentToken_activationExpiry

String

 

N/A

PaymentToken_activationMethodData

String

 

N/A

PaymentToken_activationMethod

Number

Y

Y

ICC_System_Related_Data_DE55

String

 

N/A

Merch_Name

String

 

N/A

Merch_Street

String

 

N/A

Merch_City

String

 

N/A

Merch_Region

String

 

N/A

Merch_Postcode

String

 

N/A

Merch_Country

String

 

N/A

Merch_Tel

String

 

N/A

Merch_URL

String

 

N/A

Merch_Name_Other

String

 

N/A

Merch_Net_id

String

 

N/A

Merch_Tax_id

String

 

N/A

Merch_Contact

String

 

N/A

auth_type

String

 

N/A

auth_expdate_utc

String

 

N/A

Matching_Txn_ID

Number

Y

Y

Reason_ID

Number

Y

Y

Dispute_Condition

String

 

N/A

Network_Chargeback_Reference_Id

String

 

N/A

Acquirer_Forwarder_ID

String

 

N/A

Currency_Code_Fee

String

 

N/A

Currency_Code_Fee_Settlement

String

 

N/A

Interchange_Amount_Fee

Number

Y

Y

Interchange_Amount_Fee_Settlement

Number

Y

Y

Clearing_Process_Date

String

 

N/A

Settlement_Date

String

 

N/A

DCC_Indicator

Number

Y

Y

multi_part_txn

Number

Y

Y

multi_part_txn_final

Number

Y

Y

multi_part_number

Number

Y

Y

multi_part_count

Number

Y

Y

SettlementIndicator

String

 

N/A

Network_TxnAmt_To_BillAmt_Rate

String

 

N/A

Network_TxnAmt_To_BaseAmt_Rate

String

 

N/A

Network_BaseAmt_To_BillAmt_Rate

String

 

N/A

POS_Date_DE13

String

 

N/A

Traceid_Message

String

 

N/A

Traceid_Original

String

 

N/A

Network_Currency_Conversion_Date

String

 

N/A

Mastercard_AdviceReasonCode_DE60

String

 

N/A

Network_Original_Data_Elements_DE90

String

 

N/A

Visa_ResponseInfo_DE44

String

 

N/A

Visa_STIP_Reason_Code

String

 

N/A

Network_Issuer_Settle_ID

String

 

N/A

Network_Replacement_Amounts_DE95

String

 

N/A

Visa_POS_Data_DE60

String

 

N/A

Network_Transaction_ID

String

 

N/A

Misc_TLV_Data

String

 

N/A

Acquirer_Country

String

 

N/A

PaymentToken_PanSource

String

 

N/A

ClearingFileID

String

 

N/A

Network_Fraud_Data

String

 

N/A

SenderData

String

 

N/A

ReceiverData

String

 

N/A

AuthenticationAmountUpper

Number

Y

Y

AuthenticationCurrency

String

 

N/A

AuthenticationMerchantHash

String

 

N/A

FxProviderCardholderRate

Number

 

Y

FxProviderBookedRate

Number

 

Y

For more information on JSON data types, see the RFC 8259 JSON specification.

Response Fields

Field

JSON Data Type

Null Allowed

Compatible with  IEEE 754 binary-64 (double precision) ?

MerchantAdvice

String

Y

N/A

Responsestatus

String

Y

N/A

CurBalance

Number

Y

N/A

AvlBalance

Number

Y

N/A

Acknowledgement

String

Y

N/A

LoadAmount

Number

Y

N/A

Bill_Amt_Approved

Number

Y

N/A

Update_Balance

Number

Y

N/A

New_Balance_Sequence_Exthost

Number

Y

N/A

CVV2_Result

String

Y

N/A

CurBalance_GPS_STIP

Number

Y

N/A

AvlBalance_GPS_STIP

Number

Y

N/A

Number range and precision

For each field of JSON data type Number, refer to the field description in GetTransaction Message Fields. which describes the field length range and maximum value you need to support. This is important to ensure no loss of information, especially for the fields with potentially large values.

Some of the above fields of JSON data type Number have a bigger range than the RFC 8259 data type of IEEE 754 binary-64 (double precision) which is described for numbers. If using the JavaScript language to process JSON, then for whole numbers (of Thredd data type N(min.max)) the JavaScript data type bigint would be a suitable alternative to the IEEE 754 binary-64 number data type.

Example

The Matching_Txn_ID field is a number of type N(1,16), with a minimum length of 1 digits and maximum length of 16 digits. Your systems must be able to handle a value containing up to 16 digits.