Metodo de pago Servired para Magento

Estado
Cerrado para nuevas respuestas

Nexe

Nuevo usuario
Buenos dias,

Tengo un problema con el módulo de Servired versión 1.0.28, tengo la versión 1.3.2.3 de Magento, y me da una pàgina en blanco al llegar a la pàgina de pago.
Estaría muy agradecido si alguien nos da alguna pista, no vemos ningun error y llevamos un par de dias intentando detectar que està sucediendo.
Dejo la dirección del comercio en pruebas:

http://www.concept103.com/shop/

Muchas gracias a todos,

Nexe
 

gdecaceres

Miembro
por lo que veo en el content no te pinta nada, has mirado si te rula sin meter el diseño ese nuevo? te lo digo porque el redirect lo unico que tiene es una funcion javascript y te esta dando algun fallo de php por algo que mas modificado porque si te fijas deja de pintar codigo, cambia en el bootstrap el debug de fallos para ke te lo muestre y te cantara el error compi :)

booooootstrap = index.php de la apli veras
ini_set('display_errors', 0);

oido?
 

Nexe

Nuevo usuario
gracias por tu respuesta, hemos modificado el index para descomentar la linia ini_set('display_errors', 0); pero no da ningun error.
Ahore lo que hemos echo es volver a instalar el modulo de servired, y volver a empezar....
Vamos a verificar de no haber dejado algo abierto.
Gracias
 

Nexe

Nuevo usuario
El problema sigue persistiendo, aunque ahora, aparece respuesta de no llegar al TPV, però almenos de visualiza algo.
Dejo el fichero que nos pareces suceptinle de tener el error pero que no vemos.

Fichero: app/code/local/Mage/Servired/Model/Standart.php

Función:

