Valor doado na campanha Stripe falha ao atualizar

Prezados desenvolvedores do plugin Stripe,

Para o nosso site (jbpdaily), decidimos optar por pagamentos únicos usando uma campanha (e um ID de Produto Stripe associado), e as doações são processadas corretamente (aparecem no Stripe), mas o valor exibido no banner superior não é atualizado (ele mostra os usuários que doaram, mas o valor ainda exibe R$0 da meta da campanha). Existe um webhook que precisa ser ativado no Stripe para permitir a leitura do valor em dinheiro que foi pago por um produto com um determinado ID?

Alternativamente, seria possível substituir manualmente o “valor alcançado” de alguma forma?

Obrigado!

3 curtidas

É provável que seja um bug e vou investigar amanhã e avisarei o que descobri. Também estamos trabalhando no suporte adequado para itens de compra única.

4 curtidas

Enquanto ainda estou investigando, estou curioso se clicar em “Atualizar dados da campanha” atualiza o valor da campanha?

EDITAR: Provavelmente não funcionará. Sou capaz de replicar este problema localmente.

3 curtidas

Sim, acabei de tentar isso e nada foi atualizado/aconteceu.

Uma razão pode ser que configurei o produto (com 3 níveis de preço) no Stripe — e não usando o botão “+ Novo Produto” no Discourse. Também não entendo completamente como o Discourse sincronizaria os produtos/preços com o Stripe.

Quando li a documentação original, a seção “webhooks” mencionava apenas três deles, todos sob customer.subscription (.created, .deleted, .updated). Presumo que, para compras de produto único, webhooks diferentes seriam necessários…?

Quero dizer, quando a transação é bem-sucedida, o Discourse registra isso (para um usuário), pois quando eles tentam pagar novamente, ele mostra uma mensagem de

\u003eMuito obrigado pela sua compra anterior deste produto!

No entanto, quando clico em “Ir para Faturamento”, tanto a seção/aba Assinaturas quanto a seção/aba Pagamentos estão vazias.

3 curtidas

Acabei de criar um PR que deve corrigir o valor arrecadado não aparecendo para compras únicas.

Mas preciso esperar que ele seja revisado e implantado no seu site. Manterei você atualizado sobre quando isso for feito e você poderá testar novamente.

Ah, ok. Esta é uma informação útil, mas não é a causa do problema. Em algum momento, no entanto, eu gostaria de atualizar o plugin para que ele ignore completamente qualquer coisa que não foi realmente criada diretamente no Discourse para evitar esse tipo de confusão.

Uma razão pela qual parte dessa funcionalidade ainda está funcionando é que você adicionou o ID do produto à Configuração do Site discourse_subscriptions_campaign_product. Isso permite compras, mas como o produto não foi adicionado através do Discourse, parte da funcionalidade está faltando.

Acabei de adicionar manualmente o ID do produto que você adicionou ao Stripe à sua instância do Discourse para que as coisas apareçam corretamente em faturamento.

4 curtidas

Olá Blake,

Ótimas notícias! Muito obrigado por investigar isso e providenciar uma solução! :heart:

Se precisar de mim para testes quando o PR for enviado para produção, me avise!!

3 curtidas

Ok, essa correção foi implantada no seu site. Você pode verificar se o valor doado está sendo exibido corretamente agora?

Se você receber uma nova doação, ainda haverá um atraso de ~30 minutos para que o banner seja atualizado, mas vou trabalhar para melhorar isso para que seja instantâneo.

3 curtidas

Olá Blake,

SIM!! Está aparecendo corretamente agora. Vou testar o reembolso (para ver como funciona e se isso também é atualizado).

Abraços! :smiley:

3 curtidas

Ótimo! Que bom que está funcionando. Sim, esse reembolso será um bom teste.

Para atualizações mais rápidas, você pode pressionar manualmente o botão “Atualizar Dados da Campanha”. Caso contrário, ele será atualizado a cada 30 minutos (por enquanto).

4 curtidas

Processei o reembolso pelo site da Stripe. Até agora, o valor não foi atualizado. Verificarei novamente amanhã.

Talvez fosse bom se o reembolso pudesse ser feito dentro do software Discourse? Para isso, seria necessário ver os pagamentos individuais em algum lugar, eu acho…

2 curtidas

Ah, ok, acho que não considerei isso, mas vou trabalhar nisso em seguida para que seja refletido no banner.

Sim, isso seria algo que eu gostaria de adicionar suporte. No momento, você só pode ver os pagamentos na página de faturamento do usuário específico:

Provavelmente deveríamos ter uma aba de Pagamentos na página de administração também e lá poderíamos incluir um botão de “Reembolsar”.

4 curtidas

Olá Blake,

Obrigado por trabalhar nisso tão prontamente! Se houver algo que eu possa fazer para mais testes, etc., me avise! Enquanto isso, ouvi da pessoa com quem estou fazendo parceria nesta comunidade que o banner ficou ótimo. Então, pelo menos do nosso lado, nós realmente amamos o design!

Abraços!! :smiley:

4 curtidas

Olá Blake! Feliz Dia de Ação de Graças!! :heart:

Espero que não se importe de eu postar isso aqui no feriado :wink: Um usuário tentou comprar um produto para a campanha, mas o código CVC foi negado (posso ver um pagamento "bloqueado" no Stripe). O usuário então comprou com sucesso um nível de preço diferente (mesmo ID de produto), mas o total da campanha adicionou ambos os valores. Só pensei em apontar isso…

1 curtida

Feliz Dia de Ação de Graças!! :hugs:

Preparei uma correção para você:

:turkey:

5 curtidas

Olá Blake,

Muito obrigado! Você pode me avisar quando isso for lançado em produção (para o nosso fórum da comunidade)? Assim, eu te avisarei se for exibido corretamente! :slight_smile:

…e imagino que não seja possível usar uma lógica semelhante para pagamentos “reembolsados”, correto?

2 curtidas

Seu site deve ser implantado novamente nos próximos dias, mas entrarei em contato para avisar quando isso acontecer.

A lógica de reembolso é um pouco mais complexa. Está na minha lista, no entanto.

4 curtidas

E pronto! A implantação foi concluída há uma hora, então as alterações já devem estar ativas para você.

3 curtidas

Parece ótimo! Muito obrigado, @Blake e @osioke! :heart:

Se (nas próximas semanas/meses) também fosse possível rastrear/integrar reembolsos (tanto na contagem quanto permitindo que as pessoas façam outra contribuição para uma campanha existente), isso seria apreciado.

Você pode criar um tópico Feature separado para a nova solicitação? Assim, podemos fechar esta como concluída.

Feito! :slight_smile:

1 curtida