{
	"VersionControl":{
		"Version":"2.0.0",
		"Description":"FPX Payment Schema",
		"Release Date":"7 Dec 2020",
		"Created by": "Chris Ong"
	},
	"MT0260":{
		"header": {
			"h001_MTI": {
				"IfNull": {
					"DefaultValue":"0260"
				},
				"Hash":"true"
			},
			"h002_VNO": {
				"IfNull": {
					"PropertiesValue":"true"
				},				
				"MerchantField":"VersionNo",
				"Hash":"true"
			},
			"h003_TDT": {
				"IfNull": {
					"ClassName":"com.PayMaster.DataConversion.DateTimeConversion",
					"MethodName":"getCurrentDate"
				},
				"Hash":"true"
			},
			"h004_TTM": {
				"IfNull": {
					"ClassName":"com.PayMaster.DataConversion.DateTimeConversion",
					"MethodName":"getCurrentTime"
				},
				"Hash":"true"
			}
		},
		"body": {
			"f001_MID": {
				"IfNull": {
					"PropertiesValue":"true"
				},
				"MerchantField":"MerchantID",
				"Hash":"true"
			},
			"f003_ProcCode": {
				"Hash":"true"
			},
			"f006_TxnDtTm": {
				"IfNull": {
					"ClassName":"com.PayMaster.DataConversion.DateTimeConversion",
					"MethodName":"getCurrentDateTime"
				},
				"MerchantField":"TxnDtTm",
				"Hash":"true"
			},
			"f007_TxnAmt": {
				"Conversion":{
					"ClassName":"com.PayMaster.DataConversion.NumberConversion",
					"MethodName":"convertNumberToString",
					"Parameter":[
						"getter('TxnAmt')"
					]
				},
				"MerchantField":"TxnAmt",
				"Hash":"true"
			},
			"f010_CurrCode": {
				"MerchantField":"CurrCode",
				"Hash":"true"
			},
			"f019_ExpTxnAmt": {
				"MerchantField":"ExpTxnAmt",
				"Hash":"true"
			},
			"f247_OrgTxnAmt": {
				"Conversion":{
					"ClassName":"com.PayMaster.DataConversion.NumberConversion",
					"MethodName":"convertNumberToString",
					"Parameter":[
						"getter('OrigTxnAmt')"
					]
				},
				"MerchantField":"OrigTxnAmt",
				"Hash":"true"
			},
			"f248_OrgCurrCode": {
				"MerchantField":"OrigCurrCode",
				"Hash":"true"
			},
			"f249_TxnCh": {
				"IfNull": {
					"PropertiesValue":"true"
				},	
				"MerchantField":"TxnChannel",
				"Hash":"true"
			},
			"f253_CntyCode": {
				"MerchantField":"CountryCode",
				"Hash":"true"
			},
			"f256_FICode": {
				"MerchantField":"FICode",
				"Hash":"true"
			},
			"f260_ServID": {
				"IfNull": {
					"PropertiesValue":"true"
				},	
				"MerchantField":"ServiceID",
				"Hash":"true"
			},
			"f261_HostID": {
				"MerchantField":"MerchHostID",
				"Hash":"true"
			},
			"f262_SessID": {
				"MerchantField":"MerchSessionID",
				"Hash":"true"
			},
			"f263_MRN": {
				"MerchantField":"MerchRefNo",
				"Hash":"true"
			},
			"f264_Locale": {
				"IfNull": {
					"PropertiesValue":"true"
				},	
				"MerchantField":"LangLocale",
				"Hash":"true"
			},
			"f268_CHName": {
				"MerchantField":"UserName",
				"Hash":"true"
			},
			"f270_ORN": {
				"MerchantField":"OrderRefNo",
				"Hash":"true"
			},
			"f271_ODesc": {
				"MerchantField":"OrderDesc",
				"Hash":"true"
			},
			"f275_RURL_DD": {
				"IfNull": {
					"PropertiesValue":"true"
				},	
				"Conversion":{
					"ClassName":"com.PayMaster.DataConversion.CharacterConversion",
					"MethodName":"replaceCharacter",
					"Parameter":[
						"getter('FPXRespURL')",
						"&",
						"^"
					]
				},
				"MerchantField":"FPXRespURL",
				"Hash":"true"
			},
			"f276_URL_VMPS": {
				"IfNull": {
					"PropertiesValue":"true"
				},	
				"Conversion":{
					"ClassName":"com.PayMaster.DataConversion.CharacterConversion",
					"MethodName":"replaceCharacter",
					"Parameter":[
						"getter('ViewMerchPymtStatusURL')",
						"&",
						"^"
					]
				},
				"MerchantField":"ViewMerchPymtStatusURL",
				"Hash":"true"
			},
			"f278_EMailAddr": {
				"MerchantField":"UserEmail",
				"Hash":"true"
			},
			"f279_HP": {
				"MerchantField":"UserContact",
				"Hash":"true"
			},
			"f285_IPAddr": {
				"MerchantField":"UserIPAddress",
				"Hash":"true"
			},
			"f287_ExpOrgTxnAmt": {
				"MerchantField":"ExpOrigTxnAmt",
				"Hash":"true"
			},
			"f352_AcqBank": {
				"MerchantField":"AcqBank",
				"Hash":"true"
			},
			"f400_AddData": {
				"MerchantField":"AdditionalData",
				"Hash":"true"
			},
			"f340_MercPromoCde": {
				"MerchantField":"MerchPromoCode",
				"Hash":"true"
			},
			"f341_MercPromoAmt": {
				"Conversion":{
					"ClassName":"com.PayMaster.DataConversion.SplitConversion",
					"MethodName":"splitConvertNumberToString",
					"Parameter":[
						"getter('MerchPromoAmt')",
						"|"
					]
				},
				"MerchantField":"MerchPromoAmt",
				"Hash":"true"
			},
			"f342_PromoAmtAcqCst": {
				"Conversion":{
					"ClassName":"com.PayMaster.DataConversion.SplitConversion",
					"MethodName":"splitConvertNumberToString",
					"Parameter":[
						"getter('PromoAmtAcqCost')",
						"|"
					]
				},
				"MerchantField":"PromoAmtAcqCost",
				"Hash":"true"
			},
			"f343_PromoAmtMercCst": {
				"Conversion":{
					"ClassName":"com.PayMaster.DataConversion.SplitConversion",
					"MethodName":"splitConvertNumberToString",
					"Parameter":[
						"getter('PromoAmtMerchCost')",
						"|"
					]
				},
				"MerchantField":"PromoAmtMerchCost",
				"Hash":"true"
			},
			"f363_InvNum": {
				"MerchantField":"InvoiceNo",
				"Hash":"true"
			},
			"f364_Fee": {
				"MerchantField":"Fee",
				"Hash":"true"
			}
		},
		"trailer": {
			"t001_SHT": {
				"IfNull": {
					"PropertiesValue":"true"
				},	
				"MerchantField":"SHAlgorithmType",
				"Hash":"false"
			},
			"t002_SHV": {
				"IfNull":{
					"ClassName":"com.PayMaster.SecureHash.MessageHashing",
					"MethodName":"hashMessageInSHA2",
					"Parameter":[
						"prop('SecretKey')",
						"getter('hashMessage')"
					]
				},
				"Hash":"false"
			}
		}
	},
	
	"MT0270":{
		"header": {
			"h001_MTI": {
				"Hash":"true"
			},
			"h002_VNO": {				
				"MerchantField":"VersionNo",
				"Hash":"true"
			},
			"h003_TDT": {
				"Hash":"true"
			},
			"h004_TTM": {
				"Hash":"true"
			}
		},
		"body": {
			"f001_MID": {
				"MerchantField":"MerchantID",
				"Hash":"true"
			},
			"f003_ProcCode": {
				"Hash":"true"
			},
			"f006_TxnDtTm": {
				"MerchantField":"TxnDtTm",
				"Hash":"true"
			},
			"f007_TxnAmt": {
				"MerchantField":"TxnAmt",
				"Conversion":{
					"ClassName":"com.PayMaster.DataConversion.NumberConversion",
					"MethodName":"convertStringToNumber",
					"Parameter":[
						"getter('f007_TxnAmt')",
						"getter('f019_ExpTxnAmt')"
					]
				},
				"Hash":"true"
			},
			"f010_CurrCode": {
				"MerchantField":"CurrCode",
				"Hash":"true"
			},
			"f019_ExpTxnAmt": {
				"MerchantField":"ExpTxnAmt",
				"Hash":"true"
			},
			"f254_DDRespCode": {
				"MerchantField":"TxnStatus",
				"Hash":"true"
			},
			"f256_FICode": {
				"MerchantField":"FICode",
				"Hash":"true"
			},
			"f257_PGRN": {
				"MerchantField":"PymtGwRefNo",
				"Hash":"true"
			},
			"f258_TxnStatDetCde": {
				"MerchantField":"TxnStatDetCde",
				"Hash":"true"
			},
			"f259_TxnStatMsg": {
				"MerchantField":"TxnStatMsg",
				"Hash":"true"
			},
			"f260_ServID": {
				"MerchantField":"ServiceID",
				"Hash":"true"
			},
			"f261_HostID": {
				"MerchantField":"MerchHostID",
				"Hash":"true"
			},
			"f262_SessID": {
				"MerchantField":"MerchSessionID",
				"Hash":"true"
			},
			"f263_MRN": {
				"MerchantField":"MerchRefNo",
				"Hash":"true"
			},
			"f270_ORN": {
				"MerchantField":"OrderRefNo",
				"Hash":"true"
			},
			"f277_DDRN": {
				"MerchantField":"FPXRefNo",
				"Hash":"true"
			},
			"f286_OrgDDRespCode": {
				"MerchantField":"OrigRespCode",
				"Hash":"true"
			}
		},
		"trailer": {
			"t001_SHT": {
				"MerchantField":"SHAlgorithmType",
				"Hash":"false"
			},
			"t002_SHV": {
				"MerchantField":"SHValue",
				"Hash":"false"
			}
		}
	}
}