static function throwException($ex)
 {
     ClassNegocio::writelog($ex);
     #En caso de alguna excecpción , redirige a la página de fracaso
     $request = new Request();
     $request->forward("http://" . SITIO_CERT . "/webTrxFracaso.php");
 }
$wsTransactionDetail->buyOrder = $buyOrder;
$wsTransactionDetail->amount = $amount;
//$wsTransactionDetail->sharesNumber = $shareNumber;
//$wsTransactionDetail->sharesAmount = $shareAmount;
$wsInitTransactionInput->transactionDetails = $wsTransactionDetail;
#Instancia la clase que comunica con el webservice tbk
$webpayService = new WsTiendaNormal();
#echo "<pre>";print_r($wsInitTransactionInput);echo "</pre>";die();
#Trata de ejecutar el método
try {
    $initTransactionResponse = $webpayService->initTransaction(array("wsInitTransactionInput" => $wsInitTransactionInput));
} catch (SoapFault $exception) {
    ClassNegocio::throwException($exception);
    die;
}
#Obtiene la respuesta y la válida con el certificado público de Tbk
$xmlResponse = $webpayService->soapClient->__getLastResponse();
$soapValidation = new SoapValidation($xmlResponse, SERVER_CERT);
$validationResult = $soapValidation->getValidationResult();
if (!$validationResult) {
    # Si la respuesta no es válida, fracaso.
    $exception = "Error en Init Trx , la respuesta no es válida.";
    ClassNegocio::throwException($exception);
    die;
}
# Si la respuesta es válida hace un POST a la url que retorna el metodo con el token indicado
$wsInitTransactionOutput = $initTransactionResponse->return;
$request = new Request();
$params = array("token_ws" => $wsInitTransactionOutput->token);
$request->setParams($params);
$request->forward($wsInitTransactionOutput->url);