Numeración de pedidos personalizada: configuración y ayuda

Inicio rápido

  1. Sube e instala mprordernumber y después haz clic en Configurar.
  2. Abre Numeración de pedidos > Constructor de formato.
  3. En Constructor de formato, introduce {YYYY}-{NNNNNN} en Patrón y ORD- en Prefijo, y revisa la vista previa.
  4. Establece Reinicio del contador en "Anual" y Alcance del contador en Contador global de la tienda; guarda el patrón y los ajustes del contador.
  5. En Configuración, mantén activada la opción Activar numeración personalizada de pedidos y configura Establecer siguiente número solo si vas a continuar una secuencia existente.
  6. Realiza un pedido de prueba y compara su referencia con Referencias generadas.
  7. Realiza un segundo pedido de prueba y confirma que el contador aumenta.

Requiere PrestaShop 1.6.1 o posterior y PHP 7.1 o posterior.

Manual de configuración

Instalar y abrir Numeración de pedidos

Sube e instala mprordernumber mediante Módulos > "Module Manager". Haz clic en Configurar para abrir el panel de control. Usa "Improve" > Numeración de pedidos para acceder a Panel de control, Constructor de formato, Referencias generadas y Configuración. En versiones anteriores, usa la pantalla equivalente de subida de módulos.

Requiere PrestaShop 1.6.1 o posterior y PHP 7.1 o posterior.

La instalación crea el almacenamiento de contadores, referencias de clientes y referencias generadas. Amplía orders.reference y order_payment.order_reference a VARCHAR(64) cuando es necesario. El usuario de la base de datos debe poder crear tablas y modificar esas columnas. La integración con versiones anteriores incluye override/classes/order/Order.php; comprueba "Integrity" y los overrides de Order existentes tras la instalación.

Configurar el formato

Abre Constructor de formato. Introduce tu patrón en Patrón, usa las etiquetas disponibles, revisa la vista previa en directo y guarda. El patrón establecido durante la instalación es {YYYY}/{MM}/{NNNNNN}.

El campo Patrón se edita en Constructor de formato. La pestaña actual Configuración > Formato contiene Prefijo y Sufijo, sin un campo adicional para el patrón de pedidos.

Para una referencia anual como ORD-2026-000042:

Pattern: {YYYY}-{NNNNNN}
Prefix: ORD-
Suffix: empty
Counter Reset: yearly
Counter Scope: global

Para una secuencia mensual con el país:

Pattern: {COUNTRY}-{YYYY}-{MM}-{NNNNNN}
Counter Reset: monthly
Counter Scope: global

Guarda el patrón y las opciones del contador con sus respectivos controles. Una vista previa no reserva un número.

Configurar los ajustes y los contadores

Pestaña Ajuste Valor predeterminado Uso
General Activar numeración personalizada de pedidos Sí Desactívalo para que los pedidos nuevos vuelvan al proceso habitual con referencias aleatorias.
Formato Prefijo Vacío Texto fijo antes del patrón resuelto.
Formato Sufijo Vacío Texto fijo después de él.
"Secuencia" Establecer siguiente número Vacío Valor positivo del contador que se usa una sola vez. Déjalo vacío para continuar.
"Secuencia" Alcance del contador Contador global de la tienda Selecciona una secuencia para toda la tienda o una por cliente.
"Reglas de reinicio" Reinicio del contador "Anual" Elige Nunca, "Anual", "Mensual" o Diario.

Los controles del prefijo, sufijo, alcance, reinicio y siguiente número también aparecen en los ajustes del contador de Constructor de formato. Establecer siguiente número se utiliza y se vacía cuando se genera el contador correspondiente. No renumera los pedidos existentes. Evita establecer un valor cuya referencia resultante ya exista.

Las reglas de reinicio requieren etiquetas de fecha en el patrón:

Reinicio Partes del patrón requeridas
Nunca Una etiqueta de contador
"Anual" {YYYY} o {YY}, más un contador
"Mensual" Año y {MM}, más un contador
Diario Año, {MM} y {DD}, más un contador

Los contadores se almacenan por tienda. La palabra global indica el contador de toda la tienda, no una secuencia compartida entre todas las tiendas. Usa {SHOP_ID} si necesitas distinguir visiblemente las tiendas. Los ajustes de formato se comparten entre las tiendas aunque sus contadores sean independientes.

Para una secuencia por cliente, incluye un elemento diferenciador único aceptado. Por ejemplo:

Pattern: CUST-{CUSTOMER_REF}-{CUSTOMER_NNNN}
Counter Scope: customer
Counter Reset: never

