Curso de WooCommerce – 12. Generar Facturas en PDF y añadir NIF de cliente

Una de las características que no vienen de serie en WooCommerce y que debemos buscar externamente es la generación de facturas en los pedidos realizados.

Resulta muy común en cualquier tienda online, que cuando compramos un producto tengamos la posibilidad de descargar la factura desde nuestro área de cliente, normalmente en formato PDF o HTML. Además muchos clientes pueden demandarlas para justificar sus gastos (en el caso de autónomos y empresas), o para tener un documento oficial legal de la compra del producto en caso de tener que realizar reclamaciones, garantías, etc.

Además, para el caso de países como España, resulta obligatorio que en la factura oficial aparezca el NIF/DNI del cliente, dato que no se registra en WooCommerce por defecto, por lo que debemos encontrar otra solución para poder añadirlo.

Después de analizar varios plugins, encontré algunas soluciones gratuitas para resolver tanto el problema del NIF del cliente, como el de la generación automática de facturas, con la posibilidad de ser descargadas desde el área de clientes.

En este artículo explicamos paso a paso como hacerlo:

Agregar el campo NIF a los datos del cliente

Para poder pedir a nuestro cliente que nos facilite su DNI/NIF, necesitamos agregar este campo en el formulario finalización de compra o alta de clientes de WooCommerce.

Para ello lo haremos a través de un plugin: WooCommerce Checkout Field Editor (Manager) Pro.

Plugin WooCommerce Checkout Field Editor (Manager) Pro

Lo localizamos en el repositorio de plugins de WordPress y lo instalamos.

Veremos que en el menú principal de WooCommerce tenemos una nueva opción Checkout Form:

Menú Checkout Form

Accedemos a esta sección y aparecerá un listado de campos de formulario dividido en  3 sub-secciones (billing fields, shipping fields, additional fields). La sección que nos interesa es la de Billing Fields o Campos de Facturación. Aquí aparecen todos los campos que el usuario debe rellenar para generar la factura. Incluso podemos editar los ya existentes, indicar que sean obligatorios o no (Required), habilitarlos/deshabilitarlos,  etc.

Lo que necesitamos es añadir un nuevo campo para el NIF, así que pulsamos en el botón + Add Field (añadir campo):

Listado de campos de facturación

Creamos el nuevo campo con las siguientes características:

  • Type: Text (será un campo de tipo texto).
  • Name: billing_nif (recordar pues lo usaremos más adelante).
  • Label: NIF (es la etiqueta que aparece antes del campo de formulario).
  • Placeholder: Es un texto semi-transpartente que aparece dentro del campo con un ejemplo de cómo rellenarlo
  • Los demás campos podemos omitirlos.

Importante es marcar las casillas Required y Enabled para que sea un campo obligatorio a rellenar. Las demás casillas son opcionales. Finalmente hacemos clic en Add New Field.

Crear nuevo campo de NIF

Nuestro nuevo campo NIF se añadirá al final de la lista de campos, pero podemos moverlo a la posición que deseemos arrastrando el icono 022

mover campo al principio

Lo arrastramos, por ejemplo al principio de todo:

mover campo al principio del listado

Guardamos los cambios haciendo clic en el botón Save changes.

A partir de ahora, en el momento que un cliente llegue a la finalización de la compra, lo primero que se le pedirá será su NIF, además como campo obligatorio.

página finalizar compra

Hasta aquí la primera parte del tutorial.

Generar facturas automáticas en PDF

Subsanado el problema de que el cliente pueda especificar su NIF para la factura, vamos a instalar otro plugin que va a ser el que genere la factura final en PDF, que puede ser enviada por correo electrónico automáticamente al cliente cuando se completa el pedido, y además éste podrá descargarla desde su área de cliente en el apartado Pedidos.

Para ello instalaremos el plugin: WooCommerce PDF Invoices

woocommerce pdf invoices

Lo localizamos como siempre en el repositorio de plugins de WordPress y lo activamos:

descargar y activar WooCommerce pdf invoices

Una vez instalado aparecerá un nuevo elemento en el menú principal de WooCommerce, Facturas.

Menú - WooCommerce - Facturas

Entramos en este apartado que consta de dos secciones principales: General y Plantilla.

