Skip to main content

Message structure

Every FIX message consists of three main components that define its structure and content:

Standard header

The standard header is required at the beginning of every FIX message. It provides key information about the message type and sequence number, who the sender and the receiver are, sending time, and the protocol version.

important

For messages from your system to Bitvavo, use your unique account identifier as the SenderCompID (49) and VAVO as the TargetCompID (56).

For messages from Bitvavo to your system, the values in these fields are reversed: SenderCompID (49) is VAVO and TargetCompID (56) is your unique account identifier.

TagNameDescription
8BeginStringThe FIX protocol version. Must be FIX.4.4 and the first field in the message.
9BodyLengthThe message length in bytes from this field to the CheckSum field.
This must always be the second field in the message.
35MsgTypeThe type of message. Must be the third field in the message. For example, 35=D is NewOrderSingle.
49SenderCompIDThe sender. In messages to Bitvavo, this is your unique account identifier. In messages to you, the value is VAVO.
56TargetCompIDThe recipient. In messages to Bitvavo, the value must be VAVO. In messages to you, this is your unique account identifier.
34MsgSeqNoThe sequence number of the message. Used to detect gaps or duplicate messages.
In the UAT environment, the maximum value for MsSeqNo is 10000000. Before you reach it, you need to send a new Logon message with ResetSeqNumFlag (141) set to Yes .
52SendingTimeThe UTC timestamp in nanoseconds when the message was sent. Must be in the format YYYYMMDD-HH:MM:SS.sssssssss, for example 20260115-10:05:54.794327000.

Message body

The message body contains a set of tags relevant to each message type. After constructing the standard header, include the tags specified for the message you want to send or receive.

You can find the messages we support below:

Admin

Trading

Drop copy

Standard trailer

The standard trailer is required at the end of every FIX message. It marks the end of the message and includes a checksum field to verify that the message was transmitted correctly.

TagNameTypeRequiredDescription
10CheckSumStringYThree-byte checksum used to mark the end of the message.

See also