WooCommerce: No hacer factura cuando la pasarela es contrareembolso

Si utilizas un plugin para hacer facturas automáticamente de tus pedidos de WooCommerce seguramente te habrá surgido el problema de que en muchos casos no tiene sentido hacerla cuando se hará entrega en mano, contrareembolso.

Muchos negocios prefieren entregarla también en mano en estos casos.

Y aquí surge la duda: ¿cómo evito que se genere automáticamente la factura para la «pasarela de pago» contrareembolso?

Cómo evitar hacer factura si es contrareembolso con el plugin WooCommerce PDF Invoices & Packing Slips

Sin duda este es uno de los plugins para crear facturas y notas de envío más utilizado, y además la versión gratuita es bastante completa.

Dicho esto, si quieres evitar que este plugin genere automáticamente facturas cuando la pasarela de pago elegida por el cliente en el pago sea la de contrareembolso, puedes lograrlo con el siguiente código:

/* sin factura para COD */
add_filter( 'wpo_wcpdf_custom_attachment_condition', 'wpo_wcpdf_exclude_payment_method', 100, 4 );
function wpo_wcpdf_exclude_payment_method( $condition, $order, $status, $document ) {
	if ( $document == 'invoice' ) {
		$payment_method = $order->get_payment_method();
		if ( $payment_method == 'cod' ) {
			return false;
		} 
	}
	return $condition;
}

Este código deberás añadirlo a tu plugin de personalizaciones para tu tienda online, o en su defecto al archivo

functions.php

del tema activo (al final, que siempre me preguntáis).

Si te fijas, en la sexta línea se introduce el condicional de que si el método de pago es

cod

no se lance la función que genera la factura en el plugin.

Cómo evitar hacer factura si es contrareembolso con el plugin Yith WooCommerce PDF Invoice and Shipping List

Por otro lado, si utilizas el plugin de Yith para crear facturas y notas de envío, además de facturas rectificativas, proformas y muchas más opciones profesionales, un imprescindible para tiendas online que requieren un software más completo y profesional, también puedes evitar hacer facturas cuando el pago sea contrareembolso.

Para empezar, debes saber que en los ajustes del plugin puedes definir que las facturas no se creen automáticamente.

En este caso no necesitas la ñapa, pues para generar una factura tendrías que hacerlo manualmente editando el pedido

Ahora bien, si quieres tener todo en automático, y que solo no se genere factura cuando el pago sea contrareembolso, en ese caso deja todo como estaba y añade este código, como en el otro ejemplo, a tu plugin de personalizaciones o al archivo

functions.php

del tema activo:

/* sin pdf automatico de yith invoices para cod */
if ( ! function_exists('yith_ywpi_not_allow_document_creation' ) ) {
    function yith_ywpi_not_allow_document_creation($bool, $order_id ){
        $order = wc_get_order( $order_id );
        $payment_method = $order->get_payment_method();
        if ( $payment_method == 'cod' ) {
            $bool = false;
        }
        return $bool;
    }
    add_filter('yith_ywpi_can_create_document','yith_ywpi_not_allow_document_creation',10,2);
}

Por supuesto, desde la administración, siempre podrás generar la factura fácilmente como pudiste ver en la captura anterior.

Espero que estos trucos te ayuden a controlar más y mejor la generación de facturas en tu tienda online con WooCommerce.

La entrada WooCommerce: No hacer factura cuando la pasarela es contrareembolso la publicó primero Fernando Tellado en Ayuda WordPress. No copies contenido, no dice nada bueno de ti a tus lectores.

Laura D´Cuero

Copywriter, Redactora de Content SEO.
Laura D´Cuero

Latest posts by Laura D´Cuero (see all)

0 comentarios

Dejar un comentario

¿Quieres unirte a la conversación?
Siéntete libre de contribuir!

Deja un comentario

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