public function getStandardCheckoutFormFields() {
$a = $this->getQuote()->getShippingAddress();
//getQuoteCurrencyCode

$order = Mage::getModel('sales/order');
$order->loadByIncrementId($this->getCheckout()->getLastRealOrderId());

$convertor = Mage::getModel('sales/convert_order');
$invoice = $convertor->toInvoice($order);

$amount = $order->getTotalDue() * 100;
$ord = $this->getCheckout()->getLastRealOrderId();

//$code = $this->getConfigData('merchantnumber');
$code = $this->getConfigData('merchantterminal');
$currency = $this->convertToServiredCurrency($order->getOrderCurrency());
$clave = $this->getConfigData('merchantpassword');

if($this->getConfigData('signaturetype') == 2){
//$merchurl = $this->getConfigData('merchanturl');
$transtype = (int)$this->getConfigData('merchanttransactiontype');
$urlMerchant = $this->getConfigData('merchanttitular');
//$message = "$amount$ord$code$currency$transtype$merchurl$clave"; //formula sha-1 completo ampliado ......
$message = "$code$amount$ord$currency$transtype$urlMerchant$clave";
} else {
//$message = "$amount$ord$code$currency$clave"; // para sha-1 completo
$message = "$code$amount$ord$currency$transtype$urlMerchant$clave";
}
$signature = strtoupper(sha1($message));

$sArr = array(
//Obligatorio. Para Euros las dos últimas posiciones se consideran decimales.
'Ds_Merchant_Amount' => $order->getTotalDue() * 100, // convert to minor units

/*Obligatorio. Valor 978 para Euros, 840 para Dólares y 826 para libras esterlinas. 4 se considera su longitud máxima */
'Ds_Merchant_Currency' => $currency,

/*Obligatorio. Los 4 primeros dígitos deben ser numéricos, para los dígitos restantes solo utilizar los siguientes caracteres ASCII
Del 30 = 0 al 39 = 9
Del 65 = A al 90 = Z
Del 97 = a al 122 = z */
'Ds_Merchant_Order' => $ord,

//Obligatorio. 125 se considera su longitud máxima. Este campo se mostrará al titular en la pantalla de confirmación de la compra.
//'Ds_Merchant_ProductDescription' => $this->getConfigData('mensagen'),
//HAY QUE VER COMO LO TRATO

//(Opcional) Email del comercio a la que se envian los resultados de las operaciones en funcion del valor del campo Ds_Merchant_EmailOption
'Ds_Merchant_Email' => $this->getConfigData('merchantemail'),

/*Campo de un digito que indica cuando se envia un mail al Email del comercio en funcion del resultado de la operacion.
Puede tomar los siguientes valores:
0 - No se envia mail nunca
1 - Se envia mail para todas las operaciones
2 - Se envia mail si la operación finaliza con exito
3 - Se envia mail si la operacion falla*/
'Ds_Merchant_EmailOption' => (int)$this->getConfigData('merchantemailoptions'),

//(Opcional) Campo opcional donde el comercio puede anexar datos adicionales a la peticion del TPV los cuales pueden ser recuperados en la URLOnline, URLok y URLko.
'Ds_Merchant_UrlData' => '',

//Obligatorio. Su longitud máxima es de 60 caracteres. Este campo se mostrará al titular en la pantalla de confirmación de la compra.
//'Ds_Merchant_Titular' => $this->getConfigData('merchanttitular'),
'Ds_Merchant_WebReference' => $this->getConfigData('merchanttitular'),
//HAY QUE VER COMO LO TRATO

//Obligatorio. Código FUC asignado al comercio
//'Ds_Merchant_MerchantCode' => $this->getConfigData('merchantnumber'),

//Obligatorio si el comercio tiene notificación “on line”. URL del comercio que recibirá un post con los datos de la transacción.
//'Ds_Merchant_MerchantUrl' => $this->getConfigData('merchanturl'),

//Obligatorio: si se envía será utilizado como URLOK.
'Ds_Merchant_UrlOK' => Mage::getUrl('servired/standard/success'),

//Obligatorio: si se envía será utilizado como URLKO.
'Ds_Merchant_UrlKO' => Mage::getUrl('servired/standard/cancel'),

//OPCIONAL Será el nombre del comercio que aparecerá en el ticket del cliente
//'Ds_Merchant_MerchantName' => $this->getConfigData('merchanttitular'),

/*El Valor 0, indicará que no se ha determinado el idioma del cliente (opcional). Otros valores posibles son:
Castellano-001, Inglés-002, Catalán-003,
Francés-004, Alemán-005, Portugués-009.
3 se considera su longitud máxima */
'Ds_Merchant_ConsumerLanguage' => $this->calcLanguage(Mage::app()->getLocale()->getLocaleCode()),

//Obligatorio. Es para completar la firma del comercio
'Ds_Merchant_MerchantSignature' => $signature,

//Obligatorio. Número de terminal que le asignará su banco. Por defecto valor “001”. 3 se considera su longitud máxima
'Ds_Merchant_Terminal' => $this->getConfigData('merchantterminal'),

//OPCIONAL Representa la suma total de los importes de las cuotas. Las dos últimas posiciones se consideran decimales.
//'Ds_Merchant_SumTotal' => '',

/* Campo opcional para el comercio para indicar qué tipo de transacción es. Los posibles valores son:
00 – Autorización
46 – Preautorización
*/
'Ds_Merchant_TransactionType' => (int)$this->getConfigData('merchanttransactiontype'),

//Campo opcional para el comercio para ser incluidos en los datos enviados por la respuesta “on-line” al comercio si se ha elegido esta opción.
//'Ds_Merchant_MerchantData' => '',

//Frecuencia en días para las transacciones recurrentes (obligatorio para recurrentes)
//'Ds_Merchant_DateFrecuency' => '',

//Formato yyyy-MM-dd fecha límite para las transacciones Recurrentes (Obligatorio para recurrentes )
//'Ds_Merchant_ChargeExpiryDate' => '',

/*
Opcional. Representa el código de autorización necesario para identificar una transacción recurrente sucesiva en las devoluciones de operaciones recurrentes sucesivas.
Obligatorio en devoluciones de operaciones recurrentes.
*/
//'Ds_Merchant_AuthorisationCode' => $this->getConfigData('authsms'),

/*
Opcional. Formato yyyy-MM-dd. Representa la fecha de la operación recurrente sucesiva, necesaria para identificar la transacción en las devoluciones de operaciones recurrentes sucesivas.
Obligatorio para las devoluciones de operaciones recurrentes.
*/
//'Ds_Merchant_TransactionDate' => '',

'callbackurl' => Mage::getUrl('servired/standard/callback'),
'windowstate' => $this->getConfigData('windowstate'),
);
//
// Make into request data
//
$sReq = '';
$rArr = array();
foreach ($sArr as $k=>$v) {
/* replacing & char with and. otherwise it will break the post */
$value = str_replace("&","and",$v);
$rArr[$k] = $value;
$sReq .= '&'.$k.'='.$value;
}

return $rArr;
}
 

