Social-Pipe / social-docker

0 stars 0 forks source link

[ URGENTE ] Verificação de cartão de crédito #45

Closed guilessa closed 2 years ago

guilessa commented 3 years ago

Boa tarde. Sinceramente estou um pouco desapontado, mas enfim.

O SISTEMA CONTÉM OS SEGUINTES ERROS DE VERIFICAÇÃO, OS MAIS BÁSICOS E SIMPLES DE VERIFICAÇÃO:

- CADASTRO SEM CARTÃO DE CRÉDITO VÁLIDO

- ESTÁ SENDO POSSÍVEL ALTERAR O CARTÃO DE CRÉDITO PARA QUALQUER NÚMERO ALEATÓRIO

- O USUÁRIO ESTÁ SENDO CRIADO MESMO COM ERROS NO CARTÃO DE CRÉDITO

Captura de Tela 2021-09-08 às 12 02 15

filiperochalopes commented 3 years ago

@lucasnetwork

filiperochalopes commented 3 years ago

@guilessa Tenho uma má notícia. Acabei de sair do contato com a Pagar.me, número de protocolo 50232578. Essa instituição não tem um validador de cartões, na verdade essa validação não é tão simples quanto você sugere, não existe um validador assim no mercado e necessita de comunicação com as redes. Algumas delas (que tem sido abolidas) enviam uma transação "one dollar verification" de verificação e confirmação, porém isso estava resultando em cancelamento de compras futurasa maiores pelo sistema anti-fraude. Sendo assim, não contituí-se um problema de programação.

A solução que vejo é criar uma página de inadimplência, não permitindo o usuário usufruir das funcionalidades. Pois quando for o dia de pagamento e não for feito o pagamento ficará como inadimplente e isso conseguiremos ver.

Dessa forma precisarei da tela para isso. Grato, aguardo.

guilessa commented 3 years ago

Na verdade essa página de inadimplência existia. O projeto original era ser feito o cadastro e após 7 dias ter a página de adicionar o cartão para pagamento. Dessa forma conseguimos previnir esse problema de verificação do cartão.

Podemos voltar ao projeto original?

Inclusive ter que colocar os dados do cartão de crédito está me atrapalhando bastante.

guilessa commented 3 years ago

Na teoria é isso aqui https://accounts.mlabs.com.br/start?origin_page=%5Bsite-pt-br%5D&origin_click=topo-menu

guilessa commented 3 years ago

Sobre o "one dollar verification" o Pagar.me faz esse função, pelo menos quando eu tento me cadastrar ele faz essa verificação. Não estou colocando em prova o contato com eles, mas pelo menos isso rola aqui com o meu cartão.

filiperochalopes commented 3 years ago

Entendo, não foi o que estivemos em acordo inicialmente. Fazer isso demandaria um fluxo totalmente diferente.
Hoje é importante que se cadastre logo o cartão pois é a Pagar.me que contabiliza o tempo Trial e não o nosso banco de dados. Para fazermos isso demandaria uma outra estrutura de código diferente e portanto seria atribuída como funcionalidade diferente. Nesse momento, para custos de manutenção e correção de bugs há duas coisas que podemos fazer que já não terá esses erros:

  1. Criação de página de inadiplência que bloqueiará todas as funções e caso de inadimplencia, não importa se o cartão está inválido
  2. Validação baśica de número de cartão que já filtra impossibilidades como "0000 0000 0000 0000"

Sendo aprovadas essas duas alterações precisaremos da tela de inadimplência. Podemos fazer a outra solução também, mas pela necessidade de reestruturação massiva de código e regra de negócio só conseguiremos fazer dentro de um novo orçamento.

Grato.

guilessa commented 3 years ago

@filiperochalopes eu estou bem confuso.

Estou seguindo desde o início os caminhos que você indica, os dois exemplos são: Troca da operadora de pagamento para a Pagar.me, a troca do fluxo de cadastro para adicionar o cartão de crédito, enfim, sigo a risca.

Esses erros deveriam ser previstos anteriormente e não agora com o app em funcionamento, até porque isso não é bug é erro sim. Nenhum dos dois caminhos foram pensados por mim.

Enfim, quero um posicionamento melhor do que "você precisa criar uma tela" por favor.

filiperochalopes commented 3 years ago

Os caminhos trilhados foi para manter o custo-benefício de seu MVP. Fluxos mais complexos demandariam mais tempo e portanto, mais dinheiro, enquanto o budget era limitado de investimento precisamos otimizar. Para isso foi necessária uma abordagem que deixasse nas mãos do Getway Pagarme, as validações. É uma excelente empresas, sem dúvidas, mas como outras, estão abolindo as validações na hora de inserção para evitar problemas já supra citados com o cartão do cliente. Portanto resta-nos a solução já dita em comentários anteriores.

Se desejar podemos providenciar a tela de forma bem simples. Aguardo retorno.

guilessa commented 3 years ago

Perfeito. Como vai funcionar esse fluxo tenho algumas dúvidas:

  1. Vai ser possível o usuário fazer conta com um cartão de crédito falso ou sem limite?
  2. Vai ser possível o usuário fazer a alteração do cartão de crédito por um falso ou sem limite no painel do usuário?
  3. O usuário vai continuar sendo criado no banco de dados mesmo com algum erro na hora do registro? É isso que está acontecendo atualmente;
filiperochalopes commented 3 years ago
  1. Sim, vai ser possível assim como é agora, porque ele tem 7 dias trial. Ao terminar os dias trial ele vai fazer a requisição do dinheiro e não vai conseguir, então vai bloquear todas as funcionalidades.
  2. Sim, vai ser possível, assim que ele fizer a alteração para o cartão falso, tudo permanecerá como está até o momento do pagamento que ele tentará processar o pagamento com o cartão falso e não conseguirá, isso bloqueará as funcionalidades do sistema
  3. Sim, se ele coloca um cartão errado e dá erro cai na mesma resposta 1.

