Price is driven by a formula. it can fit all your needs :
Price = cartype_Fare + (distance x distance_fare ) + (duration x duration_fare) + (nb_seats x seat_fare) + (nb_Toll x toll_fare) With a minimum of minimum_price.
Each variable can be change in back office :
Thanks to ‘pricing rules’ feature, it is possible overwrite formula with a fixed price for specific ride. e.g All rides from everywhere in city to a specific airport with a specific car.