DeskOrderHandlingInst (FIX tag 1035)

MultipleStringValueFIX 5.0 SP2

DeskOrderHandlingInst (tag 1035) is a MultipleStringValue field defined in FIX 5.0 SP2. It appears in 11 message types, always optionally. It is an enumerated field with 24 defined values.

At a glance

Tag
1035
Name
DeskOrderHandlingInst
Datatype
MultipleStringValue (String)
Dialects
FIX 5.0 SP2
Messages
11
Valid values
24

What the specification says

Codes that apply special information that the broker-dealer needs to report.

Descriptions are quoted from the FIX Orchestra sources under the Apache 2.0 licence.

A real message using tag 1035

NewOrderSingle · FIX 5.0 SP2
TagFieldWire valueMeaning
8BeginStringFIXT.1.1
9BodyLength187
35MsgTypeDNewOrderSingle
49SenderCompIDBOARTEAM
56TargetCompIDCOUNTERPARTY
34MsgSeqNum2
52SendingTime20240101-12:00:00.000
11ClOrdIDORD-10042
54Side1Buy
60TransactTime20240101-12:00:00.000
40OrdType1Market
768NoTrdRegTimestamps2 entries2repeating group
769TrdRegTimestamp20240101-12:00:00.000
1035DeskOrderHandlingInstADDAdd-on order
769TrdRegTimestamp20240101-12:00:00.000
1035DeskOrderHandlingInstADDAdd-on order
10CheckSum224
Edit and decode it yourself

Shown with | separators for readability. On the wire FIX uses SOH (0x01), an invisible control byte — and because BodyLength and CheckSum are computed over the actual bytes, the two forms have different checksums. Both are valid and both decode here.

Open in the full decoder →

Generated from the FIX 5.0 SP2 dictionary and verified at build time: it parses and validates with no issues. Open the decoder to try your own message.

Valid values

A value outside this list is not a parse error — the message still decodes — but validate() reports it as validate/value-not-in-enum.

ValueMeaningSymbolic name
ADDAdd-on orderADD_ON_ORDER
AONAll or noneALL_OR_NONE
CNHCash not heldCASH_NOT_HELD
DIRDirected orderDIRECTED_ORDER
E.WExchange for physical transactionEXCHANGE_FOR_PHYSICAL_TRANSACTION
FOKFill or killFILL_OR_KILL
IOImbalance onlyIMBALANCE_ONLY
IOCImmediate or cancelIMMEDIATE_OR_CANCEL
LOOLimit on openLIMIT_ON_OPEN
LOCLimit on CloseLIMIT_ON_CLOSE
MAOMarket at OpenMARKET_AT_OPEN
MACMarket at closeMARKET_AT_CLOSE
MOOMarket on openMARKET_ON_OPEN
MOCMarket on closeMARKET_ON_CLOSE
MQTMinimum quantityMINIMUM_QUANTITY
NHNot heldNOT_HELD
OVDOver the dayOVER_THE_DAY
PEGPeggedPEGGED
RSVReserve size orderRESERVE_SIZE_ORDER
S.WStop stock transactionSTOP_STOCK_TRANSACTION
SCLScaleSCALE
TMOTime orderTIME_ORDER
TSTrailing stopTRAILING_STOP
WRKWorkWORK

Where tag 1035 appears

Requiredness is a property of the message, not of the field: the same tag can be optional in one message and conditionally required in another.

MessageMsgTypeRequirednessWhere in the message
CollateralAssignmentAYOptionalinside the TrdRegTimestamps component
CollateralInquiryBBOptionalinside the TrdRegTimestamps component
CollateralReportBAOptionalinside the TrdRegTimestamps component
CollateralRequestAXOptionalinside the TrdRegTimestamps component
CollateralResponseAZOptionalinside the TrdRegTimestamps component
ConfirmationAKOptionalinside the TrdRegTimestamps component
ExecutionReport8Optionalinside the TrdRegTimestamps component
NewOrderSingleDOptionalinside the TrdRegTimestamps component
OrderCancelReplaceRequestGOptionalinside the TrdRegTimestamps component
TradeCaptureReportAEOptionalinside the TrdRegTimestamps component
TradeCaptureReportAckAROptionalinside the TrdRegTimestamps component

Wire format

Several values in one field, separated by spaces. Decoders return an array. @boarteam/fix splits the value on its delimiter and returns an array of strings.

Read tag 1035 in TypeScript

decode.tsts
import { createFixEngine } from "@boarteam/fix";import { dictionary } from "@boarteam/fix-dict-fix50sp2";const fix = createFixEngine(dictionary);const { message, issues } = fix.parse(raw);const deskOrderHandlingInst = message.fields[1035]?.raw;// e.g. "ADD" — Add-on order// The dictionary also carries the labels:const label = fix.dictionary  .fieldByTag(1035)  ?.enumValues?.find((e) => e.value === deskOrderHandlingInst)  ?.description;

Other MultipleStringValue fields

Decode this in your own code

The same engine that produced the decoded example above is an Apache-2.0 npm package with zero runtime dependencies. It runs in Node and in the browser, and parse() returns problems as data instead of throwing.

npm i @boarteam/fix @boarteam/fix-dict-fix50sp2