EncodedLegIssuer (FIX tag 619)

dataFIX 4.4FIX 5.0 SP2

EncodedLegIssuer (tag 619) is a data field defined in FIX 4.4 and FIX 5.0 SP2. It appears in 50 message types, always optionally. It is length-prefixed — tag 618 carries the byte count, so the value may contain the SOH separator without breaking the message.

At a glance

Tag
619
Name
EncodedLegIssuer
Datatype
data
Dialects
FIX 4.4 and FIX 5.0 SP2
Messages
50
Length field
tag 618

What the specification says

FIX 4.4

Multileg instrument's individual security’s EncodedIssuer. See EncodedIssuer (349) field for description

FIX 5.0 SP2

Multileg instrument's individual security's EncodedIssuer.

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

A real message using tag 619

ExecutionReport · FIX 4.4
TagFieldWire valueMeaning
8BeginStringFIX.4.4
9BodyLength199
35MsgType8Execution Report
49SenderCompIDBOARTEAM
56TargetCompIDCOUNTERPARTY
34MsgSeqNum2
52SendingTime20240101-12:00:00.000
37OrderIDORD-10042
17ExecIDEXEC-88117
150ExecType0New
39OrdStatus0New
54Side1Buy
151LeavesQty0
14CumQty1000000
6AvgPx1.09215
555NoLegs2 entries2repeating group
600LegSymbolEXAMPLE
618EncodedLegIssuerLen7
619EncodedLegIssuerEXAMPLE
600LegSymbolEXAMPLE
618EncodedLegIssuerLen7
619EncodedLegIssuerEXAMPLE
10CheckSum240
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 4.4 dictionary and verified at build time: it parses and validates with no issues. Open the decoder to try your own message.

Where tag 619 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.