En la primera sección, General tenemos:

  • Opciones de correo electrónico: podemos configurar que se adjunte la factura en un correo electrónico al cliente en el momento de completar un pedido. Marcamos la casilla Attach to New order Email.
  • Download Options: Este apartado se refiere a la posibilidad de descargar la factura desde el área de clientes. Podemos hacer que la factura se descargue en una pestaña nueva del navegador seleccionando “Open in new browser tab/window” y marcar la casilla “Enable download from account” para habilitar la descarga desde el área de clientes.

configurar las opciones de descarga de las facturas

La siguiente sección, Plantilla, permite configurar algunos aspectos del diseño de la factura, por defecto en la versión gratuita del plugin solo tenemos una plantilla sobre la que trabajar, la plantilla Micro. Pero podemos seleccionar un color principal, el formato de la fecha, cómo mostrar los precios (con impuestos incluidos o no…), redactar textos en el cuerpo y pié de factura, etc.

configurar diseño de la plantilla de factura

Podemos configurar otras características, como el sistema de numeración de facturas, si deseamos resetear el contador, especificar el número siguiente de factura para adaptarlo a nuestra contabilidad, especificar el número de dígitos que tendrá la factura, si deseamos añadirle un prefijo para tener controlada de donde proviene la venta, etc.

configurar la numeración de la factura

Configurar la cabecera de la factura con los datos de nuestra tienda:

configurar la cabecera de la factura

Configurar el cuerpo de la factura:

Configurar el cuerpo de la factura

Y configurar el pie de factura.

Configurar el pie de la factura

Ahora en el listado de pedidos veremos un nuevo icono en el que podemos ver la factura generada.

listado de pedidos

Actualización (30-10-2017)

Si no aparece el icono para ver la factura generada, hacemos clic en el icono “Ver” (el ojo) y en la siguiente pantalla haciendo clic en Crear Factura PDF:

Pero todavía existe un pequeño problema, y es que el NIF no aparece junto a los datos del cliente. Esto se debe a que el plugin WooCommerce Invoices está configurado para trabajar con los campos por defecto de WooCommerce y no incorpora campos personalizados añadidos

Agregar NIF del cliente a la plantilla de la factura

Para agregar el campo NIF a la plantilla de factura tenemos dos opciones:

  • Adquirir la versión Premium del plugin WooCommerce PDF Invoices, donde hay opciones avanzadas para incorporar campos personalizados o
  • Modificar el código del plugin para incorporarlo manualmente. (Aviso: si actualizamos el plugin se sobreescribirán estos cambios y tendremos que editarlo de nuevo).

Si no queremos desembolsar dinero en adquirir el plugin, tenemos que modificar el archivo body.php que se encuentra en la siguiente ruta:

wp-content/plugins/woocommerce-pdf-invoices/includes/templates/invoices/simple/micro/body.php

Este archivo es el encargado de generar el cuerpo de la plantilla de la factura, y en él indicaremos manualmente que muestre el campo NIF en los datos del cliente:

Localizamos la línea número 7:

Justo debajo de esta línea vamos a agregar una línea igual, pero con los datos del campo NIF que creamos anteriormente:

Donde billing_nif es el nombre del campo en el formulario:

De forma que el código quede así:

código del archivo body.php

Esto hará que justo debajo del teléfono del cliente aparezca el NIF, quedando la factura así:

factura final generada

Además, nuestros clientes podrán descargar la factura desde su área de clientes en la sección de pedidos:

pantalla de área de clientes

Hasta aquí el capítulo y curso de creación de tiendas online con WooCommerce.

Seguidamente en artículos diversos veremos algunos trucos, consejos, plugins y temas interesantes para mejorar y profundizar en nuestras tiendas.

Contacta con Gestionatuweb
 
×

Utilizamos cookies para mejorar la experiencia de uso y obtener datos estadísticos de nuestras visitas. Si no aceptas las condiciones algunos apartados de la web podrían no funcionar correctamente. Más información

Los ajustes de cookies de esta web están configurados para "permitir cookies" y así ofrecerte la mejor experiencia de navegación posible. Si sigues utilizando esta web sin cambiar tus ajustes de cookies o haces clic en "Aceptar" estarás dando tu consentimiento a esto.

Cerrar