Histórico de mensagens sobre dados em cartões

EXIBINDO CONVERSAS RECENTES:

Texto: dados
Canal: cartões
Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Bom dia, @valkhan.2023. Tudo bem?
Agora em ambiente de homologação são feitas simulações de acordo com o último dígito do número do cartão de crédito utilizado:
- Cartão com final 1 retorna: "reason":"Dados do cartão inválidos."
- Cartão com final 2 retorna: "reason":"Transação não autorizada por motivos de segurança."
- Cartão com final 3 retorna: "reason":"Transação não autorizada, tente novamente mais tarde."
- Demais finais a transação é aprovada.
https://dev.gerencianet.com.br/docs/pagamento-com-cartao#1-obten%C3%A7%C3%A3o-do-payment_token

Avatar discord do usuario sejaefi

sejaefi

Ei, pessoal!

Temos uma novidade na API Cobranças: agora é possível reprocessar uma transação via cartão de crédito sem a necessidade de gerar um novo token.

Isso significa que você não precisa mais solicitar os dados do cartão do cliente a cada nova transação ou salvar informações sensíveis no seu sistema. Basta guardar o payment_token criptografado e usá-lo sempre que precisar!

O payment_token é um conjunto de caracteres gerado pela Efí, que representa os dados do cartão do pagador.

Para seu cliente, mais proteção dos dados sensíveis. Para você, mais facilidade para reprocessar cobranças.

Essa novidade é válida para:

- links de pagamento;
- assinaturas;
- e checkout transparente.

Para saber mais sobre este atributo e como usá-lo na sua integração, acesse nossa documentação.
https://dev.sejaefi.com.br/docs/pagamento-com-cartao
imagem enviada na mensagem pelo usuario sejaefi

Avatar discord do usuario ranulfosouza

ranulfosouza

exatamente, nesse caso eu estou fazendo testes e usando os meus próprios dados e meu próprio cartão

Avatar discord do usuario luizfelipeefi

luizfelipeefi

O pagamento referente a cobrança 541833872, foi reprovado pelo seguinte motivo: Pagamento efetuado pelo lojista.
Isso acontece, quando o sistema identifica que o destinatário do valor e o pagador se trata da mesma pessoa, ou estão utilizando dados iguais.

Avatar discord do usuario igor_efi

igor_efi

Ver Respostas

Boa tarde, @cleiton7853! Este problema pode estar relacionado a codificação de caracteres do banco de dados.

Avatar discord do usuario cleiton7853

cleiton7853

Ver Respostas

Bom dia, pessoal. Já estou usando o "approved" e "unpaid" que vem direto no resultado do checkout. Quando vem "unpaid", vem o motivo em data->refusal->reason. O problema é que já tentei de tudo para conseguir salvar essa mensagem no banco de dados com a acentuação correta, mas não consigo. Se eu salvo num arquivo, tudo ok. Se eu salvo no BD, vem assim: "Transação não autorizada. Cartão bloqueado". Alguém tem alguma luz?

Avatar discord do usuario valmirmorikawadasilva

valmirmorikawadasilva

Ver Respostas

boa tarde a todos...estou tentando fazer 1ºpagto com cartao de credito, e recebo a mensagem
{
"code": 3500011,
"error": "invalid_data",
"error_description": "Não foi possível recuperar os dados enviados"
}
Acredito que seja a funcao que faz o encrypt , Alguem teria uma outra funcao p/ fazer 1 teste. muito obrigado.

Fiz da seguinte forma...

public string Criptografar(string valor, string chaveCriptografia)
{
DESCryptoServiceProvider des;
MemoryStream ms;
CryptoStream cs;
byte[] ent;
try
{
des = new DESCryptoServiceProvider();
ms = new MemoryStream();
ent = Encoding.UTF8.GetBytes(valor);
chave = Encoding.UTF8.GetBytes(chaveCriptografia.Substring(0, 8));
cs = new CryptoStream(ms, des.CreateEncryptor(chave, iv), CryptoStreamMode.Write);
cs.Write(ent, 0, ent.Length);
cs.FlushFinalBlock();
return Convert.ToBase64String(ms.ToArray());
}
catch (Exception ex)
{
return "Valores Inconsistentes! " + ex.Message.ToString();
}
}

