offline function for product fetch