error403

Miembro
@mariana supongo que la url la habras corregido, o copiado mal, poruqe tiene un espacio que no deberia ir adelante de pagoonline.com:
return "http://www. pagoonline.com /grupo/A_merc_Credit.jsp?b=$a"; // esta es url de pruebas.....

@Nexe Me va bien pero con error en los datos del comerciante con un "SIS0008 Error falta Ds_Merchant_MerchantCode" Comprueba el codigo de comercio en la configuracion del tpv
 

spasmos

Nuevo usuario
Gracias error403,

Nexe y yo estamos involucrados en este proyecto. Ese error que te ha dado es imposible ya que Ds_Merchant_MerchantCode no se utiliza y como se puede apreciar esta comentado en la última función que publicó nexe. Puede ser que hayas visualizado el error en un momento en que los ficheros modificados y los originales del módulo de servired estuvieran mezclados.

Acabo de subir todas las modificaciones. Las estructuras que utilizo son las siguientes:

En app/code/local/Mage/Servired/etc/system.xml:
Insertar CODE, HTML o PHP:
				<servired_standard translate="label" module="servired">
					<label>Servired</label>
					<frontend_type>text</frontend_type>
					<sort_order>1</sort_order>
					<show_in_default>1</show_in_default>
					<show_in_website>1</show_in_website>
					<show_in_store>0</show_in_store>
					<fields>
						<active translate="label" module="payment">>
							<label>Habilitado</label>
							<frontend_type>select</frontend_type>
							<source_model>adminhtml/system_config_source_yesno</source_model>
							<sort_order>10</sort_order>
							<show_in_default>1</show_in_default>
							<show_in_website>1</show_in_website>
							<show_in_store>0</show_in_store>
						</active>
						<title translate="label" module="payment">>
							<label>Titulo</label>
							<frontend_type>text</frontend_type>
							<sort_order>20</sort_order>
							<show_in_default>1</show_in_default>
							<show_in_website>1</show_in_website>
							<show_in_store>0</show_in_store>
						</title>
						<allowspecific translate="label" module="payment">>
							<label>Pago para determinados paises</label>
							<frontend_type>allowspecific</frontend_type>
							<sort_order>30</sort_order>
							<source_model>adminhtml/system_config_source_payment_allspecificcountries</source_model>
							<show_in_default>1</show_in_default>
							<show_in_website>1</show_in_website>
							<show_in_store>1</show_in_store>
						</allowspecific>
						<specificcountry translate="label" module="payment">>
							<label>Pago para paises especificos</label>
							<frontend_type>multiselect</frontend_type>
							<sort_order>40</sort_order>
							<source_model>adminhtml/system_config_source_country</source_model>
							<show_in_default>1</show_in_default>
							<show_in_website>1</show_in_website>
							<show_in_store>1</show_in_store>
						</specificcountry>
						<autoinvoice translate="label">
							<label>Crear factura automaticamente</label>
							<frontend_type>select</frontend_type>
							<comment>Solo si el pago es realizado con exito</comment>
							<source_model>adminhtml/system_config_source_yesno</source_model>
							<sort_order>41</sort_order>
							<show_in_default>1</show_in_default>
							<show_in_website>1</show_in_website>
							<show_in_store>1</show_in_store>
						</autoinvoice>
						<order_status translate="label" module="payment">
							<label>New order status</label>
							<frontend_type>select</frontend_type>
							<source_model>adminhtml/system_config_source_order_status</source_model>
							<sort_order>45</sort_order>
							<show_in_default>1</show_in_default>
							<show_in_website>1</show_in_website>
							<show_in_store>1</show_in_store>
						</order_status>
						<redirect_status translate="label">
							<label>Estado para pedido al entrar en TPV</label>
							<frontend_type>select</frontend_type>
							<source_model>adminhtml/system_config_source_order_status</source_model>
							<sort_order>46</sort_order>
							<show_in_default>1</show_in_default>
							<show_in_website>1</show_in_website>
							<show_in_store>1</show_in_store>
						</redirect_status>
						<error_status translate="label">
							<label>Estado para pedido cancelado por servired</label>
							<frontend_type>select</frontend_type>
							<source_model>adminhtml/system_config_source_order_status</source_model>
							<sort_order>47</sort_order>
							<show_in_default>1</show_in_default>
							<show_in_website>1</show_in_website>
							<show_in_store>1</show_in_store>
						</error_status>
						<merchantterminal translate="label">
							<label>Numero de Terminal</label>
							<comment>Numero de Terminal otorgado por Servired al Comercio</comment>
							<frontend_type>text</frontend_type>
							<sort_order>100</sort_order>
							<show_in_default>1</show_in_default>
							<show_in_website>1</show_in_website>
							<show_in_store>1</show_in_store>
						</merchantterminal>
						<merchanttitular translate="label">
							<label>Nombre del Comercio</label>
							<comment>El nombre proporcionado por Credit Andorra</comment>
							<frontend_type>text</frontend_type>
							<sort_order>60</sort_order>
							<show_in_default>1</show_in_default>
							<show_in_website>1</show_in_website>
							<show_in_store>1</show_in_store>
						</merchanttitular>
						<merchantpassword translate="label">
							<label>Clave del Comercio</label>
							<comment>Clave otorgada por Credit Andorra (para encriptacion)</comment>
							<frontend_type>text</frontend_type>
							<sort_order>81</sort_order>
							<show_in_default>1</show_in_default>
							<show_in_website>1</show_in_website>
							<show_in_store>1</show_in_store>
						</merchantpassword>
						<merchantemail translate="label">
							<label>Email del comercio</label>
							<comment>Se envian los resultados de las operaciones en funcion del valor del campo</comment>
							<frontend_type>text</frontend_type>
							<sort_order>82</sort_order>
							<show_in_default>1</show_in_default>
							<show_in_website>1</show_in_website>
							<show_in_store>1</show_in_store>
						</merchantemail>
						<merchantemailoptions translate="label">
							<label>Gestion del Email del comercio</label>
							<comment>Indica cuando se envia un mail al Email del comercio en funcion del resultado de la operacion.</comment>
							<frontend_type>select</frontend_type>
							<source_model>servired/system_config_source_emailoptions</source_model>
							<sort_order>83</sort_order>
							<show_in_default>1</show_in_default>
							<show_in_website>1</show_in_website>
							<show_in_store>1</show_in_store>
						</merchantemailoptions>
						<mensagen translate="label">
							<label>Mensaje Generico</label>
							<comment>Mensaje para mostrar en Resumen de tarjeta del Cliente</comment>
							<frontend_type>text</frontend_type>
							<sort_order>70</sort_order>
							<show_in_default>1</show_in_default>
							<show_in_website>1</show_in_website>
							<show_in_store>1</show_in_store>
						</mensagen>
						<sendmailorderconfirmation translate="label">
							<label>Enviar confirmacion de mail</label>
							<frontend_type>Select</frontend_type>
							<sort_order>71</sort_order>
							<source_model>adminhtml/system_config_source_yesno</source_model>
							<show_in_default>1</show_in_default>
							<show_in_website>1</show_in_website>
							<show_in_store>1</show_in_store>
						</sendmailorderconfirmation>
						<signaturetype translate="label">
							<label>Metodo para la firma</label>
							<frontend_type>select</frontend_type>
							<sort_order>80</sort_order>
							<source_model>servired/system_config_source_signaturemethod</source_model>
							<show_in_default>1</show_in_default>
							<show_in_website>1</show_in_website>
							<show_in_store>1</show_in_store>
						</signaturetype>
						
						<merchanttransactiontype translate="label">
							<label>Tipo de Transaccion</label>
							<frontend_type>select</frontend_type>
							<source_model>servired/system_config_source_transactype</source_model>
							<sort_order>110</sort_order>
							<show_in_default>1</show_in_default>
							<show_in_website>1</show_in_website>
							<show_in_store>1</show_in_store>
						</merchanttransactiontype>
						<merchantdata translate="label">
							<label>Datos del Comercio</label>
							<frontend_type>text</frontend_type>
							<sort_order>120</sort_order>
							<show_in_default>1</show_in_default>
							<show_in_website>1</show_in_website>
							<show_in_store>1</show_in_store>
						</merchantdata>
						<windowstate translate="label">
							<label>Estado de la Ventana</label>
							<frontend_type>select</frontend_type>
							<source_model>servired/system_config_source_windowstate</source_model>
							<sort_order>130</sort_order>
							<show_in_default>1</show_in_default>
							<show_in_website>1</show_in_website>
							<show_in_store>1</show_in_store>
						</windowstate>
						<urlservired translate="label">
							<label>Entorno Real de trabajo</label>
							<comment><![CDATA[Entorno real: "https://sis.sermepa.es/sis/realizarPago" <br> Entorno de Pruebas: "https://sis-t.sermepa.es:25443/sis/realizarPago"]]></comment>
							<frontend_type>select</frontend_type>
							<source_model>adminhtml/system_config_source_yesno</source_model>
							<sort_order>140</sort_order>
							<show_in_default>1</show_in_default>
							<show_in_website>1</show_in_website>
							<show_in_store>1</show_in_store>
						</urlservired>
						<specificurl translate="label">
							<label>Specific Url</label>
							<comment>If this field is empty takes the data from previous field</comment>
							<frontend_type>text</frontend_type>
							<sort_order>150</sort_order>
							<show_in_default>1</show_in_default>
							<show_in_website>1</show_in_website>
							<show_in_store>1</show_in_store>
						</specificurl>
					</fields>
				</servired_standard>
 

