Trade model: Settlement

This page describes the FX Integration API’s Settlement 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 8.3.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 Settlement trade model is shown below. To simplify the diagram, the Rejected and Error states have been omitted.

InitialRequestedCompletedRequestCompleteLegendTransitions 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.

For high-level information on message fields, see Message and record fields. For information about fields in specific messages, see the message specifications below.

Request
SettlementInstructions
SettlementInstructionLeg Ln
Ln_TradeID
string
Example: 00001561
A unique identifier for this trade
Ln_PaymentID
The unique ID of the payment the client wants to net
Action
Affirm, Confirm, Dispute, Cancel, Replace, AutoConfirm, Unconfirm, Net, ApproveInstructions, RejectInstructions or Release
TradeID
string
Example: 00001561
A unique identifier for this trade
PayBankAccountType
The type of routing or BIC code assigned to an AdHoc Settlement Instruction on the pay side
PaySettlementID
The ID corresponding to the payee's settlement details
PaySettlementInstructionType
The type of settlement instruction on the pay side.
PayIsAdhocForCommit
If the pay settlement instruction is an adhoc that should be saved.
PayAdhocForCommitDirection
The direction(s) the adhoc settlement instruction should be saved on.
PaySettlementDisplayName
The name of the paying settlement instruction
PayBankAccount
The account number of the payee's bank
PayBankAddress1
The first line of the payee's bank's address
PayBankAddress2
The second line of the payee's bank's address
PayBankAddress3
The third line of the payee's bank's address
PayBankName
The name of the payee's bank
PayBankSwift
The BIC of the payee's bank
PayIndividualAccount
The account number of the payee
PayIndividualAddress1
The first line of the payee
PayIndividualAddress2
The second line of the payee
PayIndividualName
The name of the payee
PayIndividualSwift
The BIC of the payee's account
ReceiveBankAccountType
The type of routing or BIC code assigned to an AdHoc Settlement Instruction on the receive side
ReceiveSettlementID
The ID corresponding to the recipient's settlement details
ReceiveSettlementInstructionType
The type of settlement instruction on the receive side.
ReceiveIsAdhocForCommit
If the receive settlement instruction is an adhoc that should be saved.
ReceiveAdhocForCommitDirection
The direction(s) the adhoc settlement instruction should be saved on.
ReceiveSettlementDisplayName
The name of the receiving settlement instruction
ReceiveBankAccount
The account number of the recipient's bank
ReceiveBankAddress1
The first line of the recipient's bank's address
ReceiveBankAddress2
The second line of the recipient's bank's address
ReceiveBankAddress3
The third line of the recipient's bank's address
ReceiveBankName
The name of the recipient's bank
ReceiveBankSwift
The BIC of the recipient's bank
ReceiveIndividualAccount
The account number of the recipient
ReceiveIndividualAddress1
The first line of the recipient
ReceiveIndividualAddress2
The second line of the recipient
ReceiveIndividualName
The name of the recipient
ReceiveIndividualSwift
The BIC of the recipient's account
SettlementStatus
string
Caplin supported statuses are [PENDING, AFFIRMED, CONFIRMED, DISPUTED, CANCELLED, REPLACED, AUTO_CONFIRMED, OVERDUE, REJECTED]
MsgType
String
Example: Request
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.

For high-level information on message fields, see Message and record fields. For information about fields in specific messages, see the message specifications below.

Complete
MsgType
String
Example: Complete
Name of the transition
RequestID
String
The RequestID. A Unique identifier, must remain the same for each event in the trade model