![Avatar discord do usuario alexsiqueira0615](https://cdn.discordapp.com/avatars/931514901724282960/7b275b20849480f7dc98d16725d3824e.webp)
Vou verificar a documentação. @guilherme_efi @rubenskuhl muito obrigado, bom dia p/ vcs!!
Outro detalhe que o @aldenorjunior precisa atentar no caso de envio de Pix em lote é que quando o Pix não der certo, é bom dar um tempo de espera antes de tentar o próximo, ou vai cair nos baldes de limitação do Banco Central.
Bom dia! Eu criei um lote de cobranças com vencimento, e algumas cobranças foram criadas e outras outras ficaram como negadas, eu quero utilizar o PUT para alterar o lote, é possível?
Ah sim, me desculpe a confusão. No caso dos endpoints de lote, são usados para emitir cobranças Pix para recebimento.
No momento, não dispomos de um endpoint de envio em lote, mas você pode utilizar o [endpoint de envio de Pix](https://dev.efipay.com.br/docs/api-pix/gestao-de-pix#requisitar-envio-de-pix) e programar o loop que realizará os envios. Neste cenário, recomendamos que o envio de Pix por API esteja condicionado à conclusão da transação anterior, a qual é notificada por meio do webhook.
Não entendi muito bem vc comentou "gerenciar cobranças", porem preciso fazer pagamentos...
Bom dia, @thiagorobles. Como vai você?
Parece você está misturando configurações do certificado do endpoint webhook da sua aplicação que irá receber as notificações, com parâmetros do endpoint da API Efí que consome para configurar o webhook.
Antes de prosseguirmos, você conseguiu autenticar na API Pix?
Bom dia, @aldenorjunior! Tudo bem?
Existe sim. Nós oferecemos uma solução onde você pode emitir e gerenciar cobranças com vencimento em lote. Para mais informações detalhadas, você pode conferir em nossa documentação técnica aqui.
Qualquer dúvida, pode contar com a gente!
Bom dia! Estamos precisando de pagamento em lote com pix, existe algum serviço que nos atenda?
fiz a alteração abaixo, adicionei o cert e a key que baixei no momento da criação da aplicação
O certificado, pq ele é um só por ambiente. O mesmo que você usou para acessar o /cob e criar a cobrança.
A chamada de configuração do webhook, o configure webhook, precisa do mesmo certificado usado para criação de cobrança, que não parece citado aí no código...
@rubenskuhl obrigado pelo retorno, eu tentei integrar no meu Controller (uso nestjs) na minha API que está no heroku, aqui está o código:
import {
ClassSerializerInterceptor,
Controller,
HttpCode,
HttpStatus,
Logger,
Post,
Req,
UseInterceptors,
} from '@nestjs/common';
import { LoggerInterceptor } from '@src/common/logger/logger-interceptor';
import configuration from '@src/config/configuration';
import axios from 'axios';
import { Request } from 'express';
import as https from 'https';
const { httpsOptions } = configuration();
@Controller('efi-gerencianet')
@UseInterceptors(ClassSerializerInterceptor, LoggerInterceptor)
export class EfiGerencianetController {
private readonly logger = new Logger(EfiGerencianetController.name);
private instance = axios.create({
httpsAgent: new https.Agent({
ca: httpsOptions.ca,
requestCert: true,
rejectUnauthorized: true,
}),
headers: {
'x-skip-mtls-checking': true,
},
});
@Post('webhook/pix')
@HttpCode(HttpStatus.OK)
handlePixCallback(@Req() req: Request) {
const body = req.body;
this.logger.log(Received callback from Gerencianet);
this.logger.debug(body);
return body;
}
@Post('configure-webhook')
async configureWebhook() {
const url =
'https://api-pix.gerencianet.com.br/v2/webhook/4114c4e9-202c-4979-8534-34a4e5a29ad0';
const data = {
webhookUrl: '',
};
try {
const response = await this.instance.put(url, data);
this.logger.log(
Webhook configured successfully. Status code: ${response.status},
);
return response.data;
} catch (error) {
this.logger.error(Error configuring webhook: ${error.message});
throw new Error(Error configuring webhook: ${error.message});
}
}
}
subi pra produção, e ao chamar o endpoint recebo o erro: Error: Error configuring webhook: read ECONNRESET
Para SSL estou usando o heroku ACM (auto managed).
Sabem o que posso estar fazendo errado?
Um certificado CA de mTLS tipicamente não se importa, e sim se usa ele numa configuração.