public function callback($request)
    {
        // If post data exists, process. Otherwise provide error
        if ($this->payment_handler === null) {
            // Redirect to error page
            return $this->redirect(Controller::join_links(
                Director::BaseURL(),
                $this->config()->url_segment,
                'complete',
                'error'
            ));
        }
        
        // Hand the request over to the payment handler
        return $this
            ->payment_handler
            ->handleRequest($request, $this->model);
    }