Camt.035.001.03/Camt.035.001.05 Mapper

Overview

The Camt.035.001.03/Camt.035.001.05 (Camt.035) mappers are used by TCH for sending and receiving Payment Acknowledgement(PrtryFrmtInvstgtn) messages between TCH Real-Time Payment System(RTP) and FTM for Immediate Payments.

The Camt.035 mappers are a pair of Inbound/Outbound mappers.
  • Camt.035 Inbound Mapper: Map the TCH Payment Acknowledgement messages to ISF messages. The default mapper name is Camt035ToISFMapper.
  • Camt.035 Outbound Mapper: Map the ISF messages to TCH Payment Acknowledgement messages. The default mapper name is ISFToCamt035Mapper.

The details of the mapping specification for both inbound and outbound mappers are included in a separate document. Refer to Detailed camt.035 mapping specification for more information about obtaining the documentation for the mapping specifications.

The inbound and outbound camt.035 mappers can also be used in conjunction with the Wrapper mapper, or the Business Application Header mapper. Refer to TCH Wrapper Mapper and TCH Business Application Header Mapper for more information.

Inbound Mapper

The CONFIG=entry in Channel parameter is required for inbound mapper. The mapper uses the setting to locate <msgTypeCfg> entry in Value table with child element <Type> containing camt.035.*. The <msgTypeCfg> contains the configuration parameters for the inbound mapper.

For example, the default Request From Channel is configured with a CONFIG=IP_MAP_CFG_REQ_FROM_CHAN parameter. When a camt.035.001.03 message is received , the mapper looks for the <msgTypeCfg> entry in the Value table with the following conditions:
  • In Value table, the value of Category is IP_MAP_CFG_REQ_FROM_CHAN.
  • In msgTypeCfg entry, the value of Type is camt.035.*.
The default <msgTypeCfg> for IP_MAP_CFG_REQ_FROM_CHAN is as follows.
<msgTypeCfg>
	<class>CAMT035</class>
	<subType>IP_FROM_CDTR_PACK</subType>
	<extendedCfg>
		<name>MASTER_FLAG</name>
		<value>Y</value>
	</extendedCfg>
	<pt>
		<class>CAMT035</class>
		<subType>IP_FROM_CDTR_PACK</subType>
	</pt>
	<mapName>Camt035ToISFMapper</mapName>
	<type>camt.035.*</type>
</msgTypeCfg>
The inbound mapper uses the configuration parameters of the <msgTypeCfg> entry as follows:
  • <class> - value for TXN_PAYMENT_V.OBJ_CLASS
  • <subType> - value for TXN_PAYMENT_V.SUBTYPE and ISFMessage/Header/BusinessConcept
  • <extendedCfg>.<value> with <name>=MASTER_FLAG - value for MASTER_FLAG (for TXN_PAYMENT_V and TRANSMISSION_V)
  • <pt>.<class> - value for TRANSMISSION_V.OBJ_CLASS
  • <pt>.<subType> - value for TRANSMISSION_V.SUBTYPE
Note: When the inbound mapper is used in conjunction with the Business Application Header mapper, the inbound mapper checks the value of AppHdr/CpyDplct in Business Application Header. If the value is 'DUPL', the mapper appends '_RPT' to existing <subType> value to indicate the message is a repeat request.

If the <msgTypeCfg> entry cannot be located, the mapper throws an exception with error 'subType not found'.

Table 1 shows the default configuration parameters for the channels using camt.035 inbound mapper.
Table 1. Default configuration parameters for channels using camt.035 inbound mapper
Category Class SubType MASTER_FLAG Pt.class Pt.subType
IP_MAP_CFG_REQ_FROM_CHAN CAMT035 IP_FROM_CDTR_PACK Y CAMT035 IP_FROM_CDTR_PACK
IP_MAP_CFG_REQ_FROM_CSM CAMT035 IP_FROM_CSM_PACK Y CAMT035 IP_FROM_CSM_PACK
The inbound mapper handles the Datetime elements with the rules as follows.
  • If a timezone offset is included in the datetime value, the datetime value is mapped to ISF with UTC timezone.
  • If a timezone off set is not included in a datetime value,
    • if the Timezone is configured in the Channel table, the input datetime is recognized as the value in the format of the channel timezone, and is mapped to ISF with UTC timezone.
    • if the Timezone is not configured in the Channel table, the input datetime is recognized as the value in the format of the local timezone in which the mapper is executing, and the input datetime is mapped to ISF with UTC timezone.

