Histórico de mensagens em devs

EXIBINDO CONVERSAS RECENTES:

Data: 03/03/2025
Canal: devs
Avatar discord do usuario znuuxx

znuuxx

Ver Respostas

Sim eu consegui...
Só fui ver depois que eles usam o Luhn em homolog

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Precisa gerar um cartão que passe no algoritmo de Luhn. Então não pode chutar qualquer coisa.

Avatar discord do usuario palloma_efi

palloma_efi

Ver Respostas

Vou iniciar um atendimento privado para pegar alguns detalhes com você.

Avatar discord do usuario znuuxx

znuuxx

Ver Respostas

Sim, estou em homologação

Avatar discord do usuario znuuxx

znuuxx

Ver Respostas

Não gerei pelo 4dev... apenas passei um número aleatório como "4000000000000002"... conforme a instrução acima que deu entender que somente o final do cartão importa...

Avatar discord do usuario palloma_efi

palloma_efi

Está em ambiente de homologação?

Avatar discord do usuario palloma_efi

palloma_efi

Ver Respostas

Você gerou o cartão pelo 4devs ?

Avatar discord do usuario znuuxx

znuuxx

Ver Respostas

O único que funcionou pra mim foi esse que peguei numa thread no github:


Mas o cartão final diferente de 2 da erro...

Avatar discord do usuario znuuxx

znuuxx

Tentei esse da documentação:


Mas deu erro:
EfiJs não está carregado. Verifique o script no index.html.

Avatar discord do usuario palloma_efi

palloma_efi

Ver Respostas

A versão mais recente é a 3.1.1

Avatar discord do usuario znuuxx

znuuxx

Ver Respostas

@palloma_efi , consegue me ajudar?

Eu testei uma chamada com o cartão 4000 0000 0000 0002 e retornou "Pagamento não autorizado." -> Funcionando

Quando testei com o mesmo cartão só que final 1, 3 ou 4, gerou o erro: no payment-token-efi.min.js.

Erro ao gerar token do cartão: Error: número do cartão de crédito não é válido
at Proxy.value (payment-token-efi.min.js:1:91205)
at Proxy. (payment-token-efi.min.js:1:89060)
at f (payment-token-efi.min.js:1:2926)
at Generator. (payment-token-efi.min.js:1:4272)
at Generator.throw (payment-token-efi.min.js:1:3355)
at t (payment-token-efi.min.js:1:271)
at u (payment-token-efi.min.js:1:510)
at _ZoneDelegate.invoke (zone.js:368:26)
at Object.onInvoke (core.mjs:11083:33)
at _ZoneDelegate.invoke (zone.js:367:52)

Sabe me dizer qual a versão mais recente do cdn para o frontend?

Avatar discord do usuario znuuxx

znuuxx

Aaah, legal. Obrigado

Avatar discord do usuario palloma_efi

palloma_efi

Olá @znuuxx ! A simulação de cobranças de cartão em ambiente de Homologação funciona com base na análise imediata 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 têm transação aprovada.

Avatar discord do usuario znuuxx

znuuxx

@jessica_efi

Avatar discord do usuario znuuxx

znuuxx

Acho que consegui resolver...
Mas tive que criar um lógica para ignorar todos os certificados.
Não sei onde é o problema... de repente no meu provedor.
Enfim, agora esta retornando 200, porém com a mensagem "Pagamento não autorizado por motivos de segurança".
Tem algum padrão de cartão que eu precise usar para validar o pagamento sucedido?

Avatar discord do usuario jessica_efi

jessica_efi

Ver Respostas

@znuuxx onde você encontrou esse exemplo? Em cobranças do tipo cartão de crédito, as informações do cartão não são enviadas dessa forma.

Avatar discord do usuario znuuxx

znuuxx

Coloquei pra ignorar o certificado e retorna assim:

Erro ao processar pagamento: undefined

Avatar discord do usuario znuuxx

znuuxx

Ver Respostas

@jessica_efi , eu vi o curso, segui o passo a passo, modifiquei para pagamento com cartão e quando tento rodar o teste da erro de certificado:

Erro ao processar pagamento: self-signed cer
tificate in certificate chain

const EfiPay = require('sdk-node-apis-efi')

const options = {
clientId: process.env.EFI_CLIENT_SECRET,
clientSecret: process.env.EFI_CLIENT_ID,
sandbox: true,
};

const efi = new EfiPay(options);

async function createCreditCardPayment() {
const body = {
payment: {
credit_card: {
customer: {
name: 'João Silva',
cpf: '94271564656',
birth: '1990-01-01',
phone_number: '5144916523'
},
billing_address: {
street: 'Rua Júpter',
number: '174',
neighborhood: 'Bauxita',
zipcode: '35400000',
city: 'Ouro Preto',
state: 'MG'
},
card: {
number: '4012001038443335',
cvv: '123',
expiration_month: '12',
expiration_year: '2028',
brand: 'visa'
}
}
},
items: [
{
name: 'Produto Teste',
value: 1000,
amount: 1
}
],
shippings: [
{
name: 'Frete Padrão',
value: 100
}
]
};

try {
const response = await efi.createOneStepCharge([], body);
console.log('Resposta da API:', response);
} catch (error) {
console.error('Erro ao processar pagamento:', error.message);
}
}

createCreditCardPayment();

Avatar discord do usuario jessica_efi

jessica_efi

Dê uma olhadinha, pois a ideia é a mesma. Todas as nossas sdks seguem o mesmo padrão

Avatar discord do usuario jessica_efi

jessica_efi

Em nosso curso, tem um modulo mostrando como gera um boleto utilizando a sdk de php.