> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kraken.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Header & Trailer

> Standard FIX message header and trailer fields

<div className="api-banner">
  <span className="api-protocol fix">FIX</span>
  <span className="api-detail">session: admin</span>
  <span className="api-tag">35=\*</span>
</div>

The baseline specification for Unified FIX v2 is FIX 4.4. A standard header must be present at the start of every message in both directions, and a standard trailer closes every message. SenderCompID and TargetCompID are communicated by Kraken during onboarding.

## Standard Header

Present at the start of every message in both directions. Nine header fields are used, with the same tags, types and required flags as Unified FIX.

<ResponseField name="8 - BeginString" type="string" required>
  FIX protocol version. Always FIX.4.4.
</ResponseField>

<ResponseField name="9 - BodyLength" type="Length" required>
  Number of characters between this field and the checksum, counting the delimiter before the checksum.

  **Format:** Character count from after this field up to and including the delimiter before tag 10.
</ResponseField>

<ResponseField name="35 - MsgType" type="string" required>
  Message type of this message.

  **Possible values:**

  * `0` : Heartbeat.
  * `1` : TestRequest.
  * `2` : ResendRequest.
  * `3` : Reject.
  * `4` : SequenceReset.
  * `5` : Logout.
  * `8` : ExecutionReport.
  * `9` : OrderCancelReject.
  * `A` : Logon.
  * `D` : NewOrderSingle.
  * `F` : OrderCancelRequest.
  * `G` : OrderCancelReplaceRequest.
  * `H` : OrderStatusRequest.
  * `j` : BusinessMessageReject.
  * `q` : OrderMassCancelRequest.
</ResponseField>

<ResponseField name="49 - SenderCompID" type="string" required>
  Identifier of the party sending the message. Provided by Kraken during onboarding.

  **Format:** Assigned by Kraken at onboarding.
</ResponseField>

<ResponseField name="56 - TargetCompID" type="string" required>
  Identifier of the party receiving the message. KRAKEN-PERPS-TRD for US Perps order entry sessions.

  **Format:** KRAKEN-PERPS-TRD
</ResponseField>

<ResponseField name="34 - MsgSeqNum" type="SeqNum" required>
  Sequence number of this message on the session.
</ResponseField>

<ResponseField name="43 - PossDupFlag" type="boolean">
  Whether the message may be a retransmission of one already sent with this sequence number.

  **Possible values:**

  * `Y` : Possible duplicate — this sequence number may have been sent before.
  * `N` : Not a duplicate.
</ResponseField>

<ResponseField name="52 - SendingTime" type="UTCTimestamp" required>
  Time the sender transmitted the message, in UTC, formatted YYYYMMDD-HH:MM:SS.uuu.

  **Format:** UTC timestamp, YYYYMMDD-HH:MM:SS.uuu
</ResponseField>

<ResponseField name="122 - OrigSendingTime" type="UTCTimestamp">
  Original sending time of a retransmitted message; set to SendingTime when no original is available.

  **Format:** UTC timestamp, YYYYMMDD-HH:MM:SS.uuu

  <span className="field-attr">Required:</span> Conditional
</ResponseField>

***

## Standard Trailer

Closes every message. CheckSum is always the final field.

<ResponseField name="10 - CheckSum" type="string" required>
  Modulo-256 checksum of the message. Always the last field.

  **Format:** Three digits, modulo-256 sum of every preceding byte.
</ResponseField>
