Vous êtes sur la page 1sur 63

Functional Specifications Status - Final Volume 1 1.

6 Currency Services 9NT979-Fusion FLEXCUBE July 2009

Document Control
Author: M S Iyer Created on : 07 Aug 09 Updated by : Updated on : Group: Banking Products Division Revision No : 1.6 Reviewed by : Anup Sasikumar Reviewed on : Approved by: Approved on :

Revision History
Version 1.0 1.1 Date Author M S Iyer M S Iyer Sections Changed a) 3.1.1.4, b) 3.1.8.4 c) 3.1.9 d)3.2.20 Description of changes Draft version a) Position General Ledger, Position Equivalent General Ledger & Generate 103+ dropped. Currency Master Table dropped. Currencies float days Field added. b) Currency 2 has been dropped. c) Enquiry screen dropped. d) Limits for Cross currency transactions dropped. CCBs comments incorporated a) Dropped the Float days field & added Fields weekly holiday1 and weekly holiday2. b) Dropped Source Field from the Rate Type/ Code Maintenance Table c) Included Columns Editable and Validations in all the maintenance Table. Also specified validations for each fields.

07-Aug-09

1.2

25-Aug-09

M S Iyer

a) 3.1.1.4 b) 3.1.3.4 c) 3.1.8.4

1.3 1.4

02-Sep-09 03-Sep-09

M.S.Iyer M S Iyer

3.1.1.4 3.2.1.2 3.1.1.4

a) Inserted Currency Symbol Field in Currency Definition. a) Processing Service Currency Rate Propagation has been dropped b) Added Field in Currency Definition for User Ref. No. if uploaded through an external system.

1.5

23-Sep-09

M S Iyer

3.1.1.4 3.2.12

a) Dropped Fields Cut-off Days, Cutoff Hours and Cut-off Minutes b) Dropped Processing Service Get Currency Cut-off time

1.6

09-12-2009

M S Iyer

3.1.2.3 3.1.4.4 3.1.5.4 3.1.8.4 3.1.2.3

a) The Length of Bank Code has been increased to 10 (to bring similarity with the Core Maintenance) b) Unique constraint validation for ISO Numeric Currency code instead of Alternate Currency Code. c) Removed Validation of No. of units and Spread Definition for Thru Currency. d) Modification in the weekly holidays defined in Currency Maintenance has to automatically update the Currency Calendar. a) Incorporation of revised Audit Trail and Action Functions a) Changed Weekly Holidays 1 and Weekly Holidays2 Field as Optional instead of Mandatory.

1.7

5-1-2010

M S Iyer

3.1.1.6 3.1.1.7

1.8

8-1-2010

M S Iyer

3.1.1.4

Table of Contents

Introduction ....................................................................................................................... 5
1.1 1.2 1.3 1.4 Background ................................................................................................................................... 5 Organization of the Document .................................................................................................... 5 Acronyms and Abbreviations ...................................................................................................... 5 References .................................................................................................................................... 5

Overview of the Proposed System ................................................................................... 6


2.1 2.2 2.3 2.4 2.5 Introduction ................................................................................................................................... 6 Scope of the System .................................................................................................................... 6 System Features ........................................................................................................................... 6 System Functions ......................................................................................................................... 7 External Interface.......................................................................................................................... 8

System Functions.............................................................................................................. 9
3.1 Currency Maintenance Services ................................................................................................. 9
Maintenance of Currency Definition ...................................................................................................9 Definition ................................................................................................................................................9 Entity Level .............................................................................................................................................9 Pre-requisite ...........................................................................................................................................9 Input/Validations Approach .................................................................................................................9 Use Case Diagram ............................................................................................................................... 15 Action Features .................................................................................................................................... 17 Audit Trails ........................................................................................................................................... 18 Maintenance of Currency Pair ........................................................................................................... 20 Definition .............................................................................................................................................. 20 Entity Level ........................................................................................................................................... 20 Pre-requisite ......................................................................................................................................... 20 Input/Validations Approach ............................................................................................................... 20 Use Case Diagram ............................................................................................................................... 26 Action Features .................................................................................................................................... 26 Audit Trails ........................................................................................................................................... 26 Maintenance of Currency Rate Type ................................................................................................ 26 Definition .............................................................................................................................................. 26 Entity Level ........................................................................................................................................... 27 Pre-requisite ......................................................................................................................................... 27 Input/Validations Approach ............................................................................................................... 27 Use Case Diagram ............................................................................................................................... 27 Action Features .................................................................................................................................... 28 Audit Trails ........................................................................................................................................... 28 Maintenance of Exchange Rate for Rate Types ............................................................................... 28 Definition .............................................................................................................................................. 28 Entity Level ........................................................................................................................................... 28 Pre-requisite ......................................................................................................................................... 28 Input/Validations Approach ............................................................................................................... 29 Use Case Diagram ............................................................................................................................... 33 Action Features .................................................................................................................................... 34 Audit Trails ........................................................................................................................................... 34 Maintenance of Forward Rates ......................................................................................................... 34 Definition .............................................................................................................................................. 34 Entity Level ........................................................................................................................................... 35 Pre-requisite ......................................................................................................................................... 35 Input/Validations Approach ............................................................................................................... 35 Use Case Diagram ............................................................................................................................... 38 Action Features .................................................................................................................................... 38 3.1.1 3.1.1.1 3.1.1.2 3.1.1.3 3.1.1.4 3.1.1.5 3.1.1.6 3.1.1.7 3.1.2 3.1.2.1 3.1.2.2 3.1.2.3 3.1.2.4 3.1.2.5 3.1.2.6 3.1.2.7 3.1.3 3.1.3.1 3.1.3.2 3.1.3.3 3.1.3.4 3.1.3.5 3.1.3.6 3.1.3.7 3.1.4 3.1.4.1 3.1.4.2 3.1.4.3 3.1.4.4 3.1.4.5 3.1.4.6 3.1.4.7 3.1.5 3.1.5.1 3.1.5.2 3.1.5.3 3.1.5.4 3.1.5.5 3.1.5.6

3.1.5.7 3.1.6 3.1.6.1 3.1.6.2 3.1.6.3 3.1.6.4 3.1.6.5 3.1.6.6 3.1.7 3.1.7.1 3.1.7.2 3.1.7.3 3.1.7.4 3.1.7.5 3.1.7.6 3.1.8 3.1.8.1 3.1.8.2 3.1.8.3 3.1.8.4 3.1.8.5 3.1.8.6

Audit Trails ........................................................................................................................................... 38 Maintenance of Amount Text ............................................................................................................ 38 Definition .............................................................................................................................................. 38 Entity Level ........................................................................................................................................... 38 Pre-requisite ......................................................................................................................................... 38 Input/Validations Approach ............................................................................................................... 38 Action Features .................................................................................................................................... 41 Audit Trails ........................................................................................................................................... 41 Maintenance of Currency Denomination .......................................................................................... 41 Definition .............................................................................................................................................. 41 Entity Level ........................................................................................................................................... 41 Pre-requisite ......................................................................................................................................... 41 Input/Validations Approach ............................................................................................................... 41 Action Features .................................................................................................................................... 42 Audit Trails ........................................................................................................................................... 42 Currency Branch Parameter Maintenance ....................................................................................... 43 Definition .............................................................................................................................................. 43 Entity Level ........................................................................................................................................... 43 Pre-requisite ......................................................................................................................................... 43 Input/Validations Approach ............................................................................................................... 43 Action Features .................................................................................................................................... 44 Audit Trails ........................................................................................................................................... 44 Amount Rounding Rule and Rounding Unit .................................................................................... 45 Amount Format................................................................................................................................... 46 Get Rate .............................................................................................................................................. 47 Get Rate and Spread .......................................................................................................................... 49 Calculation of Exchange Rate based on Through Currency .......................................................... 49 Spot Rate ............................................................................................................................................ 51 History Rate ........................................................................................................................................ 51 Amount1 to Amount2 Conversion .................................................................................................... 51 Amount to Rate................................................................................................................................... 52 Forward Rate Computation ............................................................................................................... 52 Last Rate Date .................................................................................................................................... 54 Currency Purge .................................................................................................................................. 55 Spread Calculations ........................................................................................................................... 55 Spread Type Calculation & Calculation of Buy and Sell Rate ........................................................ 57 Spot Days ............................................................................................................................................ 58 Settlement Days ................................................................................................................................. 58 Number of Units ................................................................................................................................. 59 Currency Denominations ................................................................................................................... 59

3.2

Currency Processing Services .................................................................................................. 44

3.2.1 3.2.2 3.2.3 3.2.4 3.2.5 3.2.6 3.2.7 3.2.8 3.2.9 3.2.10 3.2.11 3.2.12

3.3

Illustrations ................................................................................................................................. 55

3.3.1 3.3.2 3.3.3 3.3.4 3.3.5 3.3.6

4 5 6 7

User Interface....................................................................................................................60 Security .............................................................................................................................60 Pending Issues .................................................................................................................60 Annexure ...........................................................................................................................60


7.1 7.2 7.3 7.4 Annexure A: Requirements - Functions Matrix ....................................................................... 60 Annexure B: Screen Layouts .................................................................................................... 61 Annexure C: Report Layouts ..................................................................................................... 61 Annexure D: References ............................................................................................................ 61

1 Introduction
1.1 Background
Fusion FLEXCUBE is proposed to be a composed set of different modules for Treasury, Trade Finance, Foreign Exchange, Money Market, Fund Transfer etc. Each of these modules will be serviced by a set of sub-system such as Brokerage, Tax etc. The Core services will be the first set of services which is being built for Next Generation Product [NGP]. All the other modules will be built subsequently. Currency Service will be part of the Core Services. This document specifies a set of business objects and related abstractions as a proposed standard to support international currency. It describes the objectives and business requirements for each object. This document will be base-lined after completing the review by client, peers, experts and SQA. The review comments will be incorporated before the document is base-lined. The audience for this document will be the development groups of ORACLE Fusion FLEXCUBE Universal Banking and SQA.

1.2 Organization of the Document


The first chapter of this document gives an introduction with brief background and organization of the document. Chapter two onwards describe the functional specifications for various enhancements documented in the requirement specifications document. RS items to FS items mapping matrix can be found at end of the document.

1.3 Acronyms and Abbreviations


FS NGP Functional Specifications Next Generation Product

1.4 References
None

2 Error! Not a valid bookmark self-reference.Overview of the Proposed System


