char
base: charFIX 4.4FIX 4.2
char is a FIX datatype defined in FIX 4.4 and FIX 4.2, carried on the wire as char. 71 fields use it.
Wire format
- Base type
- char
- Fields
- 71
A single character. Most char fields are enumerated, so the value is one of a fixed set rather than arbitrary text.
What the specification says
FIX 4.4
Single character value, can include any alphanumeric character or punctuation except the delimiter. All char fields are case sensitive (i.e. m != M).
FIX 4.2
Single character value, can include any alphanumeric character or punctuation except the delimiter. All char fields are case sensitive
Descriptions are quoted from the FIX Orchestra sources under the Apache 2.0 licence.
How @boarteam/fix handles it
@boarteam/fix keeps the value as a string and, for enumerated fields, reports validate/value-not-in-enum when it is not a defined value.
Fields with this datatype
| Tag | Field | Dialects | Messages |
|---|---|---|---|
| 4 | AdvSide | FIX 4.4, FIX 4.2 | 1 |
| 13 | CommType | FIX 4.4, FIX 4.2 | 16 |
| 21 | HandlInst | FIX 4.4, FIX 4.2 | 8 |
| 25 | IOIQltyInd | FIX 4.4, FIX 4.2 | 1 |
| 28 | IOITransType | FIX 4.4, FIX 4.2 | 1 |
| 29 | LastCapacity | FIX 4.4, FIX 4.2 | 3 |
| 39 | OrdStatus | FIX 4.4, FIX 4.2 | 4 |
| 40 | OrdType | FIX 4.4, FIX 4.2 | 16 |
| 54 | Side | FIX 4.4, FIX 4.2 | 36 |
| 59 | TimeInForce | FIX 4.4, FIX 4.2 | 10 |
| 61 | Urgency | FIX 4.4, FIX 4.2 | 1 |
| 63 | SettlType | FIX 4.4, FIX 4.2 | 19 |
| 71 | AllocTransType | FIX 4.4, FIX 4.2 | 2 |
| 77 | PositionEffect | FIX 4.4, FIX 4.2 | 12 |
| 81 | ProcessCode | FIX 4.4, FIX 4.2 | 10 |
| 94 | EmailType | FIX 4.4, FIX 4.2 | 1 |
| 104 | IOIQualifier | FIX 4.4, FIX 4.2 | 1 |
| 127 | DKReason | FIX 4.4, FIX 4.2 | 1 |
| 139 | MiscFeeType | FIX 4.4, FIX 4.2 | 9 |
| 150 | ExecType | FIX 4.4, FIX 4.2 | 4 |
| 156 | SettlCurrFxRateCalc | FIX 4.4, FIX 4.2 | 8 |
| 160 | SettlInstMode | FIX 4.4, FIX 4.2 | 2 |
| 163 | SettlInstTransType | FIX 4.4, FIX 4.2 | 1 |
| 165 | SettlInstSource | FIX 4.4, FIX 4.2 | 7 |
| 206 | OptAttribute | FIX 4.4, FIX 4.2 | 59 |
| 263 | SubscriptionRequestType | FIX 4.4, FIX 4.2 | 16 |
| 269 | MDEntryType | FIX 4.4, FIX 4.2 | 3 |
| 274 | TickDirection | FIX 4.4, FIX 4.2 | 2 |
| 279 | MDUpdateAction | FIX 4.4, FIX 4.2 | 1 |
| 281 | MDReqRejReason | FIX 4.4, FIX 4.2 | 1 |
| 285 | DeleteReason | FIX 4.4, FIX 4.2 | 1 |
| 317 | UnderlyingOptAttribute | FIX 4.4, FIX 4.2 | 59 |
| 327 | HaltReasonChar | FIX 4.4, FIX 4.2 | 1 |
| 374 | BidRequestTransType | FIX 4.4, FIX 4.2 | 1 |
| 385 | MsgDirection | FIX 4.4, FIX 4.2 | 1 |
| 388 | DiscretionInst | FIX 4.4, FIX 4.2 | 8 |
| 418 | BidTradeType | FIX 4.4, FIX 4.2 | 1 |
| 419 | BasisPxType | FIX 4.4, FIX 4.2 | 1 |
| 433 | ListExecInstType | FIX 4.4, FIX 4.2 | 1 |
| 434 | CxlRejResponseTo | FIX 4.4, FIX 4.2 | 1 |
| 442 | MultiLegReportingType | FIX 4.4, FIX 4.2 | 4 |
| 447 | PartyIDSource | FIX 4.4 | 44 |
| 468 | RoundingDirection | FIX 4.4 | 18 |
| 480 | CancellationRights | FIX 4.4 | 8 |
| 481 | MoneyLaunderingStatus | FIX 4.4 | 8 |
| 484 | ExecPriceType | FIX 4.4 | 1 |
| 497 | FundRenewWaiv | FIX 4.4 | 13 |
| 506 | RegistStatus | FIX 4.4 | 2 |
| 514 | RegistTransType | FIX 4.4 | 2 |
| 517 | OwnershipType | FIX 4.4 | 1 |
| 525 | NestedPartyIDSource | FIX 4.4 | 22 |
| 528 | OrderCapacity | FIX 4.4 | 14 |
| 530 | MassCancelRequestType | FIX 4.4 | 2 |
| 531 | MassCancelResponse | FIX 4.4 | 1 |
| 532 | MassCancelRejectReason | FIX 4.4 | 1 |
| 544 | CashMargin | FIX 4.4 | 8 |
| 564 | LegPositionEffect | FIX 4.4 | 5 |
| 573 | MatchStatus | FIX 4.4 | 8 |
| 587 | LegSettlType | FIX 4.4 | 11 |
| 589 | DayBookingInst | FIX 4.4 | 8 |
| 590 | BookingUnit | FIX 4.4 | 8 |
| 591 | PreallocMethod | FIX 4.4 | 10 |
| 613 | LegOptAttribute | FIX 4.4 | 50 |
| 624 | LegSide | FIX 4.4 | 50 |
| 695 | QuoteQualifier | FIX 4.4 | 5 |
| 744 | AssignmentMethod | FIX 4.4 | 1 |
| 747 | ExerciseMethod | FIX 4.4 | 1 |
| 758 | Nested2PartyIDSource | FIX 4.4 | 8 |
| 783 | SettlPartyIDSource | FIX 4.4 | 7 |
| 787 | DlvyInstType | FIX 4.4 | 7 |
| 950 | Nested3PartyIDSource | FIX 4.4 | 2 |
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