The 13-year-old boy, who attends Firrhill High School, was knocked down on Slateford Road shortly after 7.30am yesterday.
He was taken to the Royal Infirmary by ambulance. Witnesses said the accident, next to a bus stop outside Asda, left the schoolboy lying in the middle of the bus lane.
A spokeswoman for Lothian and Borders Police said: “The boy was taken to the ERI with a broken right leg and right shoulder, but is expected to make a full recovery.”
Headteacher at Firrhill High School, Sarah Brown, said: “A pupil of Firrhill High School was hit by a vehicle on his way to school and is now recovering in hospital.
“Our thoughts are with him and his family and we wish him a speedy recovery.”
A spokesman for the Scottish Ambulance Service said a rapid response unit and an ambulance attended the scene.