Archive products

could see this failing if for whatever reason `is_archived` wasn't in the dict. might be cleaner to use `.get('is_archived', False)`