ZagTrader

FIX Protocol Tag 35: MsgType

Defines the message type, such as D for New Order Single or 8 for Execution Report. It is always the third field of a message.

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

Practical notes on MsgType

MsgType says what the message is. It is always the third field, after BeginString and BodyLength.

  • Session messages: 0 Heartbeat, 1 TestRequest, 2 ResendRequest, 3 Reject, 4 SequenceReset, 5 Logout, A Logon.
  • The order flow most sessions carry: D New Order Single, F Order Cancel Request, G Order Cancel/Replace Request, 8 Execution Report, 9 Order Cancel Reject, H Order Status Request, j Business Message Reject.
  • Codes are case sensitive: D is New Order Single, d is Security Definition.
  • Codes beginning with U are reserved for user-defined messages agreed between the two parties.

Common mistakes

  • A type the receiver's dictionary does not define gets a Reject with SessionRejectReason 11 (Invalid MsgType).
  • A valid type the application does not handle should get a Business Message Reject with 380=3, not a session Reject.

Changes between FIX versions

  • Each FIX version adds message types. FIX 4.2 defines 46, FIX 4.4 defines 93 and FIX 5.0 SP2 defines 164 in the standard dictionaries.

See also:Invalid MsgType (373=11)Business Message Reject

Tag 35 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.

Valid values

164 enumerated values across all FIX versions.