spasmos

Nuevo usuario
Y en la funcion publicada anteriormente de app/code/local/Mage/Servired/Model/Standart.php:

PHP:
public function getStandardCheckoutFormFields() {
		$a = $this->getQuote()->getShippingAddress();
		//getQuoteCurrencyCode

		$order = Mage::getModel('sales/order');
		$order->loadByIncrementId($this->getCheckout()->getLastRealOrderId());

		$convertor = Mage::getModel('sales/convert_order');
		$invoice = $convertor->toInvoice($order); 

		$amount = $order->getTotalDue() * 100;
		$ord = $this->getCheckout()->getLastRealOrderId();

		$code = $this->getConfigData('merchantterminal');
		$currency = $this->convertToServiredCurrency($order->getOrderCurrency());
		$clave = $this->getConfigData('merchantpassword');

		if($this->getConfigData('signaturetype') == 2){
			$transtype = (int)$this->getConfigData('merchanttransactiontype');
			$urlMerchant = $this->getConfigData('merchanttitular');
			
			$message = "$code$amount$ord$currency$transtype$urlMerchant$clave";
		} else {
			$message = "$code$amount$ord$currency$transtype$urlMerchant$clave";
		}
		$signature = strtoupper(sha1($message));

		$sArr = array(
			'Ds_Merchant_Amount'				=>	$order->getTotalDue() * 100,	// convert to minor units

			'Ds_Merchant_Currency'				=>	$currency,

			'Ds_Merchant_Order'					=> $ord,
			
			'Ds_Merchant_Email'			=>	$this->getConfigData('merchantemail'),
			
			'Ds_Merchant_EmailOption'			=>	(int)$this->getConfigData('merchantemailoptions'),
			
			'Ds_Merchant_UrlData'			=>	'',

			'Ds_Merchant_WebReference'				=>	$this->getConfigData('merchanttitular'),
			

			'Ds_Merchant_UrlOK'					=>	Mage::getUrl('servired/standard/success'),

			'Ds_Merchant_UrlKO'					=>	Mage::getUrl('servired/standard/cancel'),

			'Ds_Merchant_ConsumerLanguage'		=>	$this->calcLanguage(Mage::app()->getLocale()->getLocaleCode()),

			'Ds_Merchant_MerchantSignature'		=>	$signature,

			'Ds_Merchant_Terminal'				=>	$this->getConfigData('merchantterminal'),

'Ds_Merchant_TransactionType'		=>	(int)$this->getConfigData('merchanttransactiontype'),

			'callbackurl'						=>	Mage::getUrl('servired/standard/callback'),
			'windowstate'						=>	$this->getConfigData('windowstate'),
		);
		
		$sReq = '';
		$rArr = array();
		foreach ($sArr as $k=>$v) {
			$value =  str_replace("&","and",$v);
			$rArr[$k] =  $value;
			$sReq .= '&'.$k.'='.$value;
		}

		return $rArr;
	}
