# Business Message Reject use

**URL:** <https://forum.fixtrading.org/t/business-message-reject-use/5073>\
**Category:** General Q&A\
**Tags:** general-qa, xid\_167979, imported\
**Created:** [March 12, 2008, 10:22am UTC](https://forum.fixtrading.org/t/business-message-reject-use/5073 "2008-03-12T10:22:19Z")\
**Posts on this page:** 12\
**Page:** 1

<div class="post-metadata">

**Author:** ![fplpo\_x](https://avatars.discourse-cdn.com/v4/letter/f/7ab992/32.png) [@fplpo\_x](https://forum.fixtrading.org/u/fplpo_x)\
**Post date:** [March 12, 2008, 10:22am UTC](https://forum.fixtrading.org/t/business-message-reject-use/5073/1 "2008-03-12T10:22:19Z")

</div>

Imported from previous forum

---

<div class="post-metadata">

**Author:** ![fplpo\_x](https://avatars.discourse-cdn.com/v4/letter/f/7ab992/32.png) [@fplpo\_x](https://forum.fixtrading.org/u/fplpo_x)\
**Post date:** [March 12, 2008, 10:22am UTC](https://forum.fixtrading.org/t/business-message-reject-use/5073/2 "2008-03-12T10:22:19Z")

</div>

[original email was from Ainhoa Dewisme - [ainhoa.dewisme@reuters.com](mailto:ainhoa.dewisme@reuters.com) ]  
Hi,

I have gone through the Business Message Reject section on Volume 1, including the exceptions to the rule and also I have also looked at Product: Foreign Exchange on Volume 7 and particularly Settlement Instructions. I have the following question:

If a FIX user places an FX SWAP Trade to a market place but does not specify the tenor, can the market place (with trading rules that require settlement type to be specified) generate a Business Message Reject with “Conditionally Required Field Missing”?

Thanks and Regards

Ainhoa

---

<div class="post-metadata">

**Author:** ![georgebrisco82\_x](https://avatars.discourse-cdn.com/v4/letter/g/c68b51/32.png) [@georgebrisco82\_x](https://forum.fixtrading.org/u/georgebrisco82_x)\
**Post date:** [March 12, 2008, 12:05pm UTC](https://forum.fixtrading.org/t/business-message-reject-use/5073/3 "2008-03-12T12:05:44Z")

</div>

Yes absolutely.

Obviously the more information that you are able to provide in teh reject message, the less the support overhead. I would tend therefore to be as descriptive as possible and actually specify “Tenor Missing for Swap Leg”

George

In general a business level reject should be used in preference to any

> Hi,
> 
> I have gone through the Business Message Reject section on Volume 1,  
> including the exceptions to the rule and also I have also looked at  
> Product: Foreign Exchange on Volume 7 and particularly Settlement  
> Instructions. I have the following question:
> 
> If a FIX user places an FX SWAP Trade to a market place but does not  
> specify the tenor, can the market place (with trading rules that require  
> settlement type to be specified) generate a Business Message Reject with  
> “Conditionally Required Field Missing”?
> 
> Thanks and Regards
> 
> Ainhoa

---

<div class="post-metadata">

**Author:** ![scott.atwell](https://avatars.discourse-cdn.com/v4/letter/s/51bf81/32.png) [@scott.atwell](https://forum.fixtrading.org/u/scott.atwell)\
**Post date:** [March 12, 2008, 12:18pm UTC](https://forum.fixtrading.org/t/business-message-reject-use/5073/4 "2008-03-12T12:18:33Z")

</div>

When Ainhoa stated an “FX Swap Trade”, I assumed this referred to a New Order - Single (vs. an Execution Report or other message). The spec states that you should use the appropriate message-specific reject message, in this case an Execution Report with ExecType = Rejected, rather than the Business Message Reject message.

> Yes absolutely.
> 
> Obviously the more information that you are able to provide in teh  
> reject message, the less the support overhead. I would tend therefore  
> to be as descriptive as possible and actually specify “Tenor Missing  
> for Swap Leg”
> 
> George
> 
> In general a business level reject should be used in preference to any
> 
> > Hi,
> > 
> > I have gone through the Business Message Reject section on Volume 1,  
> > including the exceptions to the rule and also I have also looked at  
> > Product: Foreign Exchange on Volume 7 and particularly Settlement  
> > Instructions. I have the following question:
> > 
> > If a FIX user places an FX SWAP Trade to a market place but does not  
> > specify the tenor, can the market place (with trading rules that  
> > require settlement type to be specified) generate a Business Message  
> > Reject with “Conditionally Required Field Missing”?
> > 
> > Thanks and Regards
> > 
> > Ainhoa

---

<div class="post-metadata">

**Author:** ![fplpo\_x](https://avatars.discourse-cdn.com/v4/letter/f/7ab992/32.png) [@fplpo\_x](https://forum.fixtrading.org/u/fplpo_x)\
**Post date:** [March 12, 2008, 1:50pm UTC](https://forum.fixtrading.org/t/business-message-reject-use/5073/5 "2008-03-12T13:50:16Z")

</div>

[original email was from Ainhoa Dewisme - [ainhoa.dewisme@reuters.com](mailto:ainhoa.dewisme@reuters.com) ]  
Thank you for your response. The reason I am not clear is that the specification gives 3 exceptions to which a business reject message may be sent:

“3.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 = “Conditionally Required Field Missing” can be issued if the system is unable to send the specific “reject” message listed above. One example of this would be a stop order missing StopPx.”

Is there a situation when a system may not be able to send an ExecutionReport Reject but may be able to send a Business Message Reject? both messages are application messages …

Regards

Ainhoa

---

<div class="post-metadata">

**Author:** ![hanno.klein](https://yyz2.discourse-cdn.com/flex010/user_avatar/forum.fixtrading.org/hanno.klein/32/38_2.png) [@hanno.klein](https://forum.fixtrading.org/u/hanno.klein)\
**Post date:** [March 12, 2008, 2:04pm UTC](https://forum.fixtrading.org/t/business-message-reject-use/5073/6 "2008-03-12T14:04:34Z")

</div>

The question is valid as the situation might be that you are unable to determine to which message you are responding with a reject. But then you might not be able to determine which fields are conditionally required…

My guess is that in most cases, you will be able to send the specific message. It is just the “catch all” case at the end of your if-statements that sends a generic business message reject.

> Thank you for your response. The reason I am not clear is that the  
> specification gives 3 exceptions to which a business reject message  
> may be sent:
> 
> “3.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 = “Conditionally Required Field Missing” can be  
> issued if the system is unable to send the specific “reject” message  
> listed above. One example of this would be a stop order missing StopPx.”
> 
> Is there a situation when a system may not be able to send an  
> ExecutionReport Reject but may be able to send a Business Message  
> Reject? both messages are application messages …
> 
> Regards
> 
> Ainhoa

---

<div class="post-metadata">

**Author:** ![fplpo\_x](https://avatars.discourse-cdn.com/v4/letter/f/7ab992/32.png) [@fplpo\_x](https://forum.fixtrading.org/u/fplpo_x)\
**Post date:** [March 12, 2008, 2:25pm UTC](https://forum.fixtrading.org/t/business-message-reject-use/5073/7 "2008-03-12T14:25:11Z")

</div>

[original email was from Ainhoa Dewisme - [ainhoa.dewisme@reuters.com](mailto:ainhoa.dewisme@reuters.com) ]  
Thanks very much.  
Execution Report ExecType = Reject will normally take preference over Business Message Reject.

However ER OrdRejReason tag does not include a code for “conditionally required field missing”. Business Message Reject message does include this code in BusinessRejectReason tag.

Hence in the scenario described initially I would see Business Message Reject as the message to use without breaking the FIX standard rules. Please let me know if this not the case.

Regards

Ainhoa

---

<div class="post-metadata">

**Author:** ![hanno.klein](https://yyz2.discourse-cdn.com/flex010/user_avatar/forum.fixtrading.org/hanno.klein/32/38_2.png) [@hanno.klein](https://forum.fixtrading.org/u/hanno.klein)\
**Post date:** [March 12, 2008, 2:50pm UTC](https://forum.fixtrading.org/t/business-message-reject-use/5073/8 "2008-03-12T14:50:57Z")

</div>

I am afraid, the specific response message takes precedence over the generic one. The lack of the error you mention is probably due to the fact that no syntactical errors are included in general. A lot of these errors will be caught by a standard FIX engine that can check for absolute or conditional presence of fields automatically.

OrdRejReason has 99=Other and user-defined reject reasons above 100 as well so that you should be able to model whatever you need without having to revert to a Business Message Reject (BMR). It should also be easier for the application that usually expects an ER for a NewOrderSingle. If you split your rejects between ERs and BMRs according to some logic, it seems more complex to handle.

It seems hard to find an example where a BMR with reject reason 5 (cond requ field missing) is returned. I guess it applies most to messages that do not have a response message at all or one with a reject reason field in them (e.g. UserRequest). Maybe somebody else has a good example.

Hope it helps,  
Hanno.

> Thanks very much. Execution Report ExecType = Reject will normally take  
> preference over Business Message Reject.
> 
> However ER OrdRejReason tag does not include a code for “conditionally  
> required field missing”. Business Message Reject message does include  
> this code in BusinessRejectReason tag.
> 
> Hence in the scenario described initially I would see Business Message  
> Reject as the message to use without breaking the FIX standard rules.  
> Please let me know if this not the case.
> 
> Regards
> 
> Ainhoa

---

<div class="post-metadata">

**Author:** ![fplpo\_x](https://avatars.discourse-cdn.com/v4/letter/f/7ab992/32.png) [@fplpo\_x](https://forum.fixtrading.org/u/fplpo_x)\
**Post date:** [March 12, 2008, 3:06pm UTC](https://forum.fixtrading.org/t/business-message-reject-use/5073/9 "2008-03-12T15:06:49Z")

</div>

[original email was from Ainhoa Dewisme - [ainhoa.dewisme@reuters.com](mailto:ainhoa.dewisme@reuters.com) ]  
Thanks again. Sending just one message to easy customer experience is a very good point. It is very clear to me now all different scenarios.

Regards

Ainhoa

---

<div class="post-metadata">

**Author:** ![fplpo\_x](https://avatars.discourse-cdn.com/v4/letter/f/7ab992/32.png) [@fplpo\_x](https://forum.fixtrading.org/u/fplpo_x)\
**Post date:** [March 13, 2008, 9:13am UTC](https://forum.fixtrading.org/t/business-message-reject-use/5073/10 "2008-03-13T09:13:40Z")

</div>

[original email was from Ainhoa Dewisme - [ainhoa.dewisme@reuters.com](mailto:ainhoa.dewisme@reuters.com) ]  
Hi,

I have been thinking about this and i have one question …If the marketplace rejects an order due to conditionally missing fields, the system will not generate unique OrderID (tag 37) or unique ExecID (tag 17) - What are the values that can be set in the mandatory fields ExecID, ExecType, OrdStatus, OrderID?

If unique ids need generating we may have no option but to send a BMR instead.

Thanks and Regards

Ainhoa

---

<div class="post-metadata">

**Author:** ![hanno.klein](https://yyz2.discourse-cdn.com/flex010/user_avatar/forum.fixtrading.org/hanno.klein/32/38_2.png) [@hanno.klein](https://forum.fixtrading.org/u/hanno.klein)\
**Post date:** [March 13, 2008, 4:24pm UTC](https://forum.fixtrading.org/t/business-message-reject-use/5073/11 "2008-03-13T16:24:37Z")

</div>

ExecID = \<message identifier, not entity identifier\>  
ExecType = Rejected  
OrdStatus = Rejected  
OrderID = 0 or

You need to assign an ExecID as it identifies the reponse message. I agree that an OrderID can be hard to generate if the order message does not even make it that far to get one assigned.

> Hi,
> 
> I have been thinking about this and i have one question …If the  
> marketplace rejects an order due to conditionally missing fields, the  
> system will not generate unique OrderID (tag 37) or unique ExecID (tag  
> 17) - What are the values that can be set in the mandatory fields  
> ExecID, ExecType, OrdStatus, OrderID?
> 
> If unique ids need generating we may have no option but to send a  
> BMR instead.
> 
> Thanks and Regards
> 
> Ainhoa

---

<div class="post-metadata">

**Author:** ![georgebrisco82\_x](https://avatars.discourse-cdn.com/v4/letter/g/c68b51/32.png) [@georgebrisco82\_x](https://forum.fixtrading.org/u/georgebrisco82_x)\
**Post date:** [March 12, 2008, 4:43pm UTC](https://forum.fixtrading.org/t/business-message-reject-use/5073/12 "2008-03-12T16:43:51Z")

</div>

I am sorry,

I had just been having a long discussion about session level rejects with someone else, where I had been pushing for business level rejects over session level ones.

Of course if it is a rejection of an order, then in almost all cases you would go for an execution report with 39=9 and something meaningful in 58.

You should absolutely use the most specific message that you can find, to ensure that you are giving back as much context to the other side as you can.

Sorry again… I answered a question that I thought you asked, rather than the one you DID ask 🙂

> Yes absolutely.
> 
> Obviously the more information that you are able to provide in teh  
> reject message, the less the support overhead. I would tend therefore  
> to be as descriptive as possible and actually specify “Tenor Missing  
> for Swap Leg”
> 
> George
> 
> In general a business level reject should be used in preference to any
> 
> > Hi,
> > 
> > I have gone through the Business Message Reject section on Volume 1,  
> > including the exceptions to the rule and also I have also looked at  
> > Product: Foreign Exchange on Volume 7 and particularly Settlement  
> > Instructions. I have the following question:
> > 
> > If a FIX user places an FX SWAP Trade to a market place but does not  
> > specify the tenor, can the market place (with trading rules that  
> > require settlement type to be specified) generate a Business Message  
> > Reject with “Conditionally Required Field Missing”?
> > 
> > Thanks and Regards
> > 
> > Ainhoa
