Histórico de mensagens sobre card

EXIBINDO CONVERSAS RECENTES:

Texto: card
# cartões
Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Quando você criar um link de pagamento, você pode definir um desconto para determinado método de pagamento. Então você colocar o valor da cobrança de R$67,25, e colocar billet_discount = 225.
Obs: o valor em billet_discount ou card_discount informar valor inteiro, em reais.
imagem enviada na mensagem pelo usuario guilherme_efi

# cartões
Avatar discord do usuario cruvisnel

cruvisnel

Boa tarde! Estou tentando implementar o pagamento via cartão em nodejs, porém recebo o erro "bad request". Alguém sabe como resolver ?

function Pagar(payment_token, card_mask, autorizacao){

var data = JSON.stringify({
"items": [
{
"name": "Meu Produto",
"value": 5990,
"amount": 1
}
],
"payment": {
"credit_card": {
"customer": {
"name": "Gorbadoc Oldbuck",
"cpf": "94271564656",
"email": "[email protected]",
"birth": "1990-08-29",
"phone_number": "5144916523"
},
"installments": 1,
"payment_token": payment_token,
"billing_address": {
"street": "Avenida Juscelino Kubitschek",
"number": "909",
"neighborhood": "Bauxita",
"zipcode": "35400000",
"city": "Ouro Preto",
"complement": "",
"state": "MG"
}
}
}
});

var config = {
method: 'post',
maxBodyLength: Infinity,
url: 'https://cobrancas-h.api.efipay.com.br/v1/charge/one-step',
headers: {
'Authorization': autorizacao.access_token,
'Content-Type': 'application/json'
},
data : data
};

axios(config)
.then(function (response) {
console.log(JSON.stringify(response.data));
})
.catch(function (error) {
console.log(error);
});
}

# cartões
Avatar discord do usuario gabriel_efi

gabriel_efi

Ver Respostas

olá, @marcoglg_dev! O payment_token e o cardMask devem ser gerados no lado do cliente e então (pelo menos o payment_token) deve ser passado para o servidor realizar a requisição

# cartões
Avatar discord do usuario marcoglg_dev

marcoglg_dev

Ver Respostas

tenho uma dúvida, ao gerar o payment_token e o cardMask, devo realizar a cobrança no lado do cliente ou enviar para o meu servidor e depois realizar a cobrança?

# dúvidas
Avatar discord do usuario adilalima

adilalima

Ver Respostas

Boa noite, tudo bem?

No exemplo abaixo a data de nascimento do customer é obrigatória, mas, pode parecer uma pergunta besta, mas as informações desse customer precisam ser necessariamente do dono do cartão?

Dados de entrada
{
"items": [
{
"name": "Meu Produto",
"value": 5990,
"amount": 1
}
],
"payment": {
"credit_card": {
"customer": {
"name": "Gorbadoc Oldbuck",
"cpf": "94271564656",
"email": "[email protected]",
"birth": "1990-08-29",
"phone_number": "5144916523"
},
"installments": 1,
"payment_token": "",
"billing_address": {
"street": "Avenida Juscelino Kubitschek",
"number": "909",
"neighborhood": "Bauxita",
"zipcode": "35400000",
"city": "Ouro Preto",
"complement": "",
"state": "MG"
}
}
}
}

# open-finance
Avatar discord do usuario igor_efi

igor_efi

Boa tarde, @marcos_cardoso_! Tudo bem?
Atuamente não.
A nossa API do Open Finance abrange atualmente a iniciação de pagamento.

# cartões
Avatar discord do usuario _fernandoferreira

_fernandoferreira

Ver Respostas

não tem algoritmo que seja suficiente, a gente pede 'NOME DO PORTADOR IMPRESSO NO CARTÃO" o cliente coloca 'MASTER CARD', aí fica complicado
imagem enviada na mensagem pelo usuario _fernandoferreira

# pagamento-contas
Avatar discord do usuario nalberth

nalberth

Ver Respostas

Olá bom dia
A biblioteca "payment-token-efi" usada para
-identificar a bandeira do cartão
-busca informações de parcelamento
-gera o token de pagamento (payment_token) e a máscara do cartão (card_mask)
possui suporte para typescript para ser usada no front-end com ReactJs?

# drex
Avatar discord do usuario iguatu

iguatu

Pra quem não sabe ainda o que é um blockchain. Já existem vários "DREX" de forma descentralizada. Você pode "mintar" e receber o colateral. Vários exemplo em Polygon, Cardano, Etherium... isso sim será o futuro

# cartões
Avatar discord do usuario danieldl2172

danieldl2172

Ver Respostas

Boa tarde, um cliente está tentando fazer um pagamento via cartão de credito.
mas sempre que ele tenta, vem um erro falando:
Escolha uma bandeira mastercard elo etc...
o cartão dele já é ELO.. alguém sabe que erro é esse, e oque devo fazer ?
Não consegui encontrar a requisição ainda, creio que está acontecendo quando vai gerar o token do cartão

# cartões
Avatar discord do usuario gabriel_efi

gabriel_efi

a propriedade faz parte do objeto credit_card
imagem enviada na mensagem pelo usuario gabriel_efi

# cartões
Avatar discord do usuario ranulfosouza

ranulfosouza

Ver Respostas

