the order is in progress, but the response of the api order is executed

My bot worked for 3 years, everything was fine. We have been experiencing problems lately when requesting order status. And also when receiving a list of open orders.
To check the status of the order, I use the request ‘GET’, 'https://api.binance.com/api/v3/order and the response comes like FILLED or NEW, but the last month the response may come FILLED, but the order still remains unfulfilled and my bot realizes that there is no more order.
I tried to add an additional check with a ‘GET’ request, 'https://api.binance.com/api/v3/openOrders, but this also does not always work correctly, once a response may come with orders, and the second time the response will be empty !!!
It started a month ago and this problem is experienced not only by me, but also by 100 other people!

Hello life_is_a_game, did you solved this problem?
I’ve the same problem!

Same problem here still, my app is periodically checking if there are no open orders (status NEW), and if there are none, depending on business logic, it will attempt to open a new order.

The problem is, it randomly says there are no open orders when there clearly still are. Sometimes it responds no open orders, sometimes it says there are. Flakey.

Sorry to hear this, do you mind sharing more details from this question.

  1. when GET /api/v3/order returns order with FILLED status, how do you think it’s “still remains unfulfilled”

  2. For /api/v3/openOrders that returns different response, I don’t see anything wrong here. This endpoints returns only orders in OPEN (aka NEW) status. If the orders are all cancelled or filled, there will be no data returned from this endpoint.

If you have any further concern, please give some specific data for review.

thank you

my bot’s code is designed so that after creating a sell order after buying a coin, it starts making a GET request, /api/v3/order, and if it receives a FILLE response, it thinks that the order executed in full and starts the purchase cycle anew. how did I know? I made a log with checking and saving the order status to a file, after which I looked in TabTrader, as well as the exchange window in the browser, and there the orders continued to remain active, although the bot received a response that the order was executed. My program has been working for more than 3 years, problems arose within a month, my clients began to write to me with a complaint about incorrect work. I tried to use additionally GET, api/v3/openOrders to get the entire list of orders after checking GET, api/v3/order, but the answer is sometimes comes completely empty, by the way, because of this, I initially abandoned this verification method. Since this problem has been present since the day your exchange was in operation, and the list of orders often returned empty instead of the list of open orders.

!https://bnb-prod-mbx-forum-uploads.s3.dualstack.ap-northeast-1.amazonaws.com/original/1X/0eee105225b35e35c2246d3fabbb999d27c8ffbc.jpeg

I created a sell order and got the order number 10254683, after which I make a request to check the status of the order in response I get an error -2013 NO_SUCH_ORDER

  • Order does not exist.

at the time of verification and further, the order is displayed in the web interface. what pause should be made between requests in order to receive the correct response from the exchange?

Because I don’t know how the web interface implemented, but I’m happy to share the order status from each endpoint.

  1. When POST /api/v3/order is sent and returned with NEW, the order in the server side is NEW (aka Open order)

  2. When request GET /api/v3/order is returned with FILLED, the order is filled in the backend. If the order in client side is still NEW, should update to FILLED.

  3. If the order is FILLED, send the request DELETE /api/v3/order will return Order does not exist, because it’s not in NEW status.

Hope this will be helpful to understand how order status is working behind these endpoints.