O CPF do pagador vem mascarado, então ele não permite consulta direta. Você precisaria perguntar o CPF ou CPF e data, confirmar esse dado no SERPRO ou outro serviço, e ao receber o Pix confirmar que veio desse CPF.
Termos mais procurados:
Termos mais procurados:
O CPF do pagador vem mascarado, então ele não permite consulta direta. Você precisaria perguntar o CPF ou CPF e data, confirmar esse dado no SERPRO ou outro serviço, e ao receber o Pix confirmar que veio desse CPF.
Olá. Quero comercializar um produto por PIX mas preciso receber o nome, o CPF e a data de nascimento obrigatoriamente para identificar o cliente no ato do pagamento e evitar a venda para menores. É possível obter estes dados na consulta de PIX recebidos?
CPF e nome são opcionais. Basta omitir a árvore devedor.
mas agora estou implementando a Efí e não estou vendo isso 🤔 agora é necessário informar o cpf e nome?
eu vi que era possível criar um pedido via api sem precisar informar cpf e nome
Não sei. Mas vale checar as outras causas clássicas de gerar recusas:
- Ter um e-mail na transação diferente daquele tipicamente usado para compras por aquele CPF e/ou cartão
- Ter um telefone na transação diferente daquele tipicamente usado para compras por aquele CPF e/ou cartão
- Dados não preenchidos (com cartão praticamente nada é opcional)
dados de entrada
{
"calendario": {
"expiracao": 3600
},
"devedor": {
"cpf": "31435600886",
"nome": "Doss App Official"
},
"valor": {
"original": "0.01"
},
"chave": "0aee45d3-0c50-4104-90f7-af6142f01b84",
"solicitacaoPagador": "Residencia"
}
dados de saida
{
"calendario": {
"criacao": "2024-04-24T21:30:02.789Z",
"expiracao": 3600
},
"txid": "5dbb6b24b81443e595b7aba488a0bd6e",
"revisao": 0,
"status": "ATIVA",
"valor": {
"original": "0.01"
},
"chave": "0aee45d3-0c50-4104-90f7-af6142f01b84",
"devedor": {
"cpf": "31435600886",
"nome": "Doss App Official"
},
"solicitacaoPagador": "Residencia",
"loc": {
"id": 20,
"location": "qrcodespix-h.sejaefi.com.br/v2/618748afff0d431381b862f438baf58d",
"tipoCob": "cob",
"criacao": "2024-04-24T21:30:02.814Z"
},
"location": "qrcodespix-h.sejaefi.com.br/v2/618748afff0d431381b862f438baf58d",
"pixCopiaECola": "00020101021226850014BR.GOV.BCB.PIX2563qrcodespix-h.sejaefi.com.br/v2/618748afff0d431381b862f438baf58d5204000053039865802BR5905EFISA6008SAOPAULO6207050363041473"
}
nao recebi nenhuma chamada no meu webhook
dados de saida
{
"calendario": {
"criacao": "2024-04-24T21:30:02.789Z",
"expiracao": 3600
},
"txid": "5dbb6b24b81443e595b7aba488a0bd6e",
"revisao": 0,
"status": "ATIVA",
"valor": {
"original": "0.01"
},
"chave": "0aee45d3-0c50-4104-90f7-af6142f01b84",
"devedor": {
"cpf": "31435600886",
"nome": "Doss App Official"
},
"solicitacaoPagador": "Residencia",
"loc": {
"id": 20,
"location": "qrcodespix-h.sejaefi.com.br/v2/618748afff0d431381b862f438baf58d",
"tipoCob": "cob",
"criacao": "2024-04-24T21:30:02.814Z"
},
"location": "qrcodespix-h.sejaefi.com.br/v2/618748afff0d431381b862f438baf58d",
"pixCopiaECola": "00020101021226850014BR.GOV.BCB.PIX2563qrcodespix-h.sejaefi.com.br/v2/618748afff0d431381b862f438baf58d5204000053039865802BR5905EFISA6008SAOPAULO6207050363041473"
}
dados de entrada
{
"calendario": {
"expiracao": 3600
},
"devedor": {
"cpf": "31435600886",
"nome": "Doss App Official"
},
"valor": {
"original": "0.01"
},
"chave": "0aee45d3-0c50-4104-90f7-af6142f01b84",
"solicitacaoPagador": "Residencia"
}
$dataVencimento = $_POST['data'];
$plano = $_POST['plano'];
$valorTotal = floatval(str_replace(',', '.', str_replace('.', '', $_POST['valorInteiro'])));
$numeroParcelas = intval($_POST['num_parcelas']);
if (!is_numeric($valorTotal) || $valorTotal <= 0) {
die("Valor total inválido. Por favor, insira um valor numérico positivo.");
}
$documento = preg_replace('/\D/', '', $_POST['cpf']); // Remove caracteres não numéricos
// Verifica se é um CPF (11 dígitos) ou CNPJ (14 dígitos)
if (strlen($documento) == 11) {
$customer = [
"name" => $_POST['nome'],
"email" => $_POST['email'],
"cpf" => str_pad($documento, 11, '0', STR_PAD_LEFT)
];
} elseif (strlen($documento) == 14) {
$customer = [
"name" => $_POST['nome'],
"email" => $_POST['email'],
"juridical_person" => [
"corporate_name" => $_POST['corporate_name'],
"cnpj" => str_pad($documento, 14, '0', STR_PAD_LEFT)
]
];
} else {
die("Documento inválido. Por favor, insira um CPF ou CNPJ válido.");
}
Pelo código você está passando o cnpj no campo cpf
// Construindo o array customer
$customer = [
"name" => $_POST['nome'],
"email" => $_POST['email'],
];
// Verifica se é uma pessoa física (CPF) ou pessoa jurídica (CNPJ)
if (!empty($_POST['cpf'])) {
$customer["cpf"] = str_pad($cpf, 11, '0', STR_PAD_LEFT); // Garante que o CPF tenha 11 caracteres
} elseif (!empty($_POST['cnpj'])) {
$customer["cpf"] = str_pad($cnpj, 11, '0', STR_PAD_LEFT); // Envia o CNPJ no campo de CPF
$customer["juridical_person"] = [
"corporate_name" => $_POST['corporate_name'],
"cnpj" => str_pad($cnpj, 14, '0', STR_PAD_LEFT), // Garante que o CNPJ tenha 14 caracteres
];
}
Boa tarde, @leandro535!
Pela mensagem confere por gentileza se não está passando o CNPJ no campo CPF, existe um campo próprio para CNPJ que é no atributo "juridical_person", conforme imagem a seguir
3500034validation_errorArray ( [property] => /customer/cpf [message] => A string é muito longa (14 caracteres), máximo 11. )
Boa noite @melisquencia! É possível receber o CPF de forma mascarada e o nome do pagador via webhook.
Boa noite, é possível eu identificar o nome ou CPF do pagador, ou ainda o banco pelo qual o pagamento foi feito para uma cobrança PIX? Verifiquei a função pixDetailCharge não contém nenhuma dessas infos
Se eu inserir o cpf e conta de um banco terceiro vai funcionar? ou só para contas EFI
neste caso no objeto "repasses": [
{
"tipo": "porcentagem",
"valor": "15.00",
"favorecido": {
"conta": "1234567",
"cpf": "12345678909"
}
}
Bom dia, estou fazendo testes com a api pix de vocês, mas como para ela funcionar, com as principais funcionalidas é necessário usa-la em produção, estou gerando transações reais.
Fiz uma consulta a situação do pix usando a chamada pixDetailCharge passando como parâmetro txid, observe que ao chamar esta função os dados são retornados e o pix esta com a situação ATIVA:
Coloquei alguns XXXXX no meio para mascarar os dados, apesar de ser fornecido o TXID
TXID - 66afcfc1dafe41bdb6a59dd565a09479
Response = {"devedor":{"cpf":"XXXXXXXXX","nome":"XXXXXXXXXXXX"},"loc":{"location":"qrcodespix.sejaefi.com.br/v2/c90653b52bb34c8dbd5584313a499103","id":31,"criacao":"2024-03-20T04:42:09.000Z","tipoCob":"cob"},"pixCopiaECola":"00020101021226830014BR.GOV.BCB.PIX2561qrcodespix.sejaefi.com.br/v2/c90653b52bb34c8dbdXXXXXXXXXXXXXXX65802BR5905EFISA6008SAOPAULO6207050363042BC5","valor":{"original":"96.90"},"chave":"1cbXXXXXXX-810f-4967-b302-7d94425c49f5","calendario":{"expiracao":7776000,"criacao":"2024-03-20T04:42:09.000Z"},"txid":"66afcfc1dafe41bdb6a59dd565a09479","location":"qrcodespix.sejaefi.com.br/v2/c90653b5XXXXXXXXXX313a499103","revisao":0,"solicitacaoPagador":"Pagamento Adesão\n2 ou mais filhos","status":"ATIVA"}
Veja que com o mesmo TXID fiz a chamada a pixUpdadeDueCharge e esta retorna que o pix não existe:
TXID - 66afcfc1dafe41bdb6a59dd565a09479
{"detail":"Cobrança com vencimento não encontrada para o txid informado","type":"https://pix.bcb.gov.br/api/v2/error/CobvNaoEncontrado","title":"Não Encontrado","status":404}
Alguém do suporte da EFI pode dizer o que esta sendo feito de errado para tal pix ser consultado pelo txid ser encontrado e ao tentar cancela-lo não se encontra?
Desde já agradeço.
Boa Tarde
Estou tendo dificuldades para gerar um link de pagamento pix
Eu somente preciso gerar um pix de um certo valor e depois ourvir o webhook e fazer uma ação
Aqui esta meu codigo:
let body = {
calendario: {
expiracao: 3600,
},
devedor: {
cpf: '94271564656',
nome: 'Gorbadock Oldbuck',
},
valor: {
original: float_amount.toString(),
},
chave: '14.359.846/0001-27', // Informe sua chave Pix cadastrada na efipay. //o campo abaixo é opcional
infoAdicionais: [
{
nome: 'Pagamento em',
valor: 'StartPro Treinamentos',
},
{
nome: string_name,
valor: float_amount,
},
],
}
let params = {
txid: 'dt9BHlyzrb5jrFNAdfEDVpHgiOmDbVq111',
}
const efipay = new EfiPay(options)
try {
let object_result = efipay.pixCreateCharge(params, body)
return object_result
} catch( e ) {
throw e
}
Aqui esta o error que ele me da
"erros": [
{
"chave": "pattern",
"caminho": ".body.valor.original",
"mensagem": "deve corresponder ao padrão \"^[0-9]{1,10}\\.[0-9]{2}$\""
}
]
o "body.valor.original" é "10"
se eu colocar um 10 como number ele me informa que ele precisa ser um texto, por isso deixei ".toString()"
Eu basicamente estou tentanto fazer uma API na qual a pessoa escolhe o valor que quer gerar um pix e o nome do produto, a API deve retornar o codigo pix copia e cola para a pessoa pagar.
No mercado livre você so coloca o endpoint do seu servidor para onde a notificação POST dever ser enviada, como faço isso no efipay?