Histórico de mensagens sobre chave pix em pix

EXIBINDO CONVERSAS RECENTES:

Texto: chave pix
Canal: pix
Avatar discord do usuario yasmin_efi

yasmin_efi

Ver Respostas

Neste caso @joanes0674, temos as seguintes regras de envios em Homologação:
- Os pagamentos enviados com valor de R$ 4,00 irão gerar duas devoluções recebidas no valor de R$ 2,00.
- Os pagamentos enviados com valor de R$ 5,00 irão gerar uma devolução recebida no valor de R$ 5,00.
- Os pagamentos enviados via chave só serão confirmados ou rejeitados se for utilizada a chave de homologação: [email protected]. Caso contrário, um erro de chave inválida será informado.
- Os pagamentos enviados via dados bancários não sofrem alterações.
Link: https://dev.efipay.com.br/docs/api-pix/envio-pagamento-pix#requisitar-envio-de-pix

Avatar discord do usuario jessica_efi

jessica_efi

Ver Respostas

Bom dia @paulogubio ! O campo chave é a chave pix cadastrada em sua conta Efí. O identificador que você pode customizar, é o txid.

Avatar discord do usuario rafaaoki

rafaaoki

Ver Respostas


Credentials credentials = new Credentials();

HashMap options = new HashMap();
options.put("client_id", credentials.getClientId());
options.put("client_secret", credentials.getClientSecret());
options.put("certificate", credentials.getCertificate());
options.put("sandbox", credentials.isSandbox());

HashMap params = new HashMap();
params.put("idEnvio", "12453567890123456789");

Map body = new HashMap();
body.put("valor", "99.99");

Map pagador = new HashMap();
pagador.put("chave", "Insira_aqui_sua_chave");
body.put("pagador", pagador);

Map favorecido = new HashMap();
favorecido.put("chave", "joã[email protected]");
body.put("favorecido", favorecido);

try {
EfiPay efi= new EfiPay(options);

Map response = efi.call("pixSend", params, body);
System.out.println(response);
}catch (EfiPayException e){
System.out.println(e.getError());
System.out.println(e.getErrorDescription());
}
catch (Exception e) {
System.out.println(e.getMessage());
}
}
este seria de envio entao?

Avatar discord do usuario rafaaoki

rafaaoki

Ver Respostas

public CobGerada pixCreateImmediateCharge(ClienteDto cliente) throws JSONException, EfiPayException {
try {
Credentials credentials = new Credentials();

JSONObject options = new JSONObject();
options.put("client_id", credentials.getClientId());
options.put("client_secret", credentials.getClientSecret());
options.put("certificate", credentials.getCertificate());
options.put("sandbox", credentials.isSandbox());


JSONObject body = new JSONObject();

System.out.println(cliente.toString());

String cpf = cliente.cpf().replaceAll("\\.", "");
cpf = cpf.replaceAll("-", "");

String rg = cliente.rg().replaceAll("\\.", "");
rg = rg.replaceAll("-", "");

body.put("calendario", new JSONObject().put("expiracao", 3600));
body.put("devedor", new JSONObject().put("cpf", cpf ).put("nome" , cliente.nome_completo()));
body.put("valor", new JSONObject().put("original", "0.01"));
body.put("chave", "3c4961f4-0921-4eda-97bc-71704defb09f");

EfiPay efi = new EfiPay(options);
JSONObject response = efi.call("pixCreateImmediateCharge", new HashMap(), body);
CobGerada res = new Gson().fromJson(response.toString() , CobGerada.class);
return res;
}catch (EfiPayException e){
System.out.println(e.getError());
System.out.println(e.getErrorDescription());
throw new RuntimeException(e.getMessage());
}
catch (Exception e) {
System.out.println(e.getMessage());
throw new RuntimeException(e.getMessage());
}
}

esse codigo funcionaria como um envio de pagamento pix via api?

Avatar discord do usuario jessica_efi

jessica_efi

Ver Respostas

Não. A chave é a chave Pix da conta emissora. O e2eid é o identificador do pagamento.

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

A chave Pix que você configurou webhook é a mesma que você está gerando cobranças ?

Avatar discord do usuario emiliocalvet

emiliocalvet

Ver Respostas