Las etiquetas diferenciadoras aceptadas incluyen {CUSTOMER_REF}, {CUSTOMER_ID}, {CART_ID} y de {RAND6} a {RAND9}. Distintos clientes pueden tener el mismo prefijo de correo electrónico.

Elegir las etiquetas compatibles

Etiquetas Significado
{YYYY} {YY} {MM} {DD} {QUARTER} {WEEK} Componentes de la fecha en el momento de la generación.
De {N} a {NNNNNNNN} Contador en el alcance principal seleccionado, completado con ceros según el número de caracteres N.
{GLOBAL_N} y formas completadas con ceros Contador de toda la tienda.
{CUSTOMER_N} y formas completadas con ceros Contador del cliente.
{CUSTOMER_ID} ID del cliente cuando está disponible.
{CUSTOMER_EMAIL} Parte del correo anterior a @, no la dirección completa.
{CUSTOMER_REF} Referencia del cliente almacenada.
{COUNTRY} País del contexto de dirección disponible del pedido o del carrito.
{SHOP_ID} {SHOP_NAME} {CART_ID} Contexto de la tienda y del carrito.
{PRODUCT_ID} {PRODUCT_REF} Producto dominante del carrito seleccionado por el formateador, no todos los productos del pedido.
{ORDER_REF} Referencia de pedido existente solo cuando hay un contexto de pedido. Está vacía durante la generación que realiza este módulo antes de crear el pedido; no la uses como único elemento diferenciador.
{RAND2} Dos letras aleatorias.
{RAND4} Cuatro dígitos aleatorios.
De {RAND6} a {RAND9} Letras aleatorias de la longitud seleccionada.

El módulo rechaza {ORDER_ID}, {INVOICE_ID}, {DOC_TYPE} y {PAYMENT} para las referencias de pedido porque el pedido no existe en el momento de la generación. Un patrón válido necesita un contador, componentes de reinicio válidos y una vista previa de un máximo de 64 caracteres, incluidos el prefijo y el sufijo. Usa {NNNNN} para completar el número a cinco dígitos; el formateador no usa la sintaxis {number:5}.

Comprender la generación y los registros

El módulo proporciona actionGenerateDocumentReference para el proceso nativo de generación de referencias de pedido y actionValidateOrder para vincular una entrada de auditoría al pedido guardado. El override incluido de Order::generateReference() proporciona la integración con versiones anteriores. Revisa los conflictos si otro módulo también sobrescribe ese método.

El generador valida el formato, consume solo los contadores requeridos por sus etiquetas, resuelve la referencia y busca duplicados en los pedidos existentes, las referencias de pago y el registro del módulo. Los incrementos de los contadores usan una transacción y bloqueo de filas. Los fallos de generación, los procesos abandonados o los pedidos cancelados pueden dejar huecos en la secuencia.

Referencias generadas muestra el valor formateado, el contador, el patrón, las fechas y el contexto relacionado del pedido y del cliente. El panel de control muestra las referencias recientes y las estadísticas de los contadores. Las referencias de pedidos ya guardadas no se reescriben.

La referencia generada es la referencia de pedido habitual de PrestaShop. Los clientes la ven allí donde las plantillas de la tienda usan ese campo. Un desarrollador puede leer $params['order']->reference en actionValidateOrder para una integración con un ERP una vez que existe el pedido.

Verificar y resolver problemas

  1. Guarda un formato anual con un intervalo de próximos números que aún no se haya utilizado.
  2. Realiza un pedido de prueba mediante tu proceso de pago habitual.
  3. Comprueba la referencia del pedido, el correo de confirmación y la entrada en Referencias generadas.
  4. Realiza otro pedido y comprueba el incremento esperado.
  5. Si usas el alcance por cliente, prueba con dos clientes y verifica el elemento diferenciador.

Si el formato no se guarda, comprueba las etiquetas desconocidas, las partes de fecha del reinicio, la presencia del contador, el elemento diferenciador del alcance y la longitud de la vista previa. Si el proceso de compra vuelve a una referencia aleatoria, comprueba Activar numeración personalizada de pedidos, los hooks, los overrides, "Integrity" y los registros de PrestaShop. Los formatos no válidos durante la ejecución y el agotamiento de los intentos para evitar duplicados no devuelven ninguna referencia personalizada.

Comprueba las integraciones que presuponen referencias de nueve caracteres antes de adoptar un patrón más largo. Cambiar Establecer siguiente número no evita la protección contra duplicados.

