La solución sencilla para cobrar los gastos de aduanas en EEUU
Si tienes una tienda online y vendes a distintos paises como EEUU, sabrás que tu producto tiene un coste extra en concepto de aduanas.
Añadir un cargo por aduanas en Woocommerce es un problema sin solución hasta ahora.
Woocommerce no contempla esta opción y no existen plugins que funcionen bien para este cometido.
Aquí te dejo un fragmento de código que resuelve este problema:
- Añade un porcentaje adicional a tus productos físicos (los virtuales quedan exentos)
- Aplica el porcentaje al precio neto antes de los gastos de envío.
- Indica en el checkout el concepto del cargo (lo puedes modificar si quieres)
- El plugin PDF Invoices & Packing Slips for WooCommerce hereda automáticamente el cargo
Añadir un cargo por aduanas en Woocommerce con un simple código
Símplemente pega este fragmento de código en el plugin Code Snippets y listo, no requiere configuración, sólo revisa que el 10% que he puesto como ejemplo de porcentaje de recargo sea el adecuado para los productos que vendes.
add_action( 'woocommerce_cart_calculate_fees', 'wc_surcharge_usa_physical_only' );
function wc_surcharge_usa_physical_only() {
if ( is_admin() && ! defined( 'DOING_AJAX' ) )
return;
// 1. Define el porcentaje del recargo (ejemplo: 0.10 para un 10%)
$percentage = 0.10;
// 2. Obtiene el país de envío o de facturación del cliente
$chosen_country = WC()->customer->get_shipping_country();
if ( ! $chosen_country ) {
$chosen_country = WC()->customer->get_billing_country();
}
// 3. Si el país es Estados Unidos (US), procesa el carrito
if ( 'US' === $chosen_country ) {
$physical_subtotal = 0;
// Recorre todos los productos del carrito
foreach ( WC()->cart->get_cart() as $cart_item_key => $cart_item ) {
$product = $cart_item['data'];
// Si el producto NO es virtual, suma su subtotal de línea
if ( ! $product->is_virtual() ) {
$physical_subtotal += $cart_item['line_subtotal'];
}
}
// 4. Si hay productos físicos, aplica el porcentaje solo sobre su valor
if ( $physical_subtotal > 0 ) {
$surcharge = (float) $physical_subtotal * $percentage;
// Añade el cargo al checkout
WC()->cart->add_fee( 'Cargo aduanas EEUU', $surcharge, true, 'standard' );
}
}
}
¿Cuándo conviene aplicar un cargo por aduanas en WooCommerce?
Si vendes productos físicos a nivel internacional, es habitual que algunos destinos generen costes adicionales relacionados con impuestos, aranceles o gestiones aduaneras. En muchos casos, el vendedor prefiere repercutir parte de estos gastos al cliente mediante un recargo fijo o un porcentaje sobre el importe de la compra.
Esta solución resulta especialmente útil cuando realizas envíos a países como Estados Unidos, Reino Unido, Suiza o cualquier otro destino donde las condiciones de importación sean diferentes a las del mercado nacional. Al aplicar el recargo automáticamente durante el proceso de compra, el cliente conoce el coste final antes de finalizar el pedido, evitando sorpresas y reduciendo posibles incidencias posteriores.
Además, al tratarse de un fragmento de código, no dependes de plugins adicionales que puedan dejar de actualizarse o generar incompatibilidades con futuras versiones de WooCommerce. El funcionamiento es rápido, ligero y puede personalizarse fácilmente para adaptarlo a las necesidades de cada tienda online.
Si lo deseas, puedes modificar el porcentaje del recargo, cambiar el país al que se aplica o incluso ampliar el código para que funcione con varios destinos diferentes. También es posible establecer importes fijos en lugar de porcentajes o aplicar condiciones según la categoría del producto, el peso del pedido o el método de envío seleccionado.
De esta forma, tendrás un sistema completamente flexible para gestionar los costes adicionales de exportación sin complicar la experiencia de compra de tus clientes.
¿Necesitas soporte técnico para aplicar esta función en tu negocio? Contacta con nosotros