impuestos en woocommerce

Cómo pedir el número de IVA (VAT number) en WooCommerce

Si vendes en la Unión Europea a través de WooCommerce, tienes que preparar tu tienda para aceptar y validar los números de operador intracomunitario (también conocido como número de IVA o VAT number) de tus clientes.

Según la normativa europea, si tu cliente reside en un país comunitario diferente al tuyo y tiene un número de IVA válido, no debes aplicar ningún impuesto en la venta y además debes enviarle una factura con inversión de sujeto pasivo.

En este artículo te vamos a dar dos opciones para añadir un campo para el número de IVA en tu tienda WooCommerce. Antes de entrar en detalles, hagamos una pequeña comparativa entre ellas:

WooCommerce QuadernoHazlo tú mismo
Guarda el número de IVA en el pedido
Solo se pide a clientes UENo
Validación con el VIESNo
Impresión en facturasNo
Precio29 €/mesGratis

Opción 1: WooCommerce Quaderno

Te recomendamos esta opción en primer lugar porque creemos que es la más sencilla y eficiente.

Necesitarás instalar nuevo plugin: WooCommerce Quaderno. Este plugin no solo añade el campo de número de IVA a tu checkout, sino que además muestra dicho campo solo cuando el cliente reside en un país de la UE y es capaz de validar el número introducido por tu cliente a través del servicio oficial VIES.

Una vez instalado, lo único que debes hacer es introducir tus credenciales API de Quaderno en la página de configuración del plugin y ya está.

Además, si el número de IVA es válido, el plugin genera una factura automática con dicho número y la nota de inversión de sujeto pasivo que es obligatoria por ley.

Opción 2: Hazlo tú mismo

Para aplicar esta opción debes tener conocimientos básicos de programación en PHP.

Copia y pega el siguiente código en el fichero functions.php de tu tema:

/**
 Show VAT Number in WooCommerce Checkout
 */ 
function woocommerce_vat_field( $checkout ) {
  echo '<div id="woocommerce_vat_field"><h2>' . __('VAT Number') . '</h2>';

woocommerce_form_field( 'vat_number', array(
  'type' => 'text',     
  'class' => array( 'vat-number-field form-row-wide') ,
  'label' => __( 'VAT Number' ),
  'placeholder' => __( 'Enter your VAT number' ), ), 
  $checkout->get_value( 'vat_number' )); 

  echo '</div>';
}
add_action( 'woocommerce_after_order_notes','woocommerce_vat_field');

/**
Save VAT Number in the order meta
*/

function woocommerce_checkout_vat_number_update_order_meta( $order_id ) {
  if ( ! empty( $_POST['vat_number'] ) ) {
    update_post_meta( $order_id, '_vat_number', sanitize_text_field( $_POST['vat_number'] ) );
  }
}
add_action( 'woocommerce_checkout_update_order_meta', 'woocommerce_checkout_vat_number_update_order_meta' ); 

/**
Display VAT Number in order edit screen
*/

function woocommerce_vat_number_display_admin_order_meta( $order ) {
  echo '<strong>' . __( 'VAT Number', 'woocommerce' ) . ':</strong> ' . get_post_meta( $order->id, '_vat_number', true );
}
add_action( 'woocommerce_admin_order_data_after_billing_address', 'woocommerce_vat_number_display_admin_order_meta', 10, 1 );

Este código mostrará un campo para el número de IVA en el checkout de WooCommerce, guardará dicho número al finalizar el pedido y lo mostrará posteriormente en el área de administración.

Recuerda que este código no valida números de IVA y no actualiza los impuestos del pedido, pero puede ser de utilidad cuando quieres ofrecer a tus clientes la posibilidad de mostrar el número de IVA en sus pedidos.


* En Quaderno nos encanta ofrecerte información sobre impuestos y contabilidad pero, ¡ojo, no somos asesores fiscales! Si necesitas más información o tienes dudas, te recomendamos que consultes con expertos en la materia.

Ilustración sobre facturación automática

¿Estresado con la facturación y los impuestos? Imagina tener todos los datos para tus declaraciones de impuestos con un solo clic. Con Quaderno podrás calcular impuestos y enviar facturas automáticamente. Sin esfuerzo. ¿Quieres saber cómo? →