Trade model: Sales Intervention

This page describes the FX Integration API’s Sales Intervention trade model, as defined in the file config/TradingAdapter/Blade/DataSource/etc/trademodels.xml in the FX Integration API Kit.

This documentation is for the FX Integration API 3.44.0.

Trade models are XML-defined state machines used by the Java Trading API, the C Trading API, and Caplin Trader’s Trading API to manage trading workflows. For more information on trade model XML definitions, see the Trade model XML schema reference.

State diagram

The state diagram for the Sales Intervention trade model is shown below. To simplify the diagram, the Rejected and Error states have been omitted.

InitialPickUpSentPickUpPendingClientRejectedPickedUpHoldSentRejectSentQuoteSentWithdrawSentQuotedTraderRejectedTradeConfirmationHeldPickUpPickUpAckPickUpRejectedPriceUpdateHoldRejectClientRejectQuotePriceUpdateHoldRejectClientRejectPriceUpdateClientRejectRejectWithdrawQuoteAckQuoteRejectAckWithdrawAckPriceUpdateRejectTradeConfirmedPriceUpdateWithdrawClientRejectRejectHoldAckLegendTransitions initiated by the client (the sales trader) are inyellow.Transitions initiated by the server are inblue.

Messages: client → server

Trade-channel messages sent by StreamLink clients to the FX API DataSource.

PickUp
MsgType
String
Example: PickUp
Name of the transition
RequestID
String
The RequestID. A Unique identifier, must remain the same for each event in the trade model
TradeRequestID
string
Hold
MsgType
String
Example: Hold
Name of the transition
RequestID
String
The RequestID. A Unique identifier, must remain the same for each event in the trade model
Reject
MsgType
String
Example: Reject
Name of the transition
RequestID
String
The RequestID. A Unique identifier, must remain the same for each event in the trade model
Quote
SalesInterventionQuote
SalesInterventionQuoteLeg Ln
Ln_FwdBidMargin
This field represents the Forward margin that the sales user has selected. This field should be sent raw and unformatted.
Ln_FwdAskMargin
This field represents the Forward margin that the sales user has selected. This field should be sent raw and unformatted.
Ln_TraderFwdBidPoints
decimal
Example: 0.001198
Ln_TraderFwdAskPoints
decimal
Example: 0.001198
PricingType
The type of pricing, either QUOTE or STREAM, QUOTE will send a send a singe quote to the client, while STREAM will stream rates to the client using the given margins.
SpotBidMargin
This field represents the spot margin that the sales user has selected. It should be sent as a raw value, and unformatted.
SpotAskMargin
This field represents the spot margin that the sales user has selected. It should be sent as a raw value, and unformatted.
TraderSpotBidRate
decimal
Example: 1.08575
TraderSpotAskRate
decimal
Example: 1.08575
OverallTimeOut
integer
The number of seconds remaining before this stream (not this individual quote) is timed out. This is not present for standard price updates.
RemainingTimeOutMillis
integer
The number of seconds remaining of the OverallTimeOut before this stream is timed out. This is not present for standard price updates.
MsgType
String
Example: Quote
Name of the transition
RequestID
String
The RequestID. A Unique identifier, must remain the same for each event in the trade model
PricingType
The type of pricing, either QUOTE or STREAM, QUOTE will send a send a singe quote to the client, while STREAM will stream rates to the client using the given margins.
SpotBidMargin
This field represents the spot margin that the sales user has selected. It should be sent as a raw value, and unformatted.
SpotAskMargin
This field represents the spot margin that the sales user has selected. It should be sent as a raw value, and unformatted.
TraderSpotBidRate
decimal
Example: 1.08575
TraderSpotAskRate
decimal
Example: 1.08575
OverallTimeOut
integer
The number of seconds remaining before this stream (not this individual quote) is timed out. This is not present for standard price updates.
RemainingTimeOutMillis
integer
The number of seconds remaining of the OverallTimeOut before this stream is timed out. This is not present for standard price updates.
Withdraw
MsgType
String
Example: Withdraw
Name of the transition
RequestID
String
The RequestID. A Unique identifier, must remain the same for each event in the trade model

Messages: server → client

Trade-channel messages sent by the FX API DataSource to StreamLink clients.

