OrderCancelReject (35=9)
Sent by Bitvavo when your request to cancel or replace an order is rejected.
Structure
Requires:
Message body
| Tag | Name | Type | Required | Description |
|---|---|---|---|---|
60 | TransactTime | UTCTimestamp | N | The UTC timestamp in nanoseconds when the message was created. Must be in the format YYYYMMDD-HH:MM:SS.sssssssss, for example 20260115-10:05:54.794327000. |
1 | Account | String | Y | The unique identifier of the account. |
2422 | OrderRequestID | Int | N | Your unique identifier of the cancel or replace request. |
37 | OrderID | String | Y | Bitvavo identifier of the order. |
11 | ClOrdID | String | Y | Your identifier of the cancel or replace request. |
41 | OrigClOrdID | String | N | Your identifier of the original order. If the order was previously updated, this is the ClOrdID (11) of the most recent order. |
17 | ExecID | String | N | Bitvavo identifier of this reject message. |
39 | OrdStatus | Char | Y | The status of the order after this reject is applied. |
434 | CxlRejResponseTo | Char | Y | The type of request that this reject responds to. Can be:
|
1328 | RejectText | String | N | The description of the reason for rejection. See Errors for possible values. |
102 | CxlRejReason | Int | N | The reason why the cancel request was rejected. You can find the possible values below. |
5002 | OperatorID | Int | N | Custom Bitvavo tag Your identifier for the trader or the bot within your account that made the request. |
CxlRejReason values
We use standard FIX cancellation rejection tags whenever possible. Codes greater than 100 are custom Bitvavo tags.
| Tag | Description |
|---|---|
1 | Unknown order The referenced order cannot be located ( OrderNotFound, MEOrderNotFound). |
8 | Price exceeds current price band The matching engine rejected the price ( MEOutOfBoundsPlacementPrice). |
18 | Invalid price increment Price does not align with the market tick size ( InvalidPriceTickSize). |
99 | Other |
101 | Custom Bitvavo value Self-trade prevention instruction is not supported ( InvalidSelfTradePrevention). |
102 | Custom Bitvavo value Time in force value is not supported ( InvalidTimeInForce). |
103 | Custom Bitvavo value Order quantity (base or quote) exceeds the maximum allowed ( InvalidQuantityTooLarge, InvalidQuoteQuantityTooLarge). |
104 | Custom Bitvavo value Price precision exceeds supported decimals ( InvalidPricePrecision). |
105 | Custom Bitvavo value Order quantity (base or quote) is below the minimum allowed ( InvalidQuantityTooSmall, InvalidQuoteQuantityTooSmall). |
106 | Custom Bitvavo value Trigger order type is not supported ( InvalidTriggerOrderType). |
107 | Custom Bitvavo value Trigger price reference is not supported ( InvalidStopPriceReference). |
108 | Custom Bitvavo value Stop price precision exceeds supported decimals ( InvalidStopPricePrecision). |
109 | Custom Bitvavo valueClOrdID is invalid or duplicated (InvalidClientOrderId). |
110 | Custom Bitvavo value Replace request does not change any order attributes ( UpdateOrderNoChange). |
111 | Custom Bitvavo value Quantity fields in the replace request conflict with remaining quantity ( UpdateOrderInvalidQuantityAndRemainingQuantity). |
112 | Custom Bitvavo value Order notional value is below the minimum allowed ( InvalidNotionalTooSmall). |
113 | Custom Bitvavo value Maximum number of orders per market has been reached ( MaxNumOrdersReached). |
114 | Custom Bitvavo value Price is invalid ( InvalidPrice). |
115 | Custom Bitvavo value Bitvavo order identifier is invalid ( InvalidOrderUuid). |
116 | Custom Bitvavo value Stop price is invalid ( InvalidStopPrice). |
117 | Custom Bitvavo value Stop price does not align with the market tick size ( InvalidStopPriceTickSize). |
118 | Custom Bitvavo value Remaining quantity becomes invalid during processing ( InvalidRemainingQuantity). |
119 | Custom Bitvavo value Market is cancel-only or in auction (collection or matching) mode ( MEInstrumentIsInCancelOnly, MEInstrumentIsInAuctionCollection, MEInstrumentIsInAuctionMatching). |
120 | Custom Bitvavo value Account cannot be found ( InvalidUserId). |
121 | Custom Bitvavo value Requested market does not exist or cannot be validated ( InvalidInstrument). |
122 | Custom Bitvavo value Quantity fields are malformed or inconsistent ( InvalidQuantity, InvalidQuoteQuantity). |
123 | Custom Bitvavo value Account balance cannot cover the order ( InsufficientFunds). |
124 | Custom Bitvavo value Order notional value exceeds the maximum allowed ( InvalidNotionalTooLarge). |
125 | Custom Bitvavo value Instrument is halted ( MEInstrumentIsHalted). |
126 | Custom Bitvavo value Matching engine cannot find the requested instrument ( MEUnknownInstrument). |