No conseguimos ver donde esta el error. Me puedes indicar donde puedo activar el ini_set('display_errors', 0); ya que a pesar de haberlo activado en un fichero sigue sin aparecer nada y no puedo mirar de gestionar el error.

Muchas gracias...
 

carlosdelmolino

Nuevo usuario
Gracias Defcon por esta contribución, es grandiosa!

Yo lo acabo de instalar, después de 45 días la caixa me dió los datos del tpv...

Al parecer todo funciona ok, tengo la última actualización de magento instalada.

Pero no sé como cambiar algunas cosas:

-Uno de los pedidos lo hice con los datos erroneos a propósito para ver el mensaje de error pero aún así ese producto que está como pedido cancelado se ha restado del stock!

-Cuando estoy haciendo el pedido en otro idioma q no sea español en la fase de payment confirmation me sale:
Al pinchar en continuar te derivaremos a la pasarela de pago de La Caixa, ningún dato de la tarjeta se guarda en nuestros servidores, lo que hace los pagos 100% seguros.
En Español y yo quiero que esto cambie en función del idioma escogido.

-¿Por qué se queda el estado del pedido en pendiente si la caixa ha confirmado el pago?

PD: ¿Alguien sabe como se llama en el backend el email que llega cuando ha fallado el pago? Es que no sé a que campo tengo que aplicar la plantilla, me refiero al email de Order update.
 
