status in trigger pending order is not updating correctly

Guhan
Guhan edited December 2025 in Python client
I had two Sell SL order in BANKNIFTY25DEC59000CE one with 455 qty and another with 385 qty. For both SL price is 590.75. This price got breached at 12:44:17 and the market stayed below this price for next 10min.
The problem is one order got partially filled but the status did not change to open, remained trigger pending.
Another order remained in trigger pending status. I had to manually intervene and execute the orders myself.
Now my algo relies on change in status of the order, but it did not happen today.
Is this going to be api's behavior going forward or is it a glitch?
If this is going to be api's behavior how to handle change in order status, that is how to find out whether an order is triggered or not?
I have attached kite screen shot of one of the order.

Tagged:
  • salim_chisty
    Partial fills do not automatically change the order status — the status stays TRIGGER PENDING until the entire order is filled or cancelled. Please check this support article for more details.
  • Guhan
    Guhan edited December 2025
    okay I have few more doubts now, because I am of the assumption that if a trigger pending limit order is triggered and not filled then the order becomes open limit order.

    If this is not so, then how to find whether trigger pending order is triggered or not?
    Of course I can use quantity to cross check for partial fill or fully filled order, but in case an order is triggered but there is no fill, how to handle that scenario?
  • salim_chisty
    We're checking this and will provide an update shortly.
  • salim_chisty
    You need to check the order update for partially filled or filled quantity via websocket. You can receive real-time order status updates through the Kite Connect WebSocket (KiteTicker) by using the on_order_update callback. Order update from the Websocket API can be considered as an event to fetch the orderbook and check the latest order status and filled quantity. You can check the websocket order update format here. You may check the similar discussion here.
  • Guhan
    Guhan edited December 2025
    Yes, but in this scenario, I did not receive any real-time order status alerts through the WebSocket. As a backup, my algorithm fetches the order book every few seconds to check the status of the orders. The order status remained 'trigger_pending' even though the price went below the stop-loss (SL). I have the order history data in .csv format, but I am unable to upload it here.

    The order history, fetched using the Kite order_history API, also clearly shows that the status of the order remained 'trigger_pending.'

    I believe the screenshot I uploaded earlier clearly captures the issue
  • salim_chisty
    We're checking this and will provide an update shortly.
Sign In or Register to comment.