Просмотренные товары в 1С-Битрикс

В админке битрикса: Настроки -> Настройки модуля -> Интернет магазин

Поставить галочки на «Сохранять просмотренные товары каталога» и «Использовать совместимость для просмотренных товаров каталога»

Для сохранения просмотренных товаров пользователя необходимо в шаблоне компонента bitrix:catalog.element создать файл component_epilog.php и добавить в него:

use \Bitrix\Catalog\CatalogViewedProductTable as CatalogViewedProductTable;
CatalogViewedProductTable::refresh($arResult["ID"], CSaleBasket::GetBasketUserID());

Данные по просмотренным товарам будут сохраняться в таблицу b_catalog_viewed_product

Для вывода просмотренных товаров в 1С-Битрикс предусмотрен компонент bitrix:catalog.products.viewed

<?$APPLICATION->IncludeComponent(
	"bitrix:catalog.products.viewed",
	"catalog",
	[
		"IBLOCK_MODE" => "single",
		"IBLOCK_TYPE" => "catalog",
		"IBLOCK_ID" => 1,
		"SHOW_FROM_SECTION" => "N",
		"HIDE_NOT_AVAILABLE" => "N",
		"CONVERT_CURRENCY" => "Y",
		"BASKET_URL" => "/personal/basket.php",
		"ADD_TO_BASKET_ACTION" => "BUY",
		"PAGE_ELEMENT_COUNT" => "8",
		"SHOW_SLIDER" => "Y",
		"PRICE_CODE" => ["base"],
		//"HIDE_NOT_AVAILABLE_OFFERS" => "L",
	]
);?>