ClientReject
MsgType
String
Example: ClientReject
Name of the transition
RequestID
String
The RequestID. A Unique identifier, must remain the same for each event in the trade model
HoldAck
MsgType
String
Example: HoldAck
Name of the transition
RequestID
String
The RequestID. A Unique identifier, must remain the same for each event in the trade model
PickUpAck Spot Trade Details
CommonTradeDetailsFields
Account
string
Example: Garfields|GARF
The account a trade or order has been submitted against. The format is <description>|<name> or <name>|<name>
TOBOUser
string
Example: client@customer.co.za
The user the trade is on behalf of. For example, if the logged in user dealer1@novobank.co.za wishes to make a trade on behalf of user client@customer.co.za, then the value of this field will be client@customer.co.za.
OneWayDirection
string
LastActionDateTime
datetime
The time and date of the last action on an order.
RequestedDateTime
datetime
TraderUsername
string
Example: sales_trader@novobank.co.za
The user who entered the trade. This may be on behalf of themselves, or on behalf of someone else. For example, if the logged in user dealer1@novobank.co.za wishes to make a trade on behalf of user client@customer.co.za, then the value of this field will be dealer1@novobank.co.za. If the user client@customer.co.za makes a trade on behalf of themselves it will be client@customer.co.za.
TradeDetailsFields
CurrencyPair
string
The currency pair for the trade. For example, EURUSD
DealtCurrency
string
The currency of the Amount of a trade or order.
TradingType
string
Caplin supported values are [SPOT, FWD, NDF, NDF_FIXING, TIME_OPTION, DRAWDOWN, SWAP, BLOCK]. See the constants defined within com.caplin.motif.fx.trading.FXTradingType for further details.
InterventionTradeDetailsFields
InterventionStatus
string
Use the TradeStatus field instead
TradeStatus
string
Example: AWAITING-PRICE
The current status of the trade. Supported types are [AWAITING-TRADER, AWAITING-PRICE, PRICED, EXECUTING, CLOSED, REJECTED, ERRORED, COMPLETED]. CLOSED means the client cancelled the trade request, REJECTED indicates it was rejected by the dealer.
Dealable
boolean
Whether a trade request can be picked up by a sales trader
PricingMode
string
Example: AUTO
Whether the trade is being automatically or manually priced. Supported types are [AUTO, MANUAL]
Competition
boolean
Whether a quote request is in competition. For example, true for quotes from an ECN and false for quotes from an SDP
PrimaryReason
string
Example: This trade exceeds the GFA
The headline reason that a trade requires intervention.
Reasons
string
A JSON structure containing all the reasons and information about why the trade requires intervention. Please see the Sales Intervention Reasons documentation on the website for more information.
TradeRequestID
string
Source
string
The source of a quote request. The name or ID of an ECN, SDP or other channel
IntervenerUsername
string
Example: head_trader@novobank.co.za
The user who is currently intervening on and potentially pricing a trade.
LegTradeDetailsFields L1
L1_Amount
decimal
The amount of a trade or order in the DealtCurrency.
L1_SettlementDate
string
L1_Tenor
string
Example: 1M
Supported types are [ON, [TODAY, TOD, TD], TN, [TOM, ND], SPOT, SN, 1D, 1W, 2W, 3W, 4W, 1M, 2M, 4M, 5M, 6M, 7M, 8M, 9M, 10M, 11M, [1Y, 12M], 15M, 18M, 21M, [2Y, 24M], [3Y, 36M], [4Y, 48M], [5Y, 60M], broken]. broken indicates that a SettlementDate must be sent
L1_BuySell
string
The direction of the trade or trade leg. This always refers to the BaseCurrency, NOT the DealtCurrency.
L1_Account
string
Example: Garfields|GARF
The account a trade or order has been submitted against. The format is <description>|<name> or <name>|<name>
PickUpAck Forward Trade Details
CommonTradeDetailsFields
Account
string
Example: Garfields|GARF
The account a trade or order has been submitted against. The format is <description>|<name> or <name>|<name>
TOBOUser
string
Example: client@customer.co.za
The user the trade is on behalf of. For example, if the logged in user dealer1@novobank.co.za wishes to make a trade on behalf of user client@customer.co.za, then the value of this field will be client@customer.co.za.
OneWayDirection
string
LastActionDateTime
datetime
The time and date of the last action on an order.
RequestedDateTime
datetime
TraderUsername
string
Example: sales_trader@novobank.co.za
The user who entered the trade. This may be on behalf of themselves, or on behalf of someone else. For example, if the logged in user dealer1@novobank.co.za wishes to make a trade on behalf of user client@customer.co.za, then the value of this field will be dealer1@novobank.co.za. If the user client@customer.co.za makes a trade on behalf of themselves it will be client@customer.co.za.
TradeDetailsFields
CurrencyPair
string
The currency pair for the trade. For example, EURUSD
DealtCurrency
string
The currency of the Amount of a trade or order.
TradingType
string
Caplin supported values are [SPOT, FWD, NDF, NDF_FIXING, TIME_OPTION, DRAWDOWN, SWAP, BLOCK]. See the constants defined within com.caplin.motif.fx.trading.FXTradingType for further details.
InterventionTradeDetailsFields
InterventionStatus
string
Use the TradeStatus field instead
TradeStatus
string
Example: AWAITING-PRICE
The current status of the trade. Supported types are [AWAITING-TRADER, AWAITING-PRICE, PRICED, EXECUTING, CLOSED, REJECTED, ERRORED, COMPLETED]. CLOSED means the client cancelled the trade request, REJECTED indicates it was rejected by the dealer.
Dealable
boolean
Whether a trade request can be picked up by a sales trader
PricingMode
string
Example: AUTO
Whether the trade is being automatically or manually priced. Supported types are [AUTO, MANUAL]
Competition
boolean
Whether a quote request is in competition. For example, true for quotes from an ECN and false for quotes from an SDP
PrimaryReason
string
Example: This trade exceeds the GFA
The headline reason that a trade requires intervention.
Reasons
string
A JSON structure containing all the reasons and information about why the trade requires intervention. Please see the Sales Intervention Reasons documentation on the website for more information.
TradeRequestID
string
Source
string
The source of a quote request. The name or ID of an ECN, SDP or other channel
IntervenerUsername
string
Example: head_trader@novobank.co.za
The user who is currently intervening on and potentially pricing a trade.
LegTradeDetailsFields L1
L1_Amount
decimal
The amount of a trade or order in the DealtCurrency.
L1_SettlementDate
string
L1_Tenor
string
Example: 1M
Supported types are [ON, [TODAY, TOD, TD], TN, [TOM, ND], SPOT, SN, 1D, 1W, 2W, 3W, 4W, 1M, 2M, 4M, 5M, 6M, 7M, 8M, 9M, 10M, 11M, [1Y, 12M], 15M, 18M, 21M, [2Y, 24M], [3Y, 36M], [4Y, 48M], [5Y, 60M], broken]. broken indicates that a SettlementDate must be sent
L1_BuySell
string
The direction of the trade or trade leg. This always refers to the BaseCurrency, NOT the DealtCurrency.
L1_Account
string
Example: Garfields|GARF
The account a trade or order has been submitted against. The format is <description>|<name> or <name>|<name>
NDFLegTradeDetailsFields L1
L1_FixingDate
string
Example: 20150620
This is the day and time whereby the comparison between the NDF rate and the prevailing spot rate is made.
TimeOptionLegTradeDetailsFields L1
L1_StartDate
string
Example: 20150620
L1_StartTenor
string
Example: 1W
PickUpAck Swap Trade Details
CommonTradeDetailsFields
Account
string
Example: Garfields|GARF
The account a trade or order has been submitted against. The format is <description>|<name> or <name>|<name>
TOBOUser
string
Example: client@customer.co.za
The user the trade is on behalf of. For example, if the logged in user dealer1@novobank.co.za wishes to make a trade on behalf of user client@customer.co.za, then the value of this field will be client@customer.co.za.
OneWayDirection
string
LastActionDateTime
datetime
The time and date of the last action on an order.
RequestedDateTime
datetime
TraderUsername
string
Example: sales_trader@novobank.co.za
The user who entered the trade. This may be on behalf of themselves, or on behalf of someone else. For example, if the logged in user dealer1@novobank.co.za wishes to make a trade on behalf of user client@customer.co.za, then the value of this field will be dealer1@novobank.co.za. If the user client@customer.co.za makes a trade on behalf of themselves it will be client@customer.co.za.
TradeDetailsFields
CurrencyPair
string
The currency pair for the trade. For example, EURUSD
DealtCurrency
string
The currency of the Amount of a trade or order.
TradingType
string
Caplin supported values are [SPOT, FWD, NDF, NDF_FIXING, TIME_OPTION, DRAWDOWN, SWAP, BLOCK]. See the constants defined within com.caplin.motif.fx.trading.FXTradingType for further details.
InterventionTradeDetailsFields
InterventionStatus
string
Use the TradeStatus field instead
TradeStatus
string
Example: AWAITING-PRICE
The current status of the trade. Supported types are [AWAITING-TRADER, AWAITING-PRICE, PRICED, EXECUTING, CLOSED, REJECTED, ERRORED, COMPLETED]. CLOSED means the client cancelled the trade request, REJECTED indicates it was rejected by the dealer.
Dealable
boolean
Whether a trade request can be picked up by a sales trader
PricingMode
string
Example: AUTO
Whether the trade is being automatically or manually priced. Supported types are [AUTO, MANUAL]
Competition
boolean
Whether a quote request is in competition. For example, true for quotes from an ECN and false for quotes from an SDP
PrimaryReason
string
Example: This trade exceeds the GFA
The headline reason that a trade requires intervention.
Reasons
string
A JSON structure containing all the reasons and information about why the trade requires intervention. Please see the Sales Intervention Reasons documentation on the website for more information.
TradeRequestID
string
Source
string
The source of a quote request. The name or ID of an ECN, SDP or other channel
IntervenerUsername
string
Example: head_trader@novobank.co.za
The user who is currently intervening on and potentially pricing a trade.
LegTradeDetailsFields L1
L1_Amount
decimal
The amount of a trade or order in the DealtCurrency.
L1_SettlementDate
string
L1_Tenor
string
Example: 1M
Supported types are [ON, [TODAY, TOD, TD], TN, [TOM, ND], SPOT, SN, 1D, 1W, 2W, 3W, 4W, 1M, 2M, 4M, 5M, 6M, 7M, 8M, 9M, 10M, 11M, [1Y, 12M], 15M, 18M, 21M, [2Y, 24M], [3Y, 36M], [4Y, 48M], [5Y, 60M], broken]. broken indicates that a SettlementDate must be sent
L1_BuySell
string
The direction of the trade or trade leg. This always refers to the BaseCurrency, NOT the DealtCurrency.
L1_Account
string
Example: Garfields|GARF
The account a trade or order has been submitted against. The format is <description>|<name> or <name>|<name>
LegTradeDetailsFields L2
L2_Amount
decimal
The amount of a trade or order in the DealtCurrency.
L2_SettlementDate
string
L2_Tenor
string
Example: 1M
Supported types are [ON, [TODAY, TOD, TD], TN, [TOM, ND], SPOT, SN, 1D, 1W, 2W, 3W, 4W, 1M, 2M, 4M, 5M, 6M, 7M, 8M, 9M, 10M, 11M, [1Y, 12M], 15M, 18M, 21M, [2Y, 24M], [3Y, 36M], [4Y, 48M], [5Y, 60M], broken]. broken indicates that a SettlementDate must be sent
L2_BuySell
string
The direction of the trade or trade leg. This always refers to the BaseCurrency, NOT the DealtCurrency.
L2_Account
string
Example: Garfields|GARF
The account a trade or order has been submitted against. The format is <description>|<name> or <name>|<name>
PickUpRejected
MsgType
String
Example: PickUpRejected
Name of the transition
RequestID
String
The RequestID. A Unique identifier, must remain the same for each event in the trade model
PriceUpdate Sales Spot Quote
SpotQuote
CommonFields
BidQuoteID
string
A unique ID that identifies the bid side of this quote.
AskQuoteID
string
A unique ID that identifies the ask side of this quote.
BidIndicative
boolean
Determines whether the Bid price is indicative. Indicative prices cannot be executed upon
AskIndicative
boolean
Determines whether the Ask price is indicative. Indicative prices cannot be executed upon
GFA
string
Example: 1000000
The maximum amount that a quote can be executed for. If the client wishes to quote for more than this, they must perform an RFS
TimePriceReceived
string
The time a price was received from the liquidity provider
DigitsBeforePips
integer
Example: 2
Precision-related field that tells the client how to display rates. This is the number of digits between the decimal point and the pips (i.e the big digits that the client wants to look at). For most currency pairs the value of this bla will be 2, i.e. for a USDGBP rate of 1.23456 the pips are 45 so there are two digits between the decimal point and the pips. For USDJPY the rate could be 103.256 and the pips are the 25, so in this case the value of DigitsBeforePips should be 0.
NumberOfPips
integer
Example: 2
Precision-related field that tells the client how to display rates. This is the number of pips the client wants to look at. Normally this value is 2.
SpotBidRate
decimal
Example: 1.08341
For SPOT quotes this value will be identical to the L1_AllInBidRate. For forward quotes this will contain the SPOT rate that the forward all-in rate was derived from. For forward quotes the value in this field should always equal L1_AllInBidRate - L1_FwdBidPoints.
SpotMidRate
decimal
Example: 1.08345
The mid rate between the SpotAskRate and SpotBidRate. Note that this will not always be precisely between.
SpotAskRate
decimal
Example: 1.08349
For SPOT quotes this value will be identical to the L1_AllInAskRate. For forward quotes this will contain the SPOT rate that the forward all-in rate was derived from. For forward quotes the value in this field should always equal L1_AllInAskRate - L1_FwdAskPoints.
SpotRateDPS
integer
Example: 5
The number of decimal places to display after the decimal point.
OverallTimeOut
integer
The number of seconds remaining before this stream (not this individual quote) is timed out. This is not present for standard price updates.
RemainingTimeOutMillis
integer
The number of seconds remaining of the OverallTimeOut before this stream is timed out. This is not present for standard price updates.
WarningCode
string
Example: 001
The code for the warning regarding a quote request.
WarningMessage
string
Example: You do not have sufficient credit for EUR
The message to display for any warnings regarding a quote request
NumberOfFractionalPips
string
Precision-related field that tells the client how to display rates. This is the number of digits after the pips. For example, for a USDGBP rate of 1.23456 the pips are the 45 and there is one digit (the 6) after the pips, so the value of the NumberOfFractionalPips field should be 1. There are typically more fractional pips on forward rates than spot rates.
BidPips
string
Example: 11.98
AskPips
string
Example: 11.98
SwapGFA
string
Example: 1 000 000
CurrencyPair
string
The currency pair for the trade. For example, EURUSD
BidCostAmount
decimal
Example: 150000.00
The total amount on the bid side of the trade when requesting a quote
BidCostPercentage
decimal
Example: 1.5
Percentage of the overall price which is the transactional cost to the client of performing the trade, displayed on the bid side. This number should be out of 100, where 100.0 represents 100%.
CostCurrency
string
Example: GBP
The currency that the cost is displayed in, this could be any currency but will typically be set to the Term Currency
AskCostAmount
decimal
Example: 150000.00
The total amount on the ask side of the trade when requesting a quote
AskCostPercentage
decimal
Example: 1.5
Percentage of the overall price which is the transactional cost to the client of performing the trade, displayed on the ask side. This number should be out of 100, where 100.0 represents 100%.
AskCostRate
decimal
The rate to multiply by the margin (in term currency), to get the cost in the CostCurrency.
BidCostRate
decimal
The rate to multiply by the margin (in term currency), to get the cost in the CostCurrency.
CostCurrencyDPS
integer
Example: 2
The number of decimal places to display after the decimal point.
PriceUpdateSource
string
The name of the adapter a particular price update originated from.
LegFields L1
L1_Tenor
string
Example: 1M
Supported types are [ON, [TODAY, TOD, TD], TN, [TOM, ND], SPOT, SN, 1D, 1W, 2W, 3W, 4W, 1M, 2M, 4M, 5M, 6M, 7M, 8M, 9M, 10M, 11M, [1Y, 12M], 15M, 18M, 21M, [2Y, 24M], [3Y, 36M], [4Y, 48M], [5Y, 60M], broken]. broken indicates that a SettlementDate must be sent
L1_RiskDate
string
Example: 20160314
The date in the settlement window which yields the lowest client sell price, or the highest client buy price.
L1_RiskTenor
string
Example: 1W
The tenor in the settlement window which yields the lowest client sell price, or the highest client buy price.
L1_SettlementDate
string
L1_AllInRateDPS
integer
Example: 5
The number of decimal places to display after the decimal point.
L1_AllInBidRate
decimal
Example: 1.091790
The bid rate used in charging customers for accepting banker's acceptances, consisting of the discount interest rate plus the commission.
L1_FwdBidPoints
decimal
Example: 0.005390
The number of basis points added to or subtracted from the bid rate to determine the forward rate for delivery on a specific value date.
L1_AllInAskRate
decimal
Example: 1.091790
The ask rate used in charging customers for accepting banker's acceptances, consisting of the discount interest rate plus the commission.
L1_FwdAskPoints
decimal
Example: 0.005390
The number of basis points added to or subtracted from the ask rate to determine the forward rate for delivery on a specific value date.
L1_FwdMidPoints
decimal
Example: 0.005390
The number of basis points added to or subtracted from the mid rate to determine the forward rate for delivery on a specific value date.
L1_FwdBidPips
string
Example: 53.90
L1_FwdAskPips
string
Example: 53.90
L1_AllInMidRate
decimal
Example: 1.091790
The mid rate used in charging customers for accepting banker's acceptances, consisting of the discount interest rate plus the commission.
L1_Amount
decimal
The amount of a trade or order in the DealtCurrency.
L1_BuySell
string
The direction of the trade or trade leg. This always refers to the BaseCurrency, NOT the DealtCurrency.
SalesCommonFields
TraderSpotBidRate
decimal
Example: 1.08575
TraderSpotAskRate
decimal
Example: 1.08575
DefaultSpotBidMargin
decimal
Example: 0.00054
DefaultSpotAskMargin
decimal
Example: 0.00054
ProfitCurrency
string
Example: USD
The profit currency that the ProfitBidRate is being provided for.
ProfitCurrencyDPS
integer
Example: 5
The number of decimal places that should be used for formatting the amount in profit currency field.
ProfitIsHouse
boolean
Whether the field ProfitCurrency is the system/house currency or not.
ProfitBidRate
decimal
Example: 1.091790
The conversion rate between the contra currency and the profit currency. This can be used for entering profit in an amount of settlement currency.
ProfitAskRate
decimal
Example: 1.090098
The conversion rate between the contra currency and the profit currency. This can be used for entering profit in an amount of settlement currency.
SalesLegFields L1
L1_TraderAllInBidRate
decimal
Example: 1.091790
L1_TraderFwdBidPoints
decimal
Example: 0.001198
L1_DefaultFwdBidMargin
decimal
Example: 0.000019
L1_TraderAllInAskRate
decimal
Example: 1.091790
L1_TraderFwdAskPoints
decimal
Example: 0.001198
L1_DefaultFwdAskMargin
decimal
Example: 0.000019
PriceUpdate Sales Forward Quote
ForwardQuote
CommonFields
BidQuoteID
string
A unique ID that identifies the bid side of this quote.
AskQuoteID
string
A unique ID that identifies the ask side of this quote.
BidIndicative
boolean
Determines whether the Bid price is indicative. Indicative prices cannot be executed upon
AskIndicative
boolean
Determines whether the Ask price is indicative. Indicative prices cannot be executed upon
GFA
string
Example: 1000000
The maximum amount that a quote can be executed for. If the client wishes to quote for more than this, they must perform an RFS
TimePriceReceived
string
The time a price was received from the liquidity provider
DigitsBeforePips
integer
Example: 2
Precision-related field that tells the client how to display rates. This is the number of digits between the decimal point and the pips (i.e the big digits that the client wants to look at). For most currency pairs the value of this bla will be 2, i.e. for a USDGBP rate of 1.23456 the pips are 45 so there are two digits between the decimal point and the pips. For USDJPY the rate could be 103.256 and the pips are the 25, so in this case the value of DigitsBeforePips should be 0.
NumberOfPips
integer
Example: 2
Precision-related field that tells the client how to display rates. This is the number of pips the client wants to look at. Normally this value is 2.
SpotBidRate
decimal
Example: 1.08341
For SPOT quotes this value will be identical to the L1_AllInBidRate. For forward quotes this will contain the SPOT rate that the forward all-in rate was derived from. For forward quotes the value in this field should always equal L1_AllInBidRate - L1_FwdBidPoints.
SpotMidRate
decimal
Example: 1.08345
The mid rate between the SpotAskRate and SpotBidRate. Note that this will not always be precisely between.
SpotAskRate
decimal
Example: 1.08349
For SPOT quotes this value will be identical to the L1_AllInAskRate. For forward quotes this will contain the SPOT rate that the forward all-in rate was derived from. For forward quotes the value in this field should always equal L1_AllInAskRate - L1_FwdAskPoints.
SpotRateDPS
integer
Example: 5
The number of decimal places to display after the decimal point.
OverallTimeOut
integer
The number of seconds remaining before this stream (not this individual quote) is timed out. This is not present for standard price updates.
RemainingTimeOutMillis
integer
The number of seconds remaining of the OverallTimeOut before this stream is timed out. This is not present for standard price updates.
WarningCode
string
Example: 001
The code for the warning regarding a quote request.
WarningMessage
string
Example: You do not have sufficient credit for EUR
The message to display for any warnings regarding a quote request
NumberOfFractionalPips
string
Precision-related field that tells the client how to display rates. This is the number of digits after the pips. For example, for a USDGBP rate of 1.23456 the pips are the 45 and there is one digit (the 6) after the pips, so the value of the NumberOfFractionalPips field should be 1. There are typically more fractional pips on forward rates than spot rates.
BidPips
string
Example: 11.98
AskPips
string
Example: 11.98
SwapGFA
string
Example: 1 000 000
CurrencyPair
string
The currency pair for the trade. For example, EURUSD
BidCostAmount
decimal
Example: 150000.00
The total amount on the bid side of the trade when requesting a quote
BidCostPercentage
decimal
Example: 1.5
Percentage of the overall price which is the transactional cost to the client of performing the trade, displayed on the bid side. This number should be out of 100, where 100.0 represents 100%.
CostCurrency
string
Example: GBP
The currency that the cost is displayed in, this could be any currency but will typically be set to the Term Currency
AskCostAmount
decimal
Example: 150000.00
The total amount on the ask side of the trade when requesting a quote
AskCostPercentage
decimal
Example: 1.5
Percentage of the overall price which is the transactional cost to the client of performing the trade, displayed on the ask side. This number should be out of 100, where 100.0 represents 100%.
AskCostRate
decimal
The rate to multiply by the margin (in term currency), to get the cost in the CostCurrency.
BidCostRate
decimal
The rate to multiply by the margin (in term currency), to get the cost in the CostCurrency.
CostCurrencyDPS
integer
Example: 2
The number of decimal places to display after the decimal point.
PriceUpdateSource
string
The name of the adapter a particular price update originated from.
LegFields L1
L1_Tenor
string
Example: 1M
Supported types are [ON, [TODAY, TOD, TD], TN, [TOM, ND], SPOT, SN, 1D, 1W, 2W, 3W, 4W, 1M, 2M, 4M, 5M, 6M, 7M, 8M, 9M, 10M, 11M, [1Y, 12M], 15M, 18M, 21M, [2Y, 24M], [3Y, 36M], [4Y, 48M], [5Y, 60M], broken]. broken indicates that a SettlementDate must be sent
L1_RiskDate
string
Example: 20160314
The date in the settlement window which yields the lowest client sell price, or the highest client buy price.
L1_RiskTenor
string
Example: 1W
The tenor in the settlement window which yields the lowest client sell price, or the highest client buy price.
L1_SettlementDate
string
L1_AllInRateDPS
integer
Example: 5
The number of decimal places to display after the decimal point.
L1_AllInBidRate
decimal
Example: 1.091790
The bid rate used in charging customers for accepting banker's acceptances, consisting of the discount interest rate plus the commission.
L1_FwdBidPoints
decimal
Example: 0.005390
The number of basis points added to or subtracted from the bid rate to determine the forward rate for delivery on a specific value date.
L1_AllInAskRate
decimal
Example: 1.091790
The ask rate used in charging customers for accepting banker's acceptances, consisting of the discount interest rate plus the commission.
L1_FwdAskPoints
decimal
Example: 0.005390
The number of basis points added to or subtracted from the ask rate to determine the forward rate for delivery on a specific value date.
L1_FwdMidPoints
decimal
Example: 0.005390
The number of basis points added to or subtracted from the mid rate to determine the forward rate for delivery on a specific value date.
L1_FwdBidPips
string
Example: 53.90
L1_FwdAskPips
string
Example: 53.90
L1_AllInMidRate
decimal
Example: 1.091790
The mid rate used in charging customers for accepting banker's acceptances, consisting of the discount interest rate plus the commission.
L1_Amount
decimal
The amount of a trade or order in the DealtCurrency.
L1_BuySell
string
The direction of the trade or trade leg. This always refers to the BaseCurrency, NOT the DealtCurrency.
SalesCommonFields
TraderSpotBidRate
decimal
Example: 1.08575
TraderSpotAskRate
decimal
Example: 1.08575
DefaultSpotBidMargin
decimal
Example: 0.00054
DefaultSpotAskMargin
decimal
Example: 0.00054
ProfitCurrency
string
Example: USD
The profit currency that the ProfitBidRate is being provided for.
ProfitCurrencyDPS
integer
Example: 5
The number of decimal places that should be used for formatting the amount in profit currency field.
ProfitIsHouse
boolean
Whether the field ProfitCurrency is the system/house currency or not.
ProfitBidRate
decimal
Example: 1.091790
The conversion rate between the contra currency and the profit currency. This can be used for entering profit in an amount of settlement currency.
ProfitAskRate
decimal
Example: 1.090098
The conversion rate between the contra currency and the profit currency. This can be used for entering profit in an amount of settlement currency.
SalesLegFields L1
L1_TraderAllInBidRate
decimal
Example: 1.091790
L1_TraderFwdBidPoints
decimal
Example: 0.001198
L1_DefaultFwdBidMargin
decimal
Example: 0.000019
L1_TraderAllInAskRate
decimal
Example: 1.091790
L1_TraderFwdAskPoints
decimal
Example: 0.001198
L1_DefaultFwdAskMargin
decimal
Example: 0.000019
PriceUpdate Sales Swap Quote
SwapQuote
CommonFields
BidQuoteID
string
A unique ID that identifies the bid side of this quote.
AskQuoteID
string
A unique ID that identifies the ask side of this quote.
BidIndicative
boolean
Determines whether the Bid price is indicative. Indicative prices cannot be executed upon
AskIndicative
boolean
Determines whether the Ask price is indicative. Indicative prices cannot be executed upon
GFA
string
Example: 1000000
The maximum amount that a quote can be executed for. If the client wishes to quote for more than this, they must perform an RFS
TimePriceReceived
string
The time a price was received from the liquidity provider
DigitsBeforePips
integer
Example: 2
Precision-related field that tells the client how to display rates. This is the number of digits between the decimal point and the pips (i.e the big digits that the client wants to look at). For most currency pairs the value of this bla will be 2, i.e. for a USDGBP rate of 1.23456 the pips are 45 so there are two digits between the decimal point and the pips. For USDJPY the rate could be 103.256 and the pips are the 25, so in this case the value of DigitsBeforePips should be 0.
NumberOfPips
integer
Example: 2
Precision-related field that tells the client how to display rates. This is the number of pips the client wants to look at. Normally this value is 2.
SpotBidRate
decimal
Example: 1.08341
For SPOT quotes this value will be identical to the L1_AllInBidRate. For forward quotes this will contain the SPOT rate that the forward all-in rate was derived from. For forward quotes the value in this field should always equal L1_AllInBidRate - L1_FwdBidPoints.
SpotMidRate
decimal
Example: 1.08345
The mid rate between the SpotAskRate and SpotBidRate. Note that this will not always be precisely between.
SpotAskRate
decimal
Example: 1.08349
For SPOT quotes this value will be identical to the L1_AllInAskRate. For forward quotes this will contain the SPOT rate that the forward all-in rate was derived from. For forward quotes the value in this field should always equal L1_AllInAskRate - L1_FwdAskPoints.
SpotRateDPS
integer
Example: 5
The number of decimal places to display after the decimal point.
OverallTimeOut
integer
The number of seconds remaining before this stream (not this individual quote) is timed out. This is not present for standard price updates.
RemainingTimeOutMillis
integer
The number of seconds remaining of the OverallTimeOut before this stream is timed out. This is not present for standard price updates.
WarningCode
string
Example: 001
The code for the warning regarding a quote request.
WarningMessage
string
Example: You do not have sufficient credit for EUR
The message to display for any warnings regarding a quote request
NumberOfFractionalPips
string
Precision-related field that tells the client how to display rates. This is the number of digits after the pips. For example, for a USDGBP rate of 1.23456 the pips are the 45 and there is one digit (the 6) after the pips, so the value of the NumberOfFractionalPips field should be 1. There are typically more fractional pips on forward rates than spot rates.
BidPips
string
Example: 11.98
AskPips
string
Example: 11.98
SwapGFA
string
Example: 1 000 000
CurrencyPair
string
The currency pair for the trade. For example, EURUSD
BidCostAmount
decimal
Example: 150000.00
The total amount on the bid side of the trade when requesting a quote
BidCostPercentage
decimal
Example: 1.5
Percentage of the overall price which is the transactional cost to the client of performing the trade, displayed on the bid side. This number should be out of 100, where 100.0 represents 100%.
CostCurrency
string
Example: GBP
The currency that the cost is displayed in, this could be any currency but will typically be set to the Term Currency
AskCostAmount
decimal
Example: 150000.00
The total amount on the ask side of the trade when requesting a quote
AskCostPercentage
decimal
Example: 1.5
Percentage of the overall price which is the transactional cost to the client of performing the trade, displayed on the ask side. This number should be out of 100, where 100.0 represents 100%.
AskCostRate
decimal
The rate to multiply by the margin (in term currency), to get the cost in the CostCurrency.
BidCostRate
decimal
The rate to multiply by the margin (in term currency), to get the cost in the CostCurrency.
CostCurrencyDPS
integer
Example: 2
The number of decimal places to display after the decimal point.
PriceUpdateSource
string
The name of the adapter a particular price update originated from.
LegFields L1
L1_Tenor
string
Example: 1M
Supported types are [ON, [TODAY, TOD, TD], TN, [TOM, ND], SPOT, SN, 1D, 1W, 2W, 3W, 4W, 1M, 2M, 4M, 5M, 6M, 7M, 8M, 9M, 10M, 11M, [1Y, 12M], 15M, 18M, 21M, [2Y, 24M], [3Y, 36M], [4Y, 48M], [5Y, 60M], broken]. broken indicates that a SettlementDate must be sent
L1_RiskDate
string
Example: 20160314
The date in the settlement window which yields the lowest client sell price, or the highest client buy price.
L1_RiskTenor
string
Example: 1W
The tenor in the settlement window which yields the lowest client sell price, or the highest client buy price.
L1_SettlementDate
string
L1_AllInRateDPS
integer
Example: 5
The number of decimal places to display after the decimal point.
L1_AllInBidRate
decimal
Example: 1.091790
The bid rate used in charging customers for accepting banker's acceptances, consisting of the discount interest rate plus the commission.
L1_FwdBidPoints
decimal
Example: 0.005390
The number of basis points added to or subtracted from the bid rate to determine the forward rate for delivery on a specific value date.
L1_AllInAskRate
decimal
Example: 1.091790
The ask rate used in charging customers for accepting banker's acceptances, consisting of the discount interest rate plus the commission.
L1_FwdAskPoints
decimal
Example: 0.005390
The number of basis points added to or subtracted from the ask rate to determine the forward rate for delivery on a specific value date.
L1_FwdMidPoints
decimal
Example: 0.005390
The number of basis points added to or subtracted from the mid rate to determine the forward rate for delivery on a specific value date.
L1_FwdBidPips
string
Example: 53.90
L1_FwdAskPips
string
Example: 53.90
L1_AllInMidRate
decimal
Example: 1.091790
The mid rate used in charging customers for accepting banker's acceptances, consisting of the discount interest rate plus the commission.
L1_Amount
decimal
The amount of a trade or order in the DealtCurrency.
L1_BuySell
string
The direction of the trade or trade leg. This always refers to the BaseCurrency, NOT the DealtCurrency.
LegFields L2
L2_Tenor
string
Example: 1M
Supported types are [ON, [TODAY, TOD, TD], TN, [TOM, ND], SPOT, SN, 1D, 1W, 2W, 3W, 4W, 1M, 2M, 4M, 5M, 6M, 7M, 8M, 9M, 10M, 11M, [1Y, 12M], 15M, 18M, 21M, [2Y, 24M], [3Y, 36M], [4Y, 48M], [5Y, 60M], broken]. broken indicates that a SettlementDate must be sent
L2_RiskDate
string
Example: 20160314
The date in the settlement window which yields the lowest client sell price, or the highest client buy price.
L2_RiskTenor
string
Example: 1W
The tenor in the settlement window which yields the lowest client sell price, or the highest client buy price.
L2_SettlementDate
string
L2_AllInRateDPS
integer
Example: 5
The number of decimal places to display after the decimal point.
L2_AllInBidRate
decimal
Example: 1.091790
The bid rate used in charging customers for accepting banker's acceptances, consisting of the discount interest rate plus the commission.
L2_FwdBidPoints
decimal
Example: 0.005390
The number of basis points added to or subtracted from the bid rate to determine the forward rate for delivery on a specific value date.
L2_AllInAskRate
decimal
Example: 1.091790
The ask rate used in charging customers for accepting banker's acceptances, consisting of the discount interest rate plus the commission.
L2_FwdAskPoints
decimal
Example: 0.005390
The number of basis points added to or subtracted from the ask rate to determine the forward rate for delivery on a specific value date.
L2_FwdMidPoints
decimal
Example: 0.005390
The number of basis points added to or subtracted from the mid rate to determine the forward rate for delivery on a specific value date.
L2_FwdBidPips
string
Example: 53.90
L2_FwdAskPips
string
Example: 53.90
L2_AllInMidRate
decimal
Example: 1.091790
The mid rate used in charging customers for accepting banker's acceptances, consisting of the discount interest rate plus the commission.
L2_Amount
decimal
The amount of a trade or order in the DealtCurrency.
L2_BuySell
string
The direction of the trade or trade leg. This always refers to the BaseCurrency, NOT the DealtCurrency.
SwapQuoteFields
SwapAskPoints
decimal
Example: 0.004934
SwapBidPoints
decimal
Example: 0.004171
SwapMidPoints
decimal
Example: 0.004553
SwapAskPips
string
Example: 49.34
SwapBidPips
string
Example: 41.71
SalesCommonFields
TraderSpotBidRate
decimal
Example: 1.08575
TraderSpotAskRate
decimal
Example: 1.08575
DefaultSpotBidMargin
decimal
Example: 0.00054
DefaultSpotAskMargin
decimal
Example: 0.00054
ProfitCurrency
string
Example: USD
The profit currency that the ProfitBidRate is being provided for.
ProfitCurrencyDPS
integer
Example: 5
The number of decimal places that should be used for formatting the amount in profit currency field.
ProfitIsHouse
boolean
Whether the field ProfitCurrency is the system/house currency or not.
ProfitBidRate
decimal
Example: 1.091790
The conversion rate between the contra currency and the profit currency. This can be used for entering profit in an amount of settlement currency.
ProfitAskRate
decimal
Example: 1.090098
The conversion rate between the contra currency and the profit currency. This can be used for entering profit in an amount of settlement currency.
SalesLegFields L1
L1_TraderAllInBidRate
decimal
Example: 1.091790
L1_TraderFwdBidPoints
decimal
Example: 0.001198
L1_DefaultFwdBidMargin
decimal
Example: 0.000019
L1_TraderAllInAskRate
decimal
Example: 1.091790
L1_TraderFwdAskPoints
decimal
Example: 0.001198
L1_DefaultFwdAskMargin
decimal
Example: 0.000019
SalesLegFields L2
L2_TraderAllInBidRate
decimal
Example: 1.091790
L2_TraderFwdBidPoints
decimal
Example: 0.001198
L2_DefaultFwdBidMargin
decimal
Example: 0.000019
L2_TraderAllInAskRate
decimal
Example: 1.091790
L2_TraderFwdAskPoints
decimal
Example: 0.001198
L2_DefaultFwdAskMargin
decimal
Example: 0.000019
SalesSwapQuoteFields
TraderSwapAskPoints
decimal
Example: 0.004894
The swap ask points with no client margins applied to them.
DefaultSwapAskMargin
decimal
Example: 0.000040
The default swap margin to be applied to the ask side: L1_DefaultFwdBidMargin + L2_DefaultFwdAskMargin
TraderSwapBidPoints
decimal
Example: 0.004211
The swap bid points with no client margins applied to them.
DefaultSwapBidMargin
decimal
Example: 0.000040
The default swap margin to be applied to the bid side: L1_DefaultFwdAskMargin + L2_DefaultFwdBidMargin
RejectAck
MsgType
String
Example: RejectAck
Name of the transition
RequestID
String
The RequestID. A Unique identifier, must remain the same for each event in the trade model
TradeConfirmation Spot Sales Trade Confirmation
SpotTradeConfirmation
CommonTradeConfirmationFields
TradeID
string
Example: 00001561
A unique identifier for this trade
CurrencyPair
string
The currency pair for the trade. For example, EURUSD
DealtCurrency
string
The currency of the Amount of a trade or order.
SpotRate
decimal
Example: 1.08341
SpotMidRate
decimal
Example: 1.08345
The mid rate between the SpotAskRate and SpotBidRate. Note that this will not always be precisely between.
SpotRateDPS
integer
Example: 5
The number of decimal places to display after the decimal point.
ExecutionDateTime
string
Example: 20160322123621
TradeDate
string
Example: 20160314
Account
string
Example: Garfields|GARF
The account a trade or order has been submitted against. The format is <description>|<name> or <name>|<name>
TraderUsername
string
Example: sales_trader@novobank.co.za
The user who entered the trade. This may be on behalf of themselves, or on behalf of someone else. For example, if the logged in user dealer1@novobank.co.za wishes to make a trade on behalf of user client@customer.co.za, then the value of this field will be dealer1@novobank.co.za. If the user client@customer.co.za makes a trade on behalf of themselves it will be client@customer.co.za.
TOBOUser
string
Example: client@customer.co.za
The user the trade is on behalf of. For example, if the logged in user dealer1@novobank.co.za wishes to make a trade on behalf of user client@customer.co.za, then the value of this field will be client@customer.co.za.
EntityId
string
Example: CUSTONE
The entity the trade is on behalf of. For example, if the logged in user user1@customer.co.za wishes to make a trade on behalf of entity CUSTONE, then the value of this field will be CUSTONE.
EntityDescription
string
Example: Customer 1
The description of a trade on behalf of entity.
AssetType
string
Example: FX
A grouping of investments that exhibit similar characteristics and are subject to the same laws and regulations. Supported asset types are [FX, PM]
TradingType
string
Caplin supported values are [SPOT, FWD, NDF, NDF_FIXING, TIME_OPTION, DRAWDOWN, SWAP, BLOCK]. See the constants defined within com.caplin.motif.fx.trading.FXTradingType for further details.
DigitsBeforePips
integer
Example: 2
Precision-related field that tells the client how to display rates. This is the number of digits between the decimal point and the pips (i.e the big digits that the client wants to look at). For most currency pairs the value of this bla will be 2, i.e. for a USDGBP rate of 1.23456 the pips are 45 so there are two digits between the decimal point and the pips. For USDJPY the rate could be 103.256 and the pips are the 25, so in this case the value of DigitsBeforePips should be 0.
NumberOfPips
integer
Example: 2
Precision-related field that tells the client how to display rates. This is the number of pips the client wants to look at. Normally this value is 2.
OrderID
string
The id of the order.
WarningCode
string
Example: 001
The code for the warning regarding a quote request.
WarningMessage
string
Example: You do not have sufficient credit for EUR
The message to display for any warnings regarding a quote request
Client
string
Client is a duplicate of TOBOUser
CostAmount
decimal
Example: 12412891.31
The total transactional cost of performing the trade to the client
CostCurrency
string
Example: GBP
The currency that the cost is displayed in, this could be any currency but will typically be set to the Term Currency
CostPercentage
decimal
Example: 13.56
Percentage of the overall price which is the transactional cost to the client of performing the trade. This number should be out of 100, where 100.0 represents 100%.
CanAllocate
boolean
Defines if a user can allocate a trade.
IsAllocated
boolean
Define if a trade is already allocated or not
IsReversible
boolean
Whether a trade can be reversed.
IsAmendable
boolean
Whether a trade can be amended.
IsCancellable
boolean
Whether a trade can be cancelled.
CostCurrencyDPS
integer
Example: 2
The number of decimal places to display after the decimal point.
Remarks
string
The clients or trader's comments on an order leg - visible to both the Client and the Trader
LegTradeConfirmationFields L1
SettlementTradeFields L1
SettlementFields L1_Pay[n]
L1_Pay[n]SettlementId
string
The identifier for the trade.
L1_Pay[n]SettlementCurrency
string
Example: GBP
A currency for of settlement instruction
L1_Pay[n]SettlementAmount
decimal
The amount of a settlement
L1_Pay[n]SettlementDirection
string
The direction in which the settlement details refer to, supported directions are: PAY, RECEIVE, BOTH
L1_Pay[n]IsDefaultSettlementInstruction
boolean
Is this the default settlement instruction for this currency
L1_Pay[n]SettlementInstructionType
string
Example: EXISTING
The type of settlement instruction attached to a trade. Supported types are [EXISTING, ADHOC, NONE]
L1_Pay[n]SettlementDisplayName
string
Example: [CCY] Account 1
The name of the settlement instruction. This field can be omitted.
L1_Pay[n]SettlementStatus
string
Caplin supported statuses are [PENDING, AFFIRMED, CONFIRMED, DISPUTED, CANCELLED, REPLACED, AUTO_CONFIRMED, OVERDUE, REJECTED]
L1_Pay[n]BankAccount
string
Example: 12345678
The account number of the bank
L1_Pay[n]BankSwift
string
Example: CAP123
The BIC of the bank
L1_Pay[n]BankName
string
Example: Bank Of Caplin
The name of the bank
L1_Pay[n]BankAddress1
string
Example: 12 Capitol
The first line of the bank's address
L1_Pay[n]BankAddress2
string
Example: The City
The second line of the bank's address
L1_Pay[n]BankAddress3
string
Example: London
The third line of the bank's address
L1_Pay[n]IndividualAccount
string
Example: 87654321
The account number of the recipient
L1_Pay[n]IndividualSwift
string
Example: SOLD987
The BIC of the recipient's account
L1_Pay[n]IndividualName
string
Example: Susan Sellers
The name of the payee or payee's bank
L1_Pay[n]IndividualAddress1
string
Example: 98 Lane
The first line of the recipient
L1_Pay[n]IndividualAddress2
string
Example: Manchester
The second line of the recipient
L1_Pay[n]NettingStatus
string
Example: NETTED
The status that denotes the permanent netting state of a settlement. This is required to know which settlements have been netted and which have not
L1_Pay[n]SplitComponentId
string
The unique ID of a split component
L1_Pay[n]SettlementDetailsLine1
string
The first line of remittance information.
L1_Pay[n]SettlementDetailsLine2
string
The second line of remittance information.
L1_Pay[n]SettlementDetailsLine3
string
The third line of remittance information.
L1_Pay[n]SettlementDetailsLine4
string
The fourth line of remittance information.
SettlementFields L1_Receive[n]
L1_Receive[n]SettlementId
string
The identifier for the trade.
L1_Receive[n]SettlementCurrency
string
Example: GBP
A currency for of settlement instruction
L1_Receive[n]SettlementAmount
decimal
The amount of a settlement
L1_Receive[n]SettlementDirection
string
The direction in which the settlement details refer to, supported directions are: PAY, RECEIVE, BOTH
L1_Receive[n]IsDefaultSettlementInstruction
boolean
Is this the default settlement instruction for this currency
L1_Receive[n]SettlementInstructionType
string
Example: EXISTING
The type of settlement instruction attached to a trade. Supported types are [EXISTING, ADHOC, NONE]
L1_Receive[n]SettlementDisplayName
string
Example: [CCY] Account 1
The name of the settlement instruction. This field can be omitted.
L1_Receive[n]SettlementStatus
string
Caplin supported statuses are [PENDING, AFFIRMED, CONFIRMED, DISPUTED, CANCELLED, REPLACED, AUTO_CONFIRMED, OVERDUE, REJECTED]
L1_Receive[n]BankAccount
string
Example: 12345678
The account number of the bank
L1_Receive[n]BankSwift
string
Example: CAP123
The BIC of the bank
L1_Receive[n]BankName
string
Example: Bank Of Caplin
The name of the bank
L1_Receive[n]BankAddress1
string
Example: 12 Capitol
The first line of the bank's address
L1_Receive[n]BankAddress2
string
Example: The City
The second line of the bank's address
L1_Receive[n]BankAddress3
string
Example: London
The third line of the bank's address
L1_Receive[n]IndividualAccount
string
Example: 87654321
The account number of the recipient
L1_Receive[n]IndividualSwift
string
Example: SOLD987
The BIC of the recipient's account
L1_Receive[n]IndividualName
string
Example: Susan Sellers
The name of the payee or payee's bank
L1_Receive[n]IndividualAddress1
string
Example: 98 Lane
The first line of the recipient
L1_Receive[n]IndividualAddress2
string
Example: Manchester
The second line of the recipient
L1_Receive[n]NettingStatus
string
Example: NETTED
The status that denotes the permanent netting state of a settlement. This is required to know which settlements have been netted and which have not
L1_Receive[n]SplitComponentId
string
The unique ID of a split component
L1_Receive[n]SettlementDetailsLine1
string
The first line of remittance information.
L1_Receive[n]SettlementDetailsLine2
string
The second line of remittance information.
L1_Receive[n]SettlementDetailsLine3
string
The third line of remittance information.
L1_Receive[n]SettlementDetailsLine4
string
The fourth line of remittance information.
L1_CanAffirm
boolean
Ability to Affirm the Trade Details are as agreed.
L1_CanConfirm
boolean
Ability to Confirm the Settlement Details are now final.
L1_CanAdHoc
boolean
Can confirm adhoc settlement instructions for a trade.
L1_CanDispute
boolean
Ability to Dispute the details of a trade, if for example something is wrong about it.
L1_CanCancel
boolean
Ability to Cancel a trade, for example if a mistake was made.
L1_CanReplace
boolean
Ability to mark a deal as amended, meaning that it has been replaced by a corrected deal.
L1_CanAutoConfirm
boolean
Ability to Mark that the deal was Confirmed by the Bank, rather than by the client.
L1_CanUnconfirm
boolean
Ability to move the deal back to a Pending state.
L1_SettlementStatus
string
Caplin supported statuses are [PENDING, AFFIRMED, CONFIRMED, DISPUTED, CANCELLED, REPLACED, AUTO_CONFIRMED, OVERDUE, REJECTED]
L1_NextActionDeadline
datetime
Example: 2018-03-16T07:25:16+00:00
The deadline for a user to perform a trade's next action in ISO-8601 format
L1_NextActionDeadlineDisplayTimezone
string
Example: America/New_York
The timezone for the NextActionDeadline field in the form Area/Location
L1_AffirmedBy
string
The name of the user who affirmed a trade.
L1_AffirmedDateTime
datetime
Example: 2018-03-16T07:25:16+00:00
The time at which a trade was affirmed in ISO-8601 format
L1_ConfirmedBy
string
The name of the user who confirmed a trade.
L1_ConfirmedDateTime
datetime
Example: 2018-03-16T07:25:16+00:00
The time at which a trade was confirmed in ISO-8601 format
L1_IsPayNetted
boolean
Denotes whether the pay side of a trade has been netted.
L1_IsReceiveNetted
boolean
Denotes whether the receive side of a trade has been netted.
L1_IsPayNettingRequired
boolean
Denotes whether the pay side of a trade requires netting.
L1_IsReceiveNettingRequired
boolean
Denotes whether the receive side of a trade requires netting.
L1_AllInRate
decimal
Example: 1.091790
L1_AllInRateDPS
integer
Example: 5
The number of decimal places to display after the decimal point.
L1_AllInMidRate
decimal
Example: 1.091790
The mid rate used in charging customers for accepting banker's acceptances, consisting of the discount interest rate plus the commission.
L1_FwdPoints
decimal
Example: 0.001198
L1_FwdMidPoints
decimal
Example: 0.005390
The number of basis points added to or subtracted from the mid rate to determine the forward rate for delivery on a specific value date.
L1_FwdPips
string
Example: 11.98
L1_BuySell
string
The direction of the trade or trade leg. This always refers to the BaseCurrency, NOT the DealtCurrency.
L1_Amount
decimal
The amount of a trade or order in the DealtCurrency.
L1_ContraAmount
decimal
Example: 350
The amount that is exchanged for the Amount. This will be defined in the contra currency of the DealtCurrency.
L1_Tenor
string
Example: 1M
Supported types are [ON, [TODAY, TOD, TD], TN, [TOM, ND], SPOT, SN, 1D, 1W, 2W, 3W, 4W, 1M, 2M, 4M, 5M, 6M, 7M, 8M, 9M, 10M, 11M, [1Y, 12M], 15M, 18M, 21M, [2Y, 24M], [3Y, 36M], [4Y, 48M], [5Y, 60M], broken]. broken indicates that a SettlementDate must be sent
L1_SettlementDate
string
L1_Account
string
Example: Garfields|GARF
The account a trade or order has been submitted against. The format is <description>|<name> or <name>|<name>
L1_Profit
decimal
Example: 1000
The sales profit in the specified currency.
L1_CostAmount
decimal
Example: 12412891.31
The total transactional cost of performing the trade to the client
SalesLegTradeConfirmationFields L1
L1_TraderAllInRate
decimal
Example: 1.005390
The all-in rate, with no client margin applied to it
L1_TraderFwdPoints
decimal
Example: 0.005390
The forward points with no client margin applied to them.
L1_FwdMargin
decimal
Example: 0.000019
The Forward margin that the user has selected. This field should be sent raw and unformatted.
L1_AllInMargin
decimal
Example: 0.00054
The sales user's selected SpotMargin added to the sales user's selected L1_FwdMargin.
SalesCommonTradeConfirmationFields
ProfitCurrency
string
Example: USD
The profit currency that the ProfitBidRate is being provided for.
ProfitCurrencyDPS
integer
Example: 5
The number of decimal places that should be used for formatting the amount in profit currency field.
ProfitIsHouse
boolean
Whether the field ProfitCurrency is the system/house currency or not.
ProfitRate
decimal
Example: 1.091790
The conversion rate from the contra currency into the profit currency.
TraderSpotRate
decimal
Example: 1.09174
Can be formatted using DigitsBeforePips, NumberOfPips and SpotRateDPS
SpotMargin
decimal
Example: 0.00054
Can be formatted using DigitsBeforePips, NumberOfPips and SpotRateDPS
Profit
decimal
Example: 1000
The sales profit in the specified currency.
Competition
boolean
Whether a quote request is in competition. For example, true for quotes from an ECN and false for quotes from an SDP
Source
string
The source of a quote request. The name or ID of an ECN, SDP or other channel
Reasons
string
A JSON structure containing all the reasons and information about why the trade requires intervention. Please see the Sales Intervention Reasons documentation on the website for more information.
TraderRemarks
string
The trader's comments on an order leg - visible to only the Trader
IsAdvised
boolean
Indicates whether the trader gave the client advice
TradeConfirmation Forward Sales Trade Confirmation
ForwardTradeConfirmation
CommonTradeConfirmationFields
TradeID
string
Example: 00001561
A unique identifier for this trade
CurrencyPair
string
The currency pair for the trade. For example, EURUSD
DealtCurrency
string
The currency of the Amount of a trade or order.
SpotRate
decimal
Example: 1.08341
SpotMidRate
decimal
Example: 1.08345
The mid rate between the SpotAskRate and SpotBidRate. Note that this will not always be precisely between.
SpotRateDPS
integer
Example: 5
The number of decimal places to display after the decimal point.
ExecutionDateTime
string
Example: 20160322123621
TradeDate
string
Example: 20160314
Account
string
Example: Garfields|GARF
The account a trade or order has been submitted against. The format is <description>|<name> or <name>|<name>
TraderUsername
string
Example: sales_trader@novobank.co.za
The user who entered the trade. This may be on behalf of themselves, or on behalf of someone else. For example, if the logged in user dealer1@novobank.co.za wishes to make a trade on behalf of user client@customer.co.za, then the value of this field will be dealer1@novobank.co.za. If the user client@customer.co.za makes a trade on behalf of themselves it will be client@customer.co.za.
TOBOUser
string
Example: client@customer.co.za
The user the trade is on behalf of. For example, if the logged in user dealer1@novobank.co.za wishes to make a trade on behalf of user client@customer.co.za, then the value of this field will be client@customer.co.za.
EntityId
string
Example: CUSTONE
The entity the trade is on behalf of. For example, if the logged in user user1@customer.co.za wishes to make a trade on behalf of entity CUSTONE, then the value of this field will be CUSTONE.
EntityDescription
string
Example: Customer 1
The description of a trade on behalf of entity.
AssetType
string
Example: FX
A grouping of investments that exhibit similar characteristics and are subject to the same laws and regulations. Supported asset types are [FX, PM]
TradingType
string
Caplin supported values are [SPOT, FWD, NDF, NDF_FIXING, TIME_OPTION, DRAWDOWN, SWAP, BLOCK]. See the constants defined within com.caplin.motif.fx.trading.FXTradingType for further details.
DigitsBeforePips
integer
Example: 2
Precision-related field that tells the client how to display rates. This is the number of digits between the decimal point and the pips (i.e the big digits that the client wants to look at). For most currency pairs the value of this bla will be 2, i.e. for a USDGBP rate of 1.23456 the pips are 45 so there are two digits between the decimal point and the pips. For USDJPY the rate could be 103.256 and the pips are the 25, so in this case the value of DigitsBeforePips should be 0.
NumberOfPips
integer
Example: 2
Precision-related field that tells the client how to display rates. This is the number of pips the client wants to look at. Normally this value is 2.
OrderID
string
The id of the order.
WarningCode
string
Example: 001
The code for the warning regarding a quote request.
WarningMessage
string
Example: You do not have sufficient credit for EUR
The message to display for any warnings regarding a quote request
Client
string
Client is a duplicate of TOBOUser
CostAmount
decimal
Example: 12412891.31
The total transactional cost of performing the trade to the client
CostCurrency
string
Example: GBP
The currency that the cost is displayed in, this could be any currency but will typically be set to the Term Currency
CostPercentage
decimal
Example: 13.56
Percentage of the overall price which is the transactional cost to the client of performing the trade. This number should be out of 100, where 100.0 represents 100%.
CanAllocate
boolean
Defines if a user can allocate a trade.
IsAllocated
boolean
Define if a trade is already allocated or not
IsReversible
boolean
Whether a trade can be reversed.
IsAmendable
boolean
Whether a trade can be amended.
IsCancellable
boolean
Whether a trade can be cancelled.
CostCurrencyDPS
integer
Example: 2
The number of decimal places to display after the decimal point.
Remarks
string
The clients or trader's comments on an order leg - visible to both the Client and the Trader
LegTradeConfirmationFields L1
SettlementTradeFields L1
SettlementFields L1_Pay[n]
L1_Pay[n]SettlementId
string
The identifier for the trade.
L1_Pay[n]SettlementCurrency
string
Example: GBP
A currency for of settlement instruction
L1_Pay[n]SettlementAmount
decimal
The amount of a settlement
L1_Pay[n]SettlementDirection
string
The direction in which the settlement details refer to, supported directions are: PAY, RECEIVE, BOTH
L1_Pay[n]IsDefaultSettlementInstruction
boolean
Is this the default settlement instruction for this currency
L1_Pay[n]SettlementInstructionType
string
Example: EXISTING
The type of settlement instruction attached to a trade. Supported types are [EXISTING, ADHOC, NONE]
L1_Pay[n]SettlementDisplayName
string
Example: [CCY] Account 1
The name of the settlement instruction. This field can be omitted.
L1_Pay[n]SettlementStatus
string
Caplin supported statuses are [PENDING, AFFIRMED, CONFIRMED, DISPUTED, CANCELLED, REPLACED, AUTO_CONFIRMED, OVERDUE, REJECTED]
L1_Pay[n]BankAccount
string
Example: 12345678
The account number of the bank
L1_Pay[n]BankSwift
string
Example: CAP123
The BIC of the bank
L1_Pay[n]BankName
string
Example: Bank Of Caplin
The name of the bank
L1_Pay[n]BankAddress1
string
Example: 12 Capitol
The first line of the bank's address
L1_Pay[n]BankAddress2
string
Example: The City
The second line of the bank's address
L1_Pay[n]BankAddress3
string
Example: London
The third line of the bank's address
L1_Pay[n]IndividualAccount
string
Example: 87654321
The account number of the recipient
L1_Pay[n]IndividualSwift
string
Example: SOLD987
The BIC of the recipient's account
L1_Pay[n]IndividualName
string
Example: Susan Sellers
The name of the payee or payee's bank
L1_Pay[n]IndividualAddress1
string
Example: 98 Lane
The first line of the recipient
L1_Pay[n]IndividualAddress2
string
Example: Manchester
The second line of the recipient
L1_Pay[n]NettingStatus
string
Example: NETTED
The status that denotes the permanent netting state of a settlement. This is required to know which settlements have been netted and which have not
L1_Pay[n]SplitComponentId
string
The unique ID of a split component
L1_Pay[n]SettlementDetailsLine1
string
The first line of remittance information.
L1_Pay[n]SettlementDetailsLine2
string
The second line of remittance information.
L1_Pay[n]SettlementDetailsLine3
string
The third line of remittance information.
L1_Pay[n]SettlementDetailsLine4
string
The fourth line of remittance information.
SettlementFields L1_Receive[n]
L1_Receive[n]SettlementId
string
The identifier for the trade.
L1_Receive[n]SettlementCurrency
string
Example: GBP
A currency for of settlement instruction
L1_Receive[n]SettlementAmount
decimal
The amount of a settlement
L1_Receive[n]SettlementDirection
string
The direction in which the settlement details refer to, supported directions are: PAY, RECEIVE, BOTH
L1_Receive[n]IsDefaultSettlementInstruction
boolean
Is this the default settlement instruction for this currency
L1_Receive[n]SettlementInstructionType
string
Example: EXISTING
The type of settlement instruction attached to a trade. Supported types are [EXISTING, ADHOC, NONE]
L1_Receive[n]SettlementDisplayName
string
Example: [CCY] Account 1
The name of the settlement instruction. This field can be omitted.
L1_Receive[n]SettlementStatus
string
Caplin supported statuses are [PENDING, AFFIRMED, CONFIRMED, DISPUTED, CANCELLED, REPLACED, AUTO_CONFIRMED, OVERDUE, REJECTED]
L1_Receive[n]BankAccount
string
Example: 12345678
The account number of the bank
L1_Receive[n]BankSwift
string
Example: CAP123
The BIC of the bank
L1_Receive[n]BankName
string
Example: Bank Of Caplin
The name of the bank
L1_Receive[n]BankAddress1
string
Example: 12 Capitol
The first line of the bank's address
L1_Receive[n]BankAddress2
string
Example: The City
The second line of the bank's address
L1_Receive[n]BankAddress3
string
Example: London
The third line of the bank's address
L1_Receive[n]IndividualAccount
string
Example: 87654321
The account number of the recipient
L1_Receive[n]IndividualSwift
string
Example: SOLD987
The BIC of the recipient's account
L1_Receive[n]IndividualName
string
Example: Susan Sellers
The name of the payee or payee's bank
L1_Receive[n]IndividualAddress1
string
Example: 98 Lane
The first line of the recipient
L1_Receive[n]IndividualAddress2
string
Example: Manchester
The second line of the recipient
L1_Receive[n]NettingStatus
string
Example: NETTED
The status that denotes the permanent netting state of a settlement. This is required to know which settlements have been netted and which have not
L1_Receive[n]SplitComponentId
string
The unique ID of a split component
L1_Receive[n]SettlementDetailsLine1
string
The first line of remittance information.
L1_Receive[n]SettlementDetailsLine2
string
The second line of remittance information.
L1_Receive[n]SettlementDetailsLine3
string
The third line of remittance information.
L1_Receive[n]SettlementDetailsLine4
string
The fourth line of remittance information.
L1_CanAffirm
boolean
Ability to Affirm the Trade Details are as agreed.
L1_CanConfirm
boolean
Ability to Confirm the Settlement Details are now final.
L1_CanAdHoc
boolean
Can confirm adhoc settlement instructions for a trade.
L1_CanDispute
boolean
Ability to Dispute the details of a trade, if for example something is wrong about it.
L1_CanCancel
boolean
Ability to Cancel a trade, for example if a mistake was made.
L1_CanReplace
boolean
Ability to mark a deal as amended, meaning that it has been replaced by a corrected deal.
L1_CanAutoConfirm
boolean
Ability to Mark that the deal was Confirmed by the Bank, rather than by the client.
L1_CanUnconfirm
boolean
Ability to move the deal back to a Pending state.
L1_SettlementStatus
string
Caplin supported statuses are [PENDING, AFFIRMED, CONFIRMED, DISPUTED, CANCELLED, REPLACED, AUTO_CONFIRMED, OVERDUE, REJECTED]
L1_NextActionDeadline
datetime
Example: 2018-03-16T07:25:16+00:00
The deadline for a user to perform a trade's next action in ISO-8601 format
L1_NextActionDeadlineDisplayTimezone
string
Example: America/New_York
The timezone for the NextActionDeadline field in the form Area/Location
L1_AffirmedBy
string
The name of the user who affirmed a trade.
L1_AffirmedDateTime
datetime
Example: 2018-03-16T07:25:16+00:00
The time at which a trade was affirmed in ISO-8601 format
L1_ConfirmedBy
string
The name of the user who confirmed a trade.
L1_ConfirmedDateTime
datetime
Example: 2018-03-16T07:25:16+00:00
The time at which a trade was confirmed in ISO-8601 format
L1_IsPayNetted
boolean
Denotes whether the pay side of a trade has been netted.
L1_IsReceiveNetted
boolean
Denotes whether the receive side of a trade has been netted.
L1_IsPayNettingRequired
boolean
Denotes whether the pay side of a trade requires netting.
L1_IsReceiveNettingRequired
boolean
Denotes whether the receive side of a trade requires netting.
L1_AllInRate
decimal
Example: 1.091790
L1_AllInRateDPS
integer
Example: 5
The number of decimal places to display after the decimal point.
L1_AllInMidRate
decimal
Example: 1.091790
The mid rate used in charging customers for accepting banker's acceptances, consisting of the discount interest rate plus the commission.
L1_FwdPoints
decimal
Example: 0.001198
L1_FwdMidPoints
decimal
Example: 0.005390
The number of basis points added to or subtracted from the mid rate to determine the forward rate for delivery on a specific value date.
L1_FwdPips
string
Example: 11.98
L1_BuySell
string
The direction of the trade or trade leg. This always refers to the BaseCurrency, NOT the DealtCurrency.
L1_Amount
decimal
The amount of a trade or order in the DealtCurrency.
L1_ContraAmount
decimal
Example: 350
The amount that is exchanged for the Amount. This will be defined in the contra currency of the DealtCurrency.
L1_Tenor
string
Example: 1M
Supported types are [ON, [TODAY, TOD, TD], TN, [TOM, ND], SPOT, SN, 1D, 1W, 2W, 3W, 4W, 1M, 2M, 4M, 5M, 6M, 7M, 8M, 9M, 10M, 11M, [1Y, 12M], 15M, 18M, 21M, [2Y, 24M], [3Y, 36M], [4Y, 48M], [5Y, 60M], broken]. broken indicates that a SettlementDate must be sent
L1_SettlementDate
string
L1_Account
string
Example: Garfields|GARF
The account a trade or order has been submitted against. The format is <description>|<name> or <name>|<name>
L1_Profit
decimal
Example: 1000
The sales profit in the specified currency.
L1_CostAmount
decimal
Example: 12412891.31
The total transactional cost of performing the trade to the client
NDFLegTradeConfirmationFields L1
L1_FixingDate
string
Example: 20150620
This is the day and time whereby the comparison between the NDF rate and the prevailing spot rate is made.
L1_FixingCurrency
string
Example: USD
L1_FixingCode
string
Example: [CCY]1/1600/GBLO
L1_FixingDescription
string
Example: WMR [CCY] 4pm London
L1_FixingAmount
decimal
The Buy or Sell Amount from the original deal for currency that is the Settlement Currency
L1_ReferenceCurrency
decimal
The Buy or Sell Currency that is not the Settlement Currency
L1_ReferenceAmount
decimal
The Buy or Sell Amount from the original deal for currency that is not the Settlement Currency
L1_SettlementCurrency
string
Example: GBP
A currency for of settlement instruction
L1_SettlementAmount
decimal
The amount of a settlement
TimeOptionLegTradeConfirmationFields L1
L1_FilledAmount
decimal
Example: 0
L1_RemainingAmount
decimal
Example: 500
L1_RiskDate
string
Example: 20160314
The date in the settlement window which yields the lowest client sell price, or the highest client buy price.
L1_RiskTenor
string
Example: 1W
The tenor in the settlement window which yields the lowest client sell price, or the highest client buy price.
L1_StartDate
string
Example: 20150620
L1_StartTenor
string
Example: 1W
SalesLegTradeConfirmationFields L1
L1_TraderAllInRate
decimal
Example: 1.005390
The all-in rate, with no client margin applied to it
L1_TraderFwdPoints
decimal
Example: 0.005390
The forward points with no client margin applied to them.
L1_FwdMargin
decimal
Example: 0.000019
The Forward margin that the user has selected. This field should be sent raw and unformatted.
L1_AllInMargin
decimal
Example: 0.00054
The sales user's selected SpotMargin added to the sales user's selected L1_FwdMargin.
SalesCommonTradeConfirmationFields
ProfitCurrency
string
Example: USD
The profit currency that the ProfitBidRate is being provided for.
ProfitCurrencyDPS
integer
Example: 5
The number of decimal places that should be used for formatting the amount in profit currency field.
ProfitIsHouse
boolean
Whether the field ProfitCurrency is the system/house currency or not.
ProfitRate
decimal
Example: 1.091790
The conversion rate from the contra currency into the profit currency.
TraderSpotRate
decimal
Example: 1.09174
Can be formatted using DigitsBeforePips, NumberOfPips and SpotRateDPS
SpotMargin
decimal
Example: 0.00054
Can be formatted using DigitsBeforePips, NumberOfPips and SpotRateDPS
Profit
decimal
Example: 1000
The sales profit in the specified currency.
Competition
boolean
Whether a quote request is in competition. For example, true for quotes from an ECN and false for quotes from an SDP
Source
string
The source of a quote request. The name or ID of an ECN, SDP or other channel
Reasons
string
A JSON structure containing all the reasons and information about why the trade requires intervention. Please see the Sales Intervention Reasons documentation on the website for more information.
TraderRemarks
string
The trader's comments on an order leg - visible to only the Trader
IsAdvised
boolean
Indicates whether the trader gave the client advice
TradeConfirmation Swap Sales Trade Confirmation
SwapTradeConfirmation
CommonTradeConfirmationFields
TradeID
string
Example: 00001561
A unique identifier for this trade
CurrencyPair
string
The currency pair for the trade. For example, EURUSD
DealtCurrency
string
The currency of the Amount of a trade or order.
SpotRate
decimal
Example: 1.08341
SpotMidRate
decimal
Example: 1.08345
The mid rate between the SpotAskRate and SpotBidRate. Note that this will not always be precisely between.
SpotRateDPS
integer
Example: 5
The number of decimal places to display after the decimal point.
ExecutionDateTime
string
Example: 20160322123621
TradeDate
string
Example: 20160314
Account
string
Example: Garfields|GARF
The account a trade or order has been submitted against. The format is <description>|<name> or <name>|<name>
TraderUsername
string
Example: sales_trader@novobank.co.za
The user who entered the trade. This may be on behalf of themselves, or on behalf of someone else. For example, if the logged in user dealer1@novobank.co.za wishes to make a trade on behalf of user client@customer.co.za, then the value of this field will be dealer1@novobank.co.za. If the user client@customer.co.za makes a trade on behalf of themselves it will be client@customer.co.za.
TOBOUser
string
Example: client@customer.co.za
The user the trade is on behalf of. For example, if the logged in user dealer1@novobank.co.za wishes to make a trade on behalf of user client@customer.co.za, then the value of this field will be client@customer.co.za.
EntityId
string
Example: CUSTONE
The entity the trade is on behalf of. For example, if the logged in user user1@customer.co.za wishes to make a trade on behalf of entity CUSTONE, then the value of this field will be CUSTONE.
EntityDescription
string
Example: Customer 1
The description of a trade on behalf of entity.
AssetType
string
Example: FX
A grouping of investments that exhibit similar characteristics and are subject to the same laws and regulations. Supported asset types are [FX, PM]
TradingType
string
Caplin supported values are [SPOT, FWD, NDF, NDF_FIXING, TIME_OPTION, DRAWDOWN, SWAP, BLOCK]. See the constants defined within com.caplin.motif.fx.trading.FXTradingType for further details.
DigitsBeforePips
integer
Example: 2
Precision-related field that tells the client how to display rates. This is the number of digits between the decimal point and the pips (i.e the big digits that the client wants to look at). For most currency pairs the value of this bla will be 2, i.e. for a USDGBP rate of 1.23456 the pips are 45 so there are two digits between the decimal point and the pips. For USDJPY the rate could be 103.256 and the pips are the 25, so in this case the value of DigitsBeforePips should be 0.
NumberOfPips
integer
Example: 2
Precision-related field that tells the client how to display rates. This is the number of pips the client wants to look at. Normally this value is 2.
OrderID
string
The id of the order.
WarningCode
string
Example: 001
The code for the warning regarding a quote request.
WarningMessage
string
Example: You do not have sufficient credit for EUR
The message to display for any warnings regarding a quote request
Client
string
Client is a duplicate of TOBOUser
CostAmount
decimal
Example: 12412891.31
The total transactional cost of performing the trade to the client
CostCurrency
string
Example: GBP
The currency that the cost is displayed in, this could be any currency but will typically be set to the Term Currency
CostPercentage
decimal
Example: 13.56
Percentage of the overall price which is the transactional cost to the client of performing the trade. This number should be out of 100, where 100.0 represents 100%.
CanAllocate
boolean
Defines if a user can allocate a trade.
IsAllocated
boolean
Define if a trade is already allocated or not
IsReversible
boolean
Whether a trade can be reversed.
IsAmendable
boolean
Whether a trade can be amended.
IsCancellable
boolean
Whether a trade can be cancelled.
CostCurrencyDPS
integer
Example: 2
The number of decimal places to display after the decimal point.
Remarks
string
The clients or trader's comments on an order leg - visible to both the Client and the Trader
LegTradeConfirmationFields L1
SettlementTradeFields L1
SettlementFields L1_Pay[n]
L1_Pay[n]SettlementId
string
The identifier for the trade.
L1_Pay[n]SettlementCurrency
string
Example: GBP
A currency for of settlement instruction
L1_Pay[n]SettlementAmount
decimal
The amount of a settlement
L1_Pay[n]SettlementDirection
string
The direction in which the settlement details refer to, supported directions are: PAY, RECEIVE, BOTH
L1_Pay[n]IsDefaultSettlementInstruction
boolean
Is this the default settlement instruction for this currency
L1_Pay[n]SettlementInstructionType
string
Example: EXISTING
The type of settlement instruction attached to a trade. Supported types are [EXISTING, ADHOC, NONE]
L1_Pay[n]SettlementDisplayName
string
Example: [CCY] Account 1
The name of the settlement instruction. This field can be omitted.
L1_Pay[n]SettlementStatus
string
Caplin supported statuses are [PENDING, AFFIRMED, CONFIRMED, DISPUTED, CANCELLED, REPLACED, AUTO_CONFIRMED, OVERDUE, REJECTED]
L1_Pay[n]BankAccount
string
Example: 12345678
The account number of the bank
L1_Pay[n]BankSwift
string
Example: CAP123
The BIC of the bank
L1_Pay[n]BankName
string
Example: Bank Of Caplin
The name of the bank
L1_Pay[n]BankAddress1
string
Example: 12 Capitol
The first line of the bank's address
L1_Pay[n]BankAddress2
string
Example: The City
The second line of the bank's address
L1_Pay[n]BankAddress3
string
Example: London
The third line of the bank's address
L1_Pay[n]IndividualAccount
string
Example: 87654321
The account number of the recipient
L1_Pay[n]IndividualSwift
string
Example: SOLD987
The BIC of the recipient's account
L1_Pay[n]IndividualName
string
Example: Susan Sellers
The name of the payee or payee's bank
L1_Pay[n]IndividualAddress1
string
Example: 98 Lane
The first line of the recipient
L1_Pay[n]IndividualAddress2
string
Example: Manchester
The second line of the recipient
L1_Pay[n]NettingStatus
string
Example: NETTED
The status that denotes the permanent netting state of a settlement. This is required to know which settlements have been netted and which have not
L1_Pay[n]SplitComponentId
string
The unique ID of a split component
L1_Pay[n]SettlementDetailsLine1
string
The first line of remittance information.
L1_Pay[n]SettlementDetailsLine2
string
The second line of remittance information.
L1_Pay[n]SettlementDetailsLine3
string
The third line of remittance information.
L1_Pay[n]SettlementDetailsLine4
string
The fourth line of remittance information.
SettlementFields L1_Receive[n]
L1_Receive[n]SettlementId
string
The identifier for the trade.
L1_Receive[n]SettlementCurrency
string
Example: GBP
A currency for of settlement instruction
L1_Receive[n]SettlementAmount
decimal
The amount of a settlement
L1_Receive[n]SettlementDirection
string
The direction in which the settlement details refer to, supported directions are: PAY, RECEIVE, BOTH
L1_Receive[n]IsDefaultSettlementInstruction
boolean
Is this the default settlement instruction for this currency
L1_Receive[n]SettlementInstructionType
string
Example: EXISTING
The type of settlement instruction attached to a trade. Supported types are [EXISTING, ADHOC, NONE]
L1_Receive[n]SettlementDisplayName
string
Example: [CCY] Account 1
The name of the settlement instruction. This field can be omitted.
L1_Receive[n]SettlementStatus
string
Caplin supported statuses are [PENDING, AFFIRMED, CONFIRMED, DISPUTED, CANCELLED, REPLACED, AUTO_CONFIRMED, OVERDUE, REJECTED]
L1_Receive[n]BankAccount
string
Example: 12345678
The account number of the bank
L1_Receive[n]BankSwift
string
Example: CAP123
The BIC of the bank
L1_Receive[n]BankName
string
Example: Bank Of Caplin
The name of the bank
L1_Receive[n]BankAddress1
string
Example: 12 Capitol
The first line of the bank's address
L1_Receive[n]BankAddress2
string
Example: The City
The second line of the bank's address
L1_Receive[n]BankAddress3
string
Example: London
The third line of the bank's address
L1_Receive[n]IndividualAccount
string
Example: 87654321
The account number of the recipient
L1_Receive[n]IndividualSwift
string
Example: SOLD987
The BIC of the recipient's account
L1_Receive[n]IndividualName
string
Example: Susan Sellers
The name of the payee or payee's bank
L1_Receive[n]IndividualAddress1
string
Example: 98 Lane
The first line of the recipient
L1_Receive[n]IndividualAddress2
string
Example: Manchester
The second line of the recipient
L1_Receive[n]NettingStatus
string
Example: NETTED
The status that denotes the permanent netting state of a settlement. This is required to know which settlements have been netted and which have not
L1_Receive[n]SplitComponentId
string
The unique ID of a split component
L1_Receive[n]SettlementDetailsLine1
string
The first line of remittance information.
L1_Receive[n]SettlementDetailsLine2
string
The second line of remittance information.
L1_Receive[n]SettlementDetailsLine3
string
The third line of remittance information.
L1_Receive[n]SettlementDetailsLine4
string
The fourth line of remittance information.
L1_CanAffirm
boolean
Ability to Affirm the Trade Details are as agreed.
L1_CanConfirm
boolean
Ability to Confirm the Settlement Details are now final.
L1_CanAdHoc
boolean
Can confirm adhoc settlement instructions for a trade.
L1_CanDispute
boolean
Ability to Dispute the details of a trade, if for example something is wrong about it.
L1_CanCancel
boolean
Ability to Cancel a trade, for example if a mistake was made.
L1_CanReplace
boolean
Ability to mark a deal as amended, meaning that it has been replaced by a corrected deal.
L1_CanAutoConfirm
boolean
Ability to Mark that the deal was Confirmed by the Bank, rather than by the client.
L1_CanUnconfirm
boolean
Ability to move the deal back to a Pending state.
L1_SettlementStatus
string
Caplin supported statuses are [PENDING, AFFIRMED, CONFIRMED, DISPUTED, CANCELLED, REPLACED, AUTO_CONFIRMED, OVERDUE, REJECTED]
L1_NextActionDeadline
datetime
Example: 2018-03-16T07:25:16+00:00
The deadline for a user to perform a trade's next action in ISO-8601 format
L1_NextActionDeadlineDisplayTimezone
string
Example: America/New_York
The timezone for the NextActionDeadline field in the form Area/Location
L1_AffirmedBy
string
The name of the user who affirmed a trade.
L1_AffirmedDateTime
datetime
Example: 2018-03-16T07:25:16+00:00
The time at which a trade was affirmed in ISO-8601 format
L1_ConfirmedBy
string
The name of the user who confirmed a trade.
L1_ConfirmedDateTime
datetime
Example: 2018-03-16T07:25:16+00:00
The time at which a trade was confirmed in ISO-8601 format
L1_IsPayNetted
boolean
Denotes whether the pay side of a trade has been netted.
L1_IsReceiveNetted
boolean
Denotes whether the receive side of a trade has been netted.
L1_IsPayNettingRequired
boolean
Denotes whether the pay side of a trade requires netting.
L1_IsReceiveNettingRequired
boolean
Denotes whether the receive side of a trade requires netting.
L1_AllInRate
decimal
Example: 1.091790
L1_AllInRateDPS
integer
Example: 5
The number of decimal places to display after the decimal point.
L1_AllInMidRate
decimal
Example: 1.091790
The mid rate used in charging customers for accepting banker's acceptances, consisting of the discount interest rate plus the commission.
L1_FwdPoints
decimal
Example: 0.001198
L1_FwdMidPoints
decimal
Example: 0.005390
The number of basis points added to or subtracted from the mid rate to determine the forward rate for delivery on a specific value date.
L1_FwdPips
string
Example: 11.98
L1_BuySell
string
The direction of the trade or trade leg. This always refers to the BaseCurrency, NOT the DealtCurrency.
L1_Amount
decimal
The amount of a trade or order in the DealtCurrency.
L1_ContraAmount
decimal
Example: 350
The amount that is exchanged for the Amount. This will be defined in the contra currency of the DealtCurrency.
L1_Tenor
string
Example: 1M
Supported types are [ON, [TODAY, TOD, TD], TN, [TOM, ND], SPOT, SN, 1D, 1W, 2W, 3W, 4W, 1M, 2M, 4M, 5M, 6M, 7M, 8M, 9M, 10M, 11M, [1Y, 12M], 15M, 18M, 21M, [2Y, 24M], [3Y, 36M], [4Y, 48M], [5Y, 60M], broken]. broken indicates that a SettlementDate must be sent
L1_SettlementDate
string
L1_Account
string
Example: Garfields|GARF
The account a trade or order has been submitted against. The format is <description>|<name> or <name>|<name>
L1_Profit
decimal
Example: 1000
The sales profit in the specified currency.
L1_CostAmount
decimal
Example: 12412891.31
The total transactional cost of performing the trade to the client
LegTradeConfirmationFields L2
SettlementTradeFields L2
SettlementFields L2_Pay[n]
L2_Pay[n]SettlementId
string
The identifier for the trade.
L2_Pay[n]SettlementCurrency
string
Example: GBP
A currency for of settlement instruction
L2_Pay[n]SettlementAmount
decimal
The amount of a settlement
L2_Pay[n]SettlementDirection
string
The direction in which the settlement details refer to, supported directions are: PAY, RECEIVE, BOTH
L2_Pay[n]IsDefaultSettlementInstruction
boolean
Is this the default settlement instruction for this currency
L2_Pay[n]SettlementInstructionType
string
Example: EXISTING
The type of settlement instruction attached to a trade. Supported types are [EXISTING, ADHOC, NONE]
L2_Pay[n]SettlementDisplayName
string
Example: [CCY] Account 1
The name of the settlement instruction. This field can be omitted.
L2_Pay[n]SettlementStatus
string
Caplin supported statuses are [PENDING, AFFIRMED, CONFIRMED, DISPUTED, CANCELLED, REPLACED, AUTO_CONFIRMED, OVERDUE, REJECTED]
L2_Pay[n]BankAccount
string
Example: 12345678
The account number of the bank
L2_Pay[n]BankSwift
string
Example: CAP123
The BIC of the bank
L2_Pay[n]BankName
string
Example: Bank Of Caplin
The name of the bank
L2_Pay[n]BankAddress1
string
Example: 12 Capitol
The first line of the bank's address
L2_Pay[n]BankAddress2
string
Example: The City
The second line of the bank's address
L2_Pay[n]BankAddress3
string
Example: London
The third line of the bank's address
L2_Pay[n]IndividualAccount
string
Example: 87654321
The account number of the recipient
L2_Pay[n]IndividualSwift
string
Example: SOLD987
The BIC of the recipient's account
L2_Pay[n]IndividualName
string
Example: Susan Sellers
The name of the payee or payee's bank
L2_Pay[n]IndividualAddress1
string
Example: 98 Lane
The first line of the recipient
L2_Pay[n]IndividualAddress2
string
Example: Manchester
The second line of the recipient
L2_Pay[n]NettingStatus
string
Example: NETTED
The status that denotes the permanent netting state of a settlement. This is required to know which settlements have been netted and which have not
L2_Pay[n]SplitComponentId
string
The unique ID of a split component
L2_Pay[n]SettlementDetailsLine1
string
The first line of remittance information.
L2_Pay[n]SettlementDetailsLine2
string
The second line of remittance information.
L2_Pay[n]SettlementDetailsLine3
string
The third line of remittance information.
L2_Pay[n]SettlementDetailsLine4
string
The fourth line of remittance information.
SettlementFields L2_Receive[n]
L2_Receive[n]SettlementId
string
The identifier for the trade.
L2_Receive[n]SettlementCurrency
string
Example: GBP
A currency for of settlement instruction
L2_Receive[n]SettlementAmount
decimal
The amount of a settlement
L2_Receive[n]SettlementDirection
string
The direction in which the settlement details refer to, supported directions are: PAY, RECEIVE, BOTH
L2_Receive[n]IsDefaultSettlementInstruction
boolean
Is this the default settlement instruction for this currency
L2_Receive[n]SettlementInstructionType
string
Example: EXISTING
The type of settlement instruction attached to a trade. Supported types are [EXISTING, ADHOC, NONE]
L2_Receive[n]SettlementDisplayName
string
Example: [CCY] Account 1
The name of the settlement instruction. This field can be omitted.
L2_Receive[n]SettlementStatus
string
Caplin supported statuses are [PENDING, AFFIRMED, CONFIRMED, DISPUTED, CANCELLED, REPLACED, AUTO_CONFIRMED, OVERDUE, REJECTED]
L2_Receive[n]BankAccount
string
Example: 12345678
The account number of the bank
L2_Receive[n]BankSwift
string
Example: CAP123
The BIC of the bank
L2_Receive[n]BankName
string
Example: Bank Of Caplin
The name of the bank
L2_Receive[n]BankAddress1
string
Example: 12 Capitol
The first line of the bank's address
L2_Receive[n]BankAddress2
string
Example: The City
The second line of the bank's address
L2_Receive[n]BankAddress3
string
Example: London
The third line of the bank's address
L2_Receive[n]IndividualAccount
string
Example: 87654321
The account number of the recipient
L2_Receive[n]IndividualSwift
string
Example: SOLD987
The BIC of the recipient's account
L2_Receive[n]IndividualName
string
Example: Susan Sellers
The name of the payee or payee's bank
L2_Receive[n]IndividualAddress1
string
Example: 98 Lane
The first line of the recipient
L2_Receive[n]IndividualAddress2
string
Example: Manchester
The second line of the recipient
L2_Receive[n]NettingStatus
string
Example: NETTED
The status that denotes the permanent netting state of a settlement. This is required to know which settlements have been netted and which have not
L2_Receive[n]SplitComponentId
string
The unique ID of a split component
L2_Receive[n]SettlementDetailsLine1
string
The first line of remittance information.
L2_Receive[n]SettlementDetailsLine2
string
The second line of remittance information.
L2_Receive[n]SettlementDetailsLine3
string
The third line of remittance information.
L2_Receive[n]SettlementDetailsLine4
string
The fourth line of remittance information.
L2_CanAffirm
boolean
Ability to Affirm the Trade Details are as agreed.
L2_CanConfirm
boolean
Ability to Confirm the Settlement Details are now final.
L2_CanAdHoc
boolean
Can confirm adhoc settlement instructions for a trade.
L2_CanDispute
boolean
Ability to Dispute the details of a trade, if for example something is wrong about it.
L2_CanCancel
boolean
Ability to Cancel a trade, for example if a mistake was made.
L2_CanReplace
boolean
Ability to mark a deal as amended, meaning that it has been replaced by a corrected deal.
L2_CanAutoConfirm
boolean
Ability to Mark that the deal was Confirmed by the Bank, rather than by the client.
L2_CanUnconfirm
boolean
Ability to move the deal back to a Pending state.
L2_SettlementStatus
string
Caplin supported statuses are [PENDING, AFFIRMED, CONFIRMED, DISPUTED, CANCELLED, REPLACED, AUTO_CONFIRMED, OVERDUE, REJECTED]
L2_NextActionDeadline
datetime
Example: 2018-03-16T07:25:16+00:00
The deadline for a user to perform a trade's next action in ISO-8601 format
L2_NextActionDeadlineDisplayTimezone
string
Example: America/New_York
The timezone for the NextActionDeadline field in the form Area/Location
L2_AffirmedBy
string
The name of the user who affirmed a trade.
L2_AffirmedDateTime
datetime
Example: 2018-03-16T07:25:16+00:00
The time at which a trade was affirmed in ISO-8601 format
L2_ConfirmedBy
string
The name of the user who confirmed a trade.
L2_ConfirmedDateTime
datetime
Example: 2018-03-16T07:25:16+00:00
The time at which a trade was confirmed in ISO-8601 format
L2_IsPayNetted
boolean
Denotes whether the pay side of a trade has been netted.
L2_IsReceiveNetted
boolean
Denotes whether the receive side of a trade has been netted.
L2_IsPayNettingRequired
boolean
Denotes whether the pay side of a trade requires netting.
L2_IsReceiveNettingRequired
boolean
Denotes whether the receive side of a trade requires netting.
L2_AllInRate
decimal
Example: 1.091790
L2_AllInRateDPS
integer
Example: 5
The number of decimal places to display after the decimal point.
L2_AllInMidRate
decimal
Example: 1.091790
The mid rate used in charging customers for accepting banker's acceptances, consisting of the discount interest rate plus the commission.
L2_FwdPoints
decimal
Example: 0.001198
L2_FwdMidPoints
decimal
Example: 0.005390
The number of basis points added to or subtracted from the mid rate to determine the forward rate for delivery on a specific value date.
L2_FwdPips
string
Example: 11.98
L2_BuySell
string
The direction of the trade or trade leg. This always refers to the BaseCurrency, NOT the DealtCurrency.
L2_Amount
decimal
The amount of a trade or order in the DealtCurrency.
L2_ContraAmount
decimal
Example: 350
The amount that is exchanged for the Amount. This will be defined in the contra currency of the DealtCurrency.
L2_Tenor
string
Example: 1M
Supported types are [ON, [TODAY, TOD, TD], TN, [TOM, ND], SPOT, SN, 1D, 1W, 2W, 3W, 4W, 1M, 2M, 4M, 5M, 6M, 7M, 8M, 9M, 10M, 11M, [1Y, 12M], 15M, 18M, 21M, [2Y, 24M], [3Y, 36M], [4Y, 48M], [5Y, 60M], broken]. broken indicates that a SettlementDate must be sent
L2_SettlementDate
string
L2_Account
string
Example: Garfields|GARF
The account a trade or order has been submitted against. The format is <description>|<name> or <name>|<name>
L2_Profit
decimal
Example: 1000
The sales profit in the specified currency.
L2_CostAmount
decimal
Example: 12412891.31
The total transactional cost of performing the trade to the client
SwapTradeConfirmationFields
SwapPoints
decimal
Example: 0.005390
The difference in interest rates between transaction currencies.
SwapMidPoints
decimal
Example: 0.004553
SwapPips
string
Example: 53.90
SwapType
string
Example: SPOTFWD
SalesLegTradeConfirmationFields L1
L1_TraderAllInRate
decimal
Example: 1.005390
The all-in rate, with no client margin applied to it
L1_TraderFwdPoints
decimal
Example: 0.005390
The forward points with no client margin applied to them.
L1_FwdMargin
decimal
Example: 0.000019
The Forward margin that the user has selected. This field should be sent raw and unformatted.
L1_AllInMargin
decimal
Example: 0.00054
The sales user's selected SpotMargin added to the sales user's selected L1_FwdMargin.
SalesLegTradeConfirmationFields L2
L2_TraderAllInRate
decimal
Example: 1.005390
The all-in rate, with no client margin applied to it
L2_TraderFwdPoints
decimal
Example: 0.005390
The forward points with no client margin applied to them.
L2_FwdMargin
decimal
Example: 0.000019
The Forward margin that the user has selected. This field should be sent raw and unformatted.
L2_AllInMargin
decimal
Example: 0.00054
The sales user's selected SpotMargin added to the sales user's selected L1_FwdMargin.
SalesCommonTradeConfirmationFields
ProfitCurrency
string
Example: USD
The profit currency that the ProfitBidRate is being provided for.
ProfitCurrencyDPS
integer
Example: 5
The number of decimal places that should be used for formatting the amount in profit currency field.
ProfitIsHouse
boolean
Whether the field ProfitCurrency is the system/house currency or not.
ProfitRate
decimal
Example: 1.091790
The conversion rate from the contra currency into the profit currency.
TraderSpotRate
decimal
Example: 1.09174
Can be formatted using DigitsBeforePips, NumberOfPips and SpotRateDPS
SpotMargin
decimal
Example: 0.00054
Can be formatted using DigitsBeforePips, NumberOfPips and SpotRateDPS
Profit
decimal
Example: 1000
The sales profit in the specified currency.
Competition
boolean
Whether a quote request is in competition. For example, true for quotes from an ECN and false for quotes from an SDP
Source
string
The source of a quote request. The name or ID of an ECN, SDP or other channel
Reasons
string
A JSON structure containing all the reasons and information about why the trade requires intervention. Please see the Sales Intervention Reasons documentation on the website for more information.
TraderRemarks
string
The trader's comments on an order leg - visible to only the Trader
IsAdvised
boolean
Indicates whether the trader gave the client advice
SalesSwapTradeConfirmationFields
TraderSwapPoints
decimal
Example: 0.004211
The spot points with no client margins applied to them.
SwapMargin
decimal
Example: 0.000040
The swap margin that the sales user has selected. It should be sent as a raw value, and unformatted.
WithdrawAck
MsgType
String
Example: WithdrawAck
Name of the transition
RequestID
String
The RequestID. A Unique identifier, must remain the same for each event in the trade model