2.1 Introduction
Oracle has now embarked on the development of a next generation product christened as Oracles Fusion FLEXCUBE, which will seek to integrate, some of the diverse functionalities of its existing suite of core banking system products. This next generation product is proposed to be built around a modular architecture, where each module would manage the functionalities required in the different business areas like Trade Finance, Retail Loans etc. Oracle proposes to develop Fusion FLEXCUBE, with a plethora of common services to meet the needs of the various modules of this Next Generation Core Banking System. The Currency Services in Oracles Fusion FLEXCUBE, is one such common service, which is to be used by these different modules, and will provide a variety of support functions to them. These Currency Services are proposed to be embedded in the Common services of the NGP Fusion FLEXCUBE. Any System that will require currency related service for its operations will refer to the Currency Service. This specification standardizes objects encompassing the concept of currency. This does not limit the specification to those abstractions, but extends to other abstractions necessary for comprehensive interfaces. .

2.2 Scope of the System


The Currency Services will be part of the core service module of Oracles Fusion FLEXCUBE and will serve to record and retrieve the various currency related information. The Functional Specification will cover the understanding of various maintenances and services that are supported (or) required to be supported by a currency services. Wherever applicable, the Use Case diagram for the currency service has been provided for. The following lists of static maintenance are required as a prerequisite to implement the currency service: Language Code Maintenance Country Code Maintenance Branch Code Maintenance

2.3 System Features


Oracles Fusion FLEXCUBE is bequeathed with a variety of unique and versatile features to meet the varying challenges of Oracles customers. The batten of some of these features, have been clearly laid out in the currency services which in turn, is embedded in its common services. The currency services in common services have the following features for maintaining currency attributes for various purposes and modules of the core banking system. The currency services system is also blessed with the standard audit trail and action functions, which enable a unique set of actions and a comprehensive audit tracking system.

These features have been organized into the following functions:Main Maintenances to record the various requirements for the services Processing services detailing a list of available methods

2.4 System Functions


The main functions of the Currency Service System are to Maintain Currency and Exchange rate related information and provide Services to other system as and when required or called for. The high level use case diagram for the maintenance of Currency Services is as given below:

System Forward Rates

CurrencyCountry Mapping uses Currency

CurrencyPair

Currency RateType Admin <<uses>> <<uses>> <<uses>> Currency Rate <<uses> Historical Rates

Currency Denom

AmountText

Fusion FLEXCUBE will be a multi-currency system. Transactions initiated through various product services and accounts will be in multiple currencies and the system will require a set of multi currency support services to define and handle multi-currency transactions and accounts.

The list of services being provided is as listed below:

Sr. No.
1 2 3 4

Name of the Service


Maintenance Services Currency Currency Pair Currency Rate Types Exchange Rate for Rate Types

Description
Service to define Currency and maintain Currency Information. Service to define currency pairs and basis properties for the currency pair. Service to maintain different Rate Types Service to maintain Mid-rates/ Buy Spread/ Sell Spread/ Buy Rate/ Sell Rate by Currency Pair + Rate Type Service to maintain Historical/back value dated rates for Rate Types Service to maintain forward points for different currency pairs. Service to maintain verbal equivalent of numerals. Service to define denomination for Currency Service to maintenance attributes of a currency that will be specific to a branch. Service to perform rounding for a given amount and currency code/ Service to compute the rounding of amount based on the Rounding Rule logic Amount formatting as per number of decimal and format mask maintained for different currencies Service to derive currency rates based on various parameters Service to derive currency rates based on various parameters Service to Compute exchange rate through a Third Currency Service to derive Spot Rate Service to derive currency rates based on various parameters Service to convert one amount to another based on the applicable exchange rates Service to derive exchange rate for a given amount and currency pair Service to compute the forward rate Service to compute the latest rate date among two currencies from the Currency Rate objects Service to purge the History rates beyond the Currency purge days.

5 6 7 8 9

Historical Rates Forward Rates Amount Text Currency Denomination Currency Branch Parameter Processing Services Amount Rounding Rule and Rounding unit

10

11 12 13 14 15 16 17 18 19 20 21

Amount Format Get Rate Get Rate and Spread Calculation of Exchange Rate based on Through Currency Spot Rate History Rate Amount1 to Amount2 Conversion Amount to Rate Forward Rate Computation Last Rate Date Currency Purge

2.5 External Interface


The System can be linked to the external systems viz. Reuters/ Bloomberg etc for taking the rate feed from the external systems.

3 System Functions
3.1 Currency Maintenance Services
3.1.1 Maintenance of Currency Definition

3.1.1.1 Definition
The Currency Definition is used to define the static attributes of the currencies used in a bank. For each currency the user can define attributes like International Code for the Currency, Rounding Rule, Spot Days, and Interest Methods etc. The Currency Definition will have both authorized and unauthorized records of the Currency Definitions.

3.1.1.2 Entity Level


This maintenance will be common across the bank and branches (Instance level).

3.1.1.3 Pre-requisite
As mentioned in 2.2 Scope of the System

3.1.1.4 Input/Validations Approach


The description of the data elements of the Currency Definition Screen is as given below: Sl N o 1 Field Name Currency Code Field Type Text Item Data Type Alpha numeric Lengt h 3 Natur eM/ O M Description Editable Validations

Currency Descriptio n Currency Symbol Alternate Currency Code ISO Numeric Currency Code

Text Item

Alpha numeric

105

2a

Text Item Text Item Text Item

Alpha numeric Alpha numeric Alpha numeric

The currency will be identified by this code in all transactions that involve it. E.g. USD, GBP etc. The User can enter the detailed name of the Currency. E.g. Canadian Dollar The symbol which is to be used for the currency Alternate Currency Code is used during interfacing with other Systems. Identifies the currency code specified by the International Standardization Organization

No

Has to be unique and not blank

No

Yes

10

Yes

Yes

This Currency code has to be unique

Country

LOV

Alpha numeric

Decimals

Text Item

Number

Interest Method

List Item

Number

Identifies the country code identifier from country object. After the User identifies the currency, the User will have to indicate the country to which the currency belongs. The option will be given to the user to select a country code from the pick list available. Option for the User to indicate the number of decimal units up to which the Currency can be denominated. The number of decimals allowed for any amount in the currency can be: (a) 0 Currency with no decimals (b) 2 Currency with two decimals (c) 3 Currency with three decimals The User should select the interest method that will be used by default whenever the currency is used in transactions. Values are a) Actual/Actual b) 30(US)/360 c) 30(Euro)/360 d) Actual/360 e) 30(Euro)/365 f) 30(US)/365 g) Actual/365 h) 30(Euro)/Actual i) 30(US)/Actual.

Yes

Has to be a valid country code from the country definition table.

No

The decimal has to adhere to the rounding unit specified.

Yes

The field value should be from the selection list.

Spot Days

Text Item

Number

Rounding Rule

List Item

Alphanu meric

Identifies the Credit Value Date, Rate Date (for Value Dated) for Funds Transfer. The number of spot working days applicable for the currency. [Payment advices are generated number of spot days before the maturity date]. The number of spot working days applicable for the currency is specified here. Payment advises for FX and MM contracts will be generated on a date, which is calculated as the number of spot working days before the Maturity Date of the contract. The rounding rule refers to the method to be followed for rounding off fractional units of a currency. The options are: (a) Round Down The amount is rounded down based on the number of decimals and the nearest rounding unit. (b) Round Near - The amount is rounded down or rounded up based on the number of decimals and the nearest rounding unit. ( c) Truncate - The amount is truncated to the number of decimals specified for the currency (d) Round Up - The amount is rounded up based on the number of decimals and the nearest rounding unit. Refer example 1 below.

Yes

The spot days will be of maximum length - 3

Yes

The field value should be from the selection list.

10

Rounding Unit

Text Item

Number

If the User has selected Round Up or Round Down in the Rounding Rule field, then the User need to indicate the nearest unit to which the rounding will take place. In case the option has been selected as truncate, then the Rounding Unit will not be applicable. Refer example in Processing Service The User can specify the format in which amounts in this currency are to be displayed for contracts in this currency. The values are Values are 99,999,999,999 or 9999, 99, 99,999. The system would default to the 999,999,999 format. Using this option the user can indicate the holiday in a week for the Currency. The user should be able to select the day for holiday from dropdown list. If user wants to set only one holiday in a week for the Currency, then the user will select the day for Weekly Holiday 1 and leave Weekly Holiday 2 Blank. If user wants to opt for two holidays in a week, then user will select the days for Weekly Holiday 1 & Weekly Holiday 2. The values will be as follows:1 - Sunday 2 - Monday 3 - Tuesday 4 - Wednesday 5 - Thursday 6 - Friday 7 Saturday Whenever the weekly holidays are modified in the Currency Definition,

Yes

The number of units specified here would not be greater than the number of decimals allowed for the currency.

11

Amount Format Mask

Radi o Butto n

Alphanu meric

Yes

12

Weekly Holiday 1

List Item

Number

Yes

Has to be from the valid selection list.

the same has to updated in the Currency Calendar automatically. 13 Weekly Holiday 2 List Item Number 1 O Same as above Yes Has to be from the valid selection list. The will be of maximum length - 3

14

15

16

Generatio n of Payment Messages prior to Settlemen t days Generatio n of Receive Messages prior to Settlemen t days Source

Text Item

Number

Identifies the number of working days prior to the settlement date, the pay messages need to be generated

Yes

Text Item

Number

Identifies the number of working days prior to the settlement date, the receive messages need to be generated

Yes

The will be of maximum length - 3

Text Item

Alpha numeric

20

17

User Reference No.

Text Item

Alpha numeric

20

Identifies the source system if currency is uploaded from an external system Identifies the source reference number if currency is uploaded from an external system

No

No

Upload An option to upload the currencies from the external system will be provided. The system will support the upload through auto batch as well as manual upload by users. There will be a separate screen defined for each of the upload option. Apart from the fields defined in the currency definition, the following data elements will be additionally captured Sl No Field Name Field Type Data Type Length Nature M/O Description Editable Validations

18

Upload Status

Text Item

Alpha numeric

19

Error Message

Text Item

Alpha numeric

255

Upon upload of the file this field identifies whether the upload status is Processed, Unprocessed or Error. Once the file is successfully uploaded, the records need to be updated in the Currency Definition Table. The type of the file to be supported for upload in the system shall be standard type of file across all the modules of Fusion FLEXCUBE. Identifies the error message encountered as part of upload. In the event of an error in one of the field in the file, the file would be uploaded and placed in the Unprocessed queue. The Pop error message would be displayed stating the error. The file would not be allowed to save unless the error in the field is corrected/ rectified. While the user views the record on the screen, the field would be marked with different color to convey the message that the field is having error.

