## General information [#general-information]

The B2CONNECT FIX server provides all the functionality necessary for real-time trading and receiving up-to-date market information via the Financial Information eXchange protocol.

In this document, you can find a detailed description of the B2CONNECT FIX API, including the information about how to connect to a demo FIX server.

<Callout type="info">
  The B2CONNECT FIX API is based on the version 4.4 of the Financial Information eXchange protocol.

  It’s assumed that the reader of this document is already familiar with the FIX protocol. To learn more about the protocol specification, see the [FIX Trading Community website](https://www.fixtrading.org/).
</Callout>

If your trading engine is powered by Go, take a minute to learn about [SimpleFix Go](https://github.com/b2broker/simplefix-go/). This open-source library is provided by the B2CONNECT team to help you quickly integrate FIX messaging into your environment. The library is entirely written in Go and supports any FIX API version.

### Supported message types [#supported-message-types]

The following message types can be assigned to the `<35> MsgType` field of a [Standard header](/b2connect/fix-api#standard-header):

* `0` — [Heartbeat](/b2connect/fix-api#heartbeat) (Client ↔ B2CONNECT)
* `1` — [Test Request](/b2connect/fix-api#test-request) (Client ↔ B2CONNECT)
* `2` — [Resend Request](/b2connect/fix-api#resend-request) (Client ↔ B2CONNECT)
* `3` — [Reject](/b2connect/fix-api#reject) (Client ← B2CONNECT)
* `4` — [Sequence Reset](/b2connect/fix-api#sequence-reset) (Client ↔ B2CONNECT)
* `5` — [Logout](/b2connect/fix-api#logout) (Client ↔ B2CONNECT)
* `8` — [Execution Report](/b2connect/fix-api#execution-report) (Client ← B2CONNECT)
* `9` — [Order Cancel Reject](/b2connect/fix-api#order-cancel-reject) (Client ← B2CONNECT)
* `A` — [Logon](/b2connect/fix-api#logon) (Client → B2CONNECT)
* `D` — [New Order Single](/b2connect/fix-api#new-order-single) (Client → B2CONNECT)
* `F` — [Order Cancel Request](/b2connect/fix-api#order-cancel-request) (Client → B2CONNECT)
* `V` — [Market Data Request](/b2connect/fix-api#market-data-request) (Client → B2CONNECT)
* `W` — [Market Data — Snapshot/Full Refresh](/b2connect/fix-api#market-data-snapshot-full-refresh) (Client ← B2CONNECT)
* `Y` — [Market Data Request Reject](/b2connect/fix-api#market-data-request-reject) (Client ← B2CONNECT)

### Standard header [#standard-header]

All FIX messages must start with a **Standard header**.

The **Standard header** includes the following fields:

<RawHtml b64="PHRhYmxlPgogICAgPHRoZWFkPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRoIHdpZHRoPSI4NCI+VGFnPC90aD4KICAgICAgICAgICAgPHRoIHdpZHRoPSIxNjciPk5hbWU8L3RoPgogICAgICAgICAgICA8dGggd2lkdGg9IjgwIj5SZXEnZDwvdGg+CiAgICAgICAgICAgIDx0aCB3aWR0aD0iMTIzIj5EYXRhdHlwZTwvdGg+CiAgICAgICAgICAgIDx0aD5EZXNjcmlwdGlvbjwvdGg+CiAgICAgICAgPC90cj4KICAgIDwvdGhlYWQ+CiAgICA8dGJvZHk+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+ODwvdGQ+CiAgICAgICAgICAgIDx0ZD5CZWdpblN0cmluZzwvdGQ+CiAgICAgICAgICAgIDx0ZD5ZPC90ZD4KICAgICAgICAgICAgPHRkPlN0cmluZzwvdGQ+CiAgICAgICAgICAgIDx0ZD4KICAgICAgICAgICAgICAgIDxwPk1hcmtzIHRoZSBiZWdpbm5pbmcgb2YgYSBuZXcgbWVzc2FnZSBhbmQgaW5kaWNhdGVzIHRoZSBGSVggdmVyc2lvbiAoPGNvZGU+RklYLjQuNDwvY29kZT4pLjwvcD4KICAgICAgICAgICAgICAgIDxwPjwvcD4KICAgICAgICAgICAgICAgIDxwPkFsd2F5cyB0aGUgZmlyc3QgZmllbGQgaW4gYSBtZXNzYWdlLjwvcD4KICAgICAgICAgICAgPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPjk8L3RkPgogICAgICAgICAgICA8dGQ+Qm9keUxlbmd0aDwvdGQ+CiAgICAgICAgICAgIDx0ZD5ZPC90ZD4KICAgICAgICAgICAgPHRkPmludDwvdGQ+CiAgICAgICAgICAgIDx0ZD4KICAgICAgICAgICAgICAgIDxwPlRoZSBtZXNzYWdlIGxlbmd0aCwgaW4gYnl0ZXMuPC9wPgogICAgICAgICAgICAgICAgPHA+PC9wPgogICAgICAgICAgICAgICAgPHA+QWx3YXlzIHRoZSBzZWNvbmQgZmllbGQgaW4gYSBtZXNzYWdlLjwvcD4KICAgICAgICAgICAgPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPjM1PC90ZD4KICAgICAgICAgICAgPHRkPk1zZ1R5cGU8L3RkPgogICAgICAgICAgICA8dGQ+WTwvdGQ+CiAgICAgICAgICAgIDx0ZD5TdHJpbmc8L3RkPgogICAgICAgICAgICA8dGQ+CiAgICAgICAgICAgICAgICA8cD5UaGUgbWVzc2FnZSB0eXBlLiBTZWUgPGEgaHJlZj0iZml4LWFwaS5tZCNzdXBwb3J0ZWQtbWVzc2FnZS10eXBlcyI+U3VwcG9ydGVkIG1lc3NhZ2UgdHlwZXM8L2E+IGZvciBhIGxpc3Qgb2Ygc3VwcG9ydGVkIHZhbHVlcy48L3A+CiAgICAgICAgICAgICAgICA8cD48L3A+CiAgICAgICAgICAgICAgICA8cD5BbHdheXMgdGhlIHRoaXJkIGZpZWxkIGluIGEgbWVzc2FnZS48L3A+CiAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgPC90cj4KICAgICAgICA8dHI+CiAgICAgICAgICAgIDx0ZD4zNDwvdGQ+CiAgICAgICAgICAgIDx0ZD5Nc2dTZXFOdW08L3RkPgogICAgICAgICAgICA8dGQ+WTwvdGQ+CiAgICAgICAgICAgIDx0ZD5pbnQ8L3RkPgogICAgICAgICAgICA8dGQ+CiAgICAgICAgICAgICAgICA8cD5UaGUgbWVzc2FnZSBzZXF1ZW5jZSBudW1iZXIuPC9wPgogICAgICAgICAgICAgICAgPHA+PC9wPgogICAgICAgICAgICAgICAgPHA+VGhpcyB2YWx1ZSBpcyBpbmNyZW1lbnRlZCBieSAxIGZvciBlYWNoIGNvbnNlY3V0aXZlIG1lc3NhZ2UuPC9wPgogICAgICAgICAgICA8L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+NDk8L3RkPgogICAgICAgICAgICA8dGQ+U2VuZGVyQ29tcElEPC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+U3RyaW5nPC90ZD4KICAgICAgICAgICAgPHRkPlRoZSBCMkNPTk5FQ1Qtc3VwcGxpZWQgaWRlbnRpZmllciBvZiBhIGNsaWVudCBzZW5kaW5nIHJlcXVlc3RzIHRvIHRoZSBGSVggc2VydmVyLjwvdGQ+CiAgICAgICAgPC90cj4KICAgICAgICA8dHI+CiAgICAgICAgICAgIDx0ZD41MjwvdGQ+CiAgICAgICAgICAgIDx0ZD5TZW5kaW5nVGltZTwvdGQ+CiAgICAgICAgICAgIDx0ZD5ZPC90ZD4KICAgICAgICAgICAgPHRkPlRpbWVzdGFtcDwvdGQ+CiAgICAgICAgICAgIDx0ZD5UaGUgZGF0ZSBhbmQgdGltZSB3aGVuIGEgbWVzc2FnZSB3YXMgc2VudCwgaW4gVVRDIHRpbWUgd2l0aCBtaWxsaXNlY29uZHMgcHJlY2lzaW9uOiA8Y29kZT5ZWVlZTU1ERC1ISDpNTTpTUy5zc3M8L2NvZGU+LjwvdGQ+CiAgICAgICAgPC90cj4KICAgICAgICA8dHI+CiAgICAgICAgICAgIDx0ZD41NjwvdGQ+CiAgICAgICAgICAgIDx0ZD5UYXJnZXRDb21wSUQ8L3RkPgogICAgICAgICAgICA8dGQ+WTwvdGQ+CiAgICAgICAgICAgIDx0ZD5TdHJpbmc8L3RkPgogICAgICAgICAgICA8dGQ+VGhlIEIyQ09OTkVDVC1zdXBwbGllZCBpZGVudGlmaWVyIG9mIGEgc2VydmVyIHJlY2VpdmluZyBjbGllbnQgbWVzc2FnZXMuPC90ZD4KICAgICAgICA8L3RyPgogICAgPC90Ym9keT4KPC90YWJsZT4=" />

### Standard trailer [#standard-trailer]

Along with a Standard header, all FIX messages must also contain a **Standard trailer**.

The **Standard trailer** includes the following fields:

<RawHtml b64="PHRhYmxlPgogICAgPHRoZWFkPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRoIHdpZHRoPSI4NCI+VGFnPC90aD4KICAgICAgICAgICAgPHRoIHdpZHRoPSIxNjciPk5hbWU8L3RoPgogICAgICAgICAgICA8dGggd2lkdGg9IjgwIj5SZXEnZDwvdGg+CiAgICAgICAgICAgIDx0aCB3aWR0aD0iMTIzIj5EYXRhdHlwZTwvdGg+CiAgICAgICAgICAgIDx0aD5EZXNjcmlwdGlvbjwvdGg+CiAgICAgICAgPC90cj4KICAgIDwvdGhlYWQ+CiAgICA8dGJvZHk+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+MTA8L3RkPgogICAgICAgICAgICA8dGQ+Q2hlY2tTdW08L3RkPgogICAgICAgICAgICA8dGQ+WTwvdGQ+CiAgICAgICAgICAgIDx0ZD5pbnQ8L3RkPgogICAgICAgICAgICA8dGQ+CiAgICAgICAgICAgICAgICA8cD5BIHRocmVlLWRpZ2l0IHNpbXBsZSBjaGVja3N1bSBpbmRpY2F0aW5nIHRoZSBlbmQgb2YgYSBtZXNzYWdlLjwvcD4KICAgICAgICAgICAgICAgIDxwPjwvcD4KICAgICAgICAgICAgICAgIDxwPkFsd2F5cyB0aGUgbGFzdCBmaWVsZCBpbiBhIG1lc3NhZ2UuPC9wPgogICAgICAgICAgICA8L3RkPgogICAgICAgIDwvdHI+CiAgICA8L3Rib2R5Pgo8L3RhYmxlPg==" />

## Session messages [#session-messages]

The messages listed in this section are used to maintain any live FIX session with the B2CONNECT FIX server, including both [quoting](/b2connect/fix-api#quoting) and [trading](/b2connect/fix-api#trading) sessions.

### Heartbeat [#heartbeat]

This message is sent back and forth between the FIX server and the client to check the connection status and in response to [Test Request](/b2connect/fix-api#test-request) messages.

The **Heartbeat** message includes the following fields:

<RawHtml b64="PHRhYmxlPgogICAgPHRoZWFkPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRoIHdpZHRoPSI4NCI+VGFnPC90aD4KICAgICAgICAgICAgPHRoIHdpZHRoPSIxNjciPk5hbWU8L3RoPgogICAgICAgICAgICA8dGggd2lkdGg9IjgwIj5SZXEnZDwvdGg+CiAgICAgICAgICAgIDx0aCB3aWR0aD0iMTIzIj5EYXRhdHlwZTwvdGg+CiAgICAgICAgICAgIDx0aD5EZXNjcmlwdGlvbjwvdGg+CiAgICAgICAgPC90cj4KICAgIDwvdGhlYWQ+CiAgICA8dGJvZHk+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxhIGhyZWY9ImZpeC1hcGkubWQjc3RhbmRhcmQtaGVhZGVyIj5TdGFuZGFyZCBoZWFkZXI8L2E+PC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxjb2RlPiYjeDNDOzM1PiBNc2dUeXBlID0gMDwvY29kZT48L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+MTEyPC90ZD4KICAgICAgICAgICAgPHRkPlRlc3RSZXFJRDwvdGQ+CiAgICAgICAgICAgIDx0ZD5OPC90ZD4KICAgICAgICAgICAgPHRkPlN0cmluZzwvdGQ+CiAgICAgICAgICAgIDx0ZD5UaGUgaWRlbnRpZmllciBvZiBhIDxhIGhyZWY9ImZpeC1hcGkubWQjdGVzdC1yZXF1ZXN0Ij5UZXN0IFJlcXVlc3Q8L2E+IGluIHJlc3BvbnNlIHRvIHdoaWNoIHRoaXMgSGVhcnRiZWF0IG1lc3NhZ2UgaXMgc2VudC48L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxhIGhyZWY9ImZpeC1hcGkubWQjc3RhbmRhcmQtdHJhaWxlciI+U3RhbmRhcmQgdHJhaWxlcjwvYT48L3RkPgogICAgICAgICAgICA8dGQ+WTwvdGQ+CiAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICA8L3RyPgogICAgPC90Ym9keT4KPC90YWJsZT4=" />

### Test Request [#test-request]

This message is sent back and forth between the FIX server and the client in response to [Heartbeat](/b2connect/fix-api#heartbeat) messages as a means of connectivity check.

The **Test Request** message includes the following fields:

<RawHtml b64="PHRhYmxlPgogICAgPHRoZWFkPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRoIHdpZHRoPSI4NCI+VGFnPC90aD4KICAgICAgICAgICAgPHRoIHdpZHRoPSIxNjciPk5hbWU8L3RoPgogICAgICAgICAgICA8dGggd2lkdGg9IjgwIj5SZXEnZDwvdGg+CiAgICAgICAgICAgIDx0aCB3aWR0aD0iMTIzIj5EYXRhdHlwZTwvdGg+CiAgICAgICAgICAgIDx0aD5EZXNjcmlwdGlvbjwvdGg+CiAgICAgICAgPC90cj4KICAgIDwvdGhlYWQ+CiAgICA8dGJvZHk+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxhIGhyZWY9ImZpeC1hcGkubWQjc3RhbmRhcmQtaGVhZGVyIj5TdGFuZGFyZCBoZWFkZXI8L2E+PC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxjb2RlPiYjeDNDOzM1PiBNc2dUeXBlID0gMTwvY29kZT48L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+MTEyPC90ZD4KICAgICAgICAgICAgPHRkPlRlc3RSZXFJRDwvdGQ+CiAgICAgICAgICAgIDx0ZD5OPC90ZD4KICAgICAgICAgICAgPHRkPlN0cmluZzwvdGQ+CiAgICAgICAgICAgIDx0ZD5UaGUgaWRlbnRpZmllciBvZiB0aGlzIFRlc3QgUmVxdWVzdCBpbiByZXNwb25zZSB0byB3aGljaCBhIDxhIGhyZWY9ImZpeC1hcGkubWQjaGVhcnRiZWF0Ij5IZWFydGJlYXQ8L2E+IG1lc3NhZ2Ugd2lsbCBiZSBzZW50LjwvdGQ+CiAgICAgICAgPC90cj4KICAgICAgICA8dHI+CiAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICA8dGQ+PGEgaHJlZj0iZml4LWFwaS5tZCNzdGFuZGFyZC10cmFpbGVyIj5TdGFuZGFyZCB0cmFpbGVyPC9hPjwvdGQ+CiAgICAgICAgICAgIDx0ZD5ZPC90ZD4KICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgIDwvdHI+CiAgICA8L3Rib2R5Pgo8L3RhYmxlPg==" />

### Resend Request [#resend-request]

This message is sent by the client or FIX server to initiate the retransmission of messages, which may be required upon detecting a gap in the sequence numbers or losing a particular message.

The **Resend Request** message includes the following fields:

<RawHtml b64="PHRhYmxlPgogICAgPHRoZWFkPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRoIHdpZHRoPSI4NCI+VGFnPC90aD4KICAgICAgICAgICAgPHRoIHdpZHRoPSIxNjciPk5hbWU8L3RoPgogICAgICAgICAgICA8dGggd2lkdGg9IjgwIj5SZXEnZDwvdGg+CiAgICAgICAgICAgIDx0aCB3aWR0aD0iMTIzIj5EYXRhdHlwZTwvdGg+CiAgICAgICAgICAgIDx0aD5EZXNjcmlwdGlvbjwvdGg+CiAgICAgICAgPC90cj4KICAgIDwvdGhlYWQ+CiAgICA8dGJvZHk+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxhIGhyZWY9ImZpeC1hcGkubWQjc3RhbmRhcmQtaGVhZGVyIj5TdGFuZGFyZCBoZWFkZXI8L2E+PC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxjb2RlPiYjeDNDOzM1PiBNc2dUeXBlID0gMjwvY29kZT48L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+NzwvdGQ+CiAgICAgICAgICAgIDx0ZD5CZWdpblNlcU5vPC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+aW50PC90ZD4KICAgICAgICAgICAgPHRkPlRoZSBudW1iZXIgb2YgdGhlIGZpcnN0IG1lc3NhZ2UgaW4gYSBzZXF1ZW5jZSB0byByZXNlbmQuPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPjE2PC90ZD4KICAgICAgICAgICAgPHRkPkVuZFNlcU5vPC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+aW50PC90ZD4KICAgICAgICAgICAgPHRkPgogICAgICAgICAgICAgICAgPHA+VGhlIG51bWJlciBvZiB0aGUgbGFzdCBtZXNzYWdlIGluIGEgc2VxdWVuY2UgdG8gcmVzZW5kOjwvcD4KICAgICAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICAgICAgICA8bGk+SWYgPGNvZGU+JiN4M0M7Nz4gQmVnaW5TZXFObzwvY29kZT4gPSA8Y29kZT4mI3gzQzsxNj4gRW5kU2VxTm88L2NvZGU+LCBhIHNpbmdsZSBtZXNzYWdlIGluIGEgc2VxdWVuY2UgaXMgcmVzZW50LjwvbGk+CiAgICAgICAgICAgICAgICAgICAgPGxpPklmIDxjb2RlPiYjeDNDOzE2PiBFbmRTZXFObzwvY29kZT4gPSA8Y29kZT4wPC9jb2RlPiwgYWxsIG1lc3NhZ2VzIGluIGEgc2VxdWVuY2UgZm9sbG93aW5nIHRoZSBvbmUgZGVmaW5lZCBpbiA8Y29kZT4mI3gzQzs3PiBCZWdpblNlcU5vPC9jb2RlPiBhcmUgcmVzZW50LjwvbGk+CiAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICA8L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxhIGhyZWY9ImZpeC1hcGkubWQjc3RhbmRhcmQtdHJhaWxlciI+U3RhbmRhcmQgdHJhaWxlcjwvYT48L3RkPgogICAgICAgICAgICA8dGQ+WTwvdGQ+CiAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICA8L3RyPgogICAgPC90Ym9keT4KPC90YWJsZT4=" />

### Reject [#reject]

This message is sent by the FIX server upon receiving a malformed message from the client. The possible reason for rejection is specified in the `<373> SessionRejectReason` field.

<Callout type="info">
  This message is unrelated to a trade-level rejection ([Order Cancel Reject](/b2connect/fix-api#order-cancel-reject)) issued when a FIX server is unable to place a requested order.
</Callout>

The **Reject** message includes the following fields:

<RawHtml b64="PHRhYmxlPgogICAgPHRoZWFkPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRoIHdpZHRoPSI4NCI+VGFnPC90aD4KICAgICAgICAgICAgPHRoIHdpZHRoPSIxNjciPk5hbWU8L3RoPgogICAgICAgICAgICA8dGggd2lkdGg9IjgwIj5SZXEnZDwvdGg+CiAgICAgICAgICAgIDx0aCB3aWR0aD0iMTIzIj5EYXRhdHlwZTwvdGg+CiAgICAgICAgICAgIDx0aD5EZXNjcmlwdGlvbjwvdGg+CiAgICAgICAgPC90cj4KICAgIDwvdGhlYWQ+CiAgICA8dGJvZHk+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxhIGhyZWY9ImZpeC1hcGkubWQjc3RhbmRhcmQtaGVhZGVyIj5TdGFuZGFyZCBoZWFkZXI8L2E+PC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxjb2RlPiYjeDNDOzM1PiBNc2dUeXBlID0gMzwvY29kZT48L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+NDU8L3RkPgogICAgICAgICAgICA8dGQ+UmVmU2VxTnVtPC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+aW50PC90ZD4KICAgICAgICAgICAgPHRkPlRoZSBzZXF1ZW5jZSBudW1iZXIgb2YgYSByZWplY3RlZCBtZXNzYWdlICg8Y29kZT4mI3gzQzszND4gTXNnU2VxTnVtPC9jb2RlPikuPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPjM3MTwvdGQ+CiAgICAgICAgICAgIDx0ZD5SZWZUYWdJRDwvdGQ+CiAgICAgICAgICAgIDx0ZD5OPC90ZD4KICAgICAgICAgICAgPHRkPmludDwvdGQ+CiAgICAgICAgICAgIDx0ZD5UaGUgdGFnIG51bWJlciBvZiBhIGZpZWxkIHRoYXQgY2F1c2VkIG1lc3NhZ2UgcmVqZWN0aW9uLjwvdGQ+CiAgICAgICAgPC90cj4KICAgICAgICA8dHI+CiAgICAgICAgICAgIDx0ZD4zNzI8L3RkPgogICAgICAgICAgICA8dGQ+UmVmTXNnVHlwZTwvdGQ+CiAgICAgICAgICAgIDx0ZD5OPC90ZD4KICAgICAgICAgICAgPHRkPmludDwvdGQ+CiAgICAgICAgICAgIDx0ZD5UaGUgdHlwZSBvZiBhIHJlamVjdGVkIG1lc3NhZ2UgKDxjb2RlPiYjeDNDOzM1PiBNc2dUeXBlPC9jb2RlPikuPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPjM3MzwvdGQ+CiAgICAgICAgICAgIDx0ZD5TZXNzaW9uUmVqZWN0UmVhc29uPC90ZD4KICAgICAgICAgICAgPHRkPk48L3RkPgogICAgICAgICAgICA8dGQ+aW50PC90ZD4KICAgICAgICAgICAgPHRkPgogICAgICAgICAgICAgICAgPHA+VGhlIHJlYXNvbiB3aHkgYSBtZXNzYWdlIGlzIHJlamVjdGVkLjwvcD4KICAgICAgICAgICAgICAgIDxwPlNlZSA8YSBocmVmPSJmaXgtYXBpLm1kI3Bvc3NpYmxlLXJlYXNvbnMiPlBvc3NpYmxlIHJlYXNvbnM8L2E+IGZvciBhIGxpc3Qgb2YgcG9zc2libGUgdmFsdWVzLjwvcD4KICAgICAgICAgICAgPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPjU4PC90ZD4KICAgICAgICAgICAgPHRkPlRleHQ8L3RkPgogICAgICAgICAgICA8dGQ+TjwvdGQ+CiAgICAgICAgICAgIDx0ZD5TdHJpbmc8L3RkPgogICAgICAgICAgICA8dGQ+VGhlIGRldGFpbGVkIGluZm9ybWF0aW9uIGFib3V0IHRoZSByZWplY3Rpb24gcmVhc29uLjwvdGQ+CiAgICAgICAgPC90cj4KICAgICAgICA8dHI+CiAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICA8dGQ+PGEgaHJlZj0iZml4LWFwaS5tZCNzdGFuZGFyZC10cmFpbGVyIj5TdGFuZGFyZCB0cmFpbGVyPC9hPjwvdGQ+CiAgICAgICAgICAgIDx0ZD5ZPC90ZD4KICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgIDwvdHI+CiAgICA8L3Rib2R5Pgo8L3RhYmxlPg==" />

#### Possible reasons [#possible-reasons]

When the FIX server sends a [Reject](/b2connect/fix-api#reject) notification informing the client that a session-level request has been rejected, the `<373> SessionRejectReason` field can be set to one of the following values specifying the reason for message rejection:

* `0` — an invalid tag number
* `1` — a required tag is missing
* `2` — a tag isn’t defined for this message type
* `3` — a tag is undefined
* `4` — a tag has no value assigned
* `5` — an assigned value is incorrect (out of range) for this tag
* `6` — an incorrect value data format
* `7` — an issue related to decryption
* `9` — an issue related to `CompID`
* `10` — an accuracy issue related to `<52> SendingTime`
* `11` — an invalid `<35> MsgType`
* `12` — an XML validation error
* `13` — the same tag appears more than once
* `14` — a tag is specified not in the required order
* `15` — a wrong order of repeating group fields
* `17` — a non-“Data” value includes a field delimiter (an SOH character)
* `99` — other (unspecified) reason

### Sequence Reset [#sequence-reset]

This message is sent by the client or FIX server to indicate to the recipient the sequence number of the next message from the sender, immediately following the Sequence Reset message. This may be necessary to recover from a disconnect, in case if some messages were lost or their resending is not desirable.

The **Sequence Reset** message includes the following fields:

<RawHtml b64="PHRhYmxlPgogICAgPHRoZWFkPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRoIHdpZHRoPSI4NCI+VGFnPC90aD4KICAgICAgICAgICAgPHRoIHdpZHRoPSIxNjciPk5hbWU8L3RoPgogICAgICAgICAgICA8dGggd2lkdGg9IjgwIj5SZXEnZDwvdGg+CiAgICAgICAgICAgIDx0aCB3aWR0aD0iMTIzIj5EYXRhdHlwZTwvdGg+CiAgICAgICAgICAgIDx0aD5EZXNjcmlwdGlvbjwvdGg+CiAgICAgICAgPC90cj4KICAgIDwvdGhlYWQ+CiAgICA8dGJvZHk+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxhIGhyZWY9ImZpeC1hcGkubWQjc3RhbmRhcmQtaGVhZGVyIj5TdGFuZGFyZCBoZWFkZXI8L2E+PC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxjb2RlPiYjeDNDOzM1PiBNc2dUeXBlID0gNDwvY29kZT48L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+MTIzPC90ZD4KICAgICAgICAgICAgPHRkPkdhcEZpbGxGbGFnPC90ZD4KICAgICAgICAgICAgPHRkPk48L3RkPgogICAgICAgICAgICA8dGQ+Qm9vbGVhbjwvdGQ+CiAgICAgICAgICAgIDx0ZD4KICAgICAgICAgICAgICAgIDxwPkluZGljYXRlcyB0aGF0IHRoaXMgbWVzc2FnZSByZXBsYWNlcyBtaXNzaW5nIG1lc3NhZ2VzIHRoYXQgd29u4oCZdCBiZSByZXNlbnQ6PC9wPgogICAgICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgICAgIDxsaT48Y29kZT5ZPC9jb2RlPiDigJQgR2FwIGZpbGwsIDxjb2RlPiYjeDNDOzM0PiBNc2dTZXFOdW08L2NvZGU+IGlzIHZhbGlkIGFuZCBpbmRpY2F0ZXMgdGhlIGJlZ2lubmluZyBvZiB0aGUgZ2FwIGZpbGwgcmFuZ2UuPC9saT4KICAgICAgICAgICAgICAgICAgICA8bGk+PGNvZGU+TjwvY29kZT4g4oCUIFNlcXVlbmNlIHJlc2V0LCA8Y29kZT4mI3gzQzszND4gTXNnU2VxTnVtPC9jb2RlPiBpcyBpZ25vcmVkLiBBcyBpdCBtYXkgbGVhZCB0byBsb3NpbmcgbWVzc2FnZXMsIHRoaXMgbW9kZSBzaG91bGQgb25seSBiZSB1c2VkIGluIGNhc2Ugb2YgYSBkaXNhc3RlciByZWNvdmVyeSBzaXR1YXRpb24uPC9saT4KICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgPC90cj4KICAgICAgICA8dHI+CiAgICAgICAgICAgIDx0ZD4zNjwvdGQ+CiAgICAgICAgICAgIDx0ZD5OZXdTZXFObzwvdGQ+CiAgICAgICAgICAgIDx0ZD5ZPC90ZD4KICAgICAgICAgICAgPHRkPmludDwvdGQ+CiAgICAgICAgICAgIDx0ZD5UaGUgbmV3IHNlcXVlbmNlIG51bWJlci48L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxhIGhyZWY9ImZpeC1hcGkubWQjc3RhbmRhcmQtdHJhaWxlciI+U3RhbmRhcmQgdHJhaWxlcjwvYT48L3RkPgogICAgICAgICAgICA8dGQ+WTwvdGQ+CiAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICA8L3RyPgogICAgPC90Ym9keT4KPC90YWJsZT4=" />

### Logon [#logon]

This message is sent by the client to initiate a FIX session.

The **Logon** message includes the following fields:

<RawHtml b64="PHRhYmxlPgogICAgPHRoZWFkPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRoIHdpZHRoPSI4NCI+VGFnPC90aD4KICAgICAgICAgICAgPHRoIHdpZHRoPSIxNjciPk5hbWU8L3RoPgogICAgICAgICAgICA8dGggd2lkdGg9IjgwIj5SZXEnZDwvdGg+CiAgICAgICAgICAgIDx0aCB3aWR0aD0iMTIzIj5EYXRhdHlwZTwvdGg+CiAgICAgICAgICAgIDx0aD5EZXNjcmlwdGlvbjwvdGg+CiAgICAgICAgPC90cj4KICAgIDwvdGhlYWQ+CiAgICA8dGJvZHk+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxhIGhyZWY9ImZpeC1hcGkubWQjc3RhbmRhcmQtaGVhZGVyIj5TdGFuZGFyZCBoZWFkZXI8L2E+PC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxjb2RlPiYjeDNDOzM1PiBNc2dUeXBlID0gQTwvY29kZT48L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+OTg8L3RkPgogICAgICAgICAgICA8dGQ+RW5jcnlwdE1ldGhvZDwvdGQ+CiAgICAgICAgICAgIDx0ZD5ZPC90ZD4KICAgICAgICAgICAgPHRkPmludDwvdGQ+CiAgICAgICAgICAgIDx0ZD4KICAgICAgICAgICAgICAgIDxwPlRoZSBtZXNzYWdlIGVuY3J5cHRpb24gbWV0aG9kLjwvcD4KICAgICAgICAgICAgICAgIDxwPjwvcD4KICAgICAgICAgICAgICAgIDxwPlRoaXMgdmFsdWUgbXVzdCBhbHdheXMgYmUgPGNvZGU+MDwvY29kZT4sIGluZGljYXRpbmcgdGhhdCBubyBlbmNyeXB0aW9uIG1ldGhvZCBpcyB1c2VkLjwvcD4KICAgICAgICAgICAgPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPjEwODwvdGQ+CiAgICAgICAgICAgIDx0ZD5IZWFydEJ0SW50PC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+aW50PC90ZD4KICAgICAgICAgICAgPHRkPgogICAgICAgICAgICAgICAgPHA+VGhlIGhlYXJ0YmVhdCBpbnRlcnZhbCwgaW4gc2Vjb25kcy4gSW5kaWNhdGVzIGhvdyBvZnRlbiB0aGUgRklYIHNlcnZlciBzZW5kcyBtZXNzYWdlcyB0byB0aGUgY2xpZW50IGFzIHBhcnQgb2YgYSBjb25uZWN0aW9uIGhlYWx0aCBjaGVjay4gPC9wPgogICAgICAgICAgICAgICAgPHA+PC9wPgogICAgICAgICAgICAgICAgPHA+VGhlIG1heGltdW0gdmFsdWUgaXMgPGNvZGU+NjA8L2NvZGU+LjwvcD4KICAgICAgICAgICAgPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPjE0MTwvdGQ+CiAgICAgICAgICAgIDx0ZD5SZXNldFNlcU51bUZsYWc8L3RkPgogICAgICAgICAgICA8dGQ+WTwvdGQ+CiAgICAgICAgICAgIDx0ZD5Cb29sZWFuPC90ZD4KICAgICAgICAgICAgPHRkPgogICAgICAgICAgICAgICAgPHA+SW5kaWNhdGVzIHdoZXRoZXIgYm90aCBwYXJ0aWVzIG9mIGEgRklYIHNlc3Npb24gc2hvdWxkIHJlc2V0IHRoZSBjdXJyZW50bHkgdXNlZCBzZXF1ZW5jZSBudW1iZXJzLiA8L3A+CiAgICAgICAgICAgICAgICA8cD48L3A+CiAgICAgICAgICAgICAgICA8cD5JdOKAmXMgcmVjb21tZW5kZWQgdG8gc2V0IHRoZSBmbGFnIHRvIDxjb2RlPlk8L2NvZGU+IGZvciA8YSBocmVmPSJmaXgtYXBpLm1kI3F1b3RpbmciPlF1b3Rpbmc8L2E+IHNlc3Npb25zLjwvcD4KICAgICAgICAgICAgPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPjU1MzwvdGQ+CiAgICAgICAgICAgIDx0ZD5Vc2VybmFtZTwvdGQ+CiAgICAgICAgICAgIDx0ZD5OPC90ZD4KICAgICAgICAgICAgPHRkPlN0cmluZzwvdGQ+CiAgICAgICAgICAgIDx0ZD4KICAgICAgICAgICAgICAgIDxwPlRoZSBjbGllbnQgdXNlcm5hbWUuPC9wPgogICAgICAgICAgICAgICAgPHA+PC9wPgogICAgICAgICAgICAgICAgPHA+SXQgc2hvdWxkIGJlIHNwZWNpZmllZCBpZiBwcm92aWRlZCBhcyBwYXJ0IG9mIHRoZSBGSVggY3JlZGVudGlhbHMuPC9wPgogICAgICAgICAgICA8L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+NTU0PC90ZD4KICAgICAgICAgICAgPHRkPlBhc3N3b3JkPC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+U3RyaW5nPC90ZD4KICAgICAgICAgICAgPHRkPlRoZSBjbGllbnQgcGFzc3dvcmQsIGFzIHByb3ZpZGVkIGJ5IEIyQ09OTkVDVC48L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxhIGhyZWY9ImZpeC1hcGkubWQjc3RhbmRhcmQtdHJhaWxlciI+U3RhbmRhcmQgdHJhaWxlcjwvYT48L3RkPgogICAgICAgICAgICA8dGQ+WTwvdGQ+CiAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICA8L3RyPgogICAgPC90Ym9keT4KPC90YWJsZT4=" />

### Logout [#logout]

This message is sent by the client or FIX server to terminate a session. When terminated, the possible reason is specified in the `<58> Text` field.

The **Logout** message includes the following fields:

<RawHtml b64="PHRhYmxlPgogICAgPHRoZWFkPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRoIHdpZHRoPSI4NCI+VGFnPC90aD4KICAgICAgICAgICAgPHRoIHdpZHRoPSIxNjciPk5hbWU8L3RoPgogICAgICAgICAgICA8dGggd2lkdGg9IjgwIj5SZXEnZDwvdGg+CiAgICAgICAgICAgIDx0aCB3aWR0aD0iMTIzIj5EYXRhdHlwZTwvdGg+CiAgICAgICAgICAgIDx0aD5EZXNjcmlwdGlvbjwvdGg+CiAgICAgICAgPC90cj4KICAgIDwvdGhlYWQ+CiAgICA8dGJvZHk+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxhIGhyZWY9ImZpeC1hcGkubWQjc3RhbmRhcmQtaGVhZGVyIj5TdGFuZGFyZCBoZWFkZXI8L2E+PC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxjb2RlPiYjeDNDOzM1PiBNc2dUeXBlID0gNTwvY29kZT48L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+NTg8L3RkPgogICAgICAgICAgICA8dGQ+VGV4dDwvdGQ+CiAgICAgICAgICAgIDx0ZD5OPC90ZD4KICAgICAgICAgICAgPHRkPlN0cmluZzwvdGQ+CiAgICAgICAgICAgIDx0ZD5UaGUgZGV0YWlsZWQgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHJlYXNvbiBmb3IgbG9nZ2luZyBvdXQuPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgIDx0ZD48YSBocmVmPSJmaXgtYXBpLm1kI3N0YW5kYXJkLXRyYWlsZXIiPlN0YW5kYXJkIHRyYWlsZXI8L2E+PC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgPC90cj4KICAgIDwvdGJvZHk+CjwvdGFibGU+" />

## Demo mode [#demo-mode]

The B2CONNECT FIX server supports a Demo mode that allows clients to establish a test connection and simulate quoting and trading sessions.

Contact your account manager to obtain a set of settings and credentials.

## Quoting [#quoting]

After connecting to the FIX server and establishing a live quoting session, the client can send a [Market Data Request](/b2connect/fix-api#market-data-request) to subscribe to quote updates streamed by B2CONNECT.

<Callout type="info">
  To subscribe to multiple symbols, the client should send a separate [Market Data Request](/b2connect/fix-api#market-data-request) for each symbol.
</Callout>

Upon successful subscription to a selected symbol, the FIX server starts streaming market data updates by sending [Market Data — Snapshot/Full Refresh](/b2connect/fix-api#market-data-snapshot-full-refresh) messages each time the market data is updated. The quote updates are streamed continuously for the entire duration of a FIX session.

If a subscription request can’t be executed for some reason (for example, when a requested symbol isn’t found), the FIX server responds with a [Market Data Request Reject](/b2connect/fix-api#market-data-request-reject) message providing detailed information about an error.

To terminate a specific subscription and stop receiving the updates, the client can send a [Market Data Request](/b2connect/fix-api#market-data-request) with the `<263> SubscriptionRequestType` set to `2` (standing for “Unsubscribe”). Upon sending a [Logout](/b2connect/fix-api#logout) request, the current session is closed and subscriptions to all ticker symbols are terminated.

### Market Data Request [#market-data-request]

This message is sent by the client to start receiving up-to-date quoting data for a specified ticker symbol.

The **Market Data Request** message includes the following fields:

<RawHtml b64="PHRhYmxlPgogICAgPHRoZWFkPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRoIHdpZHRoPSI5NSI+VGFnPC90aD4KICAgICAgICAgICAgPHRoIHdpZHRoPSIxNjciPk5hbWU8L3RoPgogICAgICAgICAgICA8dGggd2lkdGg9IjgwIj5SZXEnZDwvdGg+CiAgICAgICAgICAgIDx0aCB3aWR0aD0iMTIzIj5EYXRhdHlwZTwvdGg+CiAgICAgICAgICAgIDx0aD5EZXNjcmlwdGlvbjwvdGg+CiAgICAgICAgPC90cj4KICAgIDwvdGhlYWQ+CiAgICA8dGJvZHk+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxhIGhyZWY9ImZpeC1hcGkubWQjc3RhbmRhcmQtaGVhZGVyIj5TdGFuZGFyZCBoZWFkZXI8L2E+PC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxjb2RlPiYjeDNDOzM1PiBNc2dUeXBlID0gVjwvY29kZT48L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+MjYyPC90ZD4KICAgICAgICAgICAgPHRkPk1EUmVxSUQ8L3RkPgogICAgICAgICAgICA8dGQ+WTwvdGQ+CiAgICAgICAgICAgIDx0ZD5TdHJpbmc8L3RkPgogICAgICAgICAgICA8dGQ+CiAgICAgICAgICAgICAgICA8cD5UaGUgaWRlbnRpZmllciBvZiBhIE1hcmtldCBEYXRhIFJlcXVlc3QuPC9wPgogICAgICAgICAgICAgICAgPHA+PC9wPgogICAgICAgICAgICAgICAgPHA+VGhpcyB2YWx1ZSBtdXN0IGJlIHVuaXF1ZSBmb3IgdGhlIGR1cmF0aW9uIG9mIGVhY2ggc2Vzc2lvbi48L3A+CiAgICAgICAgICAgICAgICA8cD48L3A+CiAgICAgICAgICAgICAgICA8cD5JZiA8Y29kZT4mI3gzQzsyNjM+IFN1YnNjcmlwdGlvblJlcXVlc3RUeXBlPC9jb2RlPiBpcyBzZXQgdG8gPGNvZGU+MjwvY29kZT4sIHRoZSA8Y29kZT4mI3gzQzsyNjI+IE1EUmVxSUQ8L2NvZGU+IGZpZWxkIGluZGljYXRlcyB0aGUgSUQgb2YgYSBwcmV2aW91cyBNYXJrZXQgRGF0YSBSZXF1ZXN0IHRvIGJlIGRpc2NhcmRlZC48L3A+CiAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgPC90cj4KICAgICAgICA8dHI+CiAgICAgICAgICAgIDx0ZD4yNjM8L3RkPgogICAgICAgICAgICA8dGQ+U3Vic2NyaXB0aW9uUmVxdWVzdFR5cGU8L3RkPgogICAgICAgICAgICA8dGQ+WTwvdGQ+CiAgICAgICAgICAgIDx0ZD5pbnQ8L3RkPgogICAgICAgICAgICA8dGQ+CiAgICAgICAgICAgICAgICA8cD5UaGUgdHlwZSBvZiByZXNwb25zZSBleHBlY3RlZCBmcm9tIHRoZSBGSVggc2VydmVyOjwvcD4KICAgICAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICAgICAgICA8bGk+PGNvZGU+MTwvY29kZT4g4oCUIFN1YnNjcmliZSAodG8gcmVjZWl2ZSB1cGRhdGVzIGFzIHRoZSBtYXJrZXQgc3RhdHVzIGNoYW5nZXMpLjwvbGk+CiAgICAgICAgICAgICAgICAgICAgPGxpPjxjb2RlPjI8L2NvZGU+IOKAlCBVbnN1YnNjcmliZSAodG8gc3RvcCBzdHJlYW1pbmcgdGhlIG1hcmtldCBkYXRhIGZvciB0aGUgc3BlY2lmaWVkIHRpY2tlciBzeW1ib2wpLjwvbGk+CiAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICA8L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+MjY0PC90ZD4KICAgICAgICAgICAgPHRkPk1hcmtldERlcHRoPC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+aW50PC90ZD4KICAgICAgICAgICAgPHRkPgogICAgICAgICAgICAgICAgPHA+VGhlIG1hcmtldCBkZXB0aCBmb3IgYW4gb3JkZXIgYm9vayBzbmFwc2hvdDo8L3A+CiAgICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICAgICAgPGxpPjxjb2RlPjA8L2NvZGU+IOKAlCBUbyBvYnRhaW4gYSBmdWxsIG9yZGVyIGJvb2suPC9saT4KICAgICAgICAgICAgICAgICAgICA8bGk+PGNvZGU+MTwvY29kZT4g4oCUIFRvIG9idGFpbiB0b3Atb2YtdGhlLWJvb2sgcHJpY2VzLjwvbGk+CiAgICAgICAgICAgICAgICAgICAgPGxpPm90aGVyIHZhbHVlIGdyZWF0ZXIgdGhhbiB6ZXJvIOKAlCBUbyBvYnRhaW4gYSBzcGVjaWZpYyBudW1iZXIgb2YgcHJpY2UgbGF5ZXJzLjwvbGk+CiAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICA8L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+MjY1PC90ZD4KICAgICAgICAgICAgPHRkPk1EVXBkYXRlVHlwZTwvdGQ+CiAgICAgICAgICAgIDx0ZD5ZPC90ZD4KICAgICAgICAgICAgPHRkPmludDwvdGQ+CiAgICAgICAgICAgIDx0ZD5UaGlzIHZhbHVlIG11c3QgYWx3YXlzIGJlIDxjb2RlPjA8L2NvZGU+LCBpbmRpY2F0aW5nIHRoYXQgYWxsIG9yZGVyIGJvb2sgZGF0YSBzaG91bGQgYmUgdXBkYXRlZCBldmVyeSB0aW1lIGluIHJlc3BvbnNlIHRvIGFueSBjaGFuZ2UgaW4gdGhlIG1hcmtldCBkYXRhIChhcyBvcHBvc2VkIHRvIGluY3JlbWVudGFsIHVwZGF0ZXMgcmVsYXRlZCBvbmx5IHRvIHByaWNlIGxldmVscyB0aGF0IGhhdmUgY2hhbmdlZCBhdCB0aGUKICAgICAgICAgICAgICAgIHRpbWUpLjwvdGQ+CiAgICAgICAgPC90cj4KICAgICAgICA8dHI+CiAgICAgICAgICAgIDx0ZD4yNjc8L3RkPgogICAgICAgICAgICA8dGQ+Tm9NREVudHJ5VHlwZXM8L3RkPgogICAgICAgICAgICA8dGQ+WTwvdGQ+CiAgICAgICAgICAgIDx0ZD5pbnQ8L3RkPgogICAgICAgICAgICA8dGQ+CiAgICAgICAgICAgICAgICA8cD5UaGUgbnVtYmVyIG9mIDxjb2RlPiYjeDNDOzI2OT4gTURFbnRyeVR5cGVzPC9jb2RlPiByZXF1ZXN0ZWQuPC9wPgogICAgICAgICAgICAgICAgPHA+PC9wPgogICAgICAgICAgICAgICAgPHA+VGhpcyB2YWx1ZSBtdXN0IGFsd2F5cyBiZSA8Y29kZT4yPC9jb2RlPi48L3A+CiAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgPC90cj4KICAgICAgICA8dHI+CiAgICAgICAgICAgIDx0ZD4tPiAyNjk8L3RkPgogICAgICAgICAgICA8dGQ+TURFbnRyeVR5cGU8L3RkPgogICAgICAgICAgICA8dGQ+WTwvdGQ+CiAgICAgICAgICAgIDx0ZD5pbnQ8L3RkPgogICAgICAgICAgICA8dGQ+CiAgICAgICAgICAgICAgICA8cD5UaGUgc2lkZSBvZiBhIHF1b3RlOjwvcD4KICAgICAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICAgICAgICA8bGk+PGNvZGU+MDwvY29kZT4g4oCUIEJpZDwvbGk+CiAgICAgICAgICAgICAgICAgICAgPGxpPjxjb2RlPjE8L2NvZGU+IOKAlCBBc2s8L2xpPgogICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPjE0NjwvdGQ+CiAgICAgICAgICAgIDx0ZD5Ob1JlbGF0ZWRTeW08L3RkPgogICAgICAgICAgICA8dGQ+WTwvdGQ+CiAgICAgICAgICAgIDx0ZD5pbnQ8L3RkPgogICAgICAgICAgICA8dGQ+CiAgICAgICAgICAgICAgICA8cD5UaGUgbnVtYmVyIG9mIHRpY2tlciBzeW1ib2xzIGluY2x1ZGVkIGluIGEgc3Vic2NyaXB0aW9uLjwvcD4KICAgICAgICAgICAgICAgIDxwPjwvcD4KICAgICAgICAgICAgICAgIDxwPlRoaXMgdmFsdWUgbXVzdCBhbHdheXMgYmUgPGNvZGU+MTwvY29kZT4uIFRvIHN1YnNjcmliZSB0byBtdWx0aXBsZSBzeW1ib2xzLCB0aGUgY2xpZW50IHNob3VsZCBzZW5kIGEgc2VwYXJhdGUgTWFya2V0IERhdGEgUmVxdWVzdCBmb3IgZWFjaCBzeW1ib2wuPC9wPgogICAgICAgICAgICA8L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+LT4gNTU8L3RkPgogICAgICAgICAgICA8dGQ+SW5zdHJ1bWVudDwvdGQ+CiAgICAgICAgICAgIDx0ZD5ZPC90ZD4KICAgICAgICAgICAgPHRkPlN0cmluZzwvdGQ+CiAgICAgICAgICAgIDx0ZD5UaGUgdGlja2VyIHN5bWJvbCB0byBzdWJzY3JpYmUgdG8gKHN1Y2ggYXMgPGNvZGU+QlRDL1VTRFQ8L2NvZGU+KS48L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxhIGhyZWY9ImZpeC1hcGkubWQjc3RhbmRhcmQtdHJhaWxlciI+U3RhbmRhcmQgdHJhaWxlcjwvYT48L3RkPgogICAgICAgICAgICA8dGQ+WTwvdGQ+CiAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICA8L3RyPgogICAgPC90Ym9keT4KPC90YWJsZT4=" />

### Market Data Request Reject [#market-data-request-reject]

This message is sent by the FIX server to reject a [Market Data Request](/b2connect/fix-api#market-data-request) with invalid values.

The **Market Data Request Reject** message includes the following fields:

<RawHtml b64="PHRhYmxlPgogICAgPHRoZWFkPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRoIHdpZHRoPSI4NCI+VGFnPC90aD4KICAgICAgICAgICAgPHRoIHdpZHRoPSIxNjciPk5hbWU8L3RoPgogICAgICAgICAgICA8dGggd2lkdGg9IjgwIj5SZXEnZDwvdGg+CiAgICAgICAgICAgIDx0aCB3aWR0aD0iMTIzIj5EYXRhdHlwZTwvdGg+CiAgICAgICAgICAgIDx0aD5EZXNjcmlwdGlvbjwvdGg+CiAgICAgICAgPC90cj4KICAgIDwvdGhlYWQ+CiAgICA8dGJvZHk+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxhIGhyZWY9ImZpeC1hcGkubWQjc3RhbmRhcmQtaGVhZGVyIj5TdGFuZGFyZCBoZWFkZXI8L2E+PC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxjb2RlPiYjeDNDOzM1PiBNc2dUeXBlID0gWTwvY29kZT48L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+MjYyPC90ZD4KICAgICAgICAgICAgPHRkPk1EUmVxSUQ8L3RkPgogICAgICAgICAgICA8dGQ+WTwvdGQ+CiAgICAgICAgICAgIDx0ZD5TdHJpbmc8L3RkPgogICAgICAgICAgICA8dGQ+VGhlIGlkZW50aWZpZXIgb2YgYSByZWplY3RlZCA8YSBocmVmPSJmaXgtYXBpLm1kI21hcmtldC1kYXRhLXJlcXVlc3QiPk1hcmtldCBEYXRhIFJlcXVlc3Q8L2E+LjwvdGQ+CiAgICAgICAgPC90cj4KICAgICAgICA8dHI+CiAgICAgICAgICAgIDx0ZD4yODE8L3RkPgogICAgICAgICAgICA8dGQ+TURSZXFSZWpSZWFzb248L3RkPgogICAgICAgICAgICA8dGQ+TjwvdGQ+CiAgICAgICAgICAgIDx0ZD5pbnQ8L3RkPgogICAgICAgICAgICA8dGQ+CiAgICAgICAgICAgICAgICA8cD5UaGUgcmVhc29uIHdoeSBhIHJlcXVlc3QgaXMgcmVqZWN0ZWQuPC9wPgogICAgICAgICAgICAgICAgPHA+U2VlIDxhIGhyZWY9ImZpeC1hcGkubWQjcG9zc2libGUtcmVhc29ucy0xIj5Qb3NzaWJsZSByZWFzb25zPC9hPiBmb3IgYSBsaXN0IG9mIHN1cHBvcnRlZCB2YWx1ZXMuPC9wPgogICAgICAgICAgICA8L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+NTg8L3RkPgogICAgICAgICAgICA8dGQ+VGV4dDwvdGQ+CiAgICAgICAgICAgIDx0ZD5OPC90ZD4KICAgICAgICAgICAgPHRkPlN0cmluZzwvdGQ+CiAgICAgICAgICAgIDx0ZD5UaGUgZGV0YWlsZWQgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHJlamVjdGlvbiByZWFzb24uPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgIDx0ZD48YSBocmVmPSJmaXgtYXBpLm1kI3N0YW5kYXJkLXRyYWlsZXIiPlN0YW5kYXJkIHRyYWlsZXI8L2E+PC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgPC90cj4KICAgIDwvdGJvZHk+CjwvdGFibGU+" />

#### Possible reasons [#possible-reasons-1]

The `<281> MDReqRejReason` field can be set to one of the following values specifying the reason for request rejection:

* `0` — the specified symbol isn’t recognized
* `1` — a duplicate `<262> MDReqID`
* `2` — insufficient bandwidth
* `3` — insufficient permissions
* `4` — the specified `<263> SubscriptionRequestType` isn’t supported
* `5` — the specified `<264> MarketDepth` isn’t supported
* `6` — the specified `<265> MDUpdateType` isn’t supported
* `8` — the specified `<269> MDEntryType` isn’t supported

### Market Data — Snapshot/Full Refresh [#market-data--snapshotfull-refresh]

Such messages are continuously sent by the FIX server after the client subscribes to a ticker symbol. A new message is sent with each market data update.

The **Market Data — Snapshot/Full Refresh** message includes the following fields:

<RawHtml b64="PHRhYmxlPgogICAgPHRoZWFkPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRoIHdpZHRoPSI5NSI+VGFnPC90aD4KICAgICAgICAgICAgPHRoIHdpZHRoPSIxNjciPk5hbWU8L3RoPgogICAgICAgICAgICA8dGggd2lkdGg9IjgwIj5SZXEnZDwvdGg+CiAgICAgICAgICAgIDx0aCB3aWR0aD0iMTIzIj5EYXRhdHlwZTwvdGg+CiAgICAgICAgICAgIDx0aD5EZXNjcmlwdGlvbjwvdGg+CiAgICAgICAgPC90cj4KICAgIDwvdGhlYWQ+CiAgICA8dGJvZHk+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxhIGhyZWY9ImZpeC1hcGkubWQjc3RhbmRhcmQtaGVhZGVyIj5TdGFuZGFyZCBoZWFkZXI8L2E+PC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxjb2RlPiYjeDNDOzM1PiBNc2dUeXBlID0gVzwvY29kZT48L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+MjYyPC90ZD4KICAgICAgICAgICAgPHRkPk1EUmVxSUQ8L3RkPgogICAgICAgICAgICA8dGQ+WTwvdGQ+CiAgICAgICAgICAgIDx0ZD5TdHJpbmc8L3RkPgogICAgICAgICAgICA8dGQ+VGhlIGlkZW50aWZpZXIgb2YgYW4gb3JpZ2luYXRpbmcgPGEgaHJlZj0iZml4LWFwaS5tZCNtYXJrZXQtZGF0YS1yZXF1ZXN0Ij5NYXJrZXQgRGF0YSBSZXF1ZXN0PC9hPi48L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+NTU8L3RkPgogICAgICAgICAgICA8dGQ+SW5zdHJ1bWVudDwvdGQ+CiAgICAgICAgICAgIDx0ZD5ZPC90ZD4KICAgICAgICAgICAgPHRkPlN0cmluZzwvdGQ+CiAgICAgICAgICAgIDx0ZD5UaGUgdGlja2VyIHN5bWJvbCB0aGF04oCZcyBiZWluZyBxdW90ZWQgKHN1Y2ggYXMgPGNvZGU+QlRDL1VTRFQ8L2NvZGU+KS48L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+MjY4PC90ZD4KICAgICAgICAgICAgPHRkPk5vTURFbnRyaWVzPC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+aW50PC90ZD4KICAgICAgICAgICAgPHRkPlRoZSBudW1iZXIgb2YgbWFya2V0IGRhdGEgZW50cmllcyAoYmlkcyBvciBhc2tzKSBsaXN0ZWQgaW4gYSByZXF1ZXN0LjwvdGQ+CiAgICAgICAgPC90cj4KICAgICAgICA8dHI+CiAgICAgICAgICAgIDx0ZD4tPiAyNjk8L3RkPgogICAgICAgICAgICA8dGQ+TURFbnRyeVR5cGU8L3RkPgogICAgICAgICAgICA8dGQ+WTwvdGQ+CiAgICAgICAgICAgIDx0ZD5pbnQ8L3RkPgogICAgICAgICAgICA8dGQ+CiAgICAgICAgICAgICAgICA8cD5UaGUgc2lkZSBvZiBhIHF1b3RlOjwvcD4KICAgICAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICAgICAgICA8bGk+PGNvZGU+MDwvY29kZT4g4oCUIEJpZDwvbGk+CiAgICAgICAgICAgICAgICAgICAgPGxpPjxjb2RlPjE8L2NvZGU+IOKAlCBBc2s8L2xpPgogICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPi0+IDI3MDwvdGQ+CiAgICAgICAgICAgIDx0ZD5NREVudHJ5UHg8L3RkPgogICAgICAgICAgICA8dGQ+WTwvdGQ+CiAgICAgICAgICAgIDx0ZD5QcmljZTwvdGQ+CiAgICAgICAgICAgIDx0ZD5UaGUgcHJpY2UgZm9yIGEgbWFya2V0IGRhdGEgZW50cnkuPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPi0+IDI3MTwvdGQ+CiAgICAgICAgICAgIDx0ZD5NREVudHJ5U2l6ZTwvdGQ+CiAgICAgICAgICAgIDx0ZD5ZPC90ZD4KICAgICAgICAgICAgPHRkPlF0eTwvdGQ+CiAgICAgICAgICAgIDx0ZD5UaGUgdHJhZGFibGUgdm9sdW1lIG9mIGEgbWFya2V0IGRhdGEgZW50cnkuPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPi0+IDI5OTwvdGQ+CiAgICAgICAgICAgIDx0ZD5RdW90ZUVudHJ5SUQ8L3RkPgogICAgICAgICAgICA8dGQ+TjwvdGQ+CiAgICAgICAgICAgIDx0ZD5TdHJpbmc8L3RkPgogICAgICAgICAgICA8dGQ+VGhlIHVuaXF1ZSBpZGVudGlmaWVyIG9mIGEgcXVvdGUuPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgIDx0ZD48YSBocmVmPSJmaXgtYXBpLm1kI3N0YW5kYXJkLXRyYWlsZXIiPlN0YW5kYXJkIHRyYWlsZXI8L2E+PC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgPC90cj4KICAgIDwvdGJvZHk+CjwvdGFibGU+" />

## Trading [#trading]

**Place an order**

After establishing a trading session with the FIX server, the client can place a new order by sending a [New Order Single](/b2connect/fix-api#new-order-single) message.

In response to this, the FIX server sends back an [Execution Report](https://docs.b2connect.b2broker.com/en/fix-api.html#execution-report) with the `<150> ExecType` field set to `A`, indicating that the order is placed successfully. If the order can’t be placed (for example, due to lack of credit funds or other issues), the report is sent with `<150> ExecType` set to `8`.

After placing the order, the FIX server sends a separate report with `<150> ExecType` set to `F` each the order status changes:

* If the order is executed partially, `<39> OrdStatus` is set to `1`.
* When the order is fully filled, `<39> OrdStatus` is set to `2`.

**Cancel an order**

To cancel an open order, the client can send an [Order Cancel Request](/b2connect/fix-api#order-cancel-request).

If the order is canceled (either explicitly by a trader, or automatically due to timeout), the [Execution Report](/b2connect/fix-api#execution-report) is sent with `<150> ExecType` set to `4`. In this case, the `<14> CumQty` field indicates the amount that has already been filled by the time the order was canceled, and `<151> LeavesQty` indicates the unfilled amount.

If an order can’t be canceled for any reason, the FIX server sends back an [Order Cancel Reject](/b2connect/fix-api#order-cancel-reject) message indicating why the order cancellation failed.

### New Order Single [#new-order-single]

This message is sent by the client to place a new order with specified parameters.

The **New Order Single** message includes the following fields:

<RawHtml b64="PHRhYmxlPgogICAgPHRoZWFkPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRoIHdpZHRoPSI5NSI+VGFnPC90aD4KICAgICAgICAgICAgPHRoIHdpZHRoPSIxNjciPk5hbWU8L3RoPgogICAgICAgICAgICA8dGggd2lkdGg9IjgwIj5SZXEnZDwvdGg+CiAgICAgICAgICAgIDx0aCB3aWR0aD0iMTIzIj5EYXRhdHlwZTwvdGg+CiAgICAgICAgICAgIDx0aD5EZXNjcmlwdGlvbjwvdGg+CiAgICAgICAgPC90cj4KICAgIDwvdGhlYWQ+CiAgICA8dGJvZHk+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxhIGhyZWY9ImZpeC1hcGkubWQjc3RhbmRhcmQtaGVhZGVyIj5TdGFuZGFyZCBoZWFkZXI8L2E+PC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxjb2RlPiYjeDNDOzM1PiBNc2dUeXBlID0gRDwvY29kZT48L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+MTwvdGQ+CiAgICAgICAgICAgIDx0ZD5BY2NvdW50PC90ZD4KICAgICAgICAgICAgPHRkPk48L3RkPgogICAgICAgICAgICA8dGQ+U3RyaW5nPC90ZD4KICAgICAgICAgICAgPHRkPlRoZSBjbGllbnQtZGVmaW5lZCBhY2NvdW50IG5hbWUuPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPjExPC90ZD4KICAgICAgICAgICAgPHRkPkNsT3JkSUQ8L3RkPgogICAgICAgICAgICA8dGQ+WTwvdGQ+CiAgICAgICAgICAgIDx0ZD5TdHJpbmc8L3RkPgogICAgICAgICAgICA8dGQ+CiAgICAgICAgICAgICAgICA8cD5UaGUgY2xpZW50LXByb3ZpZGVkIGlkZW50aWZpZXIgb2YgYW4gb3JkZXIuPC9wPgogICAgICAgICAgICAgICAgPHA+PC9wPgogICAgICAgICAgICAgICAgPHA+VGhpcyB2YWx1ZSBtdXN0IGJlIHVuaXF1ZSBhY3Jvc3MgYWxsIHByZXZpb3VzIHRyYWRpbmcgc2Vzc2lvbnMuPC9wPgogICAgICAgICAgICA8L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+NTU8L3RkPgogICAgICAgICAgICA8dGQ+SW5zdHJ1bWVudDwvdGQ+CiAgICAgICAgICAgIDx0ZD5ZPC90ZD4KICAgICAgICAgICAgPHRkPlN0cmluZzwvdGQ+CiAgICAgICAgICAgIDx0ZD5UaGUgdGlja2VyIHN5bWJvbCB0aGF04oCZcyBiZWluZyAoc3VjaCBhcyA8Y29kZT5CVEMvVVNEVDwvY29kZT4pLjwvdGQ+CiAgICAgICAgPC90cj4KICAgICAgICA8dHI+CiAgICAgICAgICAgIDx0ZD41NDwvdGQ+CiAgICAgICAgICAgIDx0ZD5TaWRlPC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+aW50PC90ZD4KICAgICAgICAgICAgPHRkPgogICAgICAgICAgICAgICAgPHA+VGhlIG9yZGVyIHNpZGU6PC9wPgogICAgICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgICAgIDxsaT48Y29kZT4xPC9jb2RlPiDigJQgQnV5PC9saT4KICAgICAgICAgICAgICAgICAgICA8bGk+PGNvZGU+MjwvY29kZT4g4oCUIFNlbGw8L2xpPgogICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPjM4PC90ZD4KICAgICAgICAgICAgPHRkPk9yZGVyUXR5PC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+UXR5PC90ZD4KICAgICAgICAgICAgPHRkPlRoZSBvcmRlciBhbW91bnQuPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPjQwPC90ZD4KICAgICAgICAgICAgPHRkPk9yZFR5cGU8L3RkPgogICAgICAgICAgICA8dGQ+WTwvdGQ+CiAgICAgICAgICAgIDx0ZD5DaGFyPC90ZD4KICAgICAgICAgICAgPHRkPgogICAgICAgICAgICAgICAgPHA+VGhlIG9yZGVyIHR5cGU6PC9wPgogICAgICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgICAgIDxsaT48Y29kZT4xPC9jb2RlPiDigJQgTWFya2V0PC9saT4KICAgICAgICAgICAgICAgICAgICA8bGk+PGNvZGU+MjwvY29kZT4g4oCUIExpbWl0ICh3aGVuIGNob29zaW5nIHRoaXMgb3B0aW9uLCB0aGUgPGNvZGU+JiN4M0M7NDQ+IFByaWNlPC9jb2RlPiBmaWVsZCBtdXN0IGJlIHNwZWNpZmllZCk8L2xpPgogICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPjQ0PC90ZD4KICAgICAgICAgICAgPHRkPlByaWNlPC90ZD4KICAgICAgICAgICAgPHRkPkM8L3RkPgogICAgICAgICAgICA8dGQ+UHJpY2U8L3RkPgogICAgICAgICAgICA8dGQ+CiAgICAgICAgICAgICAgICA8cD5UaGUgb3JkZXIgcHJpY2UuPC9wPgogICAgICAgICAgICAgICAgPHA+PC9wPgogICAgICAgICAgICAgICAgPHA+VGhpcyBmaWVsZCBpcyByZXF1aXJlZCBmb3IgTGltaXQgb3JkZXJzLjwvcD4KICAgICAgICAgICAgPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPjU4PC90ZD4KICAgICAgICAgICAgPHRkPlRleHQ8L3RkPgogICAgICAgICAgICA8dGQ+TjwvdGQ+CiAgICAgICAgICAgIDx0ZD5TdHJpbmc8L3RkPgogICAgICAgICAgICA8dGQ+QWRkaXRpb25hbCBjb21tZW50cyBhYm91dCB0aGUgb3JkZXIuPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPjU5PC90ZD4KICAgICAgICAgICAgPHRkPlRpbWVJbkZvcmNlPC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+Q2hhcjwvdGQ+CiAgICAgICAgICAgIDx0ZD4KICAgICAgICAgICAgICAgIDxwPlRoZSB0aW1lLWluLWZvcmNlIG9wdGlvbiBhcHBsaWVkIHRvIGFuIG9yZGVyOjwvcD4KICAgICAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICAgICAgICA8bGk+PGNvZGU+MTwvY29kZT4g4oCUIEdUQyAoR29vZCB0aWxsIENhbmNlbGVkKTwvbGk+CiAgICAgICAgICAgICAgICAgICAgPGxpPjxjb2RlPjM8L2NvZGU+IOKAlCBJT0MgKEltbWVkaWF0ZSBvciBDYW5jZWwpPC9saT4KICAgICAgICAgICAgICAgICAgICA8bGk+PGNvZGU+NDwvY29kZT4g4oCUIEZPSyAoRmlsbCBvciBLaWxsKTwvbGk+CiAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICA8L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+NjA8L3RkPgogICAgICAgICAgICA8dGQ+VHJhbnNhY3RUaW1lPC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+VGltZXN0YW1wPC90ZD4KICAgICAgICAgICAgPHRkPlRoZSBkYXRlIGFuZCB0aW1lIHdoZW4gYW4gb3JkZXIgd2FzIGNyZWF0ZWQsIGluIFVUQyB0aW1lIHdpdGggbWlsbGlzZWNvbmRzIHByZWNpc2lvbjogPGNvZGU+WVlZWU1NREQtSEg6TU06U1Muc3NzPC9jb2RlPi48L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+MjE8L3RkPgogICAgICAgICAgICA8dGQ+SGFuZGxJbnN0PC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+aW50PC90ZD4KICAgICAgICAgICAgPHRkPlRoaXMgZmllbGQgaXMgaWdub3JlZC4gRXhlY3V0aW9uIGlzIGFsd2F5cyB0cmVhdGVkIGFzIGlmIHRoZSBzdXBwbGllZCB2YWx1ZSB3YXMgPGNvZGU+MTwvY29kZT4gKEF1dG9tYXRlZCBleGVjdXRpb24gb3JkZXIsIHByaXZhdGUsIG5vIEJyb2tlciBpbnRlcnZlbnRpb24pLjwvdGQ+CiAgICAgICAgPC90cj4KICAgICAgICA8dHI+CiAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICA8dGQ+PGEgaHJlZj0iZml4LWFwaS5tZCNzdGFuZGFyZC10cmFpbGVyIj5TdGFuZGFyZCB0cmFpbGVyPC9hPjwvdGQ+CiAgICAgICAgICAgIDx0ZD5ZPC90ZD4KICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgIDwvdHI+CiAgICA8L3Rib2R5Pgo8L3RhYmxlPg==" />

### Order Cancel Request [#order-cancel-request]

This message is sent by the client to cancel an open order in its entire remaining amount. This request is assigned a unique `<11> ClOrdID` and is treated as a separate order.

Upon successful cancellation of the order, an [Execution Report](/b2connect/fix-api#execution-report) is sent with the `<39> OrdStatus` field set to `4`. In this case, the `<14> CumQty` field indicates the amount that has already been filled by the time the order was canceled.

If the order can’t be canceled for some reason, the FIX server sends back an [Order Cancel Reject](/b2connect/fix-api#order-cancel-reject) message indicating why the order cancellation failed.

The **Order Cancel Request** message includes the following fields:

<RawHtml b64="PHRhYmxlPgogICAgPHRoZWFkPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRoIHdpZHRoPSI4NCI+VGFnPC90aD4KICAgICAgICAgICAgPHRoIHdpZHRoPSIxNjciPk5hbWU8L3RoPgogICAgICAgICAgICA8dGggd2lkdGg9IjgwIj5SZXEnZDwvdGg+CiAgICAgICAgICAgIDx0aCB3aWR0aD0iMTIzIj5EYXRhdHlwZTwvdGg+CiAgICAgICAgICAgIDx0aD5EZXNjcmlwdGlvbjwvdGg+CiAgICAgICAgPC90cj4KICAgIDwvdGhlYWQ+CiAgICA8dGJvZHk+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxhIGhyZWY9ImZpeC1hcGkubWQjc3RhbmRhcmQtaGVhZGVyIj5TdGFuZGFyZCBoZWFkZXI8L2E+PC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxjb2RlPiYjeDNDOzM1PiBNc2dUeXBlID0gRjwvY29kZT48L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+NDE8L3RkPgogICAgICAgICAgICA8dGQ+T3JpZ0NsT3JkSUQ8L3RkPgogICAgICAgICAgICA8dGQ+WTwvdGQ+CiAgICAgICAgICAgIDx0ZD5TdHJpbmc8L3RkPgogICAgICAgICAgICA8dGQ+VGhlIDxjb2RlPiYjeDNDOzExPiBDbE9yZElEPC9jb2RlPiBvZiBhbiBvcmRlciB0byBiZSBjYW5jZWxlZC48L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+MTE8L3RkPgogICAgICAgICAgICA8dGQ+Q2xPcmRJRDwvdGQ+CiAgICAgICAgICAgIDx0ZD5ZPC90ZD4KICAgICAgICAgICAgPHRkPlN0cmluZzwvdGQ+CiAgICAgICAgICAgIDx0ZD5UaGUgY2xpZW50LXByb3ZpZGVkIHVuaXF1ZSBpZGVudGlmaWVyIG9mIHRoZSBPcmRlciBDYW5jZWwgUmVxdWVzdC48L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxhIGhyZWY9ImZpeC1hcGkubWQjc3RhbmRhcmQtdHJhaWxlciI+U3RhbmRhcmQgdHJhaWxlcjwvYT48L3RkPgogICAgICAgICAgICA8dGQ+WTwvdGQ+CiAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICA8L3RyPgogICAgPC90Ym9keT4KPC90YWJsZT4=" />

### Order Cancel Reject [#order-cancel-reject]

This message is sent by the FIX server upon receiving an [Order Cancel Request](/b2connect/fix-api#order-cancel-request) that can’t be fulfilled.

The **Order Cancel Reject** message includes the following fields:

<RawHtml b64="PHRhYmxlPgogICAgPHRoZWFkPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRoIHdpZHRoPSI5NSI+VGFnPC90aD4KICAgICAgICAgICAgPHRoIHdpZHRoPSIxNjciPk5hbWU8L3RoPgogICAgICAgICAgICA8dGggd2lkdGg9IjgwIj5SZXEnZDwvdGg+CiAgICAgICAgICAgIDx0aCB3aWR0aD0iMTIzIj5EYXRhdHlwZTwvdGg+CiAgICAgICAgICAgIDx0aD5EZXNjcmlwdGlvbjwvdGg+CiAgICAgICAgPC90cj4KICAgIDwvdGhlYWQ+CiAgICA8dGJvZHk+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxhIGhyZWY9ImZpeC1hcGkubWQjc3RhbmRhcmQtaGVhZGVyIj5TdGFuZGFyZCBoZWFkZXI8L2E+PC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxjb2RlPiYjeDNDOzM1PiBNc2dUeXBlID0gOTwvY29kZT48L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+Mzc8L3RkPgogICAgICAgICAgICA8dGQ+T3JkZXJJRDwvdGQ+CiAgICAgICAgICAgIDx0ZD5ZPC90ZD4KICAgICAgICAgICAgPHRkPlN0cmluZzwvdGQ+CiAgICAgICAgICAgIDx0ZD4KICAgICAgICAgICAgICAgIDxwPlRoZSB1bmlxdWUgaWRlbnRpZmllciBhc3NpZ25lZCB0byBhbiBvcmRlciBieSB0aGUgRklYIHNlcnZlci48L3A+CiAgICAgICAgICAgICAgICA8cD48L3A+CiAgICAgICAgICAgICAgICA8cD5UaGlzIHZhbHVlIGlzIDxjb2RlPk5PTkU8L2NvZGU+IGlmIDxjb2RlPiYjeDNDOzEwMj4gQ3hsUmVqUmVhc29uID0gMTwvY29kZT4uPC9wPgogICAgICAgICAgICA8L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+NDE8L3RkPgogICAgICAgICAgICA8dGQ+T3JpZ0NsT3JkSUQ8L3RkPgogICAgICAgICAgICA8dGQ+WTwvdGQ+CiAgICAgICAgICAgIDx0ZD5TdHJpbmc8L3RkPgogICAgICAgICAgICA8dGQ+VGhlIDxjb2RlPiYjeDNDOzExPiBDbE9yZElEPC9jb2RlPiBvZiBhbiBvcmRlciB0byBiZSBjYW5jZWxlZC48L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+MTE8L3RkPgogICAgICAgICAgICA8dGQ+Q2xPcmRJRDwvdGQ+CiAgICAgICAgICAgIDx0ZD5ZPC90ZD4KICAgICAgICAgICAgPHRkPlN0cmluZzwvdGQ+CiAgICAgICAgICAgIDx0ZD5UaGUgY2xpZW50LXByb3ZpZGVkIHVuaXF1ZSBpZGVudGlmaWVyIG9mIHRoZSA8YSBocmVmPSJmaXgtYXBpLm1kI29yZGVyLWNhbmNlbC1yZXF1ZXN0Ij5PcmRlciBDYW5jZWwgUmVxdWVzdDwvYT4uPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPjM5PC90ZD4KICAgICAgICAgICAgPHRkPk9yZFN0YXR1czwvdGQ+CiAgICAgICAgICAgIDx0ZD5ZPC90ZD4KICAgICAgICAgICAgPHRkPkNoYXI8L3RkPgogICAgICAgICAgICA8dGQ+CiAgICAgICAgICAgICAgICA8cD5UaGUgY3VycmVudCBvcmRlciBzdGF0dXMgYnkgdGhlIG1vbWVudCBvZiBtZXNzYWdlIGdlbmVyYXRpb246PC9wPgogICAgICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgICAgIDxsaT48Y29kZT5BPC9jb2RlPiDigJQgVGhlIG9yZGVyIGlzIG9wZW4gYW5kIGF3YWl0cyBleGVjdXRpb24uPC9saT4KICAgICAgICAgICAgICAgICAgICA8bGk+PGNvZGU+MTwvY29kZT4g4oCUIFRoZSBvcmRlciBpcyBvcGVuLCBzb21lIHBhcnQgb2YgaXQgbWF5IGFscmVhZHkgYmUgZmlsbGVkLjwvbGk+CiAgICAgICAgICAgICAgICAgICAgPGxpPjxjb2RlPjI8L2NvZGU+IOKAlCBUaGUgb3JkZXIgaXMgZmlsbGVkIGluIHRoZSBmdWxsIGFtb3VudC48L2xpPgogICAgICAgICAgICAgICAgICAgIDxsaT48Y29kZT40PC9jb2RlPiDigJQgVGhlIG9yZGVyIGlzIGNhbmNlbGVkLCBzb21lIHBhcnQgb2YgaXQgbWF5IGFscmVhZHkgYmUgZmlsbGVkLjwvbGk+CiAgICAgICAgICAgICAgICAgICAgPGxpPjxjb2RlPjg8L2NvZGU+IOKAlCBUaGUgb3JkZXIgaXMgcmVqZWN0ZWQsIG5vIHBhcnQgb2YgaXQgaXMgZmlsbGVkLjwvbGk+CiAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICA8L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+MTAyPC90ZD4KICAgICAgICAgICAgPHRkPkN4bFJlalJlYXNvbjwvdGQ+CiAgICAgICAgICAgIDx0ZD5ZPC90ZD4KICAgICAgICAgICAgPHRkPmludDwvdGQ+CiAgICAgICAgICAgIDx0ZD4KICAgICAgICAgICAgICAgIDxwPlRoZSByZWFzb24gd2h5IGEgY2FuY2VsbGF0aW9uIHJlcXVlc3QgaXMgcmVqZWN0ZWQ6PC9wPgogICAgICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgICAgIDxsaT48Y29kZT4wPC9jb2RlPiDigJQgVG9vIGxhdGUgdG8gY2FuY2VsICh0aGUgb3JkZXIgaGFzIGFscmVhZHkgYmVlbiBjYW5jZWxlZCBvciBmaWxsZWQpLjwvbGk+CiAgICAgICAgICAgICAgICAgICAgPGxpPjxjb2RlPjE8L2NvZGU+IOKAlCBPcmRlciB1bmtub3duICh0aGUgb3JkZXIgd2l0aCBhIHNwZWNpZmllZCBJRCB3YXNu4oCZdCBmb3VuZCBieSB0aGUgRklYIHNlcnZlcikuPC9saT4KICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgPC90cj4KICAgICAgICA8dHI+CiAgICAgICAgICAgIDx0ZD40MzQ8L3RkPgogICAgICAgICAgICA8dGQ+Q3hsUmVqUmVzcG9uc2VUbzwvdGQ+CiAgICAgICAgICAgIDx0ZD5ZPC90ZD4KICAgICAgICAgICAgPHRkPmludDwvdGQ+CiAgICAgICAgICAgIDx0ZD4KICAgICAgICAgICAgICAgIDxwPlRoZSB0eXBlIG9mIGEgcmVxdWVzdCB0aGF04oCZcyByZWplY3RlZC48L3A+CiAgICAgICAgICAgICAgICA8cD48L3A+CiAgICAgICAgICAgICAgICA8cD5UaGlzIHZhbHVlIG11c3QgYWx3YXlzIGJlIDxjb2RlPjE8L2NvZGU+LCBpbmRpY2F0aW5nIHRoZSA8YSBocmVmPSJmaXgtYXBpLm1kI29yZGVyLWNhbmNlbC1yZXF1ZXN0Ij5PcmRlciBDYW5jZWwgUmVxdWVzdDwvYT4uPC9wPgogICAgICAgICAgICA8L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+NjA8L3RkPgogICAgICAgICAgICA8dGQ+VHJhbnNhY3RUaW1lPC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+VGltZXN0YW1wPC90ZD4KICAgICAgICAgICAgPHRkPlRoZSBkYXRlIGFuZCB0aW1lIG9mIHRoZSBsYXN0IHRyYW5zYWN0aW9uIG1hZGUgYXMgcGFydCBvZiBvcmRlciBwcm9jZXNzaW5nLCBpbiBVVEMgdGltZSB3aXRoIG1pbGxpc2Vjb25kcyBwcmVjaXNpb246IDxjb2RlPllZWVlNTURELUhIOk1NOlNTLnNzczwvY29kZT4uPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgIDx0ZD48YSBocmVmPSJmaXgtYXBpLm1kI3N0YW5kYXJkLXRyYWlsZXIiPlN0YW5kYXJkIHRyYWlsZXI8L2E+PC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgPC90cj4KICAgIDwvdGJvZHk+CjwvdGFibGU+" />

### Execution Report [#execution-report]

This message is sent by the FIX server upon successfully placing or cancelling an order, or any change to the order status (such as a complete or partial execution). Among other data, the report indicates:

* the current order status at the moment of report creation (`<39> OrdStatus`)
* the most recent change in the order status, which is being reported (`<150> ExecType`)

The **Execution Report** message includes the following fields:

<RawHtml b64="PHRhYmxlPgogICAgPHRoZWFkPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRoIHdpZHRoPSI5NSI+VGFnPC90aD4KICAgICAgICAgICAgPHRoIHdpZHRoPSIxNjciPk5hbWU8L3RoPgogICAgICAgICAgICA8dGggd2lkdGg9IjgwIj5SZXEnZDwvdGg+CiAgICAgICAgICAgIDx0aCB3aWR0aD0iMTIzIj5EYXRhdHlwZTwvdGg+CiAgICAgICAgICAgIDx0aD5EZXNjcmlwdGlvbjwvdGg+CiAgICAgICAgPC90cj4KICAgIDwvdGhlYWQ+CiAgICA8dGJvZHk+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxhIGhyZWY9ImZpeC1hcGkubWQjc3RhbmRhcmQtaGVhZGVyIj5TdGFuZGFyZCBoZWFkZXI8L2E+PC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjxjb2RlPiYjeDNDOzM1PiBNc2dUeXBlID0gODwvY29kZT48L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+MTE8L3RkPgogICAgICAgICAgICA8dGQ+Q2xPcmRJRDwvdGQ+CiAgICAgICAgICAgIDx0ZD5ZPC90ZD4KICAgICAgICAgICAgPHRkPlN0cmluZzwvdGQ+CiAgICAgICAgICAgIDx0ZD5UaGUgdW5pcXVlIGlkZW50aWZpZXIgYXNzaWduZWQgdG8gYW4gb3JkZXIgYnkgdGhlIGNsaWVudCBhcyBwYXJ0IG9mIGEgPGEgaHJlZj0iZml4LWFwaS5tZCNuZXctb3JkZXItc2luZ2xlIj5OZXcgT3JkZXIgU2luZ2xlPC9hPiByZXF1ZXN0LjwvdGQ+CiAgICAgICAgPC90cj4KICAgICAgICA8dHI+CiAgICAgICAgICAgIDx0ZD4zNzwvdGQ+CiAgICAgICAgICAgIDx0ZD5PcmRlcklEPC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+U3RyaW5nPC90ZD4KICAgICAgICAgICAgPHRkPlRoZSB1bmlxdWUgaWRlbnRpZmllciBhc3NpZ25lZCB0byBhbiBvcmRlciBieSB0aGUgRklYIHNlcnZlci48L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+MTc8L3RkPgogICAgICAgICAgICA8dGQ+RXhlY0lEPC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+U3RyaW5nPC90ZD4KICAgICAgICAgICAgPHRkPgogICAgICAgICAgICAgICAgPHA+VGhlIHVuaXF1ZSBpZGVudGlmaWVyIGFzc2lnbmVkIGJ5IHRoZSBGSVggc2VydmVyIHRvIGFuIGluZGl2aWR1YWwgZXhlY3V0aW9uLjwvcD4KICAgICAgICAgICAgICAgIDxwPjwvcD4KICAgICAgICAgICAgICAgIDxwPlRoaXMgdmFsdWUgaXMgYW4gZW1wdHkgc3RyaW5nLCBpZiA8Y29kZT4mI3gzQzsxNTA+IEV4ZWNUeXBlPC9jb2RlPiBkaWZmZXJzIGZyb20gPGNvZGU+RjwvY29kZT4gKEZpbGwpLjwvcD4KICAgICAgICAgICAgPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPjM5PC90ZD4KICAgICAgICAgICAgPHRkPk9yZFN0YXR1czwvdGQ+CiAgICAgICAgICAgIDx0ZD5ZPC90ZD4KICAgICAgICAgICAgPHRkPlN0cmluZzwvdGQ+CiAgICAgICAgICAgIDx0ZD4KICAgICAgICAgICAgICAgIDxwPlRoZSBjdXJyZW50IG9yZGVyIHN0YXR1cyBieSB0aGUgbW9tZW50IG9mIG1lc3NhZ2UgZ2VuZXJhdGlvbjo8L3A+CiAgICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICAgICAgPGxpPjxjb2RlPkE8L2NvZGU+IOKAlCBUaGUgb3JkZXIgaXMgb3BlbiBhbmQgYXdhaXRzIGV4ZWN1dGlvbi48L2xpPgogICAgICAgICAgICAgICAgICAgIDxsaT48Y29kZT4xPC9jb2RlPiDigJQgVGhlIG9yZGVyIGlzIG9wZW4sIHNvbWUgcGFydCBvZiBpdCBtYXkgYWxyZWFkeSBiZSBmaWxsZWQuPC9saT4KICAgICAgICAgICAgICAgICAgICA8bGk+PGNvZGU+MjwvY29kZT4g4oCUIFRoZSBvcmRlciBpcyBmaWxsZWQgaW4gdGhlIGZ1bGwgYW1vdW50LjwvbGk+CiAgICAgICAgICAgICAgICAgICAgPGxpPjxjb2RlPjQ8L2NvZGU+IOKAlCBUaGUgb3JkZXIgaXMgY2FuY2VsZWQsIHNvbWUgcGFydCBvZiBpdCBtYXkgYWxyZWFkeSBiZSBmaWxsZWQuPC9saT4KICAgICAgICAgICAgICAgICAgICA8bGk+PGNvZGU+ODwvY29kZT4g4oCUIFRoZSBvcmRlciBpcyByZWplY3RlZCwgbm8gcGFydCBvZiBpdCBpcyBmaWxsZWQuPC9saT4KICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgPC90cj4KICAgICAgICA8dHI+CiAgICAgICAgICAgIDx0ZD4xNTA8L3RkPgogICAgICAgICAgICA8dGQ+RXhlY1R5cGU8L3RkPgogICAgICAgICAgICA8dGQ+WTwvdGQ+CiAgICAgICAgICAgIDx0ZD5TdHJpbmc8L3RkPgogICAgICAgICAgICA8dGQ+CiAgICAgICAgICAgICAgICA8cD5UaGUgdHlwZSBvZiBhIHJlY2VpdmVkIHJlcG9ydDo8L3A+CiAgICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICAgICAgPGxpPjxjb2RlPkY8L2NvZGU+IOKAlCBUaGUgb3JkZXIgaXMgcGFydGlhbGx5IG9yIGZ1bGx5IGZpbGxlZCAodGhlIHJlcG9ydCBpbmRpY2F0ZXMgdGhlIGNvbXBsZXRlIGV4ZWN1dGlvbiBvciBzcGVjaWZpZXMgdGhlIHBhcnQgZmlsbGVkKS48L2xpPgogICAgICAgICAgICAgICAgICAgIDxsaT48Y29kZT5BPC9jb2RlPiDigJQgVGhlIG9yZGVyIGlzIHBsYWNlZCBhbmQgYXdhaXRzIGV4ZWN1dGlvbi48L2xpPgogICAgICAgICAgICAgICAgICAgIDxsaT48Y29kZT40PC9jb2RlPiDigJQgVGhlIG9yZGVyIGlzIGNhbmNlbGVkLCBzb21lIHBhcnQgb2YgaXQgbWF5IGFscmVhZHkgYmUgZmlsbGVkLjwvbGk+CiAgICAgICAgICAgICAgICAgICAgPGxpPjxjb2RlPjg8L2NvZGU+IOKAlCBUaGUgb3JkZXIgaGFzIGJlZW4gcmVqZWN0ZWQsIG5vIHBhcnQgb2YgaXQgaXMgZmlsbGVkLjwvbGk+CiAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICA8L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+NTU8L3RkPgogICAgICAgICAgICA8dGQ+SW5zdHJ1bWVudDwvdGQ+CiAgICAgICAgICAgIDx0ZD5ZPC90ZD4KICAgICAgICAgICAgPHRkPlN0cmluZzwvdGQ+CiAgICAgICAgICAgIDx0ZD5UaGUgdGlja2VyIHN5bWJvbCBvZiBhbiBpbnN0cnVtZW50IGxpc3RlZCBpbiB0aGUgb3JpZ2luYWwgb3JkZXIgcmVxdWVzdCAoc3VjaCBhcyA8Y29kZT5CVEMvVVNEVDwvY29kZT4pLjwvdGQ+CiAgICAgICAgPC90cj4KICAgICAgICA8dHI+CiAgICAgICAgICAgIDx0ZD41NDwvdGQ+CiAgICAgICAgICAgIDx0ZD5TaWRlPC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+aW50PC90ZD4KICAgICAgICAgICAgPHRkPgogICAgICAgICAgICAgICAgPHA+VGhlIG9yZGVyIHNpZGU6PC9wPgogICAgICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgICAgIDxsaT48Y29kZT4xPC9jb2RlPiDigJQgQnV5PC9saT4KICAgICAgICAgICAgICAgICAgICA8bGk+PGNvZGU+MjwvY29kZT4g4oCUIFNlbGw8L2xpPgogICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPjM4PC90ZD4KICAgICAgICAgICAgPHRkPk9yZGVyUXR5RGF0YTwvdGQ+CiAgICAgICAgICAgIDx0ZD5ZPC90ZD4KICAgICAgICAgICAgPHRkPlF0eTwvdGQ+CiAgICAgICAgICAgIDx0ZD5UaGUgb3JkZXIgYW1vdW50LCBhcyBpbmRpY2F0ZWQgaW4gdGhlIGluaXRpYWwgb3JkZXIuPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPjQwPC90ZD4KICAgICAgICAgICAgPHRkPk9yZFR5cGU8L3RkPgogICAgICAgICAgICA8dGQ+WTwvdGQ+CiAgICAgICAgICAgIDx0ZD5pbnQ8L3RkPgogICAgICAgICAgICA8dGQ+CiAgICAgICAgICAgICAgICA8cD5UaGUgb3JkZXIgdHlwZTo8L3A+CiAgICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICAgICAgPGxpPjxjb2RlPjE8L2NvZGU+IOKAlCBNYXJrZXQ8L2xpPgogICAgICAgICAgICAgICAgICAgIDxsaT48Y29kZT4yPC9jb2RlPiDigJQgTGltaXQ8L2xpPgogICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPjQ0PC90ZD4KICAgICAgICAgICAgPHRkPlByaWNlPC90ZD4KICAgICAgICAgICAgPHRkPk48L3RkPgogICAgICAgICAgICA8dGQ+UHJpY2U8L3RkPgogICAgICAgICAgICA8dGQ+CiAgICAgICAgICAgICAgICA8cD5UaGUgb3JkZXIgYmlkIG9yIGFzayBwcmljZS48L3A+CiAgICAgICAgICAgICAgICA8cD48L3A+CiAgICAgICAgICAgICAgICA8cD5UaGlzIGZpZWxkIGlzIGluY2x1ZGVkIGluIHRoZSBFeGVjdXRpb24gUmVwb3J0IGZvciBsaW1pdCBvcmRlcnMgb25seS48L3A+CiAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgPC90cj4KICAgICAgICA8dHI+CiAgICAgICAgICAgIDx0ZD41OTwvdGQ+CiAgICAgICAgICAgIDx0ZD5UaW1lSW5Gb3JjZTwvdGQ+CiAgICAgICAgICAgIDx0ZD5ZPC90ZD4KICAgICAgICAgICAgPHRkPkNoYXI8L3RkPgogICAgICAgICAgICA8dGQ+CiAgICAgICAgICAgICAgICA8cD5UaGUgdGltZS1pbi1mb3JjZSBvcHRpb24gYXBwbGllZCB0byBhbiBvcmRlcjo8L3A+CiAgICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICAgICAgPGxpPjxjb2RlPjE8L2NvZGU+IOKAlCBHVEMgKEdvb2QgdGlsbCBDYW5jZWxlZCk8L2xpPgogICAgICAgICAgICAgICAgICAgIDxsaT48Y29kZT4zPC9jb2RlPiDigJQgSU9DIChJbW1lZGlhdGUgb3IgQ2FuY2VsKTwvbGk+CiAgICAgICAgICAgICAgICAgICAgPGxpPjxjb2RlPjQ8L2NvZGU+IOKAlCBGT0sgKEZpbGwgb3IgS2lsbCk8L2xpPgogICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPjMxPC90ZD4KICAgICAgICAgICAgPHRkPkxhc3RQeDwvdGQ+CiAgICAgICAgICAgIDx0ZD5OPC90ZD4KICAgICAgICAgICAgPHRkPlByaWNlPC90ZD4KICAgICAgICAgICAgPHRkPkZvciByZXBvcnRzIHNpZ25hbGluZyBhIHRyYWRlIGV4ZWN1dGlvbiAoPGNvZGU+JiN4M0M7MTUwPiBFeGVjVHlwZSA9IEY8L2NvZGU+KSwgaW5kaWNhdGVzIHRoZSBwcmljZSBvZiB0aGUgbGFzdCBmaWxsLjwvdGQ+CiAgICAgICAgPC90cj4KICAgICAgICA8dHI+CiAgICAgICAgICAgIDx0ZD4zMjwvdGQ+CiAgICAgICAgICAgIDx0ZD5MYXN0UXR5PC90ZD4KICAgICAgICAgICAgPHRkPk48L3RkPgogICAgICAgICAgICA8dGQ+UXR5PC90ZD4KICAgICAgICAgICAgPHRkPkZvciByZXBvcnRzIHNpZ25hbGluZyBhIHRyYWRlIGV4ZWN1dGlvbiAoPGNvZGU+JiN4M0M7MTUwPiBFeGVjVHlwZSA9IEY8L2NvZGU+KSwgaW5kaWNhdGVzIHRoZSBhbW91bnQgb2YgdGhlIGxhc3QgZmlsbC48L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+MTUxPC90ZD4KICAgICAgICAgICAgPHRkPkxlYXZlc1F0eTwvdGQ+CiAgICAgICAgICAgIDx0ZD5ZPC90ZD4KICAgICAgICAgICAgPHRkPlF0eTwvdGQ+CiAgICAgICAgICAgIDx0ZD5Gb3IgcmVwb3J0cyBzaWduYWxpbmcgYSB0cmFkZSBleGVjdXRpb24gKDxjb2RlPiYjeDNDOzE1MD4gRXhlY1R5cGUgPSBGPC9jb2RlPiksIGluZGljYXRlcyB0aGUgcmVtYWluaW5nIG9yZGVyIGFtb3VudCBhd2FpdGluZyBleGVjdXRpb24sIHRha2luZyBpbnRvIGFjY291bnQgdGhlIGFtb3VudCBmaWxsZWQgbW9zdCByZWNlbnRseS48L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+MTQ8L3RkPgogICAgICAgICAgICA8dGQ+Q3VtUXR5PC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+UXR5PC90ZD4KICAgICAgICAgICAgPHRkPlRoZSB0b3RhbCBvcmRlciBhbW91bnQgZmlsbGVkIHNvIGZhciwgaW5jbHVkaW5nIHRoZSBhbW91bnQgZmlsbGVkIG1vc3QgcmVjZW50bHkuPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPjY8L3RkPgogICAgICAgICAgICA8dGQ+QXZnUHg8L3RkPgogICAgICAgICAgICA8dGQ+WTwvdGQ+CiAgICAgICAgICAgIDx0ZD5QcmljZTwvdGQ+CiAgICAgICAgICAgIDx0ZD4KICAgICAgICAgICAgICAgIDxwPlRoZSBhdmVyYWdlIHByaWNlIGNhbGN1bGF0ZWQgYmFzZWQgb24gYWxsIG9yZGVyIHBhcnRzIGZpbGxlZCBzbyBmYXIsIHRha2luZyBpbnRvIGFjY291bnQgdGhlIG1vc3QgcmVjZW50IGV4ZWN1dGlvbi48L3A+CiAgICAgICAgICAgICAgICA8cD48L3A+CiAgICAgICAgICAgICAgICA8cD5UaGlzIHZhbHVlIGlzIDxjb2RlPjA8L2NvZGU+IGZvciBvcmRlcnMgdGhhdCBhcmUgc3RpbGwgYXdhaXRpbmcgZXhlY3V0aW9uICg8Y29kZT4mI3gzQzsxNTA+IEV4ZWNUeXBlID0gQTwvY29kZT4pLjwvcD4KICAgICAgICAgICAgPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPjY0PC90ZD4KICAgICAgICAgICAgPHRkPlNldHRsRGF0ZTwvdGQ+CiAgICAgICAgICAgIDx0ZD5OPC90ZD4KICAgICAgICAgICAgPHRkPkRhdGU8L3RkPgogICAgICAgICAgICA8dGQ+Rm9yIHJlcG9ydHMgc2lnbmFsaW5nIGEgdHJhZGUgZXhlY3V0aW9uICg8Y29kZT4mI3gzQzsxNTA+IEV4ZWNUeXBlID0gRjwvY29kZT4pLCBpbmRpY2F0ZXMgdGhlIFVUQyBkYXRlIG9mIGEgdHJhZGUgc2V0dGxlbWVudCwgaW4gdGhlIDxjb2RlPllZWVlNTUREPC9jb2RlPiBmb3JtYXQuPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPjc1PC90ZD4KICAgICAgICAgICAgPHRkPlRyYWRlRGF0ZTwvdGQ+CiAgICAgICAgICAgIDx0ZD5OPC90ZD4KICAgICAgICAgICAgPHRkPkRhdGU8L3RkPgogICAgICAgICAgICA8dGQ+Rm9yIHJlcG9ydHMgc2lnbmFsaW5nIGEgdHJhZGUgZXhlY3V0aW9uICg8Y29kZT4mI3gzQzsxNTA+IEV4ZWNUeXBlID0gRjwvY29kZT4pLCBpbmRpY2F0ZXMgdGhlIFVUQyBkYXRlIG9mIGEgZmlsbCwgaW4gdGhlIDxjb2RlPllZWVlNTUREPC9jb2RlPiBmb3JtYXQuPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPjEwMzwvdGQ+CiAgICAgICAgICAgIDx0ZD5PcmRSZWpSZWFzb248L3RkPgogICAgICAgICAgICA8dGQ+TjwvdGQ+CiAgICAgICAgICAgIDx0ZD5pbnQ8L3RkPgogICAgICAgICAgICA8dGQ+Rm9yIHJlcG9ydHMgc2lnbmFsaW5nIGFuIG9yZGVyIHJlamVjdGlvbiAoPGNvZGU+JiN4M0M7MTUwPiBFeGVjVHlwZSA9IEY8L2NvZGU+KSwgaW5kaWNhdGVzIHRoZSByZWplY3Rpb24gcmVhc29uLjwvdGQ+CiAgICAgICAgPC90cj4KICAgICAgICA8dHI+CiAgICAgICAgICAgIDx0ZD41ODwvdGQ+CiAgICAgICAgICAgIDx0ZD5UZXh0PC90ZD4KICAgICAgICAgICAgPHRkPk48L3RkPgogICAgICAgICAgICA8dGQ+U3RyaW5nPC90ZD4KICAgICAgICAgICAgPHRkPkZvciBjYW5jZWxlZCAoPGNvZGU+JiN4M0M7MTUwPiBFeGVjVHlwZSA9IDg8L2NvZGU+KSBvciByZWplY3RlZCAoPGNvZGU+JiN4M0M7MTUwPiBFeGVjVHlwZSA9IDQ8L2NvZGU+KSBvcmRlcnMsIHByb3ZpZGVzIHRoZSByZWFzb24gd2h5IGFuIG9yZGVyIGlzIGRpc2NhcmRlZC48L3RkPgogICAgICAgIDwvdHI+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGQ+NjA8L3RkPgogICAgICAgICAgICA8dGQ+VHJhbnNhY3RUaW1lPC90ZD4KICAgICAgICAgICAgPHRkPkM8L3RkPgogICAgICAgICAgICA8dGQ+VGltZXN0YW1wPC90ZD4KICAgICAgICAgICAgPHRkPgogICAgICAgICAgICAgICAgPHA+VGhlIGRhdGUgYW5kIHRpbWUgb2YgdGhlIG1vc3QgcmVjZW50IGNoYW5nZSBpbiB0aGUgb3JkZXIgc3RhdHVzLCBpbiBVVEMgdGltZSB3aXRoIG1pbGxpc2Vjb25kcyBwcmVjaXNpb246IDxjb2RlPllZWVlNTURELUhIOk1NOlNTLnNzczwvY29kZT4uPC9wPgogICAgICAgICAgICAgICAgPHA+PC9wPgogICAgICAgICAgICAgICAgPHA+VGhpcyBmaWVsZCBpcyBvbWl0dGVkIGZvciBvcmRlcnMgdGhhdCBhcmUgc3RpbGwgYXdhaXRpbmcgZXhlY3V0aW9uICg8Y29kZT4mI3gzQzsxNTA+IEV4ZWNUeXBlID0gQTwvY29kZT4pLjwvcD4KICAgICAgICAgICAgPC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgIDx0ZD48YSBocmVmPSJmaXgtYXBpLm1kI3N0YW5kYXJkLXRyYWlsZXIiPlN0YW5kYXJkIHRyYWlsZXI8L2E+PC90ZD4KICAgICAgICAgICAgPHRkPlk8L3RkPgogICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgPC90cj4KICAgIDwvdGJvZHk+CjwvdGFibGU+" />
