При изменении корзины данные об этом записываются в базу - как для авторизованных, так и для неавторизованных посетителей.
Также используются куки, но лишь для индентификации посетителя.
Запись корзины в куки напрямую не используется, так как при больших объемах корзины в куки может не уместиться вся информация (обычно хватает примерно на 200 товаров, а если корзина была усложнена доработками, то существенно меньше).
1. При повторном открытии сайта с того же компьютера и браузера будет видна наполненная ранее корзина.
Работает для всех покупателей - как для авторизованных, так и для неавторизованных.
2. При повторном открытии сайта с другого компьютера и при последующей авторизации содержимое запомненной ранее корзины (если такая была наполнена а авторизованном состоянии) добавляется к текущей корзине.
Если товар присутствует в обеих корзинах, то количество устанавливается как максимальное из двух. При превышении количества в наличии количество в корзине уменьшается.
Создавалось для версии 2.3.7.
Скорее всего, годится и для других версий 2.x