No

Will be populated by the system

No

Will be populated by the system

Currency Country Mapping There has to be a provision in the screen for Currency Country Mapping. The User can map a Currency Code to a Country. The currency-country mapping will have all the countries which could share the same currency. For example, the currency EUR could have the primary country as Germany and have Italy, Slovakia, and Netherlands as additional countries (in the currency country mapping) with same currency. These values are stored only for information purpose. The description of the data elements of the Currency Country Mapping is as given below : Sl No 1 Field Name Currency Code Field Type Text Item Data Type Alpha numeric Length Nature M/O M Description Editable Validations

The User would be able to select from the pick list the Currency Codes.

No

In the User Interface , this will be shown commonly from the Currency Maintenance

Currency Description

Display Item

Alpha numeric

105

Country Code

LOV

Alpha numeric

The System would automatically populate the Currency Description from Currency Definition Screen. The field would only be a display field. The User should be able to select from the pick list of the Country Codes.

No

Yes

Country Description

Display Item

Alpha numeric

105

Name of the Country. The system would automatically populate the Country Description from Country Code Maintenance Table. The field would be a display field.

No

Has to be a valid country code from the Country Code definition Table -

3.1.1.5 Use Case Diagram


Creating a New Record for Currency Maintenance
System

Admin/Bank User

Login to Curreny Maintenance-Currency Definition Screen

Select from the List of Actions eg. New for creating New Record

Capture the details viz. CCY Code, CCY Decimals, Rounding Rule, Format mask, Interest Methods, Currency Cut-off days and Time Spot days etc.

List of Action New Copy Delete Unlock Re-open Close Save Authorize Query Map the Country to the Curency Code in the sub screen Currency Country Mapping.

Save the record if all the Mandatory Fields have been captured

Uploading the Record

System

Admin/Bank User

Login to Curreny Maintenance-Currency Definition Screen

Click the Upload Button and browse and select the file that needs to be upload in the system.

Click Upload.

List of Action New Copy Delete Unlock Re-open Close Save Authorize Query

In case of an error, the System should display the details of the error in the pop up screen. If the user press "ok", the system should come out without saving/uploading the details.

If the file is uploaded successfully, the system should give the pop up message "File uploaded Successfully".

Modifying the Record

System

User Login User

Go to the Currency View. Select and open the record whcih needs to be modifed and clik on 'Unlock'. The record is now ready for modification.

List of Action New Copy Delete Unlock Re-open Close Save Authorize Query

Modify the required details and check for its correctness.

If the details are in order, Save the record.

Authorize the Record.

System

Authorizer Login Authorizer

Select 'Authorize' from the list of Action and select the record to Authorized Verify the details for its correctness.

List of Action New Copy Delete Unlock Re-open Close Save Authorize Query

If the details are in order, Authorize the record. Else, intimate the User to modify the record

3.1.1.6 Action Features

Sl No 1

Action/ Field Name Create

Description

Update

Close

Reopen

Approve

The create action is used to create a new instance or record of a maintenance. A new maintenance screen with blank fields will be displayed to the user. If a record already exists then an error is displayed to the user. The update action modifies or updates an existing instance or record of the maintenance. This mode will be applicable for an approved record. It will also be applicable for an unapproved record only if it is owned by the same user. The user who created the unapproved record alone can modify or update the unapproved record. Moreover, only certain attributes of a record can be changed after it has been recorded and authorized. These attributes are classified as "editable" in the various requirement tables given in this document. The close action temporarily closes an existing instance or record of maintenance. Only an existing, approved and active record can be closed. A closed record cannot be used for business transactions. A record can be closed only if it is not linked to any other table. The reopen action reopens a closed record or maintenance. A closed record which has been approved alone can be reopened. This action would reinstate a previously closed instance or maintenance. The approve action is used to either authorize or reject a record or maintenance. Approval of a record enables it to be visible for business transactions. It is required to be executed to create, update, close or re-open a record. In case of an approval for update action the modified fields will be displayed in a different color. An Approval would always increment the version of the record or maintenance by 1. For a create action alone, the approval will associate a version number to the record. The approve action

has to be performed before the End Of Day operations can begin. It can be carried out by a User known as the checker and different from the User (known as Maker) who has created, updated, closed or reopened the maintenance.

Fetch

Delete

8 9

Save As Draft Copy

This action is used to query a record from database. The query condition is based on the values provided for the primary key fields. Summary screen would be used to query records for any other criterion. Query action results either in one record or no record since it is primary key based. This action is used to delete a record. A record can be deleted at any time prior to the authorization of the record. A record can be deleted only from the detailed view of the record. The deletion in this action is a hard delete. A deleted record cannot be recovered This action is used to save the record. The saved record needs to be authorized by an authorizer This action copies the details of the record on display onto a new record. The user has to query a record in order to copy. All the values except for primary key fields are retained in copy action.

These actions are a part of the common browser which the User will be able to access upon invoking each of the screens. A User is required to click on these icons in order to perform any of the above actions on all the Currency Services Maintenances.

3.1.1.7 Audit Trails

The following are the audit trail functions that appear at the bottom of each of the maintenance screens. These fields display the status of the record along with the latest details of the User and the Authorizer.

Sl No

Audit Parameter

Field Type

Data Type

Length

Nature M/O

Description

Editable

Validations

Maker ID

Text Item

Alpha Numeric

12

This field identifies the user who has created the new maintenance, or modified the existing maintenance or deleted an existing maintenance This field identifies the date and time the maintenance was raised. It will be updated for each new record created, modified or deleted by the User ID.

No

Populated by system

Maker Date & Time

Text Item

Date

No

Populated by system

Checker ID

Text Item

Alpha Numeric

12

Checker Date & Time Version Number

Text Item

Date

Text Item

Numeric

Record Status

Text Item

Alpha Numeric

Authorizati on Status

Text Item

Alpha Numeric

This field identifies the user who has authorized the data input. It will be updated for all authorizations for new records, modified records and deleted records. This field identifies the date and time the authorization has been effected This field describes the current version of the operation/modification/ record. This number will increase with every change made to the record. This Field will identify whether the Operation/Maintenanc e/record is active or closed. This Field will have two values [checkbox] (a) Active (b) Closed. This Field identifies whether the operation/ Maintenance/record has been authorized or Unauthorized This field identifies the last action performed on the maintenance namely, Add, Modify, Delete, Close, Reopen & Authorize.

No

Populated by system

No

Populated by system

No

Populated by system

No

Populated by system

No

Populated by system

Last Maintenanc e Action

Text Item

Alpha Numeric

No

Populated by system

A detailed Audit Trail is maintained by the system on all the activities performed by the user from the moment of login. This audit trail lists all the functions invoked by the user, along with the date and time. The program reports the activities, beginning with the last one. It can be displayed or printed. The records can be optionally purged once a printout is taken. Facility for the user/ administrator to enquire from the Front-end screen about various changes or activities carried out [viz. modify, add, delete, enquire etc.] based on various search criteria, for e.g. User Id, Branch code etc. In case of modifications the old values and the new values needs to be stored and would be displayed on the screen when the user enquires.

3.1.2

Maintenance of Currency Pair

3.1.2.1 Definition
In the foreign exchange markets, the exchange rates for some currency pairs such as the USDGBP or USD-JPY are easily obtainable, since these are frequently traded. The exchange rates of other currencies such as the ZAR-INR (South African Rand - Indian Rupee), which is not traded very often, is determined through a third currency. This third currency is usually the Local Currency or US dollar, since the US dollar is quoted in all trading center. In the Currency pair definition screen the User defines the static attributes of currency pairs for which a regular market quote is readily available. For other pairs, which do not have a regular market quote, the user also specifies the third currency through which the system would compute the exchange rate. Entity Level Currency pair details can be maintained separately for each branch (Branch Level).

3.1.2.2 Pre-requisite
Maintenance of Currency Definition

3.1.2.3 Input/Validations Approach


The description of the data elements of the Currency Pair Maintenance is as given below :

Sl No 1

Field Name Bank Code

Field Type Text Item

Data Type

Length

Nature M/O M

Description

Editable

Validations

Alpha numeric

10

Branch Code

Text Item

Alpha numeric

Currency1

Text Item

Alpha numeric

This field identifies the Bank Code. The User should be able to select from the dropdown list the specific Bank Code. This field identifies the Branch Code. The User should be able to select from the dropdown list either specific Branch or ALL. The default value would be ALL. Identifies the currency code 1 identifier from currency object

No

Has to be unique and not blank

No

Has to be unique and not blank

No

The two currencies must be distinct. Has to be unique and not blank

Description

Display Item

Alpha numeric

105

Currency2

Text Item

Alpha numeric

The system would automatically populate the Currency Description from Currency Definition Screen. The field would only be a display field. Identifies the currency code 2 from currency object.

No

No

The two currencies must be distinct. Has to be unique and not blank. If the user tries to create the existing Currency Pair, then the system would display an error message stating Record already exists for Currency Pair XXX and XXX. This is applicable even for the creation of Inverse Records where original pair already exists. -

Description

Display Item

Alpha numeric

105

