| FRAMES | NO FRAMES |
|
|
Each administrative or application message, is preceded by a standard header. The header identifies the message type, length, destination, sequence number, origination point and time
Two fields helps with resending messages. The PossDupFlag (43) is set to Y when resending a message as the result of a session level event (i.e. the retransmission of a message reusing a sequence number). The PossResend (97) is set to Y when reissuing a message with a new sequence number (e.g. resending an order). The receiving application should process these messages as follows:
The following table provides examples regarding the use of SenderCompID (49) , TargetCompID (56) , DeliverToCompID (128) , and OnBehalfOfCompID (115) when using a single point-to-point FIX session between two firms. Assumption (A=sellside, B =buyside):
| SenderCompID (49) | OnBehalfOfCompID (115) | TargetCompID (56) | DeliverToCompID (128) | |
|---|---|---|---|---|
| A to B directly | A | B | ||
| B to A directly | B | A |
The following table provides examples regarding the use of SenderCompID (49) , TargetCompID (56) , DeliverToCompID (128) , and OnBehalfOfCompID (115) when using a single FIX session to represent multiple firms. Assumption (A=sellside, B and C=buyside, Q=third party):
| SenderCompID (49) | OnBehalfOfCompID (115) | TargetCompID (56) | DeliverToCompID (128) | ||
|---|---|---|---|---|---|
| Send from A to B via Q | |||||
| 1) | A sends to Q | A | Q | B | |
| 2) | Q sends to B | Q | A | B | |
| B responds to A via Q | |||||
| 1) | B sends to Q | B | Q | A | |
| 2) | Q sends to A | Q | B | A | |
| Send from A to B *AND* C via Q | |||||
| 1) | A sends to Q | A | Q | B | |
| 2) | Q sends to B | Q | A | B | |
| 3) | A sends to Q | A | Q | C | |
| 4) | Q sends to C | Q | A | C | |
| B *AND* C send to A via Q | |||||
| 1) | B sends to Q | B | Q | A | |
| 2) | Q sends to A | Q | B | A | |
| 3) | C sends to Q | C | Q | A | |
| 4) | Q sends to A | Q | C | A | |
Used in all messages
| Tag | Field Name | FIXML | Req'd | Comments | |||
|---|---|---|---|---|---|---|---|
| 8 | BeginString | Y | FIX.4.1 (Always unencrypted, must be first field in message) | ||||
| 9 | BodyLength | Y | (Always unencrypted, must be second field in message) | ||||
| 35 | MsgType | ApplicationMessage | Y | (Always unencrypted, must be third field in message) | |||
| 49 | SenderCompID | CompID | Y | (Always unencrypted) | |||
| 56 | TargetCompID | CompID | Y | (Always unencrypted) | |||
| 115 | OnBehalfOfCompID | CompID | N | Trading partner company ID used when sending messages via a third party (Can be embedded within encrypted data section.) | |||
| 128 | DeliverToCompID | CompID | N | Trading partner company ID used when sending messages via a third party (Can be embedded within encrypted data section.) | |||
| 90 | SecureDataLen | C | Required to identify length of encrypted section of message. (Always unencrypted) | ||||
| 91 | SecureData | C | Required when message body is encrypted. Always immediately follows SecureDataLen (90) field. | ||||
| 34 | MsgSeqNum | Y | (Can be embedded within encrypted data section.) | ||||
| 50 | SenderSubID | SubID | N | (Can be embedded within encrypted data section.) | |||
| 142 | SenderLocationID | LocationID | N | Trading partner LocationID (i.e. geographic location and/or desk) (Can be embedded within encrypted data section.) | |||
| 57 | TargetSubID | SubID | N | 'ADMIN' reserved for administrative messages not intended for a specific user. (Can be embedded within encrypted data section.) | |||
| 143 | TargetLocationID | LocationID | N | Trading partner LocationID (i.e. geographic location and/or desk) (Can be embedded within encrypted data section.) | |||
| 116 | OnBehalfOfSubID | SubID | N | Trading partner SubID used when delivering messages via a third party. (Can be embedded within encrypted data section.) | |||
| 144 | OnBehalfOfLocationID | LocationID | N | Trading partner LocationID (i.e. geographic location and/or desk) used when delivering messages via a third party. (Can be embedded within encrypted data section.) | |||
| 129 | DeliverToSubID | SubID | N | Trading partner SubID used when delivering messages via a third party. (Can be embedded within encrypted data section.) | |||
| 145 | DeliverToLocationID | LocationID | N | Trading partner LocationID (i.e. geographic location and/or desk) used when delivering messages via a third party. (Can be embedded within encrypted data section.) | |||
| 43 | PossDupFlag | PossDupFlag | N | Always required for retransmitted messages, whether prompted by the sending system or as the result of a resend request. (Can be embedded within encrypted data section.) | |||
| 97 | PossResend | PossResend | N | Required when message may be duplicate of another message sent under a different sequence number. (Can be embedded within encrypted data section.) | |||
| 52 | SendingTime | SendingTime | Y | (Can be embedded within encrypted data section.) | |||
| 122 | OrigSendingTime | N | Required for message resends. If data is not available set to same value as SendingTime (52) (Can be embedded within encrypted data section.) | ||||
|
|
| FRAMES | NO FRAMES |