java
public PixChargeResponse pixCreateImmediateCharge(PixChargeRequest pixChargeRequest) {
if (!isValidValue(pixChargeRequest.valor())) {
throw new ResponseStatusException(HttpStatus.BAD_REQUEST, "Valor inválido de criação do pix");
}

var options = new Credentials().getOptionsJson();

JSONObject body = new JSONObject();
body.put("calendario", new JSONObject().put("expiracao", pixDurationSeconds));
body.put("valor", new JSONObject().put("original", pixChargeRequest.valor()));
body.put("chave", token);

JSONArray infoAdicionais = new JSONArray();
infoAdicionais.put(new JSONObject().put("nome", "Descrição do serviço").put("valor", pixChargeRequest.serviceDescription()));
body.put("infoAdicionais", infoAdicionais);

try {
EfiPay efi = new EfiPay(options);
JSONObject response = efi.call("pixCreateImmediateCharge", new HashMap<>(), body);
String copyAndPaste = response.getString("pixCopiaECola");
byte[] qrCode = PixGenerateQRCode.generateQRCode(copyAndPaste, 300, 300);

pixWebhookService.configPixWebhook(token);

return new PixChargeResponse(
response.get("txid").toString(),
qrCode,
copyAndPaste,
pixChargeRequest.valor(),
pixChargeRequest.serviceDescription()
);
} catch (EfiPayException e) {
logger.error("Falha ao criar cobrança pix!", e);
throw new ResponseStatusException(
HttpStatus.BAD_REQUEST,
"Falha ao criar cobrança Pix!"
);
} catch (Exception e) {
logger.error("Erro desconhecido ao criar cobrança pix!", e);
throw new ResponseStatusException(
HttpStatus.INTERNAL_SERVER_ERROR,
"Erro ao criar cobrança Pix!"
);
}
}

Avatar discord do usuario leandro_24465

leandro_24465

Ver Respostas

esse meu código deu o seguinte erro "Erro durante o processamento: HTTPSConnectionPool(host='pix-h.api.efipay.com.br', port=443): Max retries exceeded with url: /oauth/token (Caused by SSLError(SSLError(524297, '[SSL] PEM lib (_ssl.c:3845)')))" alguem como resolver isso?

import json
from efipay import EfiPay

# Carrega as credenciais do arquivo JSON
with open('C:\\Users\\LANAS\\OneDrive\\Documents\\Nova pasta\\venv\\Scripts\\credentials.json') as file:
options = json.load(file)

# Dados da cobrança
body = {
"calendario": {
"expiracao": 3600 # Tempo para expirar em segundos
},
"devedor": {
"cpf": "12345678909", # CPF do pagador
"nome": "Nome do Cliente"
},
"valor": {
"original": "0.01" # Valor do pagamento
},
"chave": "46aadfb3-50d6-4fa4-ae00-e6b8813b0dbe", # Chave Pix da conta Efí do recebedor
"infoAdicionais": [
{
"nome": "Produto/Serviço",
"valor": "Descrição do produto/serviço"
}
]
}

try:
# Instancia a API com as credenciais carregadas
api = EfiPay(options)

# Cria a cobrança Pix imediata
pix = api.pix_create_immediate_charge(params={}, body=body)

if 'txid' in pix:
# Se a cobrança foi criada com sucesso, gera o QR Code
params = {
'id': pix['loc']['id']
}
qrcode = api.pix_generate_qr_code(params)

# Exibe os dados do Pix e do QR Code no console
print("Cobrança Pix criada com sucesso!")
print("TXID:", pix['txid'])
print("QR Code gerado:", qrcode['imagemQrcode'])
print("Código Pix (copia e cola):", qrcode['qrcode'])

else:
print("Erro ao criar a cobrança Pix:", pix)

except Exception as e:
# Trata qualquer outro erro de forma genérica
print(f"Erro durante o processamento: {str(e)}")


Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Oi, @daniel.d3v. Bom dia!
Existem algumas diferenças no JSON enviado em uma transação de Pix recebido e Pix enviado.

Primeiro, como o Rubens mencionou, você pode usar uma chave Pix para recebimento e outra para envio, usando o mesmo webhook URL. Dessa forma, ao receber a notificação, você já pode diferenciar pela chave.

Outro ponto que pode verificar é que o JSON de Pix enviado possui o parâmetro "tipo": "SOLICITACAO", além disso, tem também o parâmetro gnExtras>idEnvio.