The system would automatically populate the Currency Description from Currency Definition Screen. The field would only be a display field. A currency pair (specified as

No

Currency1 and Currency2, represents the two currencies for which the User need to maintain exchange rates.

Through Currency

Check box

Alphanumeric

If the exchange rate for a particular currency pair is not to be maintained, then the User should specify the Through Currency via which the exchange rate between the currencies would be calculated. A check box would be provided for the User to select the Through Currency. For example, in the case of GBP-NLG, for which a direct exchange rate may not be available, the User can define a through currency say, USD. The exchange rate between GBPUSD and NLGUSD would be picked up by the system to compute the exchange rate between GBPNLG. In the absence of a direct exchange rate, the system will look for a through currency to compute the rate. If a through currency has not

Yes

If the User specifies the details of Through Currency without checking the Check Box, then the system would display error message as Through currency would be null if the through currency is unchecked.

been maintained then the System will through an exception. When a user defines Through Currency for a Currency Pair, then the User should not be allowed to define the (i) Spread Definition and (ii) Number of Units.

Through Currency Code

LOV

Alpha numeric

The User should be able to select the currency code from the pick list, which the User wants to specify as the through currency. The exchange rate for the currencies involved in the pair will be calculated using the through currency.

No

Has to be a valid currency as in currency definition screen. This field is mandatory if through currency flag is checked.

Quotation Method

Radio Button

Alphanumeric

This is the method to be followed for quoting the exchange rate. There are two methods direct and indirect. A radio button would be provided as an option for the User to Choose the Values between Direct and Indirect. For Direct, Buy Rate = mid rate - buy spread; Sell Rate = mid rate + sell spread CCY1 = Rate * CCY2 For Indirect, Buy Rate = mid rate + buy spread; Sell Rate = mid rate - sell spread CCY2 = Rate * CCY1. For e.g. The market follows the direct quote convention for the currency pair USD-CHF e.g., 1USD=1.082. To maintain this pair, the User should specify currency 1 as USD and currency 2 as CHF, and specify direct in this field. The Default value is Direct.

No

For Direct Quotation none of the fields are modifiable

10

No. of Units

Radio Button

Number

This indicates the number of units of currency to be used for currency conversion. The Values are (a) One (b) Hundred (c) Thousand. Refer example in the Processing Service.

Yes

Whenever, the user define a through currency for a currency pair, then the user will not be allowed to specify the following for the pair: (a) Number of units (b) Spread definition

11

Spread Definition

Radio Button

Alpha numeric

The User need to indicate the method in which the spread for a currency pair needs to be defined. The values for this field are (a) Points (b) percentage. The User would be provided with the radio button to select the option. Refer example.

Yes

12

Points Multiplier

Text Item

Number

Points are the smallest unit of measurement in the exchange rate of a currency pair. If the user has opted for a points system of defining spread, then the User should specify the multiplication factor for the points to compute effective spread.

Yes

Whenever, the user define a through currency for a currency pair, then the user will not be allowed to specify the following for the pair: (a) Number of units (b) Spread definition Applicable for spread definition in points only and through currency flat is No. The points multiplier will be of length 7 (with 6 decimal places). It should not be greater than 1 and less than 0 -

13

Source

Text Item

Alpha numeric

35

Identifies the source system if currency pair is uploaded from an external system

No

An option to upload the data elements from the external system would be provided for this maintenance. The Upload Status would be similar to the format mentioned in 3.1.1.3 (point no. 18 & 19). There will be a separate screen defined for each of the upload option. For all Currency pairs, the actual record and an offset/inverse record needs to be created in the processing table. For e.g. If the User sends the Currency Pair as USD/INR and the USD amount is 100. Then the System can calculate the INR amount as USD 100 x 45 = 4500. (Assuming USD/INR Rate is maintained as 45.00). However, if the User sends the Currency Pair as INR/USD and the INR amount as 4500. Then the system would use the exchange rate for USD/INR which is maintained as 45 and calculate the amount as INR 4500/45.00 = USD 100. Alternatively, if the User sends the Currency Pair as INR/USD and USD amount as 100, then the calculation Formulae would be USD 100 * 45 = INR 4500.The advantage is that the User need not have to maintain separate pair for both USD/INR and INR/USD.

3.1.2.4 Use Case Diagram


Create a New Record for Currency Pair.
System Login to Curreny Maintenance-Currency Pair Screen Select from the List of Actions eg. New for creating New Currency Pair Record

Admin/Bank User

Save the record if all the Mandatory Fields have been captured

Capture the details viz. CCY1, CCY2, Through CCY if applicable, Quotation, Units, Spread definition etc.

3.1.2.5 Action Features


The action features will be similar to the format mentioned in 3.1.1.6

3.1.2.6 Audit Trails


The audit trail features will be similar to the format mentioned in 3.1.1.7

3.1.3

Maintenance of Currency Rate Type

3.1.3.1 Definition
This is the rate type for which the banks maintains exchange rate for the Currency pair. For different transaction categories, the bank would like to maintain different exchange rates. For e.g.

A Travelers cheque, is bought at a certain exchange rate whereas the bill of exchange is bought at different rates. The Currency Rate Type is maintained at Banks level by the Head Office branch.

3.1.3.2 Entity Level


This maintenance will be common across the bank and branches (Instance level).

3.1.3.3 Pre-requisite
None

3.1.3.4 Input/Validations Approach


The description about the data elements on the Currency Rate Type is as given below: Sl No 1 Field Name Rate Type Field Type Text Item Data Type Alpha numeric Length Nature M/O M Description Editable Validations

10

Identifies the description for currency rate type. This is the rate type for which the User will maintain exchange rates for a currency pair. For different transaction categories the bank would like to maintain different exchange rates. For example, travelers check is purchased at a certain rate whereas a bill of exchange is bought at a different rate. Example of Rate Type could be Cash, Bills, DD, and Standard etc. If the user tries to save the existing details as new record, then the system would display an error message stating Record Already Exist and it would not allow the user to save the message. Identifies the description for Rate Type.

No

It should be unique and not blank

Description

Text Item

Alpha numeric

105

Yes

3.1.3.5 Use Case Diagram


Create a new record for Currency Rate Type.

System Login to Curreny Maintenance-Currency Rate Type Screen Select from the List of Actions eg. New for creating New Currency Rate Type Record

Admin/Bank User

Save the record if all the Mandatory Fields have been captured

Capture the details viz. Rate Type and Description

3.1.3.6 Action Features


The action features will be similar to the format mentioned in 3.1.1.6

3.1.3.7 Audit Trails


The audit trail features will be similar to the format mentioned in 3.1.1.7

3.1.4

Maintenance of Exchange Rate for Rate Types

3.1.4.1 Definition
A bank determines its buy and sell rate for a currency pair by applying a spread (i.e., its profit margin) to the mid-rate of the currency pair. Mid rate is the basic rate at which a currency pair is exchanged. The spread applied for a currency pair varies with the transaction type, while the mid-rate usually remains constant. Consequently, different rates are applicable to different transaction types. In the Currency Exchange Rate maintenance, the User can define the midrate, buy and sell spread applicable to each rate type, the buy and sell exchange rate are computed by the system. The Exchange Rate for a currency pair means the bank can buy and sell one currency for another at an appropriate applicable rate.

3.1.4.2 Entity Level


Currency exchange rate details can be maintained separately for each branch (Branch Level)

3.1.4.3 Pre-requisite
Maintenance for Currency Definition

Maintenance for Currency Pair Maintenance for Currency Rate Type

3.1.4.4 Input/Validations Approach


The description about the Maintenance on Currency Exchange Rate data elements is as given below: Sl No 1 Field Name Bank Code Field Type Text Item Data Type Alpha numeric Length Nature M/O M Description Editable Validations

10

This field identifies the Bank Code. The User should be able to select from the drop-down list the specific Bank Code. This field identifies the Branch Code. The user should be able to select from the drop-down list either specific Branch or ALL. The default value would be ALL.

No

Has to be unique and not blank

1a

Branch

Text Item

Alpha numeric

No

Currency1

Text Item

Alpha numeric

User would have the option of selecting the Currency from the List of Values which can be retrieved from Currency objects.

No

Has to be unique and not blank. In the User Interface, this will be shown commonly from the Branch Maintenance Has to be unique and not blank. The two currencies must be distinct and must have been defined as a currency pair without use of through currency

Currency2

Text Item

Alpha numeric

Source

Text Item

Alpha numeric

35

Rate Type

LOV

Alpha numeric

10

Mid Rate

Text Item

Number

Upon selecting the Currency1, all the Currency2 pair with currency1 would get automatically displayed based on the Currency pair maintenance. User should have option to select from the drop down the appropriate currency pair for maintaining the Exchange rate. The user will be able to maintain rates only defined currency pair. For e.g. the Currency pair defined is USD-INR and the user is trying to input rates for INR-USD, the system will not allow and it would be thrown as exception. Identifies the source system if the Rates are uploaded from an external system. Identifies the description for currency rate type. This is the rate type for which the User will maintain exchange rates for a currency pair. For different transaction categories the bank would like to maintain different exchange rates. For example, travelers check is purchased at a certain rate whereas a bill of exchange is bought at a different rate. Example of Rate Type could be Cash, Bills, DD, and Standard etc. The User should have the option to choose the Rate Type from the Pick list which would be retrieved from Rate Type table. Mid rate is an indicative exchange rate for a currency pair. It is the average of the buy and sell rate quoted by the market for a currency pair. For e.g. USD/CHF Buy/Sell rate is 1.2080/90. Then the Mid

No

Has to be unique and not blank. The two currencies must be distinct and must have been defined as a currency pair without use of through currency

No

No

Must be a valid Rate Type from the Rate Type Definition

Yes

Rate will be 1.2085.

Buy Spread

Text Item

Number

Sell Spread

Text Item

Number

Buy Rate

Text Item

Number

Identifies the buy spread. It is the profit margin specified over the mid rate when buying currency 1 for currency2. The User can define the buy spread in two ways -either in points or in percentage. The system would compute the effective buy spread for the User. Identifies the sell spread. It is the profit margin specified over the mid rate when selling currency 1 for currency2. The User can define the buy spread in two ways -either in points or in percentage. The system would compute the effective buy spread for the User. Buy rate is the rate of exchange for a currency pair, which would be computed by the system based upon the mid rate, the spread specified, the spread definition and the quotation method maintained in the Currency definition screen. Alternatively, the User should be provided with the option of Inputting the Buy Rate, in which case, the buy spread would be computed by the system for the rate type.

Yes

The Buy Spread cannot be negative.

Yes

The Sell Spread cannot be negative.

Yes

10

Sell Rate

Text Item

Number

11

Rate Date

Non UI Field

Date

Sell rate is the rate of exchange for a currency pair, which would be computed by the system based upon the mid rate, the spread specified, the spread definition and the quotation method maintained in the Currency definition screen. Alternatively, the User should be provided with the option of Inputting the Sell Rate, in which case, the sell spread would be computed by the system for the rate type. When the User enters the exchange rate for a currency pair, the system would default the Rate Date as the Application Date. This will be a running serial number for the Rate Date. The entry will be validated for uniqueness. For example, there could be only one exchange rate between USD and EUR for 31/07/2009 with Rate Type STANDARD with Rate Serial as 0001. Thus, this will be a unique rate serial for a currency pair, rate type combination for a given rate date. When the User enters the exchange rate for a currency pair, the system would default the Rate Date as the Application Date and the Rate Serial as the latest available serial for the currency pair + 1. The Rate Serial Number would be system generated. This number takes into account the Rate Serial Number present in the Currency Rates History screen too. The Rate Serial Number and the Rate Date would

Yes

No

12

Rate Serial

Non UI Field

Number

No

The rate date would always be less than or equal to the System date. This will be a unique rate serial for a currency pair, rate type combination for a given rate date.

also be displayed during authorization of the Rate in the Currency Authorization screen.

An option to upload the data elements from the external system would be provided for this maintenance. There will be a separate screen defined for each of the upload option. The Upload Status would be similar to the format mentioned in 3.1.1.3 (point no. 18 & 19).

Maintenance of Historical Rates


For each currency pair, it would be possible to store all the exchange rates maintained for various historical dates. The data structure for the same would be similar to the exchange rates maintenance mentioned above. On a daily basis, all the versions of exchange rates maintained for that date will be copied in the history maintenance. There will be no maintenance for historical exchange rates from the front-end. The Users will only be able to view the historical exchange rates through a User Interface.

3.1.4.5 Use Case Diagram


Create a New Record for Exchange Rate Maintenance.

System Login to Curreny Maintenance-Currency Exchange Rate Screen Select from the List of Actions eg. New for creating New Currency Rate Type Record

Admin/Bank User

Save the record if all the Mandatory Fields have been captured

(a) Select the Currency Pair (b) Select the Rate Type (c) The User can Input Mid Rate, Buy Spread and Sell Spreada and the system would calculate the Buy and Sell Rate and the same shall be displayed respectively under Buy and Sell Rate (d) Alternatively the user can input the Buy and Sell Rate and the System would automatically calcualte the Mid Rate, Buy and Sell Spread.

Uploading of the Exchange Rate


System Login to Curreny Maintenance-Currency Exchange Rate Screen

Admin/Bank User

Click on upload button and browse the file that needs to be upload. Then Click on upload button.

In case the system encounters with error, then the system shall display the error on the pop-up message along with a "ok" button. Once the user clicks on the "OK" button, then the system should come out of the pop up message without saving the records.

If the file is uploaded successfully, then the system shall give the pop-up message stating "The file is uploaded successfully".

3.1.4.6 Action Features


The action features will be similar to the format mentioned in 3.1.1.6

3.1.4.7 Audit Trails


The audit trail features will be similar to the format mentioned in 3.1.1.7

3.1.5

Maintenance of Forward Rates

3.1.5.1 Definition

Forward Rates are derived based on the spot rate and forward premium/ discounts. The forward rates are required for applying exchange for future dated transactions and for revaluations of forward positions. The forward rates are maintained for multiple future periods on any date.

3.1.5.2 Entity Level


Forward rate details can be maintained separately for each branch (Branch Level)

3.1.5.3 Pre-requisite
Maintenance of Currency Code Definition Maintenance of Currency Pair Definition

3.1.5.4 Input/Validations Approach


The description about the Maintenance on Forward Rate data elements is as given below: Sl No 1 Field Name Bank Code Field Type Text Item Data Type Alpha numeric Length Nature M/O M Description Editable Validations

10

This field identifies the Bank Code. The User should be able to select from the drop-down list the specific Bank Code.

No

Has to be unique and not blank

1a

Branch Code/ Name

Text Item

Alpha numeric

Currency1

Text Item

Alpha numeric

This field identifies the Branch Code. The user would be able to select from the drop-down list either specific Branch or ALL. The default value would be ALL. Upon selection of the Branch code, the name of the Branch would automatically get displayed. Identifies the currency code 1 identifier from currency object

No

This has to be a valid branch from branch definition.

No

This has to be a valid currency from the currency definition. Both the Currency1 and Currency2 should be distinct.

Description

Display Item

Alpha numeric

105

Currency2

Text Item

Alpha numeric

The System would automatically populate the Currency Description from Currency Definition Screen. The field would only be a display field. Identifies the currency code 2 identifier from currency object

No

No

Description

Display Item

Alpha numeric

105

Base Date

Display Item

Date

Spot Rate

Display Item

Number

The System would automatically populate the Currency Description from Currency Definition Screen. The field would only be a display field. A currency pair (specified as Currency1 and Currency2, represents the two currencies for which the User need to maintain exchange rates. This is a display field. When the User enters the exchange rate for a currency pair, the system would default the Rate Date as the Application Date. This would be the display field. The Standard Mid-rate from the Currency Exchange Rate would be picked up for display. Based on the Spot Rate and Premium/Discounts, the rates for the forward period will be calculated.

No

This has to be a valid currency from the currency definition. Both the Currency1 and Currency2 should be distinct. -

No

No

The rate date would always be less than or equal to the application date. -

Period

Text Item

Number

No

Identifies the maximum period for forward rate computation

No Decimals allowed. Will be a multi record structure

Premium/ Discount Points

Text Item

Number

10

Final Rate

Display Item

Number

11

Rate Date

Display Item

Date

Provision for the user to enter the premium or discount points for forward rate computation. Positive and Negative values would be allowed. Positive Value means Premium and Negative value means discount. This field would automatically calculate the Forward Rate based on the Premium/Discount plus the Spot Rate for the Currency Pairs. This would be the display field. When the User enters the exchange rate for a Forward rate, the system should default the Rate Date as the Application Date. This will be a running serial number for the Rate Date. When the User enters the Premium/Discounts for a currency pair, the system will default the Rate Date as the Application Date and the Rate Serial as the latest available serial for the currency pair + 1. The Rate Serial Number will be system generated.

Yes

will be a multi record structure

No

No

12

Rate Serial

Display Item

Number

No

The rate date should always be less than or equal to the application date. The entry will be validated for uniqueness.

An option to upload the data elements from the external system would be provided for this maintenance. The Upload Status would be similar to the format mentioned in 3.1.1.3 (point no. 18 & 19).

Maintenance of Historical Forward Rates


For each currency pair, it would be possible to store all the forward exchange rates and currency premium/ discounts maintained for various historical dates. The data structure for the same would be similar to the forward rates maintenance mentioned above. On a daily basis, all the versions of forward rates maintained for that date will be copied in the history maintenance. There will be no maintenance for historical forward rates from the front-end. The Users will only be able to view the historical forward rates through a User Interface.

3.1.5.5 Use Case Diagram


Maintain forward points and periods, for the purpose of calculating, the forward exchange rate.
System Login to Curreny Maintenance-Currency Forward Rate Screen

Admin/Bank User

Select from the List of Actions eg. New for creating New Currency Forward Rate Record

(a) Select the Currency Pair for which the Forward Rates needs to be maintained.(b) The Spot Rate from the Exchange Rate will be displayed along with the Base Date.(c) The User can add the period and points for which Forward Rate needs to be maintained/Computed.

Save the record if all the Mandatory Fields have been captured

3.1.5.6 Action Features


The action features will be similar to the format mentioned in 3.1.1.6

3.1.5.7 Audit Trails


The audit trail features will be similar to the format mentioned in 3.1.1.7

3.1.6

Maintenance of Amount Text

3.1.6.1 Definition
The user can describe the amounts printed on account statements, messages, advices, etc., in words, for the benefit of the Bank customers. To describe amounts in a specific language, the User have to maintain the verbal equivalents of numerals in the language. The User can maintain verbal equivalents of numerals in the Amount Text Maintenance screen. Amount Text in Arabics will also to be supported.

3.1.6.2 Entity Level


This maintenance will be common across the bank and branches (Instance level).

3.1.6.3 Pre-requisite
Maintenance of Language Code

3.1.6.4 Input/Validations Approach


The description about the Maintenance on Amount Text data elements is as given below:

Sl No 1

Field Name Language Code

Field Type LOV

Data Type

Length

Nature M/O M

Description

Editable

Validations

Alpha numeric

Description

Text Item

Alpha numeric

105

Amount

Text Item

Number

The User would be able to select the Language code and Locale from the Language Code definition. This means that the User can maintain the verbal equivalents of numerals in different combinations of language and locales. Based on the Language code, the descriptions would be automatically displayed. Provision to Input the Amount for e.g. 1, 100, 1000 etc. In the description column below the User should type the text such as One, Hundred, Thousand etc. There will be an option for the User to describe the numerals in the Description field (in the language that User specifies in the Language field. The Check box would be provided for the User to choose, if the User would like amounts such as 1000 described as One thousand. The User should be able to select the currency from the List of values.

No

Has to be a valid language code from Language Definition.

No

No

Description

Text Item

Alpha numeric

50

Yes

This cannot be in negative and should be greater than 0. The Maximum length will be (22) -

Prefix one

Check box

Alphanumeric

Yes

Currency

LOV

Alphanumeric

No

Valid currency code from currency definition

Pre Decimal

Text Item

Alpha numeric

50

10

Post Decimal

Text Item

Alpha numeric

50

11

Final Text

Text Item

Alpha numeric

50

12

Text Before

Check box

Alphanumeric

13 14

Fraction Text Between

Check box Text Item

Alphanumeric Alphanumeric

1 10

O O

The User can describe the predecimal and the post-decimal units of a currency in different languages. The User will enter the verbal equivalent of the pre and post decimal units of a currency in the PreDecimal and PostDecimal fields respectively. For e.g. The User can enter the Pre Decimal as Dollars. Refer point no. 9. For e.g. The User can enter the Post decimal as Cents. The User should specify the Final Text to be attached to the currency. For e.g. Only. The User can opt to prefix, or suffix, an amount with its currency. If the User would like the suffix an amount with its currency, then the User should not choose the Text Before option. If User would like to prefix an amount with its currency, then User should choose the Text Before option. For example, if User would like to describe USD 1000, as Dollars One Thousand, then User should choose the Text Before option. Indicate the use of Fraction The user can opt to enter a text

Yes

Yes

Yes

Yes

Yes Yes

between amounts

3.1.6.5 Action Features


The action features will be similar to the format mentioned in 3.1.1.6

3.1.6.6 Audit Trails


The audit trail features will be similar to the format mentioned in 3.1.1.7

3.1.7

Maintenance of Currency Denomination

3.1.7.1 Definition
In the Currency Denomination screen, the User can maintain the standard currency denominations for each currency that the bank deals with. This is required to specify the breakup of a transaction amount by denominations.

3.1.7.2 Entity Level


This maintenance will be common across the bank and branches (Instance level).

3.1.7.3 Pre-requisite
Maintenance of Currency Definition

3.1.7.4 Input/Validations Approach


The description about the Maintenance on Currency Denomination data elements is as given below: Sl No 1 Field Name Field Type LOV Data Type Alpha numeric Length Nature M/O M Description Editable Validations

Currency Code

Identifies the currency code 1 identifier from currency object. The User should be able to select the Currency code from the LOV. The code of the currency for which the User is defining denominations

No

Valid currency code from the currency definition

Currency Description

Display Item

Alpha numeric

105

Denomination Code

Text Item

Alpha numeric

10

Description

Text Item

Alpha numeric

105

Value

Text Item

Number

Sequence No.

Text Item

Number

The System would automatically populate the Currency Description from Currency Definition Screen. The field would only be a display field. A unique code to identify each denomination of the currency. For example, the User can assign D1, D10, and D50 for USD 1, 10, 50. This field would contain the description of the denomination unit. The value of the denomination in relation to one unit of the currency. It could be a fraction for coins. For e.g. If the description is mentioned as 100 Euro, 50 Euro, 1 Euro, 50 Cents, 10 Cents, then the value could be 100, 50, 1, 0.5, 0.10 etc. Refer example below the table. It would be a positive value. This field contains the Serial No. for each denomination code which would be input by the User.

No

No

Yes

Yes

The Number cannot be in negative. The maximum length will be (22,3)

Yes

Type

Check Box

Alpha numeric

This field identifies the type of the denomination. The values are Note and Coin.

Yes

The number cannot be in negative. The maximum length will be of 3. -

3.1.7.5 Action Features


The action features will be similar to the format mentioned in 3.1.1.6

3.1.7.6 Audit Trails


The audit trail features will be similar to the format mentioned in 3.1.1.7

3.1.8

Currency Branch Parameter Maintenance

3.1.8.1 Definition
The Currency branch parameter maintenance will have the attributes of a currency that will be specific to a branch.

3.1.8.2 Entity Level


Currency branch details can be maintained separately for each branch (Branch Level).

3.1.8.3 Pre-requisite
Maintenance of Currency Definition

3.1.8.4 Input/Validations Approach


Sl No 1 Field Name Bank Code Field Type Text Item Data Type Alpha numeric Length Nature M/O M Description Editable Validations

10

This field identifies the Bank Code. The User should be able to select from the dropdown list the specific Bank Code. The User would have an option to choose the Branch Code from the pick list. Upon selection of the Branch code, the name of the Branch would automatically get displayed. Identifies the currency code 1 identifier from currency object

No

Has to be unique and not blank

1a

Branch Code/ Name

Text Item

Alpha numeric

No

This will be defaulted to current branch.

Currency1

Text Item

Alpha numeric

No

Description

Display Item

Alpha numeric

105

The System would automatically populate the Currency Description from Currency Definition Screen. The field would only be a display field.

No

This will be a valid currency from the currency definition. -

Spot Days

Text Item

Number

Generation of Payment Messages prior to Settlement days Generation of Receive Messages prior to Settlement days

Text Item

Number

Identifies the Credit Value Date, Rate Date (for Value Dated) for Funds Transfer. The number of spot working days applicable for the currency. [Payment advices are generated number of spot days before the maturity date]. The number of spot working days applicable for the currency is specified here. Payment advises for FX and MM contracts will be generated on a date, which is calculated as the number of spot working days before the Maturity Date of the contract. Identifies the number of working days prior to the settlement date, the pay messages need to be generated

Yes

It has to be of maximum length - 3 It should not be an negative Number

Yes

It has to be of maximum length - 3 It should not be an negative Number It has to be of maximum length - 3 It should not be an negative Number

Text Item

Number

Identifies the number of working days prior to the settlement date, the receive messages need to be generated

Yes

3.1.8.5 Action Features


The action features will be similar to the format mentioned in 3.1.1.6

3.1.8.6 Audit Trails


The audit trail features will be similar to the format mentioned in 3.1.1.7

3.2 Currency Processing Services


The high level diagram on the Processing Service is as given below:

System <<include>> Forward Rates Currency Upload

<<include>> Currency CurrencyPair Upload

CurrencyCountry Mapping

<<include>> UploadService

Forward Rate Upload

<<include>>

Currency Rates Upload

CurrencyPair <<include>> Currency RateType <<uses>> Currency Rate (Manual and Upload) Currency Util <<include>> Branch Parameter Currency Branch Parameters

<<include>> Amount WordText Historical Rates Currrency Service External System <<include>> Retreive Ccy Date Currency Cuttoff <<include>> LastRateDate

<<include>>

Currency Denom <<include>> Retrieve Ccy Rate

Currency Rate Propogation

AmountText <<include>> Compute ForwardRate

<<include>>

Compute AmountToRate

<<uses>>

<<include>> <<uses>> <<include>>

Compute SpotRate

Compute Historical Rate

<<include>> Retrieve Rate&Spread

<<include>> Retrieve Rate ThruCCy

<<include>> Amt2Amt Convert

<<include>> Purge Rate History

<<include>> AmountRound

<<include>> Amount Format

<<include>> Currency CutOff

3.2.1

Amount Rounding Rule and Rounding Unit


Illustration on Rounding Rule and Rounding Unit Original Amount 1234.678 1234.678 Rounding Method Truncate Round up to the nearest Rounding Unit Round down to the nearest Rounding Unit Round Near No. of Decimals 2 2 Rounding Unit Nil 0.05 Final Amount 1234.67 1234.70

1234.678

0.05

1234.65

1234.678

0.01

1234.68

Sr. No.

1(a)

Function Input Parameter Description Diagram

Amount Round Currency Code and Amount The service would round the amount by applying the Rounding Method, Rounding Unit and decimals maintained for the Currency Code. Use case diagram on Amount Rounding Rule and Rounding Unit

Sr. No. Function Input Parameter Description Diagram

1(b) Rounding Amount and Rounding unit The service would round the amount by applying the Rounding unit and for the decimal and Rounding Method it would call Amount Round service. Use case diagram on Amount Rounding Rule and Rounding Unit

Use case diagram on Amount Rounding Rule and Rounding Unit


System Chk in CCY Defination Table (a) The Rounding Method (b)No. of Decimals (c) Rounding Unit

USD 1234.678 Amount Round

and the Rounding Method is Truncate, the amount will be rounded to 1234.67. The Rounding Unit is not relevant for this method.

If the No. of Decimal is 2

and the Rounding Method is Round Near and the Rounding Unit is 0.01, the amount will be rounded to 1234.68

and the Rounding Method is Round Up and the Rounding unit is 0.05, the amount will be rounded to 1234.70

and the Rounding Method is Round Down and the Rounding Unit is 0.05, the amount will be rounded to 1234.65

3.2.2

Amount Format
Sr. No. Function Input Parameter Description 1 Amount Format Currency Code and Amount 1) The System would check the No. of Decimals Currency Definition Table. 2) If the amount mask is 9999,99,99,99,999 and a. If the decimal is 0, then the 9999,99,99,999 b. If the decimal is 2, then the 9999,99,99,999.99 c. If the decimal is 3, then the 9999,99,99,999,999 3) IF the amount mask is 99,999,999,999 and a. If the decimal is 0, then the and Amount Mask from the Amount Format will be Amount Format will be Amount Format will be

