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

Como corrigir o formulário de pagamento Stripe que não processa no WPForms

Time Full Services Time Full Services
Tipo WooCommerce
Nome do erro Pagamento Stripe não processa no WPForms EN: WPForms Stripe payment not processing
Severidade Crítico
Descrição O pagamento Stripe não processa no WPForms quando o formulário é enviado mas a cobrança no cartão não é criada, o envio trava no botão ou o pedido fica sem confirmação. As causas reais mais comuns são AJAX desativado no formulário, o addon Stripe Pro inativo, o modo Teste ligado em produção e SSL ou webhook mal configurados.

O que é o pagamento Stripe que não processa no WPForms?

No WPForms, o pagamento com cartão é feito pelo addon Stripe, que adiciona o campo Stripe Credit Card ao formulário e troca dados com a Stripe via API e webhook. O envio do formulário dispara a cobrança em tempo real e, em seguida, a Stripe avisa o site por webhook que o pagamento foi concluído. O problema ‘não processa’ é qualquer falha nesse fluxo: o campo de cartão não carrega, o botão de envio trava, a Stripe recusa a transação por configuração, ou a cobrança acontece mas a entrada do formulário fica sem confirmação de pagamento.

Como identificar

  • Ao clicar em enviar, o formulário fica girando no botão ‘Enviando…’ e nunca conclui, ou recarrega a página sem registrar o pagamento.
  • Mensagem no formulário do tipo ‘Erro ao processar o pagamento’ ou um aviso vermelho abaixo do campo de cartão de crédito.
  • O campo Stripe Credit Card não aparece no formulário publicado, mesmo estando presente no editor.
  • Em WPForms -> Pagamentos (ou na entrada do formulário) o pagamento fica como pendente ou ausente, mesmo após o cliente preencher o cartão.
  • No console do navegador (F12 -> Console) surgem erros de JavaScript do Stripe.js ou avisos de conteúdo bloqueado por falta de HTTPS.
Antes de começar: Nunca cole a chave secreta (secret key) da Stripe em código público, no front-end ou em logs versionados. Antes de reconectar o gateway, teste em staging com as chaves do modo Test e faça backup do site, pois alterar a conexão da Stripe afeta cobranças ao vivo.

Como prevenir

  • Sempre teste o formulário no modo Test da Stripe e só troque para Live depois de validar uma cobrança real de valor baixo
  • Mantenha WPForms, o addon Stripe Pro e a licença sempre atualizados e ativos para evitar a taxa extra de 3% e bugs de compatibilidade
  • Deixe o envio AJAX ligado por padrão nos formulários de pagamento e confirme HTTPS válido na página antes de publicar

Causa

  • Envio AJAX desligado no formulário: a Stripe exige envio sem recarregar a página, então sem AJAX em Configurações -> Geral -> Avançado o campo de cartão não cobra.
  • Toggle de pagamento desativado: em Pagamentos -> Stripe o 'Enable one-time payments' está desligado, então o cartão é coletado mas nenhuma cobrança é criada.
  • Modo Teste conectado em produção: a conta da Stripe foi conectada apenas no modo Test e o site está ao vivo, então nenhuma cobrança real é processada (Test e Live conectam separadamente).
  • Addon Stripe Pro ausente ou licença WPForms inativa: sem o addon ativo a Stripe aplica taxa extra de 3% e funções ficam degradadas; sem licença Pro o addon nem instala.
  • SSL ou HTTPS ausente na página do formulário: a Stripe recusa processar cartão em página sem cadeado válido e o Stripe.js bloqueia o campo.
  • Webhook não configurado (versões anteriores ao WPForms 1.8.4 ou auto-config que falhou): a cobrança acontece mas a confirmação não volta e a entrada fica sem pagamento confirmado.
  • Lógica condicional de pagamento mal montada ou campo de e-mail ausente: a Stripe exige um campo Email mapeado e a regra condicional pode estar suprimindo a cobrança.

