n8n-nodes-efibank
Version:
Nó personalizado para integração com as APIs Cobranças e Pix do Efi Bank, permitindo operações de pagamentos, recebimentos e gerenciamento de transações financeiras.
82 lines • 3.7 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.pixListRecurrenceAutomatic = void 0;
const sdk_node_apis_efi_1 = __importDefault(require("sdk-node-apis-efi"));
const credentials_1 = __importDefault(require("../../../../../interfaces/credentials"));
async function pixListRecurrenceAutomatic(context, index) {
try {
const options = await credentials_1.default.call(context);
const efipay = new sdk_node_apis_efi_1.default(options);
const inicio = context.getNodeParameter('inicio', index);
const fim = context.getNodeParameter('fim', index);
const cpf = context.getNodeParameter('cpf', index, '');
const cnpj = context.getNodeParameter('cnpj', index, '');
const locationPresente = context.getNodeParameter('locationPresente', index);
const status = context.getNodeParameter('status', index, '');
const convenio = context.getNodeParameter('convenio', index, '');
const paginacao = context.getNodeParameter('paginacao', index, 0);
const itensPorPagina = context.getNodeParameter('itensPorPagina', index, 100);
const params = {
inicio,
fim
};
if (cpf)
params.cpf = cpf;
if (cnpj)
params.cnpj = cnpj;
if (locationPresente && locationPresente !== 'none')
params.locationPresente = locationPresente;
if (status)
params.status = status;
if (convenio)
params.convenio = convenio;
if (paginacao)
params.paginacao = paginacao;
if (itensPorPagina)
params.itensPorPagina = itensPorPagina;
const resposta = await efipay.pixListRecurrenceAutomatic(params);
return resposta;
}
catch (error) {
let mensagemErro = error.message || error.mensagem || error.detail || "Ocorreu um erro desconhecido";
if (typeof error === 'string') {
mensagemErro = error;
}
else if (error.error && error.error_description) {
mensagemErro = `${error.error}: ${error.error_description}`;
}
else if (error.response && error.response.data) {
if (typeof error.response.data === 'string') {
try {
const parsedData = JSON.parse(error.response.data);
mensagemErro = parsedData.message || parsedData.mensagem || mensagemErro;
}
catch {
mensagemErro = error.response.data;
}
}
else {
mensagemErro = error.response.data.message || error.response.data.mensagem || mensagemErro;
}
}
if (mensagemErro.includes("sandbox") || mensagemErro.includes("certificate")) {
throw new Error("Verifique o atributo sandbox e certificate, e garanta que eles estejam corretamente atribuídos para o ambiente desejado.");
}
if (error.violacoes && error.violacoes.length > 0) {
const primeiraViolacao = error.violacoes[0];
throw new Error(JSON.stringify({
razao: primeiraViolacao.razao,
propriedade: primeiraViolacao.propriedade
}));
}
throw new Error(JSON.stringify({
nome: error.nome || error.code || 'erro_desconhecido',
mensagem: mensagemErro
}));
}
}
exports.pixListRecurrenceAutomatic = pixListRecurrenceAutomatic;
//# sourceMappingURL=pixListRecurrenceAutomatic.js.map