Pre-open session: When is the opening price actually finalized?

As per NSE, the pre-open session (9:00โ€“9:15) has two parts:

  • Order collection (~9:00โ€“9:08) โ€” 8 minutes for order entry/modification/cancellation, with a system-driven random closure between the 7th and 8th minute.
  • Order matching (immediately after collection closes, until 9:15) โ€” orders are matched at a single equilibrium price, with no modifications/cancellations allowed.

My questions:

  1. Is the dayโ€™s opening price fixed the moment order collection ends (~9:08), or only once the matching/equilibrium price algorithm finishes running? From the NSE circular, it seems the price shown around 9:08 is just the indicative equilibrium price based on orders collected so far, and the actual opening price is only locked in once matching completes.
  2. At what exact time are brokers (members) notified of the finalized equilibrium/opening price? NSEโ€™s circular only mentions that trade confirmations are disseminated to members on their trading terminals โ€œbefore the start of normal marketโ€ โ€” is this notification instant right after matching completes, or does it happen closer to 9:15, during the silent period?
  3. Once finalized, does this price reflect in broker APIs (e.g. Dhan API) at the same time itโ€™s shown on the terminal, or is there a lag before itโ€™s available via API query? If someone is polling the API right after 9:08โ€“9:12, would they get the indicative price, the finalized price, or stale data depending on timing?

Can someone with more clarity on the backend process โ€” or from the Dhan team โ€” confirm all three?

bumping for more visibility.