This message can be used to reject an application-level message which fulfills session-level rules and cannot be rejected via any other means. If the message fails a session-level rule, e.g. body length is incorrect, a session-level Reject <35=3> message should be issued.
The only exception to this rule is when the FIX session protocol is not being used. An appropriate reject message of the given session protocol or the Business Message Reject message should be used instead.
It should not be used in the following situations:
In response to | Appropriate Response |
A session-level problem meeting the criteria of the session-level Reject <35=3> message | Reject <35=3> message |
Quote Request <35=R> | Quote Request Reject <35=AG> |
Quote <35=S>, Quote Cancel <35=Z>, Quote Status Request <35=a>, Quote Response <35=AJ> | Quote Status Report <35=AI> |
Mass Quote <35=i> | Mass Quote Ack <35=b> |
Market Data Request <35=V> | Market Data Request Reject <35=Y> |
Security Definition Request <35=c> | Security Definition <35=d> |
Security Type Request <35=v> | Security Types <35=w> |
Security List Request <35=x> | Security List <35=y> |
Derivative Security List Request <35=z> | Derivative Security List <35=AA> |
Security Status Request <35=e> | Security Status <35=f> |
Trading Session Status Request <35=g> | Trading Session Status <35=h> |
New Order Single <35=D>, Order Status Request <35=H>, Order Mass Status Request <35=AF>, New Order Cross <35=s>, New Order Multileg <35=AB>, New Order List <35=E>, List Execute <35=L> | Execution Report <35=8> |
Order Cancel Request <35=F>, Order Cancel/Replace Request <35=G>, Cross Order Cancel Request <35=u>, Cross Order Cancel/Replace Request <35=t>, Multileg Order Cancel/Replace <35=AC>, List Cancel Request <35=K> | Order Cancel Reject <35=9> |
Execution Report <35=8> | Don't Know Trade <35=Q> |
Order Mass Cancel Request <35=q> | Order Mass Cancel Report <35=r> |
List Status Request <35=M> | List Status <35=N> |
Allocation Instruction <35=J> | Allocation Instruction Ack <35=P> |
Allocation Report <35=AS> | Allocation Report Ack <35=AT> |
Confirmation <35=AK> | Confirmation Ack <35=AU> |
Registration Instructions <35=o> | Registration Instructions Response <35=p> |
Trade Capture Report Request <35=AD> | Trade Capture Report <35=AE> |
Bid Request <35=k> | Bid Response <35=l> |
Confirmation Request <35=BH> | Confirmation <35=AK> |
Settlement Instruction Request <35=AV> | Settlement Instructions <35=T> |
Position Maintenance Request <35=AL> | Position Maintenance Report <35=AM> |
Request for Positions <35=AN> | Request for Positions Ack <35=AO> |
Collateral Request <35=AX> | Collateral Assignment <35=AY> |
Collateral Assignment <35=AY> | Collateral Response <35=AZ> |
Collateral Inquiry <35=BB> | Collateral Inquiry Ack <35=BG> |
The only exceptions to this rule are:
- In the event a business message is received, fulfills session-level rules, but cannot be communicated to the business-level processing system. In this situation a Business Message Reject with BusinessRejectReason (380) = "Application not available at this time" can be issued
- In the event a valid business message is received, fulfills session-level rules, but contains a message type that's not supported by the recipient. In this situation a Business Message Reject with BusinessRejectReason (380) = "Unsupported Message Type" can be issued
- In the event a business message is received, fulfills session-level rules, but lacks a field conditionally required by the FIX specification. In this situation a Business Message Reject with BusinessRejectReason (380) = "Conditionally Required Field Missing" can be issued
Messages which can be referenced within a Business Message Reject message are as follows. The ID field which BusinessRejectRefID (379) refers to is also noted:
Whenever possible, it is strongly recommended that the cause of the failure be described in the Text (58) field.
Structure
Tag | Name | Type | Required | Description |
---|
| | Component | | |
45 | | SeqNum | | MsgSeqNum of rejected message
|
372 | | String Enum | | The MsgType of the FIX message being referenced
|
1130 | | String Enum | | Recommended when rejecting an application message that does not explicitly provide ApplVerID ( 1128) on the message being rejected. In this case the value from the DefaultApplVerID(1137) or the default value specified in the NoMsgTypes repeating group on the logon message should be provided
|
1406 | | Int | | Recommended when rejecting an application message that does not explicitly provide ApplExtID(1156) on the rejected message. In this case the value from the DefaultApplExtID(1407) or the default value specified in the NoMsgTypes repeating group on the logon message should be provided
|
1131 | | String | | Recommended when rejecting an application message that does not explicitly provide CstmApplVerID(1129) on the message being rejected. In this case the value from the DefaultCstmApplVerID(1408) or the default value specified in the NoMsgTypes repeating group on the logon message should be provided
|
379 | | String | | The value of the business-level "ID" field on the message being referenced. Required unless the corresponding ID field (see list above) was not specified
|
380 | | Int Enum | | Code to identify reason for a Business Message Reject message
|
58 | | String | | Where possible, message to explain reason for rejection
|
354 | | Length | | Must be set if EncodedText field is specified and must immediately precede it
|
355 | | Data | | Encoded (non-ASCII characters) representation of the Text field in the encoded format specified via the MessageEncoding field
|
| | Component | | |