| ID | 1 |
| Pedigree | Added FIX.2.7, Updated FIX.3.0 |
The Heartbeat is useful for identifying when the last of a string of messages are lost and for monitoring the status of the communication link. The Heartbeat will contain the next sequence number to be transmitted.
When either end of a FIX connection has not sent any data for (HeartBtInt) seconds, it will transmit a Heartbeat message. When either end of the connection has not received any data for (HeartBtInt + “some reasonable transmission time”) seconds, it will transmit a Test Request message. If there is still no Heartbeat message received after (HeartBtInt + “some reasonable transmission time”) seconds then the connection should be considered lost and corrective action be initiated. If HeartBtInt is set to zero then no regular heartbeat messages will be generated. Note that a test request message can still be sent independent of the value of the HeartBtInt which will force a Heartbeat message.
Heartbeats issued as the result of Test Request must contain the TestReqID transmitted in the Test Request message. This useful to verify that the Heartbeat is the result of the Test Request and not as the result of a regular timeout.
The standard message header is utilized for heartbeats with following provisions:
- The sequence number field contains the next message sequence number to be transmitted
- The sequence number is NOT incremented for heartbeats
Field | Name | Type | Req'd | Comments | Pedigree |
|---|---|---|---|---|---|
StandardHeader | Y | MsgType = 0 MsgSeqNo contains expected next sequence number; i.e. last sequence number + 1 | Added FIX.2.7 | ||
112 | Required when the heartbeat is the result of a Test Request message. | Added FIX.3.0 | |||
StandardTrailer | Y | Added FIX.2.7 |
Orchimate Copyright 2026 Atomic Wire Technology Limited
Orchestra Copyright 2026 FIX Protocol Ltd
Terms of Service|Privacy Policy