Última edición:

error403

Miembro
Hay que traducir las lineas a cada idioma, en su csv respectivo.
 

Manusan

Nuevo usuario
Buenas tardes. Me gustaría saber si es posible adaptar el módulo de pago de la Caixa a Cajamar y cuáles son los pasos para tal fin. Gracias a todos y enhorabuena por vuestro trabajo.
 

error403

Miembro
Gracias pero hombre un poco más de info me sería muy útil.
Sabes como se llama el csv? en que carpeta está?
El archivo se llama Mage_PaymentServired.csv, por defecto esta en el locale ca_ES, la ruta completa seria:
app/locale/ca_ES/Mage_PaymentServired.csv
Perdon por la tardanza, y los pocos datos administrados la ultima vez

Buenas tardes. Me gustaría saber si es posible adaptar el módulo de pago de la Caixa a Cajamar y cuáles son los pasos para tal fin. Gracias a todos y enhorabuena por vuestro trabajo.
Todo es posible :bleh: pero habria que ver bien la documentacion de Cajamar, he visto por ahi que se han adaptado ya varios bancos.
En app/code/local/Mage/Servired/Model/Standard.php es donde se genera la mayor parte del trabajo, despues habria que modificar tambien los xml segun los datos que pida tu banco, quitar o agregar.
 

fede84

Nuevo usuario
Transaccion denegada con pago por transferencia en Servired

Hola buenas, tengo instalada la extension del TPV servired la Caixa y cuando entramos en este nos da 2 opciones: pagar con tarjeta de credito o pago por transferencia bancaria. El primero funciona sin problemas pero en el segundo caso el tpv te dice que ingreses x dinero en la cuenta z y al volver a la tienda se muestra un error de Transaccion denegada y al cliente tambien le llegua un correo en este sentido.

Reviso el modulo de administracion del TPV y me sale como pendiente (Todo correcto) pero en el admin de magento me dice que el pedido esta cancelado desde servired.

En el modulo de servired tenemos una opcion Estado para pedido cancelado por servired ; pero claro si la pongo a pendiente y hay un error con una tarjeta no quiero que sea pendiente.

