NIF/CIF en la página de pago de Woocommerce

El checkout o página de finalizar pago de Woocommerce por defecto no trae el campo de rellenar el CIF(Código de Identificación Fiscal) para empresas o el NIF(Número de identificación Fiscal) para autónomos. Esto trae consigo que si nos compra una empresa o un autónomo, aunque tengamos un programa por defecto de facturas no generará el CIF e igualmente tendremos que hacerla a mano.

Pero siempre hay un código o un plugin para todo en la sección de snippets para Woocommerce. Así que no os voy a recomendar plugin para que aparezca este campo y se sincronice con el plugin de facturas, lo haremos todo con un código.

Añadir CIF en Woocommerce sin Plugin

Añade este código al final del archivo functions.php de tu child theme.

/*
* Añadir casilla NIF en el checkout
*/
function woo_custom_field_checkout($checkout) {
  echo '<div id="additional_checkout_field">';
  woocommerce_form_field( 'nif', array( // Identificador del campo 
    'type'          => 'text',
    'class'         => array('my-field-class form-row-wide'),
    'required'      => true,            // Aquí muestra que no es obligatorio, si queres que sea obligatorio pon 'True' en vez de 'False'
    'label'       => __('NIF / CIF'),   // Nombre del campo 
    'placeholder'   => __('Ej: 12345678X'), // Texto guía que se muestra dentro de la celda.
  ), $checkout->get_value( 'nif' ));    // Identificador del campo 
  echo '</div>'; 
}
add_action( 'woocommerce_after_checkout_billing_form', 'woo_custom_field_checkout' );
/*
* INCLUYE NIF/CIF EN LOS DETALLES DEL PEDIDO CON EL NUEVO CAMPO
*/
function woo_custom_field_checkout_update_order($order_id) {
  if ( ! empty( $_POST['nif'] ) ) {
    update_post_meta( $order_id, 'NIF', sanitize_text_field( $_POST['nif'] ) );
  }
}
add_action( 'woocommerce_checkout_update_order_meta', 'woo_custom_field_checkout_update_order' );
/*
* MUESTRA EL VALOR DEL CAMPO NIF/CIF LA PÁGINA DE MODIFICACIÓN DEL PEDIDO
*/
function woo_custom_field_checkout_edit_order($order){
  echo '<p><strong>'.__('NIF').':</strong> ' . get_post_meta( $order->id, 'NIF', true ) . '</p>';
}
add_action( 'woocommerce_admin_order_data_after_billing_address', 'woo_custom_field_checkout_edit_order', 10, 1 );
/*
* INCLUYE EL CAMPO NIF/CIF EN EL CORREO ELECTRÓNICO DE AVISO A TU CLIENTE
*/
function woo_custom_field_checkout_email($keys) {
  $keys[] = 'NIF';
  return $keys;
}
add_filter('woocommerce_email_order_meta_keys', 'woo_custom_field_checkout_email');

Con este código conseguiremos que en la página de pago de nuestra tienda aparezca el campo para rellenar el CIF o NIF de forma opcional. Si deaseas ponerlo obligatorio en el código viene explicado en comentarios como hacerlo. Quedaría algo así:

insertar nif cif formulario de-pago woocommerce wordpress

Añadir CIF en mis facturas de Woocommerce

En el caso de que quieras que salga automáticamente en tu gestor de facturas de Woocommerce, en este caso pongo el código para el plugin que recomendé en ese artículo.

/**
*Añadir el CIF automáticamente en el plugin de facturas 'WooCommerce PDF Invoices & Packing Slips'
*/
 
add_filter( 'wpo_wcpdf_billing_address', 'añadir_cif_factura' );
 
function añadir_cif_factura( $address ){
  global $wpo_wcpdf;
 
  echo $address . '<p>';
  $wpo_wcpdf->custom_field( 'NIF', 'NIF: ' );
  echo '</p>';
}

Si tienes un plugin diferente no sirve.

Conclusiones

Los clientes son un poco reacios a dar el DNI, ya que es algo privado y aumenta más el tiempo al rellenar los datos del formulario de compra a no ser que sea una empresa que estarán encantado de dártelo.

Pedir el DNI en el proceso en las compras que realizan en tu tienda online en teoría es obligatorio, que no lo piden las tiendas grandes, pues sí pero yo aviso. Por eso en el código está como obligatorio, ya que cada uno…

Recordaros que en el artículo de cómo debe ser la página de finalizar compra tenéis una guía con las directrices que recomiendo o bien puedes ver mi servicio de desarrollo de tiendas online.

VALORA ESTE ARTÍCULO PARA MEJORAR LA CALIDAD DEL BLOG…
1 estrella2 estrellas3 estrellas4 estrellas5 estrellas (Ninguna valoración todavía)
Al dejar una valoración se recopila la IP para evitar fraudes
Cargando…

¿Necesitas ayuda con este tutorial?

Mándame un correo y te resuelvo todas las dudas!


Contáctame

Interacciones del lector

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *