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 Acknowledgement <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 | | The MsgType of the FIX message being referenced
|
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 | | |