Me leo el manual y para este codigo de pago deberia recibir el codigo 0930 pero no estoy recibiendo nada (no entra en el if count($params) > 0)

$params = $this->getRequest()->getParams();
$session = Mage::getSingleton('checkout/session');
$state = Mage::getModel('servired/standard')->getConfigData('error_status');
if(count($params) > 0){
switch($params['Ds_Response']){
case '101': $message = 'Tarjeta caducada'; break;
case '102': $message = 'Tarjeta en excepci&oacute;n transitoria o bajo sospecha de fraude'; break;
case '104': $message = 'Operaci&oacute;n no permitida para esa tarjeta o terminal'; break;
case '116': $message = 'Disponible insuficiente'; break;
case '118': $message = 'Tarjeta no registrada'; break;
case '129': $message = 'C&oacute;digo de seguridad (CVV2/CVC2) incorrecto'; break;
case '180': $message = 'Tarjeta ajena al servicio'; break;
case '184': $message = 'Error en la autenticaci&oacute;n del titular'; break;
case '190': $message = 'Denegaci&oacute;n sin especificar Motivo'; break;
case '191': $message = 'Fecha de caducidad err&oacute;nea'; break;
case '202': $message = 'Tarjeta en excepci&oacute;n transitoria o bajo sospecha de fraude con retirada de tarjeta'; break;
TODOS ESTOS CASOS FUNCIONAN CORRECTAMENTE
case '0930':
if($params['Ds_PayMethod'] == 'R'){
$message = 'Realizado por Transferencia bancaria'; ESTE ES EL CODIGO QUE DEBERIA SACAR
} else {
$message = 'Realizado por Domiciliacion bancaria';
}
$state = Mage::getModel('servired/standard')->getConfigData('order_status');
break;
case '912':
case '9912': $message = 'Emisor no disponible'; break;
default:
$message = 'Transacci&oacute;n denegada';
break;
}
$message = Mage::helper('servired')->__($message);
$comment = Mage::helper('servired')->__('Pedido cancelado desde servired con error #%s - %s',$params['Ds_Response'],$message);
} else {
$message = Mage::helper('servired')->__('Transacci&oacute;n denegada'); ESTE ES EL CODIGO QUE RECIBO
$comment = Mage::helper('servired')->__('Pedido cancelado desde servired');
}

$order = Mage::getModel('sales/order')->load($session->getLastOrderId());

$order->setState($state,$state,$comment,true);
$order->save();
if (((int)Mage::getModel('servired/standard')->getConfigData('sendmailorderconfirmation')) == 1) {
$order->sendOrderUpdateEmail(true,$message);
}
$session->addError($message);
$this->_redirect('checkout/cart');


Saludos
 
Última edición:

carlosdelmolino

Nuevo usuario
Hola Error 403,

El archivo se llama Mage_PaymentServired.csv, por defecto esta en el locale ca_ES, la ruta completa seria:
app/locale/ca_ES/Mage_PaymentServired.csv
Cuál es la forma correcta de traducir este archivo? Porque si lo abro con un editor d texto plano me aparecen las frases en español y a continuación en catalán separados por una coma.

Cambio estos idiomas por inglés y grabo en la carpeta correspondiente? pongo otra coma y luego el texto en inglés?

Gracias.
 

error403

Miembro
Me leo el manual y para este codigo de pago deberia recibir el codigo 0930 pero no estoy recibiendo nada (no entra en el if count($params) > 0)
Entonces vamos mal, porque esa linea es la que trae la "respuesta" de servired. Te envio privado

Cuál es la forma correcta de traducir este archivo?
Hay editores de archivos csv, como ser el csvEditor, de todas formas y para que mantenga el correcto formato (ya que hay que configurarlo bastante al programa para que tenga el formato que requiere Zend_Translate), es mas facil con un editor de texto, algo mejor que el bloc de notas de windows por que si el servidor es Linux cambia el salto de linea, y no se ve lindo :desentendido:
El formato es el siguiente:
"Mensaje que esta en los templates","Mensaje a traducir"
Ejemplo:
en_US/Mage_PaymentServired.csv
"Transacci&oacute;n denegada","Transaction denied"