Avatar discord do usuario orafael9891

orafael9891

Ver Respostas

por debaixo dos panos o nextjs roda um servidor http Node, por isso o nextjs tem algumas implementação para backend, o ponto é que já foi definido que os dados do cartão nunca devem chegar no backend

Avatar discord do usuario hiagosilvas

hiagosilvas

Entendi Rubens, investindo nessa estrutura os PSP's devem permitir que você repasse os dados sem usar essas estruturas de token no front.

Avatar discord do usuario hiagosilvas

hiagosilvas

Digo isso porque eu queria criar meu próprio sistema de assinaturas, porém não posso armazenar os dados de cartão. E com as API's da GN ou eu implemento a assinatura de vocês (que infelizmente me limita) ou então tenho que pedir para o cliente pagar uma fatura todo o mês seja via Bolix ou cartão, porém ele sempre deverá digitar os dados do cartão.

Avatar discord do usuario bonfim.justino

bonfim.justino

Ver Respostas

Oi pessoal, tem alguma forma de sabermos em tempo de execução quando um cartão em inválido? Estou utilizando uma estratégia um pouco errada, por que to permitindo o usuário ter acesso ao conteúdo ao usuário inserir todos os dados, mas ai quando recebo o notification informando que o cartão não foi válido.

Avatar discord do usuario russofullstack

russofullstack

aí... na página de chekout o usuário preenche os dados dele, valor do pagamento, frete etc... ai a chamada " pagar com cartão " faz rodar essa função gerando o paymentToken

Avatar discord do usuario crane94

crane94

Ver Respostas

@diogofm7 Tu consegue colocar o código completo, por favor? Eu to tentando fazer no React, mas qnd tento chamar o $gn.ready, nada acontece. Esse $gn.ready só é chamado quando a página carrega pela primeira vez, e nesse momento o usuario ainda não inseriu os dados do cartão.

Avatar discord do usuario Ivan Nalon

Ivan Nalon

Ver Respostas

Bom dia pessoal, estou passando por um problema que acredito ter ocorrido com outras pessoas... a função $gn.ready só executa uma vez... portanto, em caso de dados do cartão errados não geraria o payment token após corrigi-lós

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

O payment token precisa ser obtido no browser e passado para o back-end. Você não pode transitar com dados de cartão pela rede.

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Isso violaria o padrão PCI de tratamento de dados de cartão de crédito. Se você tem restrições ao JS da Gerencianet, e há motivos legítimos para isso, você pode implementar a mesma criptografia com um código seu no front-end.

Avatar discord do usuario joao_efi

joao_efi

Ver Respostas

Bom dia @gusttavo13 tudo certo?
O usuário @_vitordesousa_ desenvolveu um projeto que gera o payment token em vue. Segue o link do repositório: https://github.com/vitordesousa/vue2-gerencianet
A ideia é basicamente a mesma, a única diferença vai ser na parte de levar os dados para back-end que deve-se tomar o cuidado por ser dados bem sensíveis

Avatar discord do usuario douglas.garcia

douglas.garcia

Ver Respostas

@rubenskuhl Entendi seu ponto.
Sim, concordo com você. Porém a Gerencianet poderia ser mais claro na entrega da informação, pois a transação nem chegou a operadora do cartão e muito menos no emissor, posso estar enganado. Mas estou monitorando o fluxo de informações de outros gateways e neste ponto a transação não chegar pois a camada do anti-fraude da Gerencianet pode ter segurado e neste momento poderia ser mais claro sobre as informações ou motivo do qual a transação não pode ser realizado, exemplo usando os dados do emissor.

Avatar discord do usuario douglas.garcia

douglas.garcia

estou validando com outros dados..

Avatar discord do usuario cleiton7853

cleiton7853

Ver Respostas

Outra dúvida... eu vendo acesso a um site de conteúdo, portanto, um produto digital. Não há entrega de nenhum produto físico. Sou obrigado a solicitar dados de endereço para o cliente mesmo assim?