ZagTrader

FIX Protocol Tag 10: CheckSum

Three-digit checksum that ends every message: the sum of all bytes up to and including the delimiter before tag 10, modulo 256, padded with leading zeros. It is always the last field.

Tag number
10
Data type
STRING
FIX versions
FIX 4.0 to 5.0 SP2 and FIXT 1.1
Location
Standard trailer

Practical notes on CheckSum

CheckSum is the sum of all bytes before the 10= field, modulo 256, written as three digits. It is always the last field.

  • The value is always three characters: a sum of 7 is sent as 007.
  • It is computed over the bytes with SOH delimiters. Logs that show | or ^ are for reading only.
  • A message with a wrong CheckSum is dropped as garbled, with no Reject.

Common mistakes

  • Sending 10=7 or 10=92 without zero padding.
  • Computing it over a pipe-delimited copy of the message.

See also:CheckSum mismatch

Tag 10 in each FIX version

Values and message usage as defined in a specific version.

Data type

STRING: Text of printable characters. It cannot contain the SOH delimiter.

Example

10=092

Illustrative value. In a message, fields are separated by the SOH character (0x01), often shown as | or ^ in logs.

Decode a message with this tag

Message types that use tag 10

CheckSum belongs to the standard message trailer, which every FIX message carries, so it is not listed against individual message types.

Field and message data comes from the QuickFIX data dictionaries for FIX 4.0 to 5.0 SP2 and FIXT 1.1, used under the QuickFIX Software License. This product includes software developed by quickfixengine.org (http://www.quickfixengine.org/). Enumerated value names are converted to plain text for reading.