Overview
Simple investment purchase and sale transactions can be imported into Troika using the Transaction Import menu option accessed from Troika Utilities. The investment transactions can be in the client reporting currency or their own transactions currency. Foreign currency transactions can only be posted to nominal accounts with the same fixed currency or a mixed currency account. This document outlines how to setup and import the file, along with the file specification so you create your own import files.
A separate guide outlines how to import bank transactions using the same import menu option.
Setting up the file format for importing bank transactions
From the Transaction Import menu option in Troika Utilities, click on the ‘add a new file mapping’ button using the button with the red arrow.
Set the file mapping description as ‘FinApps_Inv’. This file mapping will allow bank receipts and payments to be imported in Troika. Click OK to accept. The edit button will allow the name to be edited or the mapping name can be deleted in full by clicking the delete button.
Unique import file names
To prevent transaction imports from using the same file name more than once, add the following entry to the ‘system settings’ in the Utilities module:
ImportFileNameUnique = True
The file definition and field requirements are outlined at the end of this document.
Importing the investment transaction file
To import an investment transaction file, select the file mapping ‘FinApps_Inv’ at the top of the screen. Click on the edit button next to the import file option to navigate to the file which is going to be imported. The file type can only be selected as csv (comma separated value) file. Click ‘Open’ to select the file once highlighted.
Clicking on the ‘Import’ button will load the transactions from the file into the pending area where these will be previewed. This screen can be maximised to show more details. The transactions are in the system but not posted at this point. Troika will display the number of records ‘processed’ and the number of records ‘ignored’. For example:
Clicking on the ‘Preview button’ will display the pending transactions in a report. You will only be able to view transactions imported into the transaction import utility for the user currently logged on to Troika.
Transactions with missing or invalid fields are highlighted in red. Select the ‘Show Invalid’ option at the top of the screen to restrict the list to transactions with missing data. Entries can be amended by clicking on the edit button to the left of each record. The last column displays the number of errors or invalid fields, each record has.
The detail of each entry can also be amended, simply by double clicking on the record detail and typing in the revised details or correction. When editing the individual transactions; missing or invalid entries are highlighted. For example:
Corrections can be made by simply over typing the entry and selecting an entry from a drop-down list. Changes to the client and fund can also be made by using the entry box to search for the correct client/fund.
The ‘Next’ and ‘Back’ buttons at the bottom of the edit screen can be used to review invalid transactions by selecting the ‘errors only’ check box.
Once all the transactions have been reviewed, valid transactions can be posted. Click on the ‘Post’ button to process the valid transactions. Records successfully posted are automatically removed from the import preview area. Invalid records remain in the preview until either:
- The transactions are corrected and posted.
- The transactions are cleared from the preview by clicking on the ‘Clear List’ button.
The editing of the transaction details also allows an investment to be selected or amended either by name or by typing in the SEDOL code. The units and narrative can also be edited.
The Log File
The Log File option on the ‘Transaction Import’ menu option gives access to the history of the importing process for each file. Select the file type at the top of the screen, the import file and any additional filters required (date range, user). The log file history can be previewed in a report and/or printed.
Investment Transaction Import – File Specification
This file format does not require a file header row record.
The file can only be saved as a csv (comma delimited) file. The file must be comma delimited and not tab delimited. When preparing the csv file within Microsoft Excel, please ensure that you select the file type carefully as Excel can override the file type very easily.
Also, cell formats should be carefully checked ensuring text isn’t converted to numeric values in error. For example, a FundID with leading zeros ‘001’ can be easily converted to ‘1’ which will not be successfully imported into Troika.
Field No | Field Name | Type | Size | Mandatory | Content Description | Example Data |
Field01 | Ignore | No Data – this field is ignored by the import | Field must exist but leave blank | |||
Field02 | Ignore | No Data – this field is ignored by the import | Field must exist, but leave blank | |||
Field03 | Ignore | No Data – this field is ignored by the import | Field must exist, but leave blank | |||
Field04 | MainAmount | Numeric/double | 8 | Mandatory | Transaction amount in transaction currency. | 4948.75 |
Field05 | Ignore | No Data – this field is ignored by the import | Field must exist, but leave blank | |||
Field06 | Currency Code | Character | 3 | Mandatory | Currency Code | GBP |
Field07 | Ignore | No Data – this field is ignored by the import | Field must exist, but leave blank | |||
Field08 | Ignore | No Data – this field is ignored by the import | Field must exist, but leave blank | |||
Field09 | G_CACC | Character | 10 | Mandatory | Client Reference | FPS986 |
Field10 | FundID | Character | 3 | Mandatory | Fund identifier | ‘001’ |
Field11 | G_DACC | Character | 10 | Mandatory | Client Reference | FPS986 |
Field12 | G_DATE | Date/Time | 8 | Mandatory | Bargain Date DD/MM/YY | 12/01/24 |
Field13 | Ignore | No Data – this field is ignored by the import | Field must exist, but leave blank | |||
Field14 | Ignore | No Data – this field is ignored by the import | Field must exist, but leave blank | |||
Field15 | Ignore | No Data – this field is ignored by the import | Field must exist, but leave blank | |||
Field16 | Ignore | No Data – this field is ignored by the import | Field must exist, but leave blank | |||
Field17 | Ignore | No Data – this field is ignored by the import | Field must exist, but leave blank | |||
Field18 | Ignore | No Data – this field is ignored by the import | Field must exist, but leave blank | |||
Field19 | Ignore | No Data – this field is ignored by the import | Field must exist, but leave blank | |||
Field20 | Ignore | No Data – this field is ignored by the import | Field must exist, but leave blank | |||
Field21 | Ignore | No Data – this field is ignored by the import | Field must exist, but leave blank | |||
Field22 | Ignore | No Data – this field is ignored by the import | Field must exist, but leave blank | |||
Field23 | Ignore | No Data – this field is ignored by the import | Field must exist, but leave blank | |||
Field24 | Ignore | No Data – this field is ignored by the import | Field must exist, but leave blank | |||
Field25 | Ignore | No Data – this field is ignored by the import | Field must exist, but leave blank | |||
Field26 | Ignore | No Data – this field is ignored by the import | Field must exist, but leave blank | |||
Field27 | Ignore | No Data – this field is ignored by the import | Field must exist, but leave blank | |||
Field28 | Ignore | No Data – this field is ignored by the import | Field must exist, but leave blank | |||
Field29 | Units | Numeric/double | 12 | Mandatory | No of Units | 4700 |
Field30 | Price | Numeric/double | 11 | Mandatory | Unit Price | 1.0425 |
Field31 | INVSEDOL | Character | 50 | Mandatory | Sedol Number | B012YP7 |
Field32 | Ignore | No Data – this field is ignored by the import | Field must exist, but leave blank | |||
Field33 | Ignore | No Data – this field is ignored by the import | Field must exist, but leave blank | |||
Field34 | Ignore | No Data – this field is ignored by the import | Field must exist, but leave blank | |||
Field35 | Detail1 | Character | 60 | Optional | Optional narrative | Initial purchase of units |
Field36 | Detail2 | Character | 60 | Optional | Optional narrative |
|
Field37 | Detail3 | Character | 60 | Optional | Optional narrative |
|
Field38 | Detail4 | Character | 60 | Optional | Optional narrative |
|
Field39 | Ignore | No Data – this field is ignored by the import | Field must exist, but leave blank | |||
Field40 | Ignore | No Data – this field is ignored by the import | Field must exist, but leave blank | |||
Field41 | TRANEXTREF | Character | 10 | Optional | External Record Reference | REF12345 |
Field42 | Sale or Purchase | Character | 2 | Mandatory | (S)ale or (P)urchase | P |
Field43 | Ignore | No Data – this field is ignored by the import | Field must exist, but leave blank | |||
Field44 | Ignore | No Data – this field is ignored by the import | Field must exist, but leave blank | |||
Field45 | Ignore | No Data – this field is ignored by the import | Field must exist, but leave blank | |||
Field46 | Ignore | No Data – this field is ignored by the import | Field must exist, but leave blank | |||
Field47 | UserID | Character | 3 | Optional | User Initials | FPS |
Field48 | Value Date | Date/Time | 8 | Optional | Value Date (if different from Bargain Date) DD/MM/YY | 12/01/24 |
Field49 | Entry Date | Date/Time | 8 | Optional | Entry Date (if required) DD/MM/YY | 14/01/24 |
Field50 | Ignore | No Data – this field is ignored by the import | Field must exist, but leave blank | |||
Field51 | Ignore | No Data – this field is ignored by the import | Field must exist, but leave blank | |||
Field52 | RECORDTYPE | Character | 10 | Mandatory | BARGAIN | BARGAIN |
An example investment import file (csv format) is attached.
Content is confirmed as:
,,,4948.75,,GBP,,,FPS986,001,FPS986,12-Jan-24,,,,,,,,,,,,,,,,,4700,1.0425,B012YP7,,,,Initial purchase of units,,,,,,REF12345,P,,,,,FPS,12-Jan-24,14-Jan-24,,,BARGAIN
,,,10070.21,,USD,,,FPS986,001,FPS986,12-Jan-24,,,,,,,,,,,,,,,,,4200,2.3645642,B012YP7,,,,Initial purchase of units,,,,,,0327D313E6,P,,,,,FPS,12-Jan-24,14-Jan-24,,,BARGAIN
This article is confirmed to be applicable from Troika release 2.08.027.