Conciliación bancaria de transferencias: instalación y configuración
Instalación, estados vigilados, validación automática, importación CSV, OFX y CAMT.053, revisión de propuestas, recordatorios, tarea cron y resolución de problemas.
Instalación
Instale el módulo desde Módulos > Gestor de módulos > Subir un módulo enviando el archivo ZIP, o copie la carpeta dfbankreconcile en el directorio /modules/ de su tienda y haga clic en Instalar.
Durante la instalación, el módulo crea cuatro tablas (importaciones, transferencias, asignaciones a pedidos, recordatorios), añade la pestaña Conciliación bancaria en el menú Pedidos y registra el hook de la ficha del pedido. Los datos bancarios de los recordatorios se rellenan a partir del módulo nativo de pago por transferencia si está configurado.
Nada cambia en la tienda hasta que importe un extracto: no se registra ningún pago ni se envía ningún recordatorio, ya que están desactivados por defecto.
Las cuatro pantallas del módulo
- Transferencias esperadas: pedidos en espera de transferencia, con su antigüedad, el importe pendiente, los recordatorios enviados y la fecha del próximo recordatorio. Arriba, cuatro indicadores: importe pendiente, transferencias por revisar, transferencias conciliadas y recordatorios enviados en 30 días.
- Conciliación: las transferencias importadas, filtradas por pestaña (Por revisar, Conciliada, Parcial, Ignorada, Todas), con las propuestas de pedidos y las acciones.
- Importar un extracto: envío del archivo e historial de importaciones.
- Recordatorios: resumen de la configuración, URL de la tarea cron y registro de recordatorios y cancelaciones.
Configuración
Abra la configuración con el botón Configuración de la barra de herramientas del módulo o desde el gestor de módulos.
Conciliación y validación
- Estados de pedido en espera de transferencia: los pedidos en estos estados se comparan con las transferencias importadas. Por defecto, el estado «En espera de pago por transferencia bancaria». Mantenga pulsado Ctrl para seleccionar varios.
- Estado tras el pago completo: «Pago aceptado» por defecto.
- Estado tras un pago parcial: deje «Mantener el estado actual» o elija un estado propio que haya creado. En todos los casos el pago se registra en el pedido.
- Validar automáticamente las conciliaciones fiables y Puntuación mínima para la validación automática: vea la sección siguiente.
- Tolerancia en el importe: diferencia aceptada para considerar un importe exacto, 0,01 por defecto.
- Diferencia aceptada por comisiones bancarias: una transferencia inferior al importe pendiente en como máximo este valor liquida el pedido. Útil para transferencias internacionales en las que el banco del cliente retiene comisiones. 0 por defecto, lo que desactiva la regla.
- Buscar pedidos realizados en los últimos: 120 días por defecto. Los pedidos más antiguos no se proponen.
- Enviar el correo de estado al cliente: envía el correo asociado al estado «Pago aceptado» cuando el pedido pasa a pagado.
Importación CSV
Los archivos OFX y CAMT.053 no necesitan ajustes. Para el CSV, deje vacíos los campos de columnas: el módulo encuentra la fila de encabezado en las 40 primeras líneas y reconoce los nombres de columna habituales en 8 idiomas. Si su exportación no se reconoce, indique el Separador de columnas, el Formato de fecha y los números de columna, empezando por 1:
- Columna fecha.
- Columna importe para un importe con signo, o Columna haber y Columna debe si el banco las separa.
- Columnas de concepto: una o varias columnas separadas por comas, por ejemplo
3,4. Se unen para formar el concepto analizado.
La puntuación y la validación automática
Cada transferencia se compara con los pedidos pendientes de pago realizados como muy tarde en la fecha de la transferencia. Los puntos se suman:
- Referencia de pedido encontrada en el concepto: 60 puntos. La búsqueda ignora espacios y signos de puntuación, por lo que una referencia cortada en dos por el banco se encuentra igualmente.
- Número de pedido encontrado tras Pedido, CMD, CDE, Commande, Order, Bestellung, Ordine, Zamówienie o Encomenda: 45 puntos.
- Importe exacto: 35 puntos. Importe menos comisiones bancarias, dentro de la tolerancia configurada: 30 puntos.
- Nombre del cliente encontrado (apellido, empresa o nombre de la dirección de facturación, 4 caracteres como mínimo): 15 puntos.
- Único pedido con este importe, sin referencia ni número: 10 puntos.
- Varios pedidos en una transferencia: cuando el concepto cita varias referencias cuya suma coincide con el importe, se añade una propuesta agrupada de 95 puntos.
Ejemplos: referencia e importe exacto suman 95. Número de pedido, importe exacto y nombre suman 95. Importe exacto y nombre sin referencia suman 50, o 60 si es el único pedido con ese importe.
Una transferencia se valida automáticamente durante la importación si la validación automática está activa, si la mejor propuesta liquida el pedido, si su puntuación alcanza el umbral (90 por defecto) y si supera a la segunda en al menos 15 puntos. Las demás transferencias con una propuesta de al menos 40 puntos pasan a Propuesta, el resto a Sin coincidencia.
Dos pedidos del mismo importe sin referencia en el concepto nunca se validan automáticamente: sus puntuaciones son iguales.
Importar un extracto
- Descargue el extracto de su cuenta desde la banca en línea, en CSV, OFX, QFX o CAMT.053 XML.
- Abra la pantalla Importar un extracto, elija el archivo (20 MB como máximo) y haga clic en Importar y conciliar.
- El mensaje de resultado indica el número de transferencias recibidas leídas, las líneas ya importadas, los pedidos marcados como pagados automáticamente y las transferencias por revisar. A continuación llega a la pantalla Conciliación.
Solo se conservan los abonos. Cada línea se identifica por su fecha, su importe y su concepto: una línea ya importada se cuenta como duplicado y se ignora. Puede importar cada semana el extracto del mes en curso sin crear duplicados. En los archivos CAMT.053, un lote de varias transferencias se divide en transferencias individuales con el nombre de cada ordenante.
Revisar las propuestas
La pestaña Por revisar lista las transferencias pendientes ordenadas por puntuación. Para cada transferencia, la columna Pedidos muestra hasta 5 propuestas con la referencia, el número de pedido con enlace, el cliente y su empresa, el importe pendiente, la diferencia si la hay, la puntuación y los motivos. Una etiqueta Pago parcial o Pago en exceso señala un importe distinto del pendiente.
- Validar: registra el pago en el pedido propuesto. Se pide confirmación si el importe difiere del pendiente.
- Validación agrupada: marque transferencias, o Seleccionar todas las propuestas, y haga clic en Validar la primera propuesta de las transferencias seleccionadas.
- Asignar: escriba una referencia o un número de pedido, o varios separados por un espacio o una coma para una transferencia agrupada.
- Ignorar: para una transferencia que no corresponde a un pedido, por ejemplo un reembolso de proveedor. Sigue visible en la pestaña Ignorada y puede restaurarse, lo que vuelve a conciliarla.
El botón Volver a conciliar recalcula las propuestas de todas las transferencias pendientes, por ejemplo tras nuevos pedidos. El buscador filtra las transferencias por concepto, ordenante, referencia de pedido o importe exacto, por ejemplo 1.234,56.
Qué se registra en PrestaShop
La validación añade un pago nativo al pedido, visible en la pestaña Pagos, en la factura y en las exportaciones contables. El medio de pago es el del pedido, el ID de transacción es la referencia bancaria del extracto (FITID en OFX, referencia de la entidad en CAMT) o, en su defecto, DFBR- seguido del número de la transferencia, y la fecha es la de la operación. Si ya existe una factura, el pago se vincula a ella.
Si el importe liquida el pedido, tolerancias incluidas, pasa al estado tras el pago completo. El cambio de estado reutiliza el pago registrado y no crea otro. Si no, el pago es parcial: el pedido pasa al estado tras un pago parcial si está configurado, el saldo pendiente sigue visible y una transferencia posterior completará el pago.
Los pedidos divididos entre varios transportistas comparten referencia. El módulo los trata como un solo pedido: el importe pendiente es la suma de los pedidos, el pago se registra en el primero, como hace PrestaShop, y todos cambian de estado.
Bloque en la ficha del pedido
La página de detalle de un pedido pendiente de pago, o que ha recibido una transferencia, muestra un bloque Transferencia bancaria: importe pendiente, transferencias recibidas con su fecha, importe y concepto, recordatorios enviados y un botón Enviar un recordatorio de pago.
Recordatorios de transferencias no recibidas
Ajustes
- Enviar recordatorios de pago: desactivado por defecto.
- Plazos de recordatorio (días tras el pedido): hasta 5 plazos separados por comas,
3,7,14por defecto. El último envía el correo de último recordatorio. Dos recordatorios de un mismo pedido se separan al menos 2 días. - No recordar pedidos con más de: 30 días por defecto, para no escribir a clientes de pedidos antiguos el día de la activación.
- Enviar una copia de los recordatorios a: dirección en copia oculta, opcional.
- Datos bancarios mostrados en los recordatorios: titular, IBAN, BIC y dirección del banco.
- Cancelar los pedidos impagados después de: 0 por defecto, lo que desactiva la cancelación. Un pedido pagado parcialmente nunca se cancela. La cancelación repone el stock.
No se envía recordatorio para un pedido que una transferencia pendiente de revisión propone con al menos 40 puntos: el dinero probablemente ha llegado. El resultado de la tarea indica cuántos pedidos se han omitido por este motivo.
Tarea cron
La pantalla Recordatorios y la configuración muestran la URL de la tarea, protegida por un token. Programe una llamada diaria desde su alojamiento:
0 9 * * * curl -s "https://www.su-tienda.es/module/dfbankreconcile/cron?token=SU_TOKEN" > /dev/null
La respuesta es un JSON con el número de recordatorios enviados, pedidos cancelados, pedidos omitidos y errores. El botón Ejecutar ahora lanza la misma tarea desde el back-office. El botón Generar un nuevo token de la configuración invalida la URL anterior.
Los correos
El módulo incluye dos plantillas, bankwire_reminder y bankwire_reminder_final, en HTML y texto, en 8 idiomas. El correo se envía en el idioma del pedido, o en inglés si ese idioma no está incluido. Contiene el importe pendiente, el total del pedido, sus datos bancarios y la petición de indicar la referencia en el concepto. El último recordatorio advierte de que el pedido podrá cancelarse. Variables disponibles para personalizar las plantillas en mails/: {firstname}, {lastname}, {order_name}, {order_date}, {amount_due}, {total_paid}, {bank_details}, {bank_details_html}.
También puede recordar el pago a un cliente en cualquier momento con el botón Recordar de la pantalla Transferencias esperadas o desde la ficha del pedido. Cada envío queda en el registro de recordatorios.
Resolución de problemas
«No se ha podido leer el archivo»
No se ha reconocido la fila de encabezado del CSV. Abra el archivo en una hoja de cálculo, anote los números de las columnas de fecha, importe (o haber y debe) y concepto, e indíquelos en la sección Importación CSV de la configuración.
«No se ha encontrado ningún movimiento en este archivo»
El archivo se ha leído pero no contiene ninguna línea con fecha e importe utilizables. Compruebe el formato de fecha (día/mes/año o mes/día/año) y que el extracto no esté vacío.
Una transferencia evidente no tiene propuesta
Compruebe que el pedido está en uno de los estados vigilados, que se realizó antes de la fecha de la transferencia, dentro del periodo de búsqueda, y que usa la misma divisa que el extracto. Tras corregir un estado, haga clic en Volver a conciliar.
«El pedido ya no espera el pago»
El pedido ha cambiado de estado o se ha pagado desde la importación, por ejemplo con otra transferencia. Vuelva a conciliar para actualizar las propuestas.
Los recordatorios no se envían
Compruebe que los recordatorios están activados, que la URL cron se llama (el botón Ejecutar ahora permite probarlo), que los pedidos tienen menos de la antigüedad máxima configurada y que la tienda envía correos, en Parámetros avanzados > E-mail.
Compatibilidad
- PrestaShop 8.0 a 9.x, el mismo ZIP cubre ambas ramas.
- Multitienda: las importaciones y transferencias pertenecen a la tienda activa.
- Formatos: CSV, TXT, OFX y QFX 1.x y 2.x, CAMT.053. El formato MT940 no está soportado.
- Arquitectura ModuleAdminController, sin dependencia de Composer.
- Interfaz y correos en español, inglés, francés, alemán, italiano, neerlandés, polaco y portugués.