{"record":{"id":"ee4ee786220d37f2","repo":"freqtrade/freqtrade","slug":"order-not-found-pair-pair-id-order-id-mes","errorCode":null,"errorMessage":"Order not found (pair: {pair} id: {order_id}). Message: {e}","messagePattern":"Order not found \\(pair: (.+?) id: (.+?)\\)\\. Message: (.+?)","errorType":"exception","errorClass":"RetryableOrderError","httpStatus":null,"severity":"warning","filePath":"freqtrade/exchange/exchange.py","lineNumber":1692,"sourceCode":"\n    def fetch_order_emulated(self, order_id: str, pair: str, params: dict) -> CcxtOrder:\n        \"\"\"\n        Emulated fetch_order if the exchange doesn't support fetch_order, but requires separate\n        calls for open and closed orders.\n        \"\"\"\n        try:\n            order = self._api.fetch_open_order(order_id, pair, params=params)\n            self._log_exchange_response(\"fetch_open_order\", order)\n            order = self._order_contracts_to_amount(order)\n            return order\n        except ccxt.OrderNotFound:\n            try:\n                order = self._api.fetch_closed_order(order_id, pair, params=params)\n                self._log_exchange_response(\"fetch_closed_order\", order)\n                order = self._order_contracts_to_amount(order)\n                return order\n            except ccxt.OrderNotFound as e:\n                raise RetryableOrderError(\n                    f\"Order not found (pair: {pair} id: {order_id}). Message: {e}\"\n                ) from e\n        except ccxt.InvalidOrder as e:\n            raise InvalidOrderException(\n                f\"Tried to get an invalid order (pair: {pair} id: {order_id}). Message: {e}\"\n            ) from e\n        except ccxt.DDoSProtection as e:\n            raise DDosProtection(e) from e\n        except (ccxt.OperationFailed, ccxt.ExchangeError) as e:\n            raise TemporaryError(\n                f\"Could not get order due to {e.__class__.__name__}. Message: {e}\"\n            ) from e\n        except ccxt.BaseError as e:\n            raise OperationalException(e) from e\n\n    @retrier(retries=API_FETCH_ORDER_RETRY_COUNT)\n    def fetch_order(self, order_id: str, pair: str, params: dict | None = None) -> CcxtOrder:\n        if self._config[\"dry_run\"]:","sourceCodeStart":1674,"sourceCodeEnd":1710,"githubUrl":"https://github.com/freqtrade/freqtrade/blob/1c8edfe4d1e8d11bd4b40e8fc3237c26c3a60e15/freqtrade/exchange/exchange.py#L1674-L1710","documentation":"In fetch_order_emulated (used when the exchange lacks a unified fetchOrder), both fetch_open_order and fetch_closed_order returned ccxt.OrderNotFound, so the order is neither open nor closed on the exchange. The result is RetryableOrderError — freqtrade expects this may resolve shortly (e.g. ordering lag) and retries it.","triggerScenarios":"Calling fetch_order on an exchange like this right after order creation when the exchange has not indexed the order yet; querying a fully expired/culled order; querying a wrong id or wrong pair.","commonSituations":"Race between create_order and immediate fetch_order on slow exchanges; per-user order-history retention windows dropping old orders; pagination/timeframe limits on fetch_closed_order.","solutions":["Retry after a short delay — RetryableOrderError exists exactly for eventual-consistency lag","Confirm pair and order_id match the create response exactly","For old orders, query via fetch_closed orders with time window (fetch_orders) instead of single-order fetch"],"exampleFix":null,"handlingStrategy":"retry","validationCode":null,"typeGuard":null,"tryCatchPattern":"from freqtrade.exceptions import RetryableOrderError\ntry:\n    order = exchange.fetch_order(order_id, pair)\nexcept RetryableOrderError:\n    time.sleep(5)\n    order = exchange.fetch_order(order_id, pair)  # eventual consistency on emulated fetch","preventionTips":["Wait a beat between create_order and fetch_order on slow exchanges","Confirm pair/id exactly match the create response","For old orders, query fetch_orders over a time window instead"],"tags":["order-not-found","retry","ccxt","eventual-consistency","freqtrade"],"backgroundTag":null,"analyzedSha":"1c8edfe4d1e8d11bd4b40e8fc3237c26c3a60e15","analyzedAt":"2026-08-15T05:09:08.096Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}