Amount Format will be

99,999,999,999
b. If the decimal is 2, then the Amount Format will be

99,999,999,999.99 c. If the decimal is 3, then the Amount Format will be 99,999,999,999.999


Diagram Use Case Diagram on Amount Format.

System Check in the Currency Defination Table, the N o. of Decimals and Amount Format Mask

AmountFormat

Input Parameter CCY Code, Amount

If the Amount Format Mask is 99,999,999,999 and

If the Amount Format Mask is 99,999,999,999 and

(a) if Amount (b) if Amount .99 (c) Amount

the decimal is "O", then Format is 9999, 99, 99,999 the decimal is "2", then Format is 9999, 99, 99,999 if the decimal is "3", then Format is 9999, 99, 99,999 .999 (a) if Amount (b) if Amount .99 (c) Amount the decimal is "O", then Format is 9999, 99, 99,999 the decimal is "2", then Format is 9999, 99, 99,999 if the decimal is "3", then Format is 9999, 99, 99,999 .999

3.2.3

Get Rate
Sr. No. Function Input Parameter Description 1(a) Get Rates Branch Date, Currency Pair, Rate Type(default is STANDARD), Rate Indicator (default is MID), Rate Date, Branch Date The System would check if the Rate Date = Null, then default Rate Date = Branch Date, if Rate Type = Null, then default Rate Type is STANDARD and if Rate Indicator is Null, then default Rate Indicator is Mid Rate. (a) If the Rate Date is greater than Branch Date, then Forward rate needs to be calculated based on Forward Rate calculation logic. (b) If the Rate Date is less than the Branch Date, then the rate needs to be picked up from the History Table (c) Else, the Spot Rate needs to be returned to the Calling System Use Case Diagram on Get Rate1.

