Índice del Contenido ocultar
1 Que son y como Cambiar el campo SIRET y el campo APE en Prestashop 1.6

Que son y como Cambiar el campo SIRET y el campo APE en Prestashop 1.6

siret-ape

Cuando activamos el módulo B2B de prestashop en el formulario de alta de los clientes tipo empresa hay unos datos que nos pide rellenar cuando un cliente quiere inscribirse, se trata del código SIRET y del código APE. Son campos del sistema francés de identificación fiscal y se corresponden en principio en España con el CIF y CNAE.

SIRET_ APE

 


Para adaptar mejor el formulario a nuestra página en castellano, realizaremos dos cosas:

1.- Cambiar la traducción de los textos para estos campos:
Para ello nos vamos a LOCALIZACIÓN -> Traducciones y cambiamos la traducción en estos dos sitios:

  • Traducciones del panel de administración, grupo AdminCustomer
  • Traducciones del Front Office, grupo Authentication-create-account

SIRET = CIF/NIF
APE = CNAE

CNAE


2.- Modificar las comprobaciones de los campos SIRET y APE:
Ahora debemos modificar las comprobaciones del modulo puesto que el SIRET exige una longitud fija de 14 caracteres de forma obligatoria, esta restricción no nos sirve para el CIF por lo que hay que modificar esta validación por otra que permita numeros y letras sólamente y sin longitud fija.

Nos vamos a nuestro servidor y editamos el fichero /classes/validate.php modificando la function isSiret (aprox. sobre la linea 1034):

     /**
     * Validate SIRET Code
     * @static
     * @param $siret SIRET Code
     * @return boolean Return 
true if is valid
     */

    publicstaticfunction isSiret($siret)

    {

     /* CODIGO ORIGINAL QUE VAMOS A COMENTAR PARA EVITAR LA VALIDACION DEL CODIGO SIRET DE FRANCIA (14 DIGITOS EXACTOS)
        EN ESPANA CORRESPONDE AL CODIGO CIF/NIF PARA PERSONAS JURIDICAS O FISICAS 
        LA NUEVA VALIDACION SERAN DIGITOS Y LETRAS SIN RESTRICCIONES

        if (Tools::strlen($siret) != 14)
            return false;
        $sum = 0;
        for ($i = 0; $i != 14; 
$i++)
        {
            $tmp = ((($i + 1) % 
2) + 1) * intval($siret[$i]);
            if ($tmp >= 10)
                    $tmp -= 9;
            $sum += $tmp;
        }
        return ($sum % 10 === 0);

     FIN DEL CODIGO A COMENTAR PARA LA VALIDACION DEL CODIGO SIRET DE FRANCIA
     A CONTINUACION ES NECESARIO AGREGAR UNA LINEA PARA QUE DEVUELVA UN VALOR A LA FUNCION DE VALIDACION SIRET
     YA QUE HEMOS COMENTADO LA LINEA return ($sum % 10 === 0); ASI QUE LA CAMBIAMOS Y AGREGAMOS LA SIGUIENTE LINEA: */

        return preg_match(‘/^[+0-9.()-]*$/’,$number);

    }

Como se puede apreciar se ha comentado el código la restricción de validación original, en vez de borrarlo, por si se quiere consultar alguna vez. En su lugar agregamos la última linea «return» con una validación mucho menos restrictiva, números y letras sin longitud fija.

 

A continuación modificamos la function isApe (justo debajo de lo anterior):

/**
     * Validate APE Code
     * @static
     * @param $ape APE Code
     * @return boolean Return 
true if is valid
     */

    public static function isApe($ape)
    {
     /* VALIDACION DEL CODIGO APE ORIGINAL (COMENTAR QUE LA VARIABLE TIENE UN LIMITE MAXIMO DE 5 CARACTERES NUMERICOS ESTABLECIDA EN             BASE DE DATOS)
        return (bool)preg_match(‘/^[0-9]{3,4}[a-zA-Z]{1}$/s’, $ape);
     FIN DE VALIDACION DE CODIGO APE ORIGINAL. A CONTINUACION SUSTITUIMOS POR LA SIGUIENTE LINEA: */

        
return (bool)preg_match(‘/^[+0-9.()-]*$/’, $ape);
    }

Lo expuesto en nuestro artículo funciona perfectamente, comprobado sobre la versión estable de Prestashop 1.6.0.5
Este artículo ha sido parcialmente extraido de la siguiente fuente, aunque ha sido corregido (ya que tenía algún error de sintaxis y hacía que Prestashop dejara de funcionar) y mejorado en su explicación hacia un usuario menos experimentado. Se agradece el esfuerzo y dedicación en mejorar Prestashop.
Fuente: http://www.doblelink.com/blog/cambiar-los-campos-siret-y-ape-en-prestashop/

 

Camino de las Aguas 1037003 - Salamanca (España)
923282726 (WhatsApp)
923282726 (Llamar)
Horario: 9:00 a 14:00hTardes cita previa
Boletín de Noticias

© 2026 PROMOCIONALIA más que informática. – Ordenadores, Portátiles, Tablets, Accesorios. Servicio Técnico, Mantenimiento Empresas. Diseño páginas web, Email, Dominios, Hosting. Marketing digital, Social Media Management. Rotulación en vinilo. Distribuidor Fibra y móvil: O2 / Simyo / Digi / Masmovil. Venta, Reparación y Alquiler de Máquinas Arcade Retro. Más de 25 años de experiencia, desde 1997 hasta hoy.

Suscríbete si te interesa nuestro Blog de noticias!