# 8 (Execution report)

The FIX message **`8` (Execution Report)** is used to:
- Confirm the receipt or rejection of an order
- Confirm changes to an existing order (fill information on executed orders)
- Respond to the order status request

Each execution report contains two fields which are used to communicate both the current state of the order at the Revolut Crypto Exchange (**39** `OrdStatus`) and the purpose of the message (**150** `ExecType`).

The general rule for quantity is: **38** `OrderQty` = **14** `CumQty` + **151** `LeavesQty`.

| Tag       | Name             | Type             | Required                                                           | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| --------- | ---------------- | ---------------- | ------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **11**    | `ClOrdID`        | `UUID`           | **yes, by Revolut FIX Gateway**                                    | Unique identifier of the order or cancel request that this Execution Report relates to, as assigned by the client.                                                                                                                                                                                                                                                                                                                                                                                     |
| **37**    | `OrderID`        | `UUID`           | **yes**                                                            | Unique identifier of the order, as assigned by the Revolut Crypto Exchange.                                                                                                                                                                                                                                                                                                                                                                                                                            |
| **41**    | `OrigClOrdID`    | `UUID`           | **yes, conditionally***                                            | **11** `ClOrdID` of the cancelled order. <br/><br/>*Required in response to a Cancel request (**150** `ExecType` = `4` Cancelled).                                                                                                                                                                                                                                                                                                                                                                     |
| **17**    | `ExecID`         | `UUID`           | **yes**                                                            | Unique identifier of the execution report message, as assigned by the Revolut Crypto Exchange.                                                                                                                                                                                                                                                                                                                                                                                                         |
| **150**   | `ExecType`       | `Char`           | **yes**                                                            | Purpose of the execution report. <br/><br/>Supported values: <br/> <ul><li> `0` - New</li><li>`4` - Cancelled</li><li>`8` - Rejected</li><li>`F` - Trade (partial fill or fill)</li></ul>                                                                                                                                                                                                                                                                                                              |
| **39**    | `OrdStatus`      | `Char`           | **yes**                                                            | Current status of the order. <br/><br/>Supported values: <br/> <ul><li> `0` - New</li><li> `1` - Partially filled</li><li> `2` - Filled</li><li>`4` - Cancelled</li><li>`8` - Rejected</li><li>`A` - Pending new</li></ul>                                                                                                                                                                                                                                                                             |
| **55**    | `Symbol`         | `CurrencyPair`   | **yes**                                                            | Currency pair.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| **54**    | `Side`           | `Char`           | **yes**                                                            | Side of the order. <br/><br/>Supported values: <br/> <ul><li> `1` - `BUY`</li><li>`2` - `SELL`</li></ul>                                                                                                                                                                                                                                                                                                                                                                                               |
| **40**    | `OrdType`        | `Char`           | **no**                                                             | Type of the order. <br/><br/>Supported values: <br/><ul><li> `1` - `MARKET`</li><li>`2` - `LIMIT`</li></ul>                                                                                                                                                                                                                                                                                                                                                                                            |
| **32**    | `LastQty`        | `Qty`            | **yes, conditionally***                                            | Quantity filled (traded). <br/><br/>*Required if **150** `ExecType` = `F` (Trade).                                                                                                                                                                                                                                                                                                                                                                                                                     |
| **31**    | `LastPx`         | `Price`          | **yes, conditionally***                                            | Price used to fill the order. <br/><br/>*Required if **150** `ExecType` = `F` (Trade).                                                                                                                                                                                                                                                                                                                                                                                                                 |
| **151**   | `LeavesQty`      | `Qty`            | **yes**                                                            | Remaining quantity for further execution. Always `0` for **150** `ExecType` = `8` (Rejected).                                                                                                                                                                                                                                                                                                                                                                                                          |
| **14**    | `CumQty`         | `Qty`            | **yes**                                                            | Executed part of the original order quantity. Always `0` for **150** `ExecType` = `8` (Rejected).                                                                                                                                                                                                                                                                                                                                                                                                      |
| **6**     | `AvgPx`          | `Price`          | **yes**                                                            | Always `0`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| **60**    | `TransactTime`   | `UTCTimestamp`   | **no**                                                             | Execution timestamp.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| **58**    | `Text`           | `String`         | **no**                                                             | Error message for **150** `ExecType` = `8` (Rejected). <br/>See [Order rejection codes](/docs/guides/exchange-fix-api/trading-fix-api/supported-fix-messages/fix-application-level-messages/order-rejection-codes).                                                                                                                                                                                                                                                                                    |
| **103**   | `OrdRejReason`   | `Int`            | **no**                                                             | Standardised reason code for order rejection. <br/><br/>Supported values: <br/><ul><li> `1` UNKNOWN_SYMBOL - Incorrect/unknown currency pair.</li><li>`2` EXCHANGE_CLOSED -  Exchange is off, does not accept new orders.</li><li>`5` UNKNOWN_ORDER</li><li>`6` DUPLICATE_ORDER</li><li>`8` STALE_ORDER</li><li>`13` INCORRECT_QUANTITY - Invalid **38** `OrderQty` field. Can be related to wrong format or limitations for min/max order size, or incorrect accuracy.</li><li>`99` OTHER</li></ul>   |
| **38**    | `OrderQty`       | `Qty`            | **yes**                                                            | Original order quantity.                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| **118**   | `NetMoney`       | `Qty`            | **yes, conditionally***                                            | Amount filled in the quote currency. <br/><br/>*Required if **150** `ExecType` = `F` (Trade).                                                                                                                                                                                                                                                                                                                                                                                                          |
| **44**    | `Price`          | `Price`          | **yes, conditionally***                                            | Price of the limit order. <br/><br/>*Required if **150** `ExecType` = `F` (Trade) and **40** `OrderType` = `2` `LIMIT`.                                                                                                                                                                                                                                                                                                                                                                                |

For more details, see [`FIX 4.4 : Execution Report <8> message` in the FIX 4.4 documentation](https://www.onixs.biz/fix-dictionary/4.4/msgType_8_8.html).