Diagram

System (b) If CCY1=CCY2, then Rate = "1"

Get Rate1

Input Parameter (a) Branch Code (b) CCY1 (c) CCY2 (d)Rate Type (e) Rate Indicator (f) Branch Date (g) Rate Date

If Rate Date = "Null", then Rate Date = Branch Date. If Rate Type is "Null", then Rate Type is STANDARD. If Rate Indicator is "Null", then Rate Indicator is Mid Rate.

If Currency1 = "Null" or Currency2 = "Null" or Branch Date = "Null", then display error message.

if Rate Date is greater than Branch Date, then Calculate Forward Rate through Forward Rate Logic, Else

If Rate Date is less than the Branch Date, then get the Rate from the History, Else

Return Spot Date

Sr. No. Function Input Parameter Description

1(b) Get Rates Currency Pair, Rate Type(default is STANDARD), Rate Indicator (default is MID) This function is similar to Function 1(a) except the Date parameter is not given. In such case the Branch Date and Rate Date to be considered as the Current Date and the Rate needs to be returned based on Rate Type and Rate Indicator. If the Rate Type and Rate Indicator is Null then Standard Mid Rate needs to be Returned for the Current Date. If the rate is not available then the Error message needs to be displayed. Not Applicable

Diagram

Sr. No. Function Input Parameter Description

1(c) Get Rates Branch Date, Currency Pair, Rate Date, Branch Date This function is similar to Function 1(a) except the Rate Type and Rate Indicator is not given. If the Rate Type and Rate Indicator is Null then the system would take (i) Rate Type = default Rate Type Standard and (ii) Rate Indicator = default Indicator Mid Rate Based on the above parameters, the system would return the rate as Standard Mid Rate for the applicable date. Not Applicable

Diagram

Sr. No. Function Input Parameter Description

1(d) Get Rates Currency Pair, Branch Code This function is similar to Function 1(a) except Rate Date, Branch Date, Rate Type and Rate Indicator parameters are not given. (i) the Branch Date and Rate Date to be considered as the Current Date (ii) Rate Type = default Rate Type Standard and (iii) Rate Indicator = default Indicator Mid Rate

Diagram

Based on the above parameters, the system would return the rate as Standard Mid Rate for the current date for the applicable currency. Use Case Diagram on Get Rate 4

System

Get Rate1

Input Parameter (a) Branch Code (b) CCY1 (c) CCY2

