We are working with a third party on developing a Magento plugin for us. This plugin pulls data from an external web service and updates the prices of products in bulk on an interval. For example, it might run every 5 minutes and update the prices of 250 products. In our development testing so far we found that to update the prices of 250 products takes less than 4 seconds. However, if we re-index the the price index (just once after all the updates) it takes almost 3.5 minutes. My question is what do we risk if we just don't re-index prices? What on the site (if anything) will not work right or as expected? Any user experience risks? Issues with user carts, checkouts, or orders?
At the very worst, prices in product listings will show the old price, or the price on the product page won't refresh any catalog pricing rules associated with it. As far as I know, nothing can go wrong in the cart or checkout due to the price index not being up-to-date. This is because when Magento's collect totals procedure runs (the process that generated the grand total, shipping, taxes, and other values whenever the quote gets changed), it gets the prices from the actual tables, not the indexes.
Someone correct me if I'm wrong though, but I think that's fairly accurate.