MessageMsgTypeFIX 4.4FIX 5.0 SP2Where in the message
Advertisement7ConditionalOptionalinside InstrmtLegGrp › InstrumentLeg
AllocationInstructionJConditionalOptionalinside InstrmtLegGrp › InstrumentLeg
AllocationInstructionAlertBMOptionalinside InstrmtLegGrp › InstrumentLeg
AllocationReportASConditionalOptionalinside InstrmtLegGrp › InstrumentLeg
AssignmentReportAWConditionalOptionalinside InstrmtLegGrp › InstrumentLeg
CollateralAssignmentAYConditionalOptionalinside InstrmtLegGrp › InstrumentLeg
CollateralInquiryBBConditionalOptionalinside InstrmtLegGrp › InstrumentLeg
CollateralInquiryAckBGConditionalOptionalinside InstrmtLegGrp › InstrumentLeg
CollateralReportBAConditionalOptionalinside InstrmtLegGrp › InstrumentLeg
CollateralRequestAXConditionalOptionalinside InstrmtLegGrp › InstrumentLeg
CollateralResponseAZConditionalOptionalinside InstrmtLegGrp › InstrumentLeg
ConfirmationAKConditionalOptionalinside InstrmtLegGrp › InstrumentLeg
CrossOrderCancelReplaceRequesttConditionalOptionalinside InstrmtLegGrp › InstrumentLeg
CrossOrderCancelRequestuConditionalOptionalinside InstrmtLegGrp › InstrumentLeg
DerivativeSecurityListAAConditionalOptionalinside RelSymDerivSecGrp › InstrmtLegGrp › InstrumentLeg
DerivativeSecurityListUpdateReportBROptionalinside RelSymDerivSecUpdGrp › InstrmtLegGrp › InstrumentLeg
DontKnowTradeQConditionalOptionalinside InstrmtLegGrp › InstrumentLeg
EmailCConditionalOptionalinside InstrmtLegGrp › InstrumentLeg
ExecutionAcknowledgementBNOptionalinside InstrmtLegGrp › InstrumentLeg
ExecutionReport8ConditionalOptionalinside InstrmtLegExecGrp › InstrumentLeg
IOI6ConditionalOptionalinside InstrmtLegIOIGrp › InstrumentLeg
MarketDataIncrementalRefreshXConditionalOptionalinside MDIncGrp › InstrmtLegGrp › InstrumentLeg
MarketDataRequestVConditionalOptionalinside InstrmtMDReqGrp › InstrmtLegGrp › InstrumentLeg
MarketDataSnapshotFullRefreshWConditionalOptionalinside InstrmtLegGrp › InstrumentLeg
MassQuoteiConditionalOptionalinside QuotSetGrp › QuotEntryGrp › InstrmtLegGrp › InstrumentLeg
MassQuoteAcknowledgementbConditionalOptionalinside QuotSetAckGrp › QuotEntryAckGrp › InstrmtLegGrp › InstrumentLeg
MultilegOrderCancelReplaceACConditionalOptionalinside LegOrdGrp › InstrumentLeg
NewOrderCrosssConditionalOptionalinside InstrmtLegGrp › InstrumentLeg
NewOrderMultilegABConditionalOptionalinside LegOrdGrp › InstrumentLeg
NewsBConditionalOptionalinside InstrmtLegGrp › InstrumentLeg
PositionMaintenanceReportAMConditionalOptionalinside InstrmtLegGrp › InstrumentLeg
PositionMaintenanceRequestALConditionalOptionalinside InstrmtLegGrp › InstrumentLeg
PositionReportAPConditionalOptionalinside InstrmtLegGrp › InstrumentLeg
QuoteSConditionalOptionalinside LegQuotGrp › InstrumentLeg
QuoteCancelZConditionalOptionalinside QuotCxlEntriesGrp › InstrmtLegGrp › InstrumentLeg
QuoteRequestRConditionalOptionalinside QuotReqGrp › QuotReqLegsGrp › InstrumentLeg
QuoteRequestRejectAGConditionalOptionalinside QuotReqRjctGrp › QuotReqLegsGrp › InstrumentLeg
QuoteResponseAJConditionalOptionalinside LegQuotGrp › InstrumentLeg
QuoteStatusReportAIConditionalOptionalinside LegQuotStatGrp › InstrumentLeg
QuoteStatusRequestaConditionalOptionalinside InstrmtLegGrp › InstrumentLeg
RFQRequestAHConditionalOptionalinside RFQReqGrp › InstrmtLegGrp › InstrumentLeg
RequestForPositionsANConditionalOptionalinside InstrmtLegGrp › InstrumentLeg
RequestForPositionsAckAOConditionalOptionalinside InstrmtLegGrp › InstrumentLeg
SecurityDefinitiondConditionalOptionalinside InstrmtLegGrp › InstrumentLeg
SecurityDefinitionRequestcConditionalOptionalinside InstrmtLegGrp › InstrumentLeg
SecurityDefinitionUpdateReportBPOptionalinside InstrmtLegGrp › InstrumentLeg
SecurityListyConditionalOptionalinside SecListGrp › InstrmtLegSecListGrp › InstrumentLeg
SecurityListRequestxConditionalOptionalinside InstrmtLegGrp › InstrumentLeg
SecurityListUpdateReportBKOptionalinside SecLstUpdRelSymGrp › SecLstUpdRelSymsLegGrp › InstrumentLeg
SecurityStatusfConditionalOptionalinside InstrmtLegGrp › InstrumentLeg
SecurityStatusRequesteConditionalOptionalinside InstrmtLegGrp › InstrumentLeg
TradeCaptureReportAEConditionalOptionalinside TrdInstrmtLegGrp › InstrumentLeg
TradeCaptureReportAckARConditionalOptionalinside TrdInstrmtLegGrp › InstrumentLeg
TradeCaptureReportRequestADConditionalOptionalinside InstrmtLegGrp › InstrumentLeg
TradeCaptureReportRequestAckAQConditionalOptionalinside InstrmtLegGrp › InstrumentLeg

Wire format

Raw bytes, length-prefixed by a partner field. The value may legally contain the SOH separator, which is why the length matters. @boarteam/fix reads the partner length field first and takes exactly that many bytes, so an embedded separator does not truncate the value.

Read tag 619 in TypeScript

decode.tsts
import { createFixEngine } from "@boarteam/fix";import { dictionary } from "@boarteam/fix-dict-fix44";const fix = createFixEngine(dictionary);const { message, issues } = fix.parse(raw);// Length-prefixed: tag 618 carries the byte count, so the// value may contain the SOH separator without breaking the message.const length = message.fields[618]?.value;const encodedLegIssuer = message.fields[619]?.raw;

Other data 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-fix44