{"id":12221289,"date":"2024-03-07T20:14:54","date_gmt":"2024-03-07T20:14:54","guid":{"rendered":"https:\/\/es.wordpress.org\/support\/topic\/problema-al-actualizar-total-de-impuestos-en-envios\/"},"modified":"2024-03-07T20:14:54","modified_gmt":"2024-03-07T20:14:54","slug":"problema-al-actualizar-total-de-impuestos-en-envios","status":"publish","type":"topic","link":"https:\/\/es.wordpress.org\/support\/topic\/problema-al-actualizar-total-de-impuestos-en-envios\/","title":{"rendered":"Problema al actualizar total de impuestos en env\u00edos"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Hola,<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Estoy encontrando dificultades con la correcta actualizaci\u00f3n del total de impuestos en el carrito de WooCommerce al usar el plugin Envia Shipping and Fulfillment. El plugin importa el costo de env\u00edo, pero los impuestos asociados no se desglosan ni suman correctamente al total de impuestos del pedido.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">He estado trabajando con un snippet de c\u00f3digo para ajustar los impuestos del m\u00e9todo de env\u00edo, que calcula la base imponible y el impuesto a partir del costo total del env\u00edo. A pesar de que el c\u00f3digo parece modificar adecuadamente el array de impuestos de cada tarifa, el total de impuestos mostrado en el carrito no refleja estos cambios.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Aqu\u00ed est\u00e1 el c\u00f3digo que he utilizado para intentar solucionar el problema:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\n\nadd_filter('woocommerce_package_rates', 'ajustar_impuesto_envio', 10, 2); <br \/> <br \/>function ajustar_impuesto_envio($rates, $package) { <br \/>    error_log('Inicio de ajustar_impuesto_envio'); <br \/>     <br \/>    foreach ($rates as $rate_key =&gt; $rate) { <br \/>        error_log(\"Procesando tarifa: $rate_key\"); <br \/>         <br \/>        \/\/ Registro del estado inicial de $rate-&gt;taxes <br \/>        error_log('Estado inicial de $rate-&gt;taxes: ' . print_r($rate-&gt;taxes, true)); <br \/>         <br \/>        \/\/ Calcula la base imponible y el impuesto <br \/>        $costo_envio_original = $rate-&gt;cost; <br \/>        $base = $costo_envio_original \/ 1.21; <br \/>        $impuesto = $costo_envio_original - $base; <br \/>         <br \/>        \/\/ Registra la base y el impuesto calculados <br \/>        error_log(\"Base del env\u00edo: $base, Impuesto del env\u00edo: $impuesto\"); <br \/>         <br \/>        \/\/ Ajusta el costo sin impuestos <br \/>        $rate-&gt;cost = $base; <br \/>         <br \/>        \/\/ Prepara el array de impuestos <br \/>        $taxes = &#091;]; <br \/>         <br \/>        foreach ($rate-&gt;taxes as $tax_id =&gt; $value) { <br \/>            $taxes&#091;$tax_id] = $impuesto; <br \/>            \/\/ Registra el proceso de ajuste del impuesto <br \/>            error_log(\"Ajustando impuestos para tax_id $tax_id: $impuesto\"); <br \/>        } <br \/>         <br \/>        \/\/ Aseg\u00farate de que el array de impuestos no est\u00e9 vac\u00edo <br \/>        if (empty($taxes)) { <br \/>            $taxes&#091;] = $impuesto; <br \/>            error_log(\"Ajuste general del impuesto: $impuesto\"); <br \/>        } <br \/>         <br \/>        \/\/ Asigna el array de impuestos ajustado a la tarifa <br \/>        $rates&#091;$rate_key]-&gt;taxes = $taxes; <br \/>         <br \/>        \/\/ Registro del estado final de $rate-&gt;taxes <br \/>        error_log('Estado final de $rate-&gt;taxes: ' . print_r($rate-&gt;taxes, true)); <br \/>    } <br \/>     <br \/>    error_log('Fin de ajustar_impuesto_envio'); <br \/>    return $rates; <br \/>} <br \/><\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">El rec\u00e1lculo del total funciona correctamente al cambiar entre m\u00e9todos de env\u00edo con diferentes importes. Sin embargo, el total del impuesto permanece inalterado y no incluye los impuestos de env\u00edo.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u00bfAlguien podr\u00eda ayudarme a entender qu\u00e9 podr\u00eda estar fallando o proporcionarme alguna orientaci\u00f3n sobre c\u00f3mo resolver este problema?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Gracias de antemano por su tiempo y ayuda.<\/p>\n","protected":false},"template":"","class_list":["post-12221289","topic","type-topic","status-publish","hentry","topic-tag-actualizacion-de-impuestos","topic-tag-calculo-impuesto","topic-tag-envia-shipping-and-fulfillment","topic-tag-envio","topic-tag-impuestos","topic-tag-plugin-envia","topic-tag-problema-de-impuestos","topic-tag-snippets","topic-tag-tarifas-de-envio","topic-tag-woocommerce"],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/es.wordpress.org\/support\/wp-json\/wp\/v2\/topic\/12221289","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/es.wordpress.org\/support\/wp-json\/wp\/v2\/topic"}],"about":[{"href":"https:\/\/es.wordpress.org\/support\/wp-json\/wp\/v2\/types\/topic"}],"version-history":[{"count":0,"href":"https:\/\/es.wordpress.org\/support\/wp-json\/wp\/v2\/topic\/12221289\/revisions"}],"wp:attachment":[{"href":"https:\/\/es.wordpress.org\/support\/wp-json\/wp\/v2\/media?parent=12221289"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}