FIX Protocol Tag 52: SendingTime
Time the message was sent, in UTC.
- Tag number
- 52
- Data type
- UTCTIMESTAMP
- FIX versions
- FIX 4.0 to 5.0 SP2 and FIXT 1.1
- Location
- Standard header
Practical notes on SendingTime
SendingTime is the UTC time the message was sent. It is a required header field on every message.
- Format: YYYYMMDD-HH:MM:SS, optionally with fractional seconds, always UTC with no time zone suffix.
- Set it when the message is written to the socket, not when the order was created; TransactTime (60) carries the business time.
- Receivers compare it with their own clock. QuickFIX allows 120 seconds by default before rejecting with SessionRejectReason 10.
- On a replay, SendingTime is the time of the replay and the original goes in OrigSendingTime (122).
Common mistakes
- Local time instead of UTC: the message is hours off and is rejected, then the session logs out.
- Microsecond or nanosecond precision sent to an engine that only accepts milliseconds.
Tag 52 in each FIX version
Values and message usage as defined in a specific version.
Data type
UTCTIMESTAMP: Date and time in UTC as YYYYMMDD-HH:MM:SS, optionally followed by fractions of a second (.sss).
Example
52=20261020-14:30:05.123
Illustrative value. In a message, fields are separated by the SOH character (0x01), often shown as | or ^ in logs.
Decode a message with this tagMessage types that use tag 52
SendingTime belongs to the standard message header, 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.