private function callRequestPayment($orderId, $parameters)
 {
     $result = array();
     try {
         $key = 'eb9fd1782db9136fe8e5d048e17878ce214ece647a71bb28d2899e33fd2e50b85b9b85c40ab22bd153e2fc54a2b5ab8e55d060e579b85bd9c8423896cbb7a8a0';
         /* key de sitio de pruebas */
         //$key = '5d9a0de6caadad23217d47837ff8643ba93e3f6bf2476227004e77059e5ba564ede8e65c6a0a49bae27ffb01276593a51cc927d3cbfaa45ad47027d548813dad';
         $orderId = $this->encryptText($orderId);
         $parameters = $this->encryptText($parameters);
         $soapClient = new SoapClient('http://190.129.208.178:96/PasarelaServices/CustomerServices?wsdl');
         /* sitio de pruebas */
         //$soapClient = new SoapClient('https://vipagos.com.bo/PasarelaServices/CustomerServices?wsdl');
         $soapReturn = $soapClient->solicitarPago(array('key' => $key, 'parametros' => $parameters));
         $response = explode('&', $this->decryptText($soapReturn->return));
         foreach ($response as $r) {
             $rArray = explode('=', $r);
             $result[$rArray[0]] = utf8_encode($rArray[1]);
         }
         $result['mensajeClienteFinal'] = $this->getMessageEndCustomer($result['codRes'], $result['mensaje']);
         $result['orderId'] = $orderId;
     } catch (Exception $ex) {
         $result['codRes'] = -500;
         $result['mensaje'] = 'Ocurrio un error inesperado. Por favor, intente nuevamente.';
         $result['mensajeClienteFinal'] = $this->getMessageEndCustomer(-500, 'Ocurrio un error inesperado. Por favor, intente nuevamente.');
         $result['orderId'] = $orderId;
     }
     try {
         if ($result['codRes'] != 0) {
             for ($attempt = 0; $attempt < 3; $attempt++) {
                 sleep(60);
                 $soapReturn = $soapClient->consultarEstado(array('key' => $key, 'parametros' => $orderId));
                 $response = explode(';', $this->decryptText($soapReturn->return));
                 if ($response[0] === 0) {
                     $result['codRes'] = 0;
                     $result['mensaje'] = 'Transaccion finalizada exitosamente.';
                     $result['mensajeClienteFinal'] = $this->getMessageEndCustomer(0, 'Transaccion finalizada exitosamente');
                     $result['orderId'] = $orderId;
                     break;
                 }
             }
         }
     } catch (Exception $ex) {
         $result['codRes'] = -500;
         $result['mensaje'] = 'Ocurrio un error inesperado. Por favor, intente nuevamente.';
         $result['mensajeClienteFinal'] = $this->getMessageEndCustomer(-500, 'Ocurrio un error inesperado. Por favor, intente nuevamente.');
         $result['orderId'] = $orderId;
     }
     return $result;
 }