If Rate Date = "Null", then Rate Date = Branch Date. If Branch Date = "Null", then Branch Date = Currenct Application Date, If Rate Type is "Null", then Rate Type is STANDARD. If Rate Indicator is "Null", then Rate Indicator is Mid Rate.

<<include>> (b) If CCY1=CCY2, then Rate = "1"

if Rate Date is greater than Branch Date, then Calculate Forward Rate through Forward Rate Logic, Else

If Rate Date is less than the Branch Date, then get the Rate from the History, Else

Return Spot Date

3.2.4

Get Rate and Spread


Sr. No. Function Input Parameter Description

Get Rate and Spread Branch, Currency Pair, Rate Type and Rate Indicator a) Invoke the Get Rate function to derive the buy/sell rate (explained in Get Rate) b) For Mid type rate, the Spread will be 0 c) Invoke the Get Rate function to derive the Mid Rate (by changing the Rate Indicator to M) d) Compute the spread from the derived buy/sell rate and mid-rate. e) Spread = ABS(Buy/Sell Rate Mid Rate) Not Applicable

Diagram

3.2.5

Calculation of Exchange Rate based on Through Currency


Forex rates are available in the market based on market demand and supply. Hence exchange rates will be freely available only for actively traded currencies. In the forex market, USD is the most actively traded currency, followed by British Pounds, Japanese Yen. Now if a customer asks for a Forex rate between two currencies, which are not actively traded, then the bank may not be in a position to give the rate. In this case the bank will look for the exchange rates of these two currencies in relation to a common currency to compute the exchange rate for the customer. Here the common currency is called the Through currency. Example Suppose, for the currency pair (DEM/INR), a quote, is not available. For this pair, a Through Currency USD is used. When a transaction is entered involving this currency pair, the

exchange rate between DEM/USD and INR/USD is taken to arrive at the exchange rate between DEM/INR. Suppose you are given the following bid/ask quotations for two foreign currencies against the domestic currency, the U.S. dollar: /$ /$ Bid 0.9002 109.38 Asked 0.9023 109.40

we want to calculate what the / bid and ask quotations will be. Answer: The / bid price will be the number of yen the dealer is willing to pay in order to buy one euro. This transaction would be the equivalent of selling yen to purchase dollars (at the bid rate of 109.38), and simultaneously reselling the dollars to purchase Euros (at the ask rate of 0.9023). The bid / would be calculated as 109.38/0.9023 = 121.22. The / ask price would be the number of yen the dealer wants to receive in exchange for selling one euro. This transaction would be the equivalent of buying yen with dollars (at the 109.40 ask rate) and at the same time buying those dollars with Euros, at the 0.9002 bid rate. The transaction could be expressed mathematically as: Ask / = 109.40 / 0.9002 = 121.53 so the resulting dealer quotation would be: / = 121.22 121.53 Example 2 HKD AUD CAD CHF GBP JPY EUR USD USD 7.75 1.2284 1.1058 1.0683 0.6091 94.248 0.7034 1 EUR 11.0185 1.7465 1.5722 1.5188 0.8659 133.996 1 1.4217 JPY 0.082 0.013 0.012 0.011 0.007 1 0.008 0.011 GBP 12.724 2.0169 1.8157 1.754 1 154.74 1.1548 1.6419 CHF 7.2545 1.1499 1.0351 1 0.5701 88.2224 0.6584 0.9361 CAD 7.0082 1.1109 1 0.966 0.5508 85.2267 0.636 0.9043 AUD 6.3088 1 0.9002 0.8696 0.4958 76.722 0.5726 0.814 HKD 1 0.159 0.143 0.138 0.079 12.16 0.091 0.129

Case 1

Case 2

a b b/a a/b

usd/cad usd/chf cad/chf chf/cad Case 3

1.1058 1.0683 0.9661 1.0351

a b b/a a/b

chf/usd chf/cad usd/cad cad/usd Case 4

0.9361 1.0351 1.1058 0.9044

a b

usd/cad chf/usd

1.1058

a b

eur/hkd eur/chf

11.0185

0.9361 1/(a*b) a*b cad/chf chf/cad Case 5 a b a*b 1/(a*b) cad/usd usd/chf cad/chf chf/cad 0.9043 1.0683 0.9661 1.0351 a b a*b 1/(a*b) 0.9661 1.0351 b/a a/b hkd/chf chf/hkd Case 6 gbp/aud aud/jpy gbp/jpy jpy/gbp

1.5188 0.1378 7.2547

2.0169 76.7216 154.7398 0.0065

3.2.6

Spot Rate
Sr. No. Function Input Parameter Description Diagram

Spot Rate Branch Date, Currency Pair, Rate Type, Rate Indicator a) Invoke the Get Rate Function to derive the buy or sell or mid rate. (Explained in Get Rate) from the Currency Rate Table Not Applicable

3.2.7

History Rate
Sr. No. Function Input Parameter Description Diagram

History Rate Branch Date, Currency Pair, Rate Type, Rate Indicator and Rate Date a) Invoke the Get Rate Function to derive the historical buy or sell or mid rate. (Explained in Get Rate). Not Applicable

3.2.8

Amount1 to Amount2 Conversion


a) b) c) d) e) Try Getting the Rate for the Specified Pair Directly If not fount try getting the relationship from the Currency Pair Table If no Through Currency available for the pair, then give exception. If Through Currency is available then try CCY1 + Through CCY/Through CCY + CCY2 The example is given in point no. 3.2.5

3.2.9

Amount to Rate
Sr. No. Function Input Parameter Description

