O limite de peso para encomendas enviadas via Correios é de 30kg. Quando uma consulta ao webservice dessas realizadas no WooCommerce para simular o custo de envio ultrapassa este limite, um erro é retornado.
Há 2 casos que isso pode acontecer e vamos ver algumas considerações sobre eles.
Entregas com mais de 30kg
Em alguns casos, se o cliente tentar comprar 31 kg já dá erro e não é possível finalizar a compra porque nenhum método de entrega ficará disponível.
Há algumas maneiras elegantes de resolver isso, como separar os produtos em 2 pacotes de 15,5kg, por exemplo; e não só um de 31 kg.
Isso é perfeitamente possível e também a solução ideal em alguns casos. Mas não é tão simples para programar. Em alguns casos, uma solução rápida e funcional pode ser limitar o peso de entrega. Se os produtos pesarem mais que 30kg, mantenha a simulação dentro do limite. Dessa forma um método de entrega será retornado.
Você não poderá enviar a mercadoria dessa forma e talvez precise de duas postagens, sendo que uma delas o cliente não pagou. Isso pode ser um problema em alguns casos. Se você vende produtos que podem pesar até 100kg, isso é obviamente inviável e você deve procurar uma transportadora.
Mas se você vende produtos que raramente ultrapassam 30 kg ou ultrapassam muito pouco, pode valer a pena perder alguns reais no envio do que perder toda a venda e ainda deixar o cliente com uma má experiência sem saber porque você não faz entregas na região dele.
Falha no cadastramento
Imagine que você tem uma loja de roupas e vende também alguns sapatos. Mesmo que o cliente compre uns 10 itens, é difícil que a compra passe de 2 ou 3 kg.
Mas mesmo assim, por desatenção você pode cadastrar o peso que seria 200 gramas como 200 kilos, e isso, claro, iria exceder o peso permitido pelos Correios. Isso pode acontecer especialmente você tem pessoas que não dominam muito o cadastro de produtos.
O código abaixo é uma solução ao primeiro problema. Mas se você quiser dizer que os Correios considerem na sua loja de roupas no máximo entregas com 5 kg, é simples de se adaptar.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
add_filter( 'woocommerce_correios_package_weight', 'fa_custom_package_weight' ); | |
function fa_custom_package_weight( $weight ) { | |
return $weight > 30 ? 30 : $weight; | |
} |
Para o primeiro problema, é uma solução obviamente incompleta mas que é útil em alguns casos. Para o segundo, é uma margem de segurança que pode ser útil.