Mr Macron's office on Tuesday confirmed a video that is widely circulating online.
The French president can be seen greeting the public waiting for him behind barriers in the town of Tain-l'Hermitage after he visited a high school that is training students to work in hotels and restaurants.
The video shows a man slapping Mr Macron in the face and his bodyguards pushing the man away as the French leader quickly leaves the scene.
French news broadcaster BFM TV said two people have been detained by police.
Mr Macron has not commented yet on the incident and continued his visit.
Speaking at the National Assembly, prime minister Jean Castex said "through the head of state, that's democracy that has been targeted", in comments prompting loud applause from politicians from all ranks, standing up in a show of support.
"Democracy is about debate, dialogue, confrontation of ideas, expression of legitimate disagreements, of course, but in no case it can be violence, verbal assault and even less physical assault," Mr Castex said.
Far-right leader Marine Le Pen firmly condemned on Twitter "the intolerable physical aggression targeting the president of the Republic".
Visibly fuming, she said later that while Mr Macron is her top political adversary, the assault was "deeply, deeply reprehensible".
Less than one year before France's next presidential election and as the country is gradually reopening its pandemic-hit economy, Mr Macron last week started a political "tour de France," seeking to visit French regions in the coming months to "feel the pulse of the country".
Mr Macron has said in an interview he wanted to engage with people in a mass consultation with the French public aimed at "turning the page" of the pandemic and preparing his possible campaign for a second term.
The attack follows mounting concerns in France about violence targeting elected officials, particularly after the often-violent "yellow vest" economic protest movement that repeatedly clashed with riot officers in 2019.
Reporting by PA