Cuando instalamos WooCommerce en nuestro WordPress, por defecto el sistema no nos va a pedir el DNI / NIF de la persona que compra, por lo que ese dato no aparecerá en la factura.
Cómo hacer que aparezca el NIF / DNI en la factura de WooCommerce
Para que el NIF aparezca en la factura vamos a hacer los siguientes pasos:
- Añadir el campo al formulario de checkout de WooCommerce. Usaremos el plugin: Checkout Field Editor (Checkout Manager) for WooCommerce
- Añadir un fragmento de código en forma de filtro para que muestre el campo en la cabecera de la factura
En este post nos vamos a centrar sobre todo en el punto 2, donde suponemos que hemos añadido un campo al formulario llamado billing_nif
Código que debemos usar en Code Snippets
Veamos el fragmento de código PHP que tenemos que añadir a nuestro WordPress para que el plugin de facturación muestre el NIF del cliente en la cabecera:
add_filter( 'wpo_wcpdf_billing_address', 'incluir_nif_en_factura', 99, 2 );
function incluir_nif_en_factura( $address, $document = null ) {
if (!empty($document->order) && $nif = $document->get_custom_field('billing_nif') ) {
$address = $address . "<p>NIF/DNI/CIF: {$nif}</p>";
}
return $address;
}
Fantástica aportación, he conseguido solucionar un problema que llevaba meses intentando ver la manera. Había instalado el plugin Checkout Field Editor for WooCommerce, pero el DNI seguía sin aparecer en la factura. Muchísimas gracias por tu generosidad.
Muchas gracias por el aporte.
Lo único, que las versiones recientes de Checkout Field Editor asignan el nombre del campo automáticamente, y hay que cambiar billing_nif por el nombre que genera el plugin. ¡¡¡Pero funciona perfectamente!!!
Gracias de nuevo
Totalmente cierto Chechu. Muchas gracias por tu aportación.
Un saludo.
Dámaso, ¿se supone que en esta página hay un videotutorial? Parece que desapareció. Estoy intentando añadir el campo NIF / DNI en WooCommerce PDF Invoices & Packing Slips, pude el fragmento de código que indicas en la página de checkout, sustituí billing_nif por el nombre que genera el plugin tal y como se indica en el comentario anterior y no consigo que el NIF se refleje en la factura.
¿Quizás el script debí meterlo en functions.php en lugar de en la página de checkout?
Un saludo
Hola Manu, efectivamente estaba mal etiquetado el post porque de este no tenemos grabado tutorial. Ya lo he corregido. Gracias por avisar 😉
¿En la página del checkout te sale el campo y te lo pide el sistema? ¿Lo has añadido con el plugin Plugin Checkout Field Editor (Checkout Manager) for WooCommerce?