С 16 лет начал трудовую жизнь: был рабочим зерносовхоза, колбасной фабрики, после окончания в 1932 курсов работал счетоводом и помощником бухгалтера Новокузнецкой МТС Кемеровской области.
В 1935-1937 служил в армии в батальоне связи 93-й дивизии в Иркутске.
Демобилизовавшись, был начальником диспетчерского поста НКВД станции Иркутск Сортировочный, в управлении Севдвинлага НКВД инспектором отдела кадров.
В 1941 Вельским РВК Архангельской области призван в армию, окончил Борисовское военно-политическое училище.
В Великой Отечественной войне с марта 1942 – на Северо-Западном, Западном, 3-м Белорусском фронтах, заместитель командира батальона по политчасти 45-й стрелковой бригады, а с февраля 1943 – заместитель командира батальона 291-го полка 63-й дивизии 5-й армии. Дважды ранен.
Капитан, замполит батальона, 23 июня 1944 в районе деревни Ефременки участвовал в прорыве обороны и форсировании реки Лучес. Отличился при ликвидации Витебской группировки и освобождении Вильнюса и Каунаса.
15 августа, находясь в одной из рот, увлек бойцов на прорыв обороны на подступах к Восточной Пруссии, был тяжело ранен, потерял ногу, повторно был ранен в другую и вынесен бойцами с поля боя. Умер от ран.
Звание Героя Советского Союза присвоено 24 марта 1945 посмертно. Именем героя названы село, в котором он родился, школа на родине и улица в Иркутске и Акбулаке.
В 1965 указом Президиума Верховного Совета РСФСР село Сазда переименовано в Шаповалово в память о Герое Советского Союза Шаповалове Иване Егоровиче.
Ныне Шаповалово — село в Акбулакском районе Оренбургской области России.