I have a similar problem, but with user credentials.
1) Set up caching on the store side
You can configure EclipseLink caching to expire. You can configure it for TimeToLive or expiration by value. For example, you can set prices to expire after 1, 5, or 10 minutes. Not instantly, but pretty fast and very easy to implement. View the @Cache annotation in EclipseLink. This is what I used.
2) Ask the admin application to contact the store application
It may be worth creating a web service that lives on the side of the store, which will invalidate the cache when called. Kinda is fragile, but may be required depending on your setup.
3) Use cache coordination
EclipseLink has functionality to coordinate caching. I have never used it, but it looks like this might be the best policy for you. For more information, you can check the EclipseLink documentation.
source share