🎉 USE O CUPOM DESCONTO.FULL | 20% OFF acima de R$ 50,00

Como corrigir o estoque do WooCommerce mostrando errado

Time Full Services Time Full Services
Tipo WooCommerce
Nome do erro Estoque do WooCommerce mostrando errado EN: WooCommerce stock showing incorrect quantity
Severidade Grave
Descrição O estoque errado no WooCommerce acontece quando a quantidade exibida não bate com o real: produto disponível aparece esgotado, a contagem não baixa após a venda, ou somem unidades sem pedido. Quase sempre vem de cache antigo, de pedidos presos reduzindo estoque, ou de sincronização externa fora de hora.

O que é o estoque do WooCommerce mostrando errado?

O controle de estoque do WooCommerce guarda, para cada produto ou variação, a quantidade disponível e o status (em estoque, esgotado, sob encomenda). Ele baixa a quantidade quando um pedido é pago e a repõe se o pedido é cancelado. O ‘estoque errado’ é quando esse número diverge do real: o site mostra esgotado com produto em depósito, não atualiza após vendas, ou conta unidades fantasmas. A causa costuma ser cache, pedidos presos ou integração externa.

Como identificar

  • Um produto com estoque físico aparece como ‘Esgotado’ ou ‘Fora de estoque’ na loja.
  • A quantidade exibida não baixa depois que o pedido é pago e concluído.
  • O estoque some sem venda correspondente, com pedidos presos em ‘Pagamento pendente’ segurando unidades.
  • Mensagem no checkout ‘Desculpe, não temos [produto] em estoque suficiente’ para um item que deveria ter saldo.
Antes de começar: Faça backup do banco antes de corrigir estoque em massa ou de pausar integrações em uma loja no ar, porque ajustes manuais podem ser sobrescritos pela próxima sincronização. Confirme qual sistema é a fonte da verdade do estoque antes de alterar.

Como prevenir

  • Mantenha um único sistema como fonte da verdade do estoque e evite editar manualmente o que a integração sobrescreve
  • Configure ‘Manter estoque (minutos)’ com um valor curto para não travar unidades em carrinhos abandonados
  • Revise periodicamente pedidos presos em pagamento pendente, que seguram estoque sem concluir a venda

Causa

  • Cache de página ou de objeto servindo a contagem de estoque antiga, anterior à última venda ou reposição.
  • Pedidos presos em 'Pagamento pendente' ou 'Aguardando' reduzindo o estoque sem nunca serem concluídos nem liberados.
  • A opção 'Manter estoque (minutos)' segurando unidades de pedidos não pagos por tempo longo demais.
  • Sincronização com ERP, marketplace ou planilha sobrescrevendo a quantidade com um valor desatualizado.
  • Gerenciamento de estoque ativado no produto mas não nas variações (ou o inverso), gerando contagem inconsistente.

Como resolver

  1. Confirme a configuração de estoque do produto: no editor do produto, aba Inventário, verifique se 'Gerenciar estoque' está ligado e a quantidade está correta. Em produto variável, cada variação tem seu próprio controle de estoque.
  2. Limpe o cache de página e de objeto: limpe o cache do plugin e o cache de objeto (Redis/Memcached, se houver). A loja pode estar mostrando uma contagem antiga mesmo com o banco já atualizado.
  3. Libere pedidos presos: em WooCommerce > Pedidos, filtre por 'Pagamento pendente' e 'Aguardando'. Cancele ou conclua os pedidos antigos que estão segurando estoque sem pagamento confirmado.
  4. Ajuste 'Manter estoque (minutos)': em WooCommerce > Configurações > Produtos > Inventário, defina um valor razoável (ex.: 60) para 'Manter estoque'. Valores altos seguram unidades de carrinhos abandonados por tempo demais.
  5. Verifique a sincronização externa: se um ERP, marketplace ou planilha alimenta o estoque, pause a sincronização e corrija a quantidade no produto. Depois confirme que a fonte externa está enviando o número certo antes de religar.
PHP
// functions.php do tema filho — registra no log toda alteracao de estoque
// com o motivo, para rastrear quem (pedido, sync, ajuste) mudou a contagem
add_action( 'woocommerce_product_set_stock', function ( $product ) {
    error_log( sprintf(
        'WooCommerce estoque: produto #%d agora com %s unidades',
        $product->get_id(),
        $product->get_stock_quantity()
    ) );
}, 10, 1 );

Perguntas frequentes

Tenho o produto em estoque mas o site mostra esgotado. Por quê?
Costuma ser cache servindo a contagem antiga, ou pedidos presos em pagamento pendente segurando as unidades. Limpe o cache de página e de objeto e libere pedidos antigos não pagos em WooCommerce > Pedidos.
O estoque não baixa depois da venda. O que verificar?
Confirme que 'Gerenciar estoque' está ligado no produto e que o pedido chegou a um status que reduz estoque (Processando ou Concluído). Pedidos que ficam em pendente não baixam o estoque definitivamente.
O que é a opção 'Manter estoque (minutos)'?
É o tempo que o WooCommerce reserva o estoque de um pedido não pago antes de liberá-lo. Se estiver muito alto, carrinhos abandonados seguram unidades por horas e o estoque parece menor do que o real. Use um valor curto, como 60 minutos.
Uma integração com marketplace pode bagunçar meu estoque?
Sim. Se um ERP, marketplace ou planilha sincroniza o estoque, ele pode sobrescrever a quantidade com um número desatualizado. Pause a sincronização, corrija no produto e confirme que a fonte externa envia o valor certo antes de religar.
Em produto variável, onde fica o controle de estoque?
Cada variação tem seu próprio campo de estoque na aba Variações. Se você ativou 'Gerenciar estoque' só no produto pai e não nas variações (ou o contrário), a contagem fica inconsistente. Padronize onde o estoque é gerenciado.
Como descobrir o que está mudando minha contagem de estoque?
Use o gancho woocommerce_product_set_stock para registrar no log toda alteração com ID e quantidade. Comparando os horários do log com as vendas reais, você identifica se a causa é pedido, sincronização externa ou ajuste manual.

Seja PRO.

Tenha acesso a snippets de código premium — PHP, JavaScript, CSS e HTML prontos para usar em seus projetos.

Conhecer o plano Pro →

Uma nova era para o WordPress.

A FULL Services redefine o CMS com uma arquitetura modular que transforma o WordPress em um motor de crescimento digital. 

Painéis personalizados

Um novo nível de controle para o WordPress. Acompanhe métricas, automações e evolução do seu site em um único painel visual.

A força por trás de grandes marcas

Para agências, estúdios e profissionais independentes que desejam oferecer soluções de alto nível com sua própria marca.

Componentes

Hero Sections

30 componentes

Seções de CTA

14 componentes

Login

14 componentes

Blog

14 componentes

Cabeçalhos

24 componentes

Seções de FAQ

53 componentes

Cadastro

53 componentes

Blog individual

53 componentes

Rodapés

28 componentes

Seções de contato

27 componentes

Seções de preços

27 componentes

Faixas

27 componentes

Portfólio

16 componentes

Seções de equipe

12 componentes

Números

12 componentes

Logotipos

12 componentes