TEMENOS T24
Tax Engine
User Guide
Information in this document is subject to change without notice.
No part of this document may be reproduced or transmitted in any form or by any means,
electronic or mechanical, for any purpose, without the express written permission of TEMENOS Holdings NV.
Copyright 2005 TEMENOS Holdings NV. All rights reserved.
Tax Engine
Table of Contents
Overview.................................................................................................................................................. 3
Set up ...................................................................................................................................................... 3
Interfacing T24 data to Tax calculating systems ................................................................................. 3
Maintenance of Tax database .......................................................................................................... 4
Tax engine – Parameter Tables .......................................................................................................... 5
TX.TXN.BASE.PARMS .................................................................................................................... 5
TX.TXN.BASE.MAPPING ................................................................................................................ 7
TX.CONDITION................................................................................................................................ 8
TX.MAPPING ................................................................................................................................... 8
Other Parameter Files .................................................................................................................... 10
Tax Engine - Setup overview ......................................................................................................... 11
TI Processing ..................................................................................................................................... 11
TI processing – Parameter & Live Tables ...................................................................................... 13
TEMENOS T24 User Guide Page 2 of 20
Tax Engine
Overview
The Tax Engine (TX) module interfaces T24 transactions to external tax systems for mainly 2
purposes; tax calculations and tax reporting. This module enables the user to:
• Maintain user defined Tax databases for tax reporting purposes
• Interfaces T24 data to an external/local tax calculation system
The main features of the TAX.ENGINE module are:
• Allow a user exit in the tax calculation API, which would allow local routines to modify/calculate tax
amounts
• Allow definition of Tax Databases, which would be user-defined fields to hold tax related
information for reporting purpose
• Allow specification of mapping between different applications and Tax databases
• Allow definition of conditions for each application based on which the tax databases need to be
updated
The T24 European Savings Directive module (ET) requires the T24 Tax Engine module to be in place.
See the Tax Engine section of the EUSD User Guide for information on setting up the Tax Engine for
that particular module
Set up
Interfacing T24 data to Tax calculating systems
The tax calculating system can either be an external system or an INFOBASIC routine.
If the tax calculation mechanism is an INFOBASIC routine, the routine can be specified in the TAX
application.
TEMENOS T24 User Guide Page 3 of 20
Tax Engine
TAX record
If the tax calculation process were an external system, the data from the current transaction as well as
static information would need to be passed on to the system. This can be specified using a table
called TX.MAPPING and the TAX API would need to call this mapping utility. This would be done
as a future enhancement.
Maintenance of Tax database
This module is designed to capture Taxable events in T24 and store relevant data from these events
into a tax database. This data could be used later for tax reporting purposes.
The first step in this process is to define the relevant data that needs to be captured in the tax
database, i.e. identify the fields in tax databases. To do this, the tax engine provides the following
applications:
TX.TXN.BASE.PARMS This application specifies the fields in the Tax database.
TX.TXN.BASE.MAPPING This application maps each application to the corresponding user
defined field in the tax databases.
The next step is to identify taxable events. The important taxable events in T24 are:
• Interest earned from Account, LD and MM deposits or Security Bonds
• Dividends in Securities
• Capital Gains from Securities
The first 2 events can be captured when accounting happens for these applications. For example,
whenever interest capitalisation happens for LD, MM contracts, or entitlement processing happens in
securities, accounting entries get raised for the interest amounts. All the interest movements are
TEMENOS T24 User Guide Page 4 of 20
Tax Engine
captured in the file INT.MOVEMENT. Interest movements are captured in T24 only when field
INT.MVMT.UPDATE in ACCOUNT.PARAMETER is set to ‘Y’. INT.MOVEMENT gets updated
based on the settings given in the parameter file INT.MOVEMENT.PARAM. The Tax Engine (TX)
module also uses this parameter file for updating interest and Cash dividend movements in the Tax
database. A file called TX.INT.MOVEMENT.DATE captures all interest movements that happen on
a particular date.
• The last event can be captured when security positions get updated in a transaction. When a sell
transaction happens in a security, the cost of the position sold needs to be identified in order to
report capital gains. So the buy and sell events need to be captured and the capital gains need to
be calculated after matching the buy and sell tax lots.
• The Tax engine provides an application called TX.CONDITION to identify taxable events
The Tax database gets updated with the Interest movements immediately for online transactions. If
the Interest movement happens in Batch processing, then the batch process TX.END.OF.DAY
updates the Tax database.
Tax engine – Parameter Tables
TX.TXN.BASE.PARMS
This Table is used to define the Tax database file. It holds the details about the fields and the
properties of the fields contained in the Tax database. The ID to this Table is the name of the Tax
database.
TEMENOS T24 User Guide Page 5 of 20
Tax Engine
TX.TXN.BASE.PARMS record
After defining, this Table creates a work file for the Tax database, which can be viewed by Listing or
through Enquiries. Once this table gets authorised, new fields for the Tax database can be added only
at the End. Insertion in the middle or Deletion of an existing field after authorisation is not permitted.
The field TXN.BASE.ID is for the formation of ID for the records in the Tax database. It gets mapped
with the corresponding application values in TX.TXN.BASE.MAPPING.
The field MVAL and SVAL specifies whether the field is a Multi value field or sub value in the Tax
database. The field FLD.VAL.RTN formats the data according to the routine given. The field
REV.ACTION specifies the mode of data stored in database. If it has the Value ‘DELETE’, then the
Tax database will not keep the old updates of the Transaction. If the Value is ‘ACTION’, it keeps the
history of the changes made previously for the transaction.
The field SORT.FIELD maintains the Tax database in the sorted order. Data gets sorted based on the
Tax database field specified SORT.FIELD.
TEMENOS T24 User Guide Page 6 of 20
Tax Engine
TX.TXN.BASE.MAPPING
This Table is used to define the Mapping for the Tax database, which is defined in
TX.TXN.BASE.PARMS. It maps the Tax database fields with that of the fields in the transaction
application. Static data from other tables can also be captured in the mapping.
For securities applications, mapping happens from the lowest level of the SECURITY.TRANS
records.
The ID for TX.TXN.BASE.MAPPING is Application and Tax database name separated by ‘*’, for
example SEC.TRADE*SEC.PUR.DB. When a Transaction is processed, Tax database gets updated
only when it has the record for the Transaction application in this file.
TX.TXN.BASE.MAPPING record
This table maps the details for the formation of ID for the Tax database records as well as the data for
the fields defined already in TX.TXN.BASE.PARMS. The mapping can be done with the fields from
the application specified in the ID. It can also take details from other applications with the help of the
fields TXN.APPLN and APPL.RECORD.ID.
The INPUT.ROUTINE does the special processing on the data to be appended to the Tax database.
The value returned from the routine after processing gets updated in the Database. In the same way
TEMENOS T24 User Guide Page 7 of 20
Tax Engine
the DELETE.ROUTINE performs some special processing whenever existing data in the Tax
database in changed or deleted.
TX.CONDITION
The Table is used for specifying Conditions based on which the tax databases would be updated, as
well as interfacing to the external systems for tax processing are done. It has transaction application
as the ID. Tax processing will happen only when the corresponding transaction application has an
entry in this Table.
TX.CONDITION record
The field LEVEL performs the grouping of decisions. The field OPERAND is for joining single decisions
as a group of decisions. Based on the LEVEL value all the decisions are grouped and they are joined
using the values in the OPERAND field. The decisions are processed sequentially.
The field SEARCH.TYPE decides the type of search needed to evaluate the conditions set. It can
either be a Best fit or First fit based on the requirement.
TX.MAPPING
This table is for Interfacing T24 data with the Tax calculation routine for processing. The Table defines
the data that is to be passed for Tax processing. The Table has a set of IDs for the IN/OUT mapping
process. The ID has a Mapping name with an IN/OUT process specification like SECMAP*OUT. The
mapping can be called from version routines to call the GREYBOX, which selects the relevant
Mapping ID for tax processing of the transaction based on the conditions specified in
TX.CONDITION.
TEMENOS T24 User Guide Page 8 of 20
Tax Engine
TX.MAPPING record
The field TRANSACTION.FILE specifies the Applications for which the Mapping record is used. The
Tax details are returned from the BLACKBOX in the positions specified in the fields TAX.CCY.POS
and TAX.AMT.POS.
The field OUTPUT.STYLE specifies the style in which data is sent out of T24. It sends the data to the
T24 work file or to a Unix file in the path given in the field HANDOFF.PATH.
Tax processing happens for a transaction only when there is an entry in Mapping with the
corresponding application in the field TRANSACTION.FILE.
The RET.FLD.POS and RET.FLD.CONV are specific to the IN mapping process. The GREYBOX
routine picks the data from the work file in the positions specified and updates the respective files
given in the field FILE.NAME.
The routine specified in the field ROUTINE does the specific processing on the mapped data. For
example if the Returned data has to be updated for some more files other than the specified files, then
it can be done by the routine.
TEMENOS T24 User Guide Page 9 of 20
Tax Engine
Other Parameter Files
ACCOUNT.PARAMETER
The Tax database gets updated whenever the file INT.MOVEMENT gets updated. The update of
INT.MOVEMENT happens only when field INT.MVMT.UPDATE is set to ‘Y’
ACCOUNT.PARAMETER record
INT.MOVEMENT.PARAM
This file decides the Interest movements, which are to be updated in the INT.MOVEMENT file. The
INT.MOVEMENT file keeps all the interest details of the transaction processed. For all applications
other than SC applications, the Tax Database will get updated only when the relevant details for the
transaction application is set in this file with the correct SYSTEM.ID.
INT.MOVEMENT.PARAM record
TEMENOS T24 User Guide Page 10 of 20
Tax Engine
Based on the Transaction and CRF code given in this application for the respective SYSTEM.ID, the
corresponding transactions are captured in INT.MOVEMENT.
The above parameter setting captures the following Interest movements:
• Accrual and Capitalised movements of MM Deposit.
• Capitalised Interest of LD Deposit.
Tax Engine - Setup overview
• Set INT.MVMT.UPDATE in ACCOUNT.PARAMETER to ‘Y’ to enable update of Interest
movements in INT.MOVEMENT.
• Set the INT.MOVEMENT.PARAM with the details of transactions to be captured for Tax
processing with the particular System Id, e.g. MMI, LD etc.
• Create the Tax database by defining in TX.TXN.BASE.PARMS.
• Map the Tax database fields with the transaction application values through
TX.TXN.BASE.MAPPING.
• Set the conditions for updating the Tax database for the transaction application in
TX.CONDITION.
• Create an Enquiry for viewing the Tax database details.
TI Processing
This transfers the information processed by the Local Tax calculation systems back to T24, so that
accounting entries are raised and advices to the customer are produced. The Tax module consists of
the three main components:
• TAX ENGINE (TE), this is the Interface between T24 and the TAX Module, which is mentioned
above.
• TAX MODULE (TM), this processes the tax events, updating the data relevant for calculation of
taxes and reporting and calculating the amount of tax. This is developed locally depending on the
tax requirement of the region.
• TAX INTERFACE (TI), this transfers the information back to T24 so that accounting entries are
raised and advices to the customer are produced.
The purpose of the TI component is to return the tax results calculated by the local TM using the data
updated in Tax databases by TE to Core T24 for their appropriate processing.
The trigger to TI processing is the TI.HEADER record, which contains tax information updated by the
Local TM module. These records are processed by the TI phantom TX.IN.PROCESS.
TEMENOS T24 User Guide Page 11 of 20
Tax Engine
The TI process carries out the following updates:
• Raising of Accounting entries- thus the Cash flow / available funds of the customer will be updated
• Delivery hold processing
• Releasing Held delivery messages
• Update of Lookup file - TI.TRANS.DETAILS
Raising Accounting Entries
For raising the Accounting entries in Core the below processing is carried out:
• Based on the tax calculation done by the local module TM, the accounting entries to be raised for
TM updates the respective tax amount in the file TI.HEADER.
• The TI phantom TX.IN.PROCESS processes each TI.HEADER record and raises the
Accounting entries based on the details updated in the header.
• The processed Header records are written into the history file TI.HEADER.PROCESSED with
the processed date and time.
The entries raised are either Forward or Real entries based on the header record details.
Delivery hold process
The tax calculation for a transaction is carried out by the Local systems (TM). If the tax information is
not received at the time of authorising of the contract, the respective delivery messages are delayed.
This is done by TI processing, by putting the messages on hold while authorising. Once the Tax
details are received, the TI phantom TX.IN.PROCESS processes the messages.
The below operations are done to hold the delivery process at the time of contract authorisation:
• The messages can be put on Hold or Deleted. This process information is held in the
TX.CONDITION file for a particular message with a set of user specified conditions. While
authorising, the system validates these conditions and the message is processed accordingly.
• The Held delivery message information is updated in the file TI.TRANS.DETAILS, which will be
used later on by the TI phantom to produce the message.
Since the TI.TRANS.DETAILS file is updated Portfolio wise for Securities transactions, the Portfolio
position in the Handoff record for different messages are held in the file
TI.DELIVERY.APP.MAPPING.
Releasing held Messages
This process is carried out by the TI phantom based on the flag DELIVERY.REQD in the
TI.HEADER file. When the flag is set, the TI phantom processes as below:
TEMENOS T24 User Guide Page 12 of 20
Tax Engine
• Gets the Held messages from the file TI.TRANS.DETAILS.
• Maps the tax information from TI.HEADER to the delivery handoff details using the mapping
details provided in the file TI.HANDOFF.MAPPING.
• Releases the delivery message by writing the delivery reference to delivery key list file
DE.O.KEYLIST and the TI.TRANS.DETAILS is updated as delivery processed.
TI.TRANS.DETAILS
This file holds the details of the tax information processed by the Local systems. The file is updated as
both an authorised and unauthorised record based on the underlying contract status. The file gets
updated in the following stages:
• When the Delivery hold process is carried at contract authorisation.
• By the TI phantom TX.IN.PROCESS.
This file is updated with the following main information:
• Accounting entries.
• Type of entry – Forward / Real.
• Delivery references put on hold and their current status.
TI processing – Parameter & Live Tables
TI.HEADER
This is a live file, which is updated by the External Tax calculation system. This file is processed by the
TI phantom for raising Tax accounting entries and Deliveries that are held. This file contains details
about:
• Accounting entry details that need to be raised.
• Flag to suggest if delivery needs to be performed and a multi valued array to contain the delivery
mapping information.
TEMENOS T24 User Guide Page 13 of 20
Tax Engine
TI.HEADER record
Once the records in this file are processed, they are deleted from this file and written into the file
TI.HEADER.PROCESSED for Historical purpose.
The file TI.HEADER.PROCESSED contains all the fields of TI.HEADER with an additional field to
indicate the processed date and time. The ID for the file is also same as TI.HEADER.
The ID will contain a Portfolio number only for Securities applications. The file TRANS.PROCESS
indicates whether the transaction id was changed/deleted/authorised etc. The fields listed in the multi
values contain the details about the Entry to be raised inside T24.
The flag FORWARD is to indicate whether the entries raised are forward or real entries. The field
DELIVERY.REQD is the flag to indicate whether the delivery process for the contract is to be carried
out by the TI phantom. The DELIVERY.INFO field contains additional tax info updated by the external
tax system if needed.
TI.TRANS.DETAILS
This file holds the Tax accounting details and Hold delivery details for the transaction. The TI phantom
with the Tax Details updates this, and has the following details:
• Holds the delivery message number, which is put on ‘HOLD’ status at the time of authorisation.
• Statement entries used for Tax entries by TI phantom.
TEMENOS T24 User Guide Page 14 of 20
Tax Engine
TI.TRANS.DETAILS
The Id will have a portfolio number only for the Securities Application. The file is updated as
unauthorised when the transaction is unauthorised. The record status of this file is based on the
TRANS.PROCESS field updated in TI.HEADER. The status is updated as below for various
transaction processes:
TRANS PROCESS STATUS
NULL (Forward entry) Unauthorised
NULL (Real entry) Authorised
AUT Authorised
CHG Unauthorised
DEL Unauthorised record deleted.
REV Unauthorised reversal
OPT (Online Optimisation) Authorised.
STATUS
Once the delivery message is processed by the phantom, the field RELEASED.DELIVERY gets
updated as ‘Y’. Once the record gets authorised, the previous details are written into history.
TEMENOS T24 User Guide Page 15 of 20
Tax Engine
TI.HANDOFF.MAPPING
This file is used to define the tax information in the TI.HEADER file into the delivery handoff
information.
TI.HANDOFF.MAPPING
The field TI.HEADER.POSN holds the TI.HEADER field position, which has the tax data to be
mapped to the handoff. The records for this file will be released from Core.
TI.DELIVERY.APP.MAPPING
The file is used in APPLICATION.HANDOFF to find the handoff record position for the Portfolio
number while holding the delivery messages. This is used only for Security applications.
TI.DELIVERY.APP.MAPPING
TEMENOS T24 User Guide Page 16 of 20
Tax Engine
The Id for the file is the valid T24 security application name. The MESSAGE.NO is a valid message
from the DE.MESSAGE file. The field PORT.HANDOFF.POS is the position in the handoff record for
the respective message, which holds the portfolio number. The records for this file will be released
from Core.
TX.CONDITION
This is an existing TX parameter file. It is enhanced as below to handle TI processing:
• Fields MESSAGE.NUMBER and DELIVERY.PROCESS are added to determine the course of action
of the delivery messages.
• The table is enhanced to allow specification of Common TX class ids to make the condition set up
easy.
TX.CONDITION
The field MESSAGE.NUMBER is a valid message from the DE.MESSAGE table and the field
DE.PROCESS indicates the action to be carried out on the message while authorising the transaction.
The TI.HEADER produces records to indicate that the transaction has been authorised. This record
is processed by the TI phantom to authorise accounting entries and TI.TRANS.DETAILS.
To raise these header records, the system has to pass indication to the local tax key list files at the
time of authorising the contract. The field AUTH.WRITE.FILE holds the name of the local file. The
field AUTH.FILE.ID holds the details about the detail that is to be updated to the above key list file.
The value of this field can have the following values:
TEMENOS T24 User Guide Page 17 of 20
Tax Engine
• String
• Date time
• TXNREF – Transaction reference
• Company – Contract Company
For example by defining the above field, the user can specify the ID as
“AUTHORISED*SCTR100000010*20030303100”.
Common Class Id - TX.CONDITION
To simplify the setting up of conditions in TX.CONDITION, repeated conditions from common files
like CUSTOMER, SECURITY.MASTER are given in the file as Class ids. Later class ids are
mentioned in the decision field of the condition file for other application records where the common
conditions are needed.
TX.CONDITION – Class ID setup - 1
The above set up shows the common condition set for the Customer application that used the fields
RESIDENCE and INDUSTRY as conditions. This class id is used for the other application condition
fields, which need these conditions as given below:
TEMENOS T24 User Guide Page 18 of 20
Tax Engine
TX.CONDITION – Class ID setup - 2
Using the value in the field DECISION.FLD, the customer number is obtained and this is used to
validate the class Id mentioned in the file DECISION.
The valid applications, which are mentioned as Class, are:
• CUSTOMER
• SC.TRANS.NAME
• SECURITY.MASTER
• DIARY.TYPE
SEC.TRANS.INFO
This is a live file updated by the security transactions when their positions get updated. This file is
used in TI to find the list of portfolios and their respective Security Trans ids for raising Accounting
entries and Delivery processing.
TEMENOS T24 User Guide Page 19 of 20
Tax Engine
SEC.TRANS.INFO
The Id for this file is the Transaction application and the Contract Id. The field PORTFOLIO.NO
contains the portfolio for which the trade is done. The field SEC.TRANS.ID contains the list of
Security Trans ids for the portfolio.
TI processing – Setup overview
• Set the details of the message, which needs some delivery actions in the file TX.CONDITION.
• Set the Local key list file details in TX.CONDITION.
• Set the Common class id record in TX.CONDITION for simplified set up.
• Set-up the file TI.DELIVERY.APP.MAPPING to get portfolio details for each Delivery message.
• Set the file TI.HANDOFF.MAPPING for each message and application combination to hold the
handoff mapping information.
• Make the phantom TX.IN.PROCESS active to process the header records.
TEMENOS T24 User Guide Page 20 of 20