cache product info in the client
convey product info back to the server