/** * @param mixed $parameters * * @return AuthResponse|VerifySigResponse */ public function sendData($parameters) { /** * @var VerifySigResponse $response */ $response = parent::sendData($parameters); if ($response->isSuccessful()) { // a few additional parameters that need to be passed for 3D-Secure transactions $parameters = $this->getParameters(); $parameters['cavv'] = $response->getParam('cavv'); $parameters['eci'] = $response->getParam('eci'); $parameters['xid'] = $response->getParam('xid'); /** * Now finally, do our authorisation * * @var AuthRequest $request * @var AuthResponse $response */ $request = new AuthRequest($this->httpClient, $this->httpRequest); $request->initialize($parameters); $response = $request->send(); } return $response; }
protected function createResponse($data) { /** * We need to inspect this response to see if the customer is actually * enrolled in the 3D Secure program. If they're not, we can go ahead * and do a normal auth instead. */ $response = $this->response = new EnrolmentResponse($this, $data); if (!$response->isEnrolled()) { $request = new AuthRequest($this->httpClient, $this->httpRequest); $request->initialize($this->getParameters()); $response = $request->send(); } return $response; }