ValueMeaningFIX versions
0HeartbeatAll
1Test RequestAll
2Resend RequestAll
3RejectAll
4Sequence ResetAll
5LogoutAll
6IOIAll
7AdvertisementAll
8Execution ReportAll
9Order Cancel RejectAll
ALogonAll
BNewsAll
CEmailAll
DNew Order SingleAll
ENew Order ListAll
FOrder Cancel RequestAll
GOrder Cancel/Replace RequestAll
HOrder Status RequestAll
JAllocation InstructionAll
KList Cancel RequestAll
LList ExecuteAll
MList Status RequestAll
NList StatusAll
PAllocation AckAll
QDont Know TradeAll
RQuote RequestAll
SQuoteAll
TSettlement Instructions4.1, 4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
VMarket Data Request4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
WMarket Data Snapshot Full Refresh4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
XMarket Data Incremental Refresh4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
YMarket Data Request Reject4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
ZQuote Cancel4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
aQuote Status Request4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
bMass Quote Ack4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
cSecurity Definition Request4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
dSecurity Definition4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
eSecurity Status Request4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
fSecurity Status4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
gTrading Session Status Request4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
hTrading Session Status4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
iMass Quote4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
jBusiness Message Reject4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
kBid Request4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
lBid Response4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
mList Strike Price4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
AADerivative Security List4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
ABNew Order Multileg4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
ACMultileg Order Cancel/Replace4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
ADTrade Capture Report Request4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
AETrade Capture Report4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
AFOrder Mass Status Request4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
AGQuote Request Reject4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
AHRFQ Request4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
AIQuote Status Report4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
nXML Message4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
oRegistration Instructions4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
pRegistration Instructions Response4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
qOrder Mass Cancel Request4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
rOrder Mass Cancel Report4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
sNew Order Cross4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
tCross Order Cancel Replace Request4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
uCross Order Cancel Request4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
vSecurity Type Request4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
wSecurity Types4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
xSecurity List Request4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
ySecurity List4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
zDerivative Security List Request4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
AJQuote Response4.4, 5.0, 5.0 SP1, 5.0 SP2
AKConfirmation4.4, 5.0, 5.0 SP1, 5.0 SP2
ALPosition Maintenance Request4.4, 5.0, 5.0 SP1, 5.0 SP2
AMPosition Maintenance Report4.4, 5.0, 5.0 SP1, 5.0 SP2
ANRequest For Positions4.4, 5.0, 5.0 SP1, 5.0 SP2
AORequest For Positions Ack4.4, 5.0, 5.0 SP1, 5.0 SP2
APPosition Report4.4, 5.0, 5.0 SP1, 5.0 SP2
AQTrade Capture Report Request Ack4.4, 5.0, 5.0 SP1, 5.0 SP2
ARTrade Capture Report Ack4.4, 5.0, 5.0 SP1, 5.0 SP2
ASAllocation Report4.4, 5.0, 5.0 SP1, 5.0 SP2
ATAllocation Report Ack4.4, 5.0, 5.0 SP1, 5.0 SP2
AUConfirmation Ack4.4, 5.0, 5.0 SP1, 5.0 SP2
AVSettlement Instruction Request4.4, 5.0, 5.0 SP1, 5.0 SP2
AWAssignment Report4.4, 5.0, 5.0 SP1, 5.0 SP2
AXCollateral Request4.4, 5.0, 5.0 SP1, 5.0 SP2
AYCollateral Assignment4.4, 5.0, 5.0 SP1, 5.0 SP2
AZCollateral Response4.4, 5.0, 5.0 SP1, 5.0 SP2
BACollateral Report4.4, 5.0, 5.0 SP1, 5.0 SP2
BBCollateral Inquiry4.4, 5.0, 5.0 SP1, 5.0 SP2
BCNetwork Counterparty System Status Request4.4, 5.0, 5.0 SP1, 5.0 SP2
BDNetwork Counterparty System Status Response4.4, 5.0, 5.0 SP1, 5.0 SP2
BEUser Request4.4, 5.0, 5.0 SP1, 5.0 SP2
BFUser Response4.4, 5.0, 5.0 SP1, 5.0 SP2
BGCollateral Inquiry Ack4.4, 5.0, 5.0 SP1, 5.0 SP2
BHConfirmation Request4.4, 5.0, 5.0 SP1, 5.0 SP2
BITrading Session List Request5.0, 5.0 SP1, 5.0 SP2
BJTrading Session List5.0, 5.0 SP1, 5.0 SP2
BKSecurity List Update Report5.0, 5.0 SP1, 5.0 SP2
BLAdjusted Position Report5.0, 5.0 SP1, 5.0 SP2
BMAllocation Instruction Alert5.0, 5.0 SP1, 5.0 SP2
BNExecution Ack5.0, 5.0 SP1, 5.0 SP2
BOContrary Intention Report5.0, 5.0 SP1, 5.0 SP2
BPSecurity Definition Update Report5.0, 5.0 SP1, 5.0 SP2
BQSettlement Obligation Report5.0 SP1, 5.0 SP2
BRDerivative Security List Update Report5.0 SP1, 5.0 SP2
BSTrading Session List Update Report5.0 SP1, 5.0 SP2
BTMarket Definition Request5.0 SP1, 5.0 SP2
BUMarket Definition5.0 SP1, 5.0 SP2
BVMarket Definition Update Report5.0 SP1, 5.0 SP2
BWApplication Message Request5.0 SP1, 5.0 SP2
BXApplication Message Request Ack5.0 SP1, 5.0 SP2
BYApplication Message Report5.0 SP1, 5.0 SP2
BZOrder Mass Action Report5.0 SP1, 5.0 SP2
CAOrder Mass Action Request5.0 SP1, 5.0 SP2
CBUser Notification5.0 SP1, 5.0 SP2
CCStream Assignment Request5.0 SP2
CDStream Assignment Report5.0 SP2
CEStream Assignment Report ACK5.0 SP2
CFParty Details List Request5.0 SP2
CGParty Details List Report5.0 SP2
CHMargin Requirement Inquiry5.0 SP2
CIMargin Requirement Inquiry Ack5.0 SP2
CJMargin Requirement Report5.0 SP2
CKParty Details List Update Report5.0 SP2
CLParty Risk Limits Request5.0 SP2
CMParty Risk Limits Report5.0 SP2
CNSecurity Mass Status Request5.0 SP2
COSecurity Mass Status5.0 SP2
CQAccount Summary Report5.0 SP2
CRParty Risk Limits Update Report5.0 SP2
CSParty Risk Limits Definition Request5.0 SP2
CTParty Risk Limits Definition Request Ack5.0 SP2
CUParty Entitlements Request5.0 SP2
CVParty Entitlements Report5.0 SP2
CWQuote Ack5.0 SP2
CXParty Details Definition Request5.0 SP2
CYParty Details Definition Request Ack5.0 SP2
CZParty Entitlements Update Report5.0 SP2
DAParty Entitlements Definition Request5.0 SP2
DBParty Entitlements Definition Request Ack5.0 SP2
DCTrade Match Report5.0 SP2
DDTrade Match Report Ack5.0 SP2
DEParty Risk Limits Report Ack5.0 SP2
DFParty Risk Limit Check Request5.0 SP2
DGParty Risk Limit Check Request Ack5.0 SP2
DHParty Action Request5.0 SP2
DIParty Action Report5.0 SP2
DJMass Order5.0 SP2
DKMass Order Ack5.0 SP2
DLPosition Transfer Instruction5.0 SP2
DMPosition Transfer Instruction Ack5.0 SP2
DNPosition Transfer Report5.0 SP2
DOMarket Data Statistics Request5.0 SP2
DPMarket Data Statistics Report5.0 SP2
DQCollateral Report Ack5.0 SP2
DRMarket Data Report5.0 SP2
DSCross Request5.0 SP2
DTCross Request Ack5.0 SP2
DUAllocation Instruction Alert Request5.0 SP2
DVAllocation Instruction Alert Request Ack5.0 SP2
DWTrade Aggregation Request5.0 SP2
DXTrade Aggregation Report5.0 SP2
EAPay Management Report5.0 SP2
EBPay Management Report Ack5.0 SP2
DYPay Management Request5.0 SP2
DZPay Management Request Ack5.0 SP2

Example

35=D

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 35

MsgType 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.