obrigado, agora vi sim que tem o discount mas ele fica no corpo do json ou dentro de alguma tag como payment ou credit_card ??

# cartões
Avatar discord do usuario ranulfosouza

ranulfosouza

{
"items": [
{
"name": "Meu Produto",
"value": 5990,
"amount": 1
}
],
"payment": {
"credit_card": {
"customer": {
"name": "Gorbadoc Oldbuck",
"cpf": "94271564656",
"email": "[email protected]",
"birth": "1990-08-29",
"phone_number": "5144916523"
},
"installments": 1,
"payment_token": "",
"billing_address": {
"street": "Avenida Juscelino Kubitschek",
"number": "909",
"neighborhood": "Bauxita",
"zipcode": "35400000",
"city": "Ouro Preto",
"complement": "",
"state": "MG"
}
}
}
}

# cartões
Avatar discord do usuario joaolucas_efi

joaolucas_efi

Bom dia @jamersonbernardo, tudo bem?

Você pode utilizar o seguinte exemplo para gerar o payment token com React.

Exemplo alternativo para gerar payment_token react:

js
"use client"
import { useEffect, useState } from 'react';

const App = () => {
const [message, setMessage] = useState('Hello React!');

useEffect(() => {
const script = document.createElement('script');
script.type = 'module';
script.src = 'https://cdn.jsdelivr.net/gh/efipay/js-payment-token-efi/dist/payment-token-efi.min.js';
script.onload = runEfiJsCode;
document.head.appendChild(script);
}, []);

const runEfiJsCode = async () => {
try {
EfiJs.CreditCard
.debugger(false)
.setAccount('')
.setEnvironment('') // 'production' or 'sandbox'
.setCreditCardData({
brand: '',
number: '',
cvv: '',
expirationMonth: '05',
expirationYear: '2029',
reuse: false
})
.getPaymentToken()
.then(data => {
const payment_token = data.payment_token;
const card_mask = data.card_mask;

setMessage(Payment_token: ${payment_token} | Card_mask: ${card_mask})
console.log('payment_token', payment_token);
console.log('card_mask', card_mask);
})
.catch(err => {
console.log('Código: ', err.code);
console.log('Nome: ', err.error);
console.log('Mensagem: ', err.error_description);
});
} catch (error) {
console.log('Código: ', error.code);
console.log('Nome: ', error.error);
console.log('Mensagem: ', error.error_description);
}
};

return (

{message}

);
};

export default function Home() {
return (



);
}

# cartões
Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

O risco de charge-back é certamente um fator na modelagem da Efí, especialmente quando ela faz antecipação de recebível. Mas a taxa é muito mais alta pq os bancos emissores, bandeiras e adquirentes cobram bastante...
... a parte dos bancos emissores você pode ver aqui:
https://www.visa.com.br/sobre-a-visa/geral/tarifas-intercambio.html
https://www.mastercard.com.br/pt-br/visao/quem-somos/intercambio.html

# assinaturas
Avatar discord do usuario antoniofernandes

antoniofernandes

Ver Respostas

O payment_token está sendo gerado via frontend via javascript conforme a documentacao

js
window.getPaymentToken(
{
brand: data.brand,
number: data.cardNumber,
cvv: data.cvv,
expiration_month: data.month,
expiration_year: data.year,
},
checkPayment,
);
Vale ressaltar que o mesmo está retornando certinho.

conforme ja informei, o erro informa que
js
{
"code": 3500010,
"error": "property_does_not_exists",
"error_description": {
"property": "payment_token",
"message": "A propriedade [payment_token] informada não existe."
}
}
ou seja como se a propriedade payment_token nao fizesse parte do objeto de configuração....

# assinaturas
Avatar discord do usuario antoniofernandes

antoniofernandes

@guilherme_efi Bom ia amigo. Tinha feito uma integração (Testada em sandbox) que estava funcionando e ja validado certinho meu fluxo. Agora voltei a testar e estou recebendo um erro:
Minha integração de assinatura tem mais ou menos o seguinte código:

js


const bodySubscriptionSignature = {
items: [
{
name: Assinatura: ${plan.title},
value: parseInt(convertPriceGateway(plan.price)),
amount: 1,
},
],
metadata: {
custom_id: ${companyId} - ${Date.now()},
notification_url: process.env.GN_NOTIFICATION_URL,
},
};

const paramsSignature = {
id: plan.planId,
};

const signature = await this.gn.createSubscription(
paramsSignature,
bodySubscriptionSignature,
);

const paramsPayment = {
id: signature.subscription_id,
};

const bodyPayment = {
payment: {
credit_card: {
payment_token: paymentToken,
billing_address: {
street: user.company.address.street,
number: user.company.address.streetNumber,
neighborhood: user.company.address.district,
zipcode: cep,
city: user.company.address.city,
state: user.company.address.state,
},
customer: {
name: ${user.firstName} ${user.lastName},
email: user.email,
cpf: cpf,
birth: birthDate,
phone_number: phone,
},
},
},
};

const associatePayment = await this.gn.paySubscription(
paramsPayment,
bodyPayment,
);

return { associatePayment };



E estou recebendo o seguinte erro:
js
{
"code": 3500010,
"error": "property_does_not_exists",
"error_description": {
"property": "payment_token",
"message": "A propriedade [payment_token] informada não existe."
}
}
Mudou alguma coisa?