/** * @param PlaceOrderInfo $neworder * @return NewOrderInfo * @throws \Exception */ public function placeOrder(PlaceOrderInfo $neworder) { Validations::validateGateway($this->client); $params = "order_id=" . $neworder->order_id . "&order_name=" . $neworder->order_name . "&order_price=" . $neworder->order_price . "&customer_name=" . $neworder->customer_name . "&customer_email=" . $neworder->customer_email . "&payment_type=" . $neworder->payment_type . "&image_url=" . $neworder->image_url . "&app_client_name=" . $neworder->app_client_name . "&app_client_version=" . $neworder->app_client_version; $response = Rest::post($this->client->getUri() . "charges/", $this->client->getAuth(), $params, $this->headers); $obj = Factory::newOrderInfo($response); return $obj; }