Outbound Mapper

The CONFIG=entry in Channel parameter is required for outbound mapper. The mapper uses the setting to locate <msgTypeCfg> entry in Value table with child element <subType> containing the same value as the ISF Business Concept. The <msgTypeCfg> contains the configuration parameters for the outbound mapper.

When the outbound mapper is used in conjunction with the Wrapper mapper, or the Business Application Header mapper, the mapper uses the setting stored in Environment.PMP.Variables.Rules.*[1].MAP_CONFIG, instead of the CONFIG=entry in Channel parameter, to locate <msgTypeCfg> entry in Value table. Refer to TCH Wrapper Mapper for more information.

For example, the default Request To CSM channel is configured with a CONFIG=IP_MAP_CFG_REQ_TO_CSM parameter. When an ISF message is received, the mapper looks for the <msgTypeCfg> entry in the Value table with the following conditions:
  • In Value table, the value of Category is
    • Environment.PMP.Variables.Rules.*[1].MAP_CONFIG if present.
    • IP_MAP_CFG_REQ_TO_CSM otherwise.
  • In msgTypeCfg entry, the value of subType is the same as the ISF Business Concept.
Note: If the ISF Business Concept ends in '_RPT', the mapper removes '_RPT' from the ISF Business Concept when looking for the <msgTypeCfg> entry.
Note: When the outbound mapper is used in conjunction with the Wrapper mapper, or the Business Application Header mapper, the Wrapper mapper or the Business Application Header mapper uses the entry with Category IP_CONFIG and Key IP_SCHEME_VER in Value table to identify the version of the TCH Real-Time Payment(RTP) system that Financial Transaction Manager for Immediate Payments supports, and stores the channel parameter config value in Environment.PMP.Variables.Rules.*[1].MAP_CONFIG which is used by the camt.035 outbound mapper. Refer to TCH Wrapper Mapper for more information.
The default <msgTypeCfg> for IP_MAP_CFG_REQ_TO_CSM is as follows.
<msgTypeCfg>
	<class>CAMT035</class>
	<subType>IP_TO_CSM_PACK</subType>
	<extendedCfg>
		<name>MASTER_FLAG</name>
		<value>N</value>
	</extendedCfg>
	<pt>
		<class>CAMT035</class>
		<subType>IP_TO_CSM_PACK</subType>
	</pt>
	<mapName>ISFToCamt035Mapper</mapName>
	<type>camt.035.001.03</type>
</msgTypeCfg>
The outbound mapper uses the configuration parameter of the <msgTypeCfg> entry as follows:
  • <type> - value for the namespace of the output camt.035 message. For TCH, the value must be camt.035.001.03 or camt.035.001.05.
Note: ISFToCamt035Mapper is a mapper which supports both camt.035.001.03 and camt.035.001.05 for TCH, the <type> value is used to specify the version of camt.035 that the mapper is supporting.

If the <msgTypeCfg> entry cannot be located, the mapper throws an exception with error 'subType not found'.

Table 2 shows the default configuration parameters for the channels using camt.035 outbound mapper.
Table 2. Default configuration parameters for channels using camt.035 outbound mapper
Category Class SubType Type
IP_MAP_CFG_REQ_TO_CSM CAMT035 IP_TO_CSM_PACK camt.035.001.03
IP_MAP_CFG_REQ_TO_CSM_v29 CAMT035 IP_TO_CSM_PACK camt.035.001.05
The outbound mapper handles the Datetime elements with the rules as follows.
  • If the Timezone is configured in the Channel table, the input datetime is mapped from the value with UTC timezone to the value in the format of the channel Timezone.
  • If the Timezone is not configured in the Channel table, the input datetime is mapped from the value with UTC timezone to the value in the format of the local timezone in which the mapper is executing.
The outbound mapper uses the channel parameter TS_INCLUDE_OFFSET to control whether the timezone offset is included in the output datetime values.
  • If TS_INCLUDE_OFFSET is set to Y, then the timezone offset is included in the output datetime values.
  • If TS_INCLUDE_OFFSET is set to N or not configured, then the timezone offset is not included in the output datetime values.