en_UK/Mage_PaymentServired.csv
"Transacci&oacute;n denegada","Order transaction denied"

Para "escapar" las comillas seria asi:

"Mensaje con ""comillas""","Y lo mismo ""en"" la traduccion"

entonces, en el template estaria:
$this->__('Mensaje con "comillas"');
Y se traduciria en la web como:
Y lo mismo "en" la traduccion
 

fede84

Nuevo usuario
Url ok y ko modulo servired

Hola, tengo un problema con el Tpv en el caso de que se escoja la opcions de transferencia bancaria ya que la pasarela no me devuelve datos a la web.
Les pregunto a los del banco y dicen:
En las transferencias sólo se recibe notificación si tiene configuradas las url ok y ko. En la configuración de su comercio sólo tiene activado que las notificaciones les lleguen por email, en este caso no recibirán notificación.

Desde el panel de administración. donde añado estas urls y que valores son los correspondientes??

Saludos
 

error403

Miembro
Hola, tengo un problema con el Tpv en el caso de que se escoja la opcions de transferencia bancaria ya que la pasarela no me devuelve datos a la web.
Les pregunto a los del banco y dicen:
En las transferencias sólo se recibe notificación si tiene configuradas las url ok y ko. En la configuración de su comercio sólo tiene activado que las notificaciones les lleguen por email, en este caso no recibirán notificación.

Desde el panel de administración. donde añado estas urls y que valores son los correspondientes??

Saludos
Eso se configura en el panel del banco, no recuerdo bien el recorrido, pero estoy seguro que en el banco. Tiene que decir por email y por html o algo similar.

Gracias por la aplicacion...

estoy adaptando esta aplicacion CECA-TPV y tengo la confirmacion del pago pero al regresar a https://www.mitienda.es/index.php/checkout/success/

me dice que se le envio un mail de confirmacion... pro ese mail nunca llega..


en cambio si pongo otro tipo de pago... el email si lo envia
mmmmmmmmm En estos dias lo voy a estar viendo y aviso :pensando:
 

George_Spain

Nuevo usuario
Buenos dias a la comunidad.

Me ocurre lo siguiente:

me descargo ( directemente al servidor, que es LINUX, aunque en local tambien nos ocurre :niidea:) el modulo de SERVIRED via magento connect. Me da ok la instalacion, pero el modulo no aparece por ningun lado. Siguiendo vuestros consejos, y leyendo varios post al respecto, me doy cuenta de que la descarga del archivo tgz me lo ha hecho en otro directorio; es decir, me ha creado una unidad virtual en ../downloader llamada W: y ahí me ha descargado todas las carpetas. He copiado a mano en la ruta correcta donde deberían estar los archivos y sigue sin funcionar. Alguien sabe qué me puede estar ocurriendo? Puede ser que el servidor al ser LINUX haya incompatibilidades?

Llevamos una semana casi con esto y no damos solucion. Por favor si alguien sabe algo al respecto le estaria amuy agradecido.
 

idoia

Nuevo usuario
HOla a todos!!

primeramente, gracias por el trabajo realizado :)

Mi problema es el siguiente, he configurado el metodo de paog servired con los siguientes campos:

FUC Numero de Comercio: Identificacion otorgada por Servired
Nombre del Comercio: nombre
Mensaje Generico: vacio
Enviar confirmacion de mail: si
Metodo para la firma: completo ampliado
Clave del Comercio: Clave otorgada por Servired
Url del Comercio: www.midominio.com
Numero de Terminal: Numero de Terminal otorgado por Servired
Tipo de Transaccion: autentificacion
Datos del Comercio:vacio
Estado de la Ventana: full screen
Entorno Real de trabajo: no
Specific Url: vacio


después he hecho las transacciones de prueba y todo funcionó bien. Pero me han enviado un mail del banco diciendo:

La URL de notificación http que nos está enviando es errónea. Esta url se especifica en el campo: url de notificación (Ds_Merchant_MerchantUrl) .
El error detectado indica: www.midominio.com URL de notificación no válida


sabeis cual es el problema???

muchas gracias a todos por adelantado,
saludos!!!
 
Estado
Cerrado para nuevas respuestas
Arriba