Desinstalación

Exporta el registro de referencias generadas y anota la posición del contador antes de desinstalar. La desinstalación elimina la configuración del módulo, las preferencias, el menú y las tablas del esquema propias del módulo. La desinstalación estándar también gestiona sus hooks registrados y su contribución de override. Los pedidos nuevos vuelven a las referencias nativas; las referencias ya almacenadas en pedidos y pagos se conservan. El proceso de desinstalación no reduce las columnas nativas ampliadas.

Capturas de pantalla

Custom Order Numbering, captura de pantalla 1

Custom Order Numbering, captura de pantalla 2

Custom Order Numbering, captura de pantalla 3

Custom Order Numbering, captura de pantalla 4

Custom Order Numbering, captura de pantalla 5

Custom Order Numbering, captura de pantalla 6

Custom Order Numbering, captura de pantalla 7

Custom Order Numbering, captura de pantalla 8

Custom Order Numbering, captura de pantalla 9

Preguntas

Aún no hay preguntas sobre este módulo

Pregunta lo que quieras sobre instalación, compatibilidad o configuración. Las respuestas aparecen aquí.

Problemas conocidos

5

El módulo no se cargaba en PHP 7.1

ResueltoActualizado:
Corregido en: 1.2.11
Los requisitos de las dependencias incluidas podían impedir la carga en instalaciones PHP 7.1 compatibles.

Aparecían traducciones incorrectas

ResueltoActualizado:
Corregido en: 1.2.10
Las entradas de traducción dañadas podían mostrar textos de interfaz incorrectos.

Las referencias personalizadas largas se rechazaban en los pagos

ResueltoActualizado:
Corregido en: 1.2.8
Una referencia de pedido personalizada más larga que el límite predeterminado de PrestaShop podía no superar la validación al registrar un pago.

Las referencias generadas quedaban sin vincular a pedidos

ResueltoActualizado:
Corregido en: 1.2.8
Una referencia generada a la espera de un pedido podía no vincularse a él tras su creación y permanecer sin asignar en el historial.

Los filtros de las listas de administración funcionaban mal

ResueltoActualizado:
Corregido en: 1.2.8
Algunas columnas de las listas no se podían filtrar correctamente desde la administración del módulo.

Solicitudes de funcionalidades

6

Implementado

Numeración estructurada de pedidos

Implementado
Sustituye las referencias aleatorias de los pedidos por referencias estructuradas diseñadas en el creador de formatos.

Contadores de pedidos por cliente

Implementado
Genera los números de pedido a partir de la secuencia propia de cada cliente.

Patrones de contadores combinados

Implementado
Usa contadores globales y específicos de cada cliente definidos explícitamente en un mismo patrón de referencia de pedido.

Actualizaciones del módulo desde el back office

Implementado
Busca e instala actualizaciones del módulo desde la administración.

Comprobaciones de instalación

Implementado
Revisa el estado de la instalación y repara los elementos que faltan en la infraestructura del módulo desde la administración.

Idiomas de administración adicionales

Implementado
Usa las pantallas del módulo traducidas al francés, alemán, español, italiano y polaco.

Registro de cambios

v1.2.92026-09-21

  • AddedSupport explicit scoped order counters
  • AddedAdd customer-scoped order references
  • Addedcomplete FR/DE/ES/IT/PL translations
  • FixedAdd install integrity dashboard check
  • FixedWiden order payment reference validation
  • FixedLink generated references with zero order id
  • FixedAlign format builder with admin form layout
Versiones anteriores

v1.1.02026-04-20

  • Addedadmin menu management via MenuInstaller for streamlined module setup
  • AddedLicense management tab with key management and renewal options
  • Addedself-healing integrity checks for automatic diagnostics and repair
  • Addedcomplete FR/DE/ES/IT/PL translations
  • Improvedsettings form organization with tabbed layout
  • Fixedadmin list filters — sorting, searching, and filtering now work correctly on all columns

Demo

Prueba el módulo completo antes de comprar

Compra la licencia más tarde y conserva tus ajustes.

  • Tu demo de 30 días Pruébalo en tu propia tienda durante 30 días desde la primera instalación.
  • Tienda demo lista Explora una tienda demo lista en tu navegador.
  • Sin registro Sin cuenta, correo ni dominio de tienda.
Iniciar tienda demo

Al descargar, aceptas las condiciones de la demo y la política de privacidad.

Al abrir esta demo, acepta los términos de la demo y la política de privacidad.

Cargando...
Volver arriba