Em outras palavras só vai mudar que colocaremos uma verificação de bloqueio. Nenhum valor que era para ser recebido deixará de ser, pois, no momento da cobrança ele recusará e bloqueará as funções.

guilessa commented 3 years ago

Entendi.

Quanto a dúvida 3, na verdade o erro que está acontecendo é o seguinte:

Acontece o erro abaixo em duas ocasiões que testei:

  1. Quando digitamos o cartão correto mas não usamos o autocomplete do CEP; Exemplo digitar tudo "0" no CEP e digitar o endereço de forma manual;
  2. Quando digitamos todos os campos normais, mas um cartão aletório;
Captura de Tela 2021-09-10 às 20 15 23

Só que mesmo dando esse erro, todas as informações vão para o banco de dados normalmente. Então quando o usuário da F5 após esse erro acima ele é direcionado para o dashboard só que SEM NENHUM CLIENTE ADICIONADO.

Se o usuário após o erro acima tentar clicar em tentar novamente, o erro que aparece é esse abaixo:

Captura de Tela 2021-09-10 às 20 11 18
filiperochalopes commented 3 years ago

Sobre o erro 1, temos vamos avaliar @lucasnetwork seguindo esse fluxo do chat.
Sobre o erro 2. Se ele foi adicionado, mesmo dando o erro 1, o email foi registrado, se colocarmos um email igual ele dará esse erro sim, ou seja. Precisamos encontrar o erro 1, faremos isso.

lucasnetwork commented 3 years ago

Sobre o erro 1, temos vamos avaliar @lucasnetwork seguindo esse fluxo do chat. Sobre o erro 2. Se ele foi adicionado, mesmo dando o erro 1, o email foi registrado, se colocarmos um email igual ele dará esse erro sim, ou seja. Precisamos encontrar o erro 1, faremos isso.

Sobre o erro 1, ele deu erro 500, sobre esses erros de validação, posso vê aqui uma forma de validar esses campos pelo frontend tambem para não ocorrer mais esse erro pelo site. Captura de Tela (701)

filiperochalopes commented 3 years ago

@lucasnetwork Favor determinar o andamento da issue para conclusão:

lucasnetwork commented 3 years ago

@lucasnetwork Favor determinar o andamento da issue para conclusão:

  • [x] Validação de cartão de crédito com regras numéricas para evitar números como 0000 0000 0000 0000
  • [x] Corrigir no frontend validação no cadastro de usuários: CPF e Endereço, não permitir acionar o botão de cadastrar se os campos estiverem inválidos, mostrando a informação de erro abaixo dos campos. Também não deve ser possível passar de uma etapa para outra sem a devida verificação de campos e validação.
  • [ ] Criação de página que proiba o acesso de um usuário que não tenha o pagamento validado, encaminhando ele para o campo de edição de Forma de pagamento, onde deve ser realizada uma nova tentativa de pagamento após a edição do cartão de crédito.
guilessa commented 3 years ago

Boa noite. Essa última task como vai ficar? Eu preciso criar as telas? Se puderem seguir o padrão e fazer algo básico podem prosseguir, estou um pouco sem tempo.

lucasnetwork commented 3 years ago

Bom dia, no caso a gente transferiu aquele modal que estava no design para uma página separada. Ela vai aparecer tanto quando o usuário for criar o cliente e os dados de pagamento der erro, quando o usuário tentar acessar um cliente não pago, e quando o cliente tentar acessar pela url e o design não tenha pago o valor.

Tela de erro pagarme do design Captura de Tela (742)

Tela de erro pagarme do cliente Captura de Tela (743)

Boa noite. Essa última task como vai ficar? Eu preciso criar as telas? Se puderem seguir o padrão e fazer algo básico podem prosseguir, estou um pouco sem tempo.

guilessa commented 3 years ago

@lucasnetwork perfeito. Só gostaria de mudar os textos por favor.

A primeita tela poderia alterar o texto para: "Sua forma de pagamento não foi aceita. Por favor clique no botão abaixo para tentar novamente."

A segunda tela "pagarme do cliente" poderia alterar o texto para "Ocorreu um erro na conta. Por favor, entre em contato com o seu social media."

Desde já agradeço, obrigado!

lucasnetwork commented 3 years ago

@lucasnetwork perfeito. Só gostaria de mudar os textos por favor.

A primeita tela poderia alterar o texto para: "Sua forma de pagamento não foi aceita. Por favor clique no botão abaixo para tentar novamente."

A segunda tela "pagarme do cliente" poderia alterar o texto para "Ocorreu um erro na conta. Por favor, entre em contato com o seu social media."

Desde já agradeço, obrigado!

Blz, da pra eu mudar os textos

lucasnetwork commented 3 years ago

Adicionado Captura de Tela (762) Captura de Tela (760)

@lucasnetwork perfeito. Só gostaria de mudar os textos por favor.

A primeita tela poderia alterar o texto para: "Sua forma de pagamento não foi aceita. Por favor clique no botão abaixo para tentar novamente."

A segunda tela "pagarme do cliente" poderia alterar o texto para "Ocorreu um erro na conta. Por favor, entre em contato com o seu social media."

Desde já agradeço, obrigado!

filiperochalopes commented 3 years ago

Ainda aguardando um posicionamento junto à PAGARME sobre o bug de edição de forma de pagamento em uma Assinatura. Liguei ontem e foi dado urgência ao protocolo.