Veja em nossa documentação alguns exemplos de JSON: https://dev.efipay.com.br/docs/api-pix/webhooks#requisi%C3%A7%C3%A3o

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Você pode usar outra chave para o envio de Pix.

Avatar discord do usuario palloma_efi

palloma_efi

Ver Respostas

Bom dia @alex_333902 ! O endpoint de criar chave Pix funciona somente em produção. Na criação das cobranças Pix em homologação, basta você utilizar uma chave Pix semanticamente válida.

Avatar discord do usuario igor_efi

igor_efi

Ver Respostas

Bom dia, @fernandodeliverymeiasete! Tudo bem com você?

Temos um endpoint que pode te ajudar nesse processo: Envio de Pix .

Com esse endpoint, você consegue enviar valores da sua conta digital Efí para qualquer instituição financeira, seja por meio de uma chave Pix ou dados bancários.

Se precisar de mais alguma coisa, estou à disposição!

Avatar discord do usuario jackson.calixto

jackson.calixto

Gostaria de conseguir fazer inicialmente o Postman funcionar em Produção para gerar copia&cola, pagar e ver os status, e transferir para uma chave PIX.
Sua documentação é muito boa, mas adoraria se pudesse ter uma ajuda extra.

Avatar discord do usuario jackson.calixto

jackson.calixto

Ver Respostas

Uma questão muito importante para mim.
pela API PIX posso gerar copia&cola para receber em mimha conta Efí?
pela API PIX posso transferir valores de minha conta Efí para qualquer chave PIX?

Avatar discord do usuario leandroberg

leandroberg

Ver Respostas

Bom dia 😎 estou tentando configurar um split de pagamento porém estou tendo falha no retorno dizendo que meu JSON está inválido (Valores ou tipos de campo inválidos). Veja retorno:

{
"chave": "additionalProperties",
"caminho": ".body",
"mensagem": "não são permitidas propriedades adicionais"
}

Poderiam me ajudar? Segue anexo screenshot da minha chamada utilizando o SDK PHP da EFI atravez da cobrança imediata via PIX. Bem basicamente o que eu preciso no momento é reter 1% da transação em minha conta e enviar 99% para conta do cliente.
imagem enviada na mensagem pelo usuario leandroberg

Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Bom dia, @tanzin7! Tudo bem?

Sim, você pode ativar o recebimento do nome e CPF mascarado do pagador. Para isso, basta usar o endpoint PUT /v2/gn/config (Criar/modificar configurações da conta) e incluir o atributo recebimento>webhook>notificacao>pagador: true.

Com essa configuração ativa, o seu sistema vai receber uma notificação parecida com esta:

json
"pix": [
{
"endToEndId": "E1803615022211340s08793XPJ",
"txid": "fc9a43k6ff384ryP5f41719",
"chave": "2c3c7441-b91e-4982-3c25-6105581e18ae",
"valor": "0.01",
"horario": "2020-12-21T13:40:34.000Z",
"infoPagador": "pagando o pix",
"gnExtras": {
"pagador": {
"nome": "GORBADOCK OLDBUCK",
"cpf": ".123.456-",
"codigoBanco":"00416968"
}
}
}
]

Para mais exemplos de notificações, você pode conferir na nossa documentação técnica.

Avatar discord do usuario joaolucas_efi

joaolucas_efi

Ver Respostas

Em homologação basta utilizar qualquer valor como chave Pix para testar os endpoints.

Avatar discord do usuario joaolucas_efi

joaolucas_efi

Ver Respostas

Bom dia, @boblee_sw. Tudo bem?
Os endpoints referentes a criação/consulta de chave Pix não funcionam no ambiente de homologação pois não há uma validação com relação a chave utilizada.

Avatar discord do usuario boblee_sw

boblee_sw

Ver Respostas

Opa pessoal bom dia,
Eu estou passando por uma situação aqui, quero testar uma aplicação, no entanto, ela esta sempre retornando o erro 404 - null. Isso foi o que eu tenho feito:
- gerei token de homologação
- habilitei todos os campos da área pix na parte de homologação
- criei uma chave aleatória
Estava solicitando uma requisição de listagem de chaves, coloquei:
url: https://pix-h.api.efipay.com.br/v2/gn/evp
método: get
Headers:
- Authorization: Bearer [Token]
- Content-Type: application/json

esta faltando mais alguma coisa? não sou programador kk..