add order functionality