Constable Mark Pettigrew said the incident occurred about 1.12pm when a 24-year-old Brazilian man, of Queenstown, who had parked too far away from the fuel pump, accelerated backwards, using his left foot to push the accelerator.
His car struck the other man, crushing him against a bollard next to the fuel pump where witnesses said he had been filling up his vehicle's fuel tank.
Const Pettigrew said the injured man was in a stable condition yesterday afternoon with "sore knees and a temporary concussion".
Charges will be laid against the driver of the reversing vehicle, who was also injured and had blood on his face from striking his head against the steering wheel when the car lurched backwards.
BP communications manager Diana Popodopolous confirmed an accident had happened between two customers.
She said staff, all of whom had first-aid training, looked after the concussed man until the ambulance arrived.