Como resolver

  1. Ative o envio AJAX do formulário: abra o formulário no editor e ligue o envio AJAX, requisito obrigatório para a Stripe cobrar sem recarregar a página. Sem isso, o campo de cartão não processa.
    WPForms -> Todos os Formulários -> editar formulário -> Configurações -> Geral -> Avançado -> Habilitar envio AJAX do formulário (ON)
  2. Confirme o toggle de pagamento e o campo de cartão: verifique se o formulário tem o campo Stripe Credit Card, um campo de e-mail e um item de pagamento, e ative o toggle de cobrança. Sem o toggle ligado, o cartão é coletado mas nenhuma cobrança é criada.
    Editor do formulário -> aba Pagamentos -> Stripe -> Habilitar pagamentos únicos (Enable one-time payments) (ON)
    Campos obrigatórios no formulário: Stripe Credit Card + Email + item de pagamento (Single Item / Dropdown Items)
  3. Cheque o modo Teste x Produção da conexão Stripe: a Stripe conecta os modos Test e Live separadamente. Se o site está ao vivo mas a conta foi conectada só em modo Teste, nenhuma cobrança real ocorre. Reconecte no modo correto.
    WPForms -> Configurações -> Pagamentos -> Stripe -> confira se o modo está em Live (Produção)
    Se necessário, clique em Connect with Stripe e refaça a conexão no modo correto
  4. Garanta SSL válido e Stripe Pro ativo: confirme HTTPS com cadeado válido na página do formulário e que o addon Stripe Pro está ativo com a licença WPForms registrada. Sem SSL a Stripe bloqueia o cartão; sem o addon ativo há taxa extra de 3%.
    WPForms -> Addons -> verifique se o Stripe Pro Addon está Ativo
    WPForms -> Configurações -> Geral -> confirme a chave de licença Pro válida
    Acesse a página do formulário em HTTPS e confirme o cadeado no navegador
  5. Valide o webhook e faça um pedido de teste: a partir do WPForms 1.8.4 o webhook é configurado automaticamente na conexão; em versões antigas ou quando a auto-config falha, reconecte para regravá-lo. Depois faça uma cobrança real de valor baixo para validar o fluxo de ponta a ponta.
    Atualize o WPForms e o addon Stripe para a versão mais recente
    WPForms -> Configurações -> Pagamentos -> Stripe -> reconecte para reescrever o webhook
    Faça um envio de teste com cartão real de valor baixo e confira a entrada em WPForms -> Pagamentos
PHP
// functions.php do tema filho — loga no error_log quando o envio do WPForms acontece
// e mostra se o campo de pagamento Stripe entrou no processamento (diagnostico).
add_action( 'wpforms_process_complete', function ( $fields, $entry, $form_data, $entry_id ) {
    $tem_stripe = false;
    foreach ( (array) $fields as $field ) {
        if ( isset( $field['type'] ) && $field['type'] === 'stripe-credit-card' ) {
            $tem_stripe = true;
        }
    }
    error_log( sprintf(
        'WPForms #%d enviado | campo Stripe presente: %s | entry: %d',
        (int) $form_data['id'],
        $tem_stripe ? 'sim' : 'NAO',
        (int) $entry_id
    ) );
}, 10, 4 );
// Se o log marcar 'NAO', o campo Stripe Credit Card nao chegou ao processamento
// (campo ausente no form publicado ou AJAX desligado).

Perguntas frequentes

Por que o formulário trava no botão Enviar ao tentar pagar com Stripe?
Quase sempre o envio AJAX está desligado. A Stripe cobra o cartão sem recarregar a página, então ela exige AJAX. Ative em Configurações -> Geral -> Avançado -> Habilitar envio AJAX e teste de novo o pagamento.
O cliente preenche o cartão mas nenhuma cobrança aparece na Stripe. O que houve?
O toggle de pagamento provavelmente está desligado. Na aba Pagamentos -> Stripe do formulário, ligue 'Habilitar pagamentos únicos'. Sem isso o cartão é coletado pelo campo, mas o WPForms não cria a cobrança na Stripe.
Conectei a Stripe mas as cobranças reais não funcionam. Por quê?
Você provavelmente conectou só o modo Teste. No WPForms os modos Test e Live são conectados separadamente. Em Configurações -> Pagamentos -> Stripe, confirme que está em Live e, se preciso, refaça a conexão no modo de produção.
O campo Stripe Credit Card some no formulário publicado. Como resolver?
Isso costuma vir de página sem HTTPS válido ou do Stripe.js bloqueado. A Stripe não renderiza o campo de cartão sem SSL. Acesse o formulário em HTTPS, confirme o cadeado e cheque o console do navegador por erros do Stripe.js.
É obrigatório ter o addon Stripe Pro e licença ativa?
Para o fluxo completo, sim. O addon Stripe Pro exige licença WPForms Pro ou superior. Com a licença inativa, a Stripe aplica uma taxa extra de 3% por transação e algumas funções ficam degradadas. Confirme o addon ativo em WPForms -> Addons.
Paguei mas a entrada do formulário não mostra o pagamento confirmado. O que verificar?
Provavelmente o webhook não voltou. A partir do WPForms 1.8.4 o webhook é configurado automaticamente na conexão; em versões antigas ou quando a auto-config falha, reconecte a conta em Configurações -> Pagamentos -> Stripe para regravar o webhook.
A Stripe recusa a cobrança por valor mínimo. Isso existe?
Sim. A Stripe tem um valor mínimo de cobrança por moeda (por exemplo, cerca de 0,50 na maioria das moedas). Se o item de pagamento do formulário fica abaixo desse piso, a transação é recusada. Ajuste o valor do item de pagamento para acima do mínimo.
A lógica condicional pode estar bloqueando o pagamento?
Pode. Se a cobrança da Stripe está sob lógica condicional, uma regra mal montada impede a cobrança de disparar. Revise a condição na aba Pagamentos, confirme o campo Email mapeado e teste com a condição desativada para isolar o problema.

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