コード例 #1
0
ファイル: PayboxDirect.php プロジェクト: benmorel/paybox
 /**
  * @param \Paybox\PayboxDirectRequest $request An instance of a Paybox request object.
  *
  * @return \Paybox\PayboxDirectResponse The Paybox response.
  *
  * @throws \GuzzleHttp\Exception\RequestException If the communication with the server fails.
  */
 public function execute(PayboxDirectRequest $request)
 {
     $values = $request->getValues();
     $values['SITE'] = $this->paybox->getSite();
     $values['RANG'] = $this->paybox->getRank();
     $values['VERSION'] = '00104';
     $values['DATEQ'] = gmdate('dmY');
     // dmYHis
     $values['NUMQUESTION'] = $this->getNumQuestion();
     $values['HASH'] = 'SHA512';
     $values['HMAC'] = $this->paybox->hashHMAC($values);
     $httpClient = new Client();
     $response = $httpClient->request('POST', $this->url, ['form_params' => $values]);
     $body = (string) $response->getBody();
     return new PayboxDirectResponse($body);
 }