Amount to Rate Currency Pair, Amount1 and Amount2 a) Retrieve Pair Quotation Method and Offset Record from Currency Pair Table. b) If Pair Quotation Method is Direct and Offset Record = N or If Pair Quotation Method is Indirect and Offset Record = Y then, Rate = (Amount2/Amount1) * (Power (10, Number of Units). Else, c) If Pair Quotation Method is Direct and Offset Record = Y or If Pair Quotation method is Indirect and Offset Record = N then, Rate = (Amount1/Amount2) *(Power (10, Number of Units. Use case on Amount to Rate
System Retrieve Currency Pair, Quotation Method and Offset Record and No. of Units from Currency Pair Table

Diagram

Input :- CCY Amount1 and CCY Amount 2 Amount to Rate

If Pair Quotation Method is Direct and Offset Record = N or If Pair Quotation Method is Indirect and Offset Record = Y then, Rate = (Amount2/Amount1) . Else,

If Pair Quotation Method is Direct and Offset Record = Y or If Pair Quotation method is Indirect and Offset Record = N then, Rate = (Amount1/Amount2)

3.2.10 Forward Rate Computation


Points The forward rates for a currency pair would be maintained in the form of premium or discount points vis--vis the spot rate for the currency pair. In the Points column, the user must specify the forward rate for the period that user specified in the previous column (for the currency pair). Example The local currency at Royal Services Bank Ltd. is Deutsche Mark (DEM). The bank deals with Great Britain Pound (GBP), US Dollars (USD) and Italian Lira (LIT). The Spot Rate between USD and DEM is 1.8 where 1.8 DEM = 1 USD. Against this Spot Rate, the forward rates would be as follows: Period 10 days Exchange Rate + 0.01

30 days 90 days

+ 0.02 + 0.05

To maintain these rates, you would do the following: Enter USD as the CCY. Enter a Base Date. Enter the Spot Rate between DEM and USD as 1.8. In the Period and Exchange Rate columns, enter the information exactly as in the Table. For all contracts with a Maturity Date that is later than the Base Date, the exchange rate variance specified by the user will be picked up for revaluation for contracts revalued. The variance the user specifies will be applied on the Spot Rate to arrive at the Forward Rate, depending on the quotation method for the currency. The following table summarizes the method of application:

Premium Discount Example

Direct quotation Add to the Spot Rate Subtract from the Spot Rate

Indirect quotation Subtract from the Spot Rate Add to the Spot Rate

Forward Rate Maintenance Currency 1 GBP Currency 2 USD Spot Rate 75 Base Date 12-Aug-09 Final Period Points Rate 15 0.1 75.1 25 0.156 75.156 30 0.175 75.175 60 0.2 75.2 90 0.222 75.222 120 0.3 75.3 180 0.188 75.188

GBP EUR 1.162 Final Rate 1.1633 1.1643 1.1653 1.1673 1.1773 1.2173 1.2623

GBP INR 80 Final Rate 81 81.5 83.6 84.5 86 88 89

GBP EUR 1.1623 Final Rate 1.1613 1.1603 1.1593 1.1573 1.1473 1.1073 1.0623

Period 15 25 30 60 90 120 180 Greater than Max Period

Points 0.001 0.002 0.003 0.005 0.015 0.055 0.1

Period 15 25 30 60 90 120 180

Points 1 1.5 3.6 4.5 6 8 9

Period 15 25 30 60 90 120 180

Points -0.001 -0.002 -0.003 -0.005 -0.015 -0.055 -0.100

Period exists in the Forward Rate Table

Input Branch Code Branch Date Rate Date CCY1

Period exists in the Forward Rate Table (Broken Period)

Period exists in the Forward Rate Table (Broken Period)

Period exists in the Forward Rate Table (Broken Period)

Period exists in the Forward Rate Table (Broken Period)

12-Aug09 12-Feb10 GBP

12-Aug09 11-Sep09 GBP

12-Aug09 3-Sep09 GBP

12-Aug-09 3-Dec-09 GBP

12-Aug09 18-Aug09 GBP

12-Aug09 7-Dec09 GBP

CCY2 Calculation Step 1

EUR

EUR

EUR

EUR

EUR

EUR

Get the Standard Mid Rate 1.1623 1.1623 180 1.1623 180 80 180 80 180 1.1623 180 Max Period for CCY Pair Diff Period ( Diff of Rate date and Branch Date) Final Rate [Step2 Step1] Prev Period1 Prev Points Post Period Post Points Calculate Premium/Discount. The formulae is Prev points + (((Post points-Prev points)*(Period Prev period))/(Post period - Prev period))

Step 2 Step 3

180

184 Step 4 1.2623

30 1.1653

22

113

117

Step 5 Step 6 Step 7

15 0.001 25 0.002

90 6 120 8

0 0 15 1

90 -0.015 120 -0.055

0.0017 Final Rate [Step1 +Step7] Step 8 1.16400

7.533333333

0.4

-0.051

87.53

80.40

1.1113

3.2.11 Last Rate Date


Sr. No. Function Input Parameter Description Diagram 1 Last Rate Date Branch, Currency Pair This function would compute the latest rate date (maintenance) among the two currencies from the Currency Rates object. N.A.

3.2.12 Currency Purge


This function shall purge the history rates from the tables based on the purge days defined for Currency Module in purge maintenance. The current scope is to handle the processing of currency purge only. The maintenance of purge parameters for all modules will be generic and will be defined later as part of purge service Generally, this function will be triggered as part of the end of day batch, to purge all the history rates less than the purge date (which will be derived based on the currency purge days). Sr. No. Function Input Parameter Description 1 Currency Purge Branch, Currency Pair, Rate Type This function would purge the currency rates history for a currency pair and rate type. This function would delete those currency records for which the number of days between the current system date and rate date exceeds the currency purge days. N.A.

Diagram

3.3 Illustrations
3.3.1 Spread Calculations
Illustration on Spread Calculation and Points Multiplier Lets examine the impact of each of these spread definition methods on the currency pair USD: DEM. Mid rate = 1.6040 Spread = 10 In points the buy rate and sell rate would be calculated as: Buy rate = Mid rate - spread x points multiplier Sell rate = Mid rate + spread x points multiplier If points multiplier = .0001 then Buy rate would be = 1.6040 - 10 x .0001 Sell rate would be = 1.6040 + 10 x .0001 In percentage the buy rate would be calculated as: Buy rate = Mid rate - spread /100 x mid rate Sell rate = Mid rate + spread / 100 x mid rate Buy rate would be = 1.6040 - 10/100 x 1.6040 Sell rate would be = 1.6040 + 10/100 x 1.6040 The default-spread definition is through the points method. The method of spread definition that User specifies here applies to two instances:

(a) While maintaining exchange rates for this currency pair (b) While maintaining Customer Spread for this currency pair Clarification on the points multiplier. Suppose for the currency pair USD-CHF the rates are as follows: Mid-Rate: 1.6045 Buy rate: 1.6040 Sell rate: 1.6051 The effective buy spread is 0.0005 (1.6045 - 1.6040) and the effective sell spread is 0.0006 (1.6051 - 1.6045). In the Rates screen, when the User define rates and spreads for a currency pair, the User can specify the buy and sell spreads as 5 and 6 instead of as 0.0005 and 0.0006 (i.e., as spread points), and specify here the points multiplier as 0.0001. The effective spread, buy and sell rates are then computed as follows: Effective buy spread Buy rate = Buy spread x Points multiplier = 5 x 0.0001 = 0.0005 = Mid rate - Buy spread = 1.6045 0.0005 = 1.6040

Use case Diagram on Calculation of Buy Rate

System Input: Currency Pair, Mid Rate, Rate Type Check in the CCY Pair whether the Spread Definition is in Points or Percentage

Calculation of Buy Rate

If the Spread definition is in Percentage, then Buy Rate =Mid Rate (Spread/100* Mid Rate)

If the Spread definition is in Percentage, then Buy Rate =Mid Rate (Spread/100* Mid Rate)

3.3.2

Spread Type Calculation & Calculation of Buy and Sell Rate


The options are: Percentage - The Buy/Sale spread value Currency Rates Maintenance option is taken as Percentage of Mid rate and subtracted/added to the Mid rate to get the Buy/Sale Rate. Example: If in Currency Rate Maintenance screen the Midrate = 200 and Buy Spread = 10, Direct Quote in the Currency Pair Definition option percentage is selected, the Buy rate is calculated as follows: = 200 (200 * 10%) = 200 20 = 180 Similar calculation for Sale rate. Example : If Midrate = 200 and Sale Spread = 10, Direct Quote in the Currency Pair Definition option percentage is selected, the Sale rate in BAM26 is calculated as follows: = 200 + (200 * 10%) = 200 + 20 = 220 Points - The Buy/Sale spread value Currency Rates Maintenance option is taken as points and subtracted/added to the mid rate to get the Buy/Sale Rate. Example: If Midrate = 200 and Buy Spread = 10, Direct Quote, Points Multiplier = 1 in the Currency Pair Definition option point is selected, the Buy rate is calculated as follows: = 200 10 (Points Multiplier) = 190 Similar calculation for Sale rate. Example : If Midrate = 200 and Sale Spread = 10, Direct Quote, Points Multiplier = 1 in the Currency Pair Definition option point is selected, the Sale rate is calculated as follows: = 200 + 10 (Points Multiplier) = 210

Type the points multiplier value. This field would be enabled only if Points option is selected in the Spread Definition field. For example: If the Points multiplier is changed to 0.5 then the currency rates will be as follows: The Buy rate is calculated as follows: = 200 10 (0.5) = 195 The Sale rate in is calculated as follows: = 200 + 10 (0.5) = 205

3.3.3

Spot Days
The number of spot working days applicable for the currency is specified here. Payment advises for FX and MM contracts will be generated on a date, which is calculated as the number of spot working days before the Maturity Date of the contract. The tenor of an MM contract is as follows: Value Date - 01/01/99 Maturity Date - 31/01/99 Contract Currency - USD Contract Amount 5000 For USD, the number of Spot Days is specified as: Spot Days - 3 For this contract, the payment advices will be sent on 28/01/96.

3.3.4

Settlement Days
In the Currency Definition Maintenance screen, the user can specify the Settlement Days for a currency. Settlement messages for the components of a contract (in the LC, BC, LD, MM, FX, and FT modules) will be generated according to the settlement days specified for the currency of the settlement account. The following example illustrates this. When maintaining the details of USD in the Currency screen, the User specifies the Settlement Days as 2. This implies that two working days prior to the settlement of a component through a USD account, a settlement message will be automatically generated if specified (when user run the Settlement Messages function at the end of day).

The settlement details of a contract are as follows: Settlement Date: 06 May 1999 Settlement Account Currency: USD Component: Principal Settlement Message: Yes Component Currency: GBP

When User generates the Settlement Messages function, at the end of day, on 04 May 1999, a settlement message for the Principal component of the contract will be generated. The user can run Settlement Messages function as part of EOD operations to automatically generate settlement messages for contracts marked out for automatic liquidation. The settlement day specification for a currency will determine the contracts that are picked up for settlement message generation.

3.3.5

Number of Units
Quotation Method Direct Direct Direct Indirect Indirect Indirect No. of Units 1 100 1000 1 100 1000 Formulae for calculating conversion rate 1ccy1 = rate x ccy2 100 ccy1 = rate x ccy2 1000 ccy1= rate x ccy2 1ccy2 = rate x ccy1 100ccy2 = rate x ccy1 1000ccy2 = rate x ccy1

3.3.6

Currency Denominations
Currency Code USD USD USD USD USD USD USD USD USD USD USD Denomination Code D100 D50 D20 D10 D5 D1N D1C C25 C10 C5 C1 Description 100 dollars 50 dollars 20 dollars 10 dollars 5 dollars 1 dollar Note 1 dollar Coin 25 cents 10 cents 5 cents 1 cent Value 100.00 50.00 20.00 10.00 5.00 1.00 1.00 0.25 0.10 0.05 0.01 Type [Note/Coin] NOTE NOTE NOTE NOTE NOTE NOTE COIN COIN COIN COIN COIN

4 User Interface 5 Security 6 Pending Issues 7 Annexure


7.1 AnnexureAnnexure A: Requirements - Functions Matrix
FS Tag No. 3.1 3.1.1 3.1.2 3.1.3 3.1.4 Requirement Currency Maintenance Services Maintenance of Currency Definition Maintenance of Currency Pair Maintenance of Currency Rate Type Maintenance of Exchange Rate for Rate Types & Maintenance of History Rate. RS Tag No. / JIRA Ref#

NGP-CCY-MS-0001 / 9NT979FS-225 NGP-CCY-MS-0002 / 9NT979FS-226 NGP-CCY-MS-0003 / 9NT979FS-227 NGP-CCY-MS-0004, NGPCCY-MS-0005 & NGP-CCY-PS-0014 / 9NT979FS-228, 9NT979FS-229 NGP-CCY-MS-0006 / 9NT979FS-230 NGP-CCY-MS-0007 / 9NT979FS-231 NGP-CCY-MS-0008 / 9NT979FS-232 NGP-CCY-MS-0009 / 9NT979FS-963 NGP-CCY-PS-0001 NGP-CCY-PS-0002 NGP-CCY-PS-0003 NGP-CCY-PS-0004 NGP-CCY-PS-0005 NGP-CCY-PS-0006 NGP-CCY-PS-0007 NGP-CCY-PS-0008 NGP-CCY-PS-0009 NGP-CCY-PS-0010 NGP-CCY-PS-0011 NGP-CCY-PS-0012 NGP-CCY-PS-0013

3.1.5 3.1.6 3.1.7 3.1.8 3.2 3.2.1 3.2.2 3.2.3 3.2.4 3.2.5 3.2.6 3.2.7 3.2.8 3.2.9 3.2.10 3.2.11 3.2.12 3.1.4

Maintenance of Forward Rates Maintenance of Amount Text Maintenance of Currency Denomination Currency Branch Parameter Maintenance Currency Processing Services Amount Rounding Rule and Rounding Unit Amount Format Get Rate Get Rate and Spread Calculation of Exchange Rate based on Through Currency Spot Rate History Rate Amount1 to Amount2 Conversion Amount to Rate Forward Rate Computation Last Rate Date Currency Purge Currency Rates Upload

7.2 AnnexureAnnexure B: Screen Layouts


Not Applicable

7.3 AnnexureAnnexure C: Report Layouts


Not Applicable

7.4 AnnexureAnnexure D: References


Not Applicable

Annexure
Functional Specifications July 2009 1.0

Oracle Corporation World Headquarters 500 Oracle Parkway Redwood Shores, CA 94065 U.S.A. Worldwide Inquiries: Phone: +1.650.506.7000 Fax: +1.650.506.7200 www.oracle.com/ financial_services/ Copyright 2009 2010 Oracle Financial Services Software Limited. All rights reserved. No part of this work may be reproduced, stored in a retrieval system, adopted or transmitted in any form or by any means, electronic, mechanical, photographic, graphic, optic recording or otherwise, translated in any language or computer language, without the prior written permission of Oracle Financial Services Software Limited. Due care has been taken to make this [Document Name] and accompanying software package as accurate as possible. However, Oracle Financial Services Software Limited makes no representation or warranties with respect to the contents hereof and shall not be responsible for any loss or damage caused to the user by the direct or indirect use of this [Document Name] and the accompanying Software System. Furthermore, Oracle Financial Services Software Limited reserves the right to alter, modify or otherwise change in any manner the content hereof, without obligation of Oracle Financial Services Software Limited to notify any person of such revision or changes. All company and product names are trademarks of the respective companies with which they are associated.