Some components will be used in most (if not all) messages. To avoid repeating them for each message type, they’re included below and simply referenced in the specs for each trading message (e.g. Instrument).
Required fields are indicated with a "Y" in the Required column, while optional fields are indicated with an "N" in the Required column. A "C" indicates that the field is conditionally required. See the Description column for more details.
Note that fields should appear in the order in which they are specified, unless explicitly stated otherwise. Repeating groups must appear in the order in which they are specified.
Standard Header
All messages must begin with the standard header, and all header fields must precede any message body fields. They should appear in the following order:
Tag | Field Name | Required | Example |
---|---|---|---|
8 | BeginString | Y | "FIX.4.4" |
9 | BodyLength | Y | "340" |
35 | MsgType | Y | "D" |
49 | SenderCompID | Y | "VENUE" |
56 | TargetCompID | Y | "MMNT" |
34 | MsgSeqNum | Y | "15498" |
52 | SendingTime | Y | "20231005-11:48:33.000" |
Standard Trailer
All messages must conclude with the standard trailer.
Tag | Field Name | Description | Required | Example |
---|---|---|---|---|
10 | CheckSum | The standard FIX checksum value, calculating by summing every byte of the message up to but not including the CheckSum field itself, and taking it modulo 256. For implementation details, see: https://www.onixs.biz/fix-dictionary/4.2/app_b.html | Y | "082" |