@plasoft/boletos 1.0.38 → 1.0.39

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/build/index.mjs CHANGED
@@ -1499,13 +1499,14 @@ function gerarDadosBoleto4({ dados }) {
1499
1499
  bancario.modalidade = "01";
1500
1500
  }
1501
1501
  bancario.modalidade = padLeft(bancario.modalidade, 2);
1502
- const nossoNumero = getNossoNumero2(bancario.agencia, bancario.codigo_cliente, parcela.id_boleto);
1502
+ const codigo_cliente = `${bancario.codigo_cliente}${bancario.codigo_cliente_dv}`;
1503
+ const nossoNumero = getNossoNumero2(bancario.agencia, codigo_cliente, String(parcela.id_boleto));
1503
1504
  const fatorVencimento = getFatorVencimento(parcela.vencimento);
1504
1505
  const valor = getValor4(Number(parcela.valor));
1505
- const campoLivre = "1" + padLeft(copy(bancario.agencia, 1, 4), 4) + bancario.modalidade + padLeft(bancario.codigo_cliente, 7) + nossoNumero + padLeft(parcela.parcela, 3);
1506
+ const campoLivre = "1" + bancario.agencia + bancario.modalidade + codigo_cliente + nossoNumero + padLeft(parcela.parcela, 3);
1506
1507
  const digitoGeral = getDigitoGeral4(`7569${fatorVencimento}${valor}${campoLivre}`);
1507
1508
  const codigoBarra2 = `7569${digitoGeral}${fatorVencimento}${valor}${campoLivre}`;
1508
- const campo1 = copy(codigoBarra2, 1, 4) + copy(codigoBarra2, 20, 24);
1509
+ const campo1 = copy(codigoBarra2, 1, 3) + copy(codigoBarra2, 4, 4) + copy(codigoBarra2, 20, 24);
1509
1510
  const campo2 = copy(codigoBarra2, 25, 34);
1510
1511
  const campo3 = copy(codigoBarra2, 35, 44);
1511
1512
  const campo4 = copy(codigoBarra2, 5, 5);
@@ -1529,15 +1530,24 @@ function gerarDadosBoleto4({ dados }) {
1529
1530
  return null;
1530
1531
  }
1531
1532
  }
1532
- function getNossoNumero2(numero_cooperativa, codigo_cliente, id_boleto) {
1533
- const constante_calculo = "3197";
1534
- numero_cooperativa = padLeft(copy(numero_cooperativa, 1, 4), 4);
1535
- codigo_cliente = padLeft(codigo_cliente, 10);
1536
- id_boleto = padLeft(`${id_boleto}2`, 7);
1537
- const sequencia_concatenada = numero_cooperativa + codigo_cliente + id_boleto;
1538
- let soma = 0;
1539
- for (let i = sequencia_concatenada.length - 1; i >= 0; i--) {
1540
- soma += Number(sequencia_concatenada[i]) * Number(constante_calculo[i % constante_calculo.length]);
1533
+ function getNossoNumero2(agencia, codigo_cliente, id_boleto) {
1534
+ codigo_cliente = codigo_cliente.padStart(10, "0");
1535
+ id_boleto = id_boleto.padStart(7, "0");
1536
+ const aux = `${agencia}${codigo_cliente}${id_boleto}`;
1537
+ let i = 22, m = 3, soma = 0;
1538
+ while (true) {
1539
+ i--;
1540
+ soma += m * Number(copy(aux, i, i));
1541
+ if (i === 1)
1542
+ break;
1543
+ if (m === 3)
1544
+ m = 7;
1545
+ if (m === 7)
1546
+ m = 9;
1547
+ if (m === 9)
1548
+ m = 1;
1549
+ if (m === 1)
1550
+ m = 3;
1541
1551
  }
1542
1552
  let dig = soma % 11;
1543
1553
  dig = dig === 1 ? dig = 0 : 11 - dig;
@@ -1608,10 +1618,12 @@ function gerarRemessa4({ dados }) {
1608
1618
  arquivo.add("2");
1609
1619
  arquivo.add(beneficiario.cnpj);
1610
1620
  arquivo.add(" ".padEnd(20, " "));
1611
- arquivo.add(dadosBancario.agencia.padStart(6, "0"));
1612
- arquivo.add(dadosBancario.conta.padStart(13, "0"));
1621
+ arquivo.add(dadosBancario.agencia.padStart(5, "0"));
1622
+ arquivo.add(dadosBancario.agenciaDigito);
1623
+ arquivo.add(dadosBancario.conta.padStart(12, "0"));
1624
+ arquivo.add(dadosBancario.contaDigito);
1613
1625
  arquivo.add("0");
1614
- arquivo.add(beneficiario.nome.padEnd(30, " "));
1626
+ arquivo.add(removerAcentos(beneficiario.nome).substring(0, 30).padEnd(30, " "));
1615
1627
  arquivo.add("SICOOB".padEnd(30, " "));
1616
1628
  arquivo.add(" ".padEnd(10, " "));
1617
1629
  arquivo.add("1");
@@ -1633,10 +1645,12 @@ function gerarRemessa4({ dados }) {
1633
1645
  arquivo.add("2");
1634
1646
  arquivo.add(beneficiario.cnpj.padStart(15, "0"));
1635
1647
  arquivo.add(" ".padEnd(20, " "));
1636
- arquivo.add(dadosBancario.agencia.padStart(6, "0"));
1637
- arquivo.add(dadosBancario.conta.padStart(13, "0"));
1648
+ arquivo.add(dadosBancario.agencia.padStart(5, "0"));
1649
+ arquivo.add(dadosBancario.agenciaDigito);
1650
+ arquivo.add(dadosBancario.conta.padStart(12, "0"));
1651
+ arquivo.add(dadosBancario.contaDigito);
1638
1652
  arquivo.add(" ");
1639
- arquivo.add(beneficiario.nome.padEnd(30, " "));
1653
+ arquivo.add(removerAcentos(beneficiario.nome).substring(0, 30).padEnd(30, " "));
1640
1654
  arquivo.add(" ".padEnd(80, " "));
1641
1655
  arquivo.add(dadosBancario.numeroRemessa.padStart(8, "0"));
1642
1656
  arquivo.add(data);
@@ -1651,21 +1665,19 @@ function gerarRemessa4({ dados }) {
1651
1665
  const vencimento = format4(new Date(boleto.vencimento), "ddMMyyyy");
1652
1666
  const valor_juros_dia = Number(boleto.valor) * dadosBancario.jurosMes / 100 / 30;
1653
1667
  const protesto = dadosBancario.diasProtesto > 0 ? "1" : "3";
1654
- const diasProtesto = protesto === "1" ? dadosBancario.diasProtesto.toString() : "00";
1655
- if (dadosBancario.aceite === "S") {
1656
- dadosBancario.aceite = "A";
1657
- }
1668
+ const diasProtesto = dadosBancario.diasProtesto.toString().padStart(2, "0");
1658
1669
  total += Number(boleto.valor);
1659
- sequencia++;
1660
1670
  arquivo.add("756");
1661
1671
  arquivo.add("0001");
1662
1672
  arquivo.add("3");
1663
- arquivo.add(sequencia.toString().padStart(5, "0"));
1673
+ arquivo.add((++sequencia).toString().padStart(5, "0"));
1664
1674
  arquivo.add("P");
1665
1675
  arquivo.add(" ");
1666
1676
  arquivo.add("01");
1667
- arquivo.add(dadosBancario.agencia.padStart(6, "0"));
1668
- arquivo.add(dadosBancario.conta.padStart(13, "0"));
1677
+ arquivo.add(dadosBancario.agencia.padStart(5, "0"));
1678
+ arquivo.add(dadosBancario.agenciaDigito);
1679
+ arquivo.add(dadosBancario.conta.padStart(12, "0"));
1680
+ arquivo.add(dadosBancario.contaDigito);
1669
1681
  arquivo.add(" ");
1670
1682
  arquivo.add(boleto.nossoNumero.padStart(10, "0"));
1671
1683
  arquivo.add(boleto.parcela.toString().padStart(2, "0"));
@@ -1680,7 +1692,7 @@ function gerarRemessa4({ dados }) {
1680
1692
  arquivo.add("00000");
1681
1693
  arquivo.add(" ");
1682
1694
  arquivo.add("02");
1683
- arquivo.add(dadosBancario.aceite);
1695
+ arquivo.add("N");
1684
1696
  arquivo.add(data);
1685
1697
  arquivo.add("1");
1686
1698
  arquivo.add(format4(addDays3(new Date(boleto.vencimento), 1), "ddMMyyyy"));
@@ -1690,15 +1702,14 @@ function gerarRemessa4({ dados }) {
1690
1702
  arquivo.add("000000000000000");
1691
1703
  arquivo.add("000000000000000");
1692
1704
  arquivo.add("000000000000000");
1693
- arquivo.add(" ".padEnd(25, " "));
1705
+ arquivo.add(boleto.identificacaoTitulo.padEnd(25, " "));
1694
1706
  arquivo.add(protesto);
1695
- arquivo.add(diasProtesto.padStart(2, "0"));
1707
+ arquivo.add(diasProtesto);
1696
1708
  arquivo.add("0");
1697
1709
  arquivo.add(" ");
1698
1710
  arquivo.add("09");
1699
1711
  arquivo.add("0000000000");
1700
1712
  arquivo.add(" ");
1701
- sequencia++;
1702
1713
  arquivo.addLine();
1703
1714
  let tipoInscricao = "1";
1704
1715
  if (pagador.pessoa === "F") {
@@ -1706,26 +1717,18 @@ function gerarRemessa4({ dados }) {
1706
1717
  } else {
1707
1718
  tipoInscricao = "2";
1708
1719
  }
1709
- pagador.endereco.bairro = pagador.endereco.bairro.toUpperCase();
1710
- pagador.endereco.logradouro = pagador.endereco.logradouro.toUpperCase();
1711
- pagador.endereco.municipio = pagador.endereco.municipio.toUpperCase();
1712
- pagador.endereco.uf = pagador.endereco.uf.toUpperCase();
1713
- const { tipo_logradouro, logradouro } = getLogradouro(pagador.endereco.logradouro);
1720
+ pagador.endereco.logradouro = `${removerAcentos(pagador.endereco.logradouro).substring(0, 32).padEnd(32, " ")}${pagador.endereco.numero.padEnd(8, " ")}`;
1714
1721
  arquivo.add("756");
1715
1722
  arquivo.add("0001");
1716
1723
  arquivo.add("3");
1717
- arquivo.add(sequencia.toString().padStart(5, "0"));
1724
+ arquivo.add((++sequencia).toString().padStart(5, "0"));
1718
1725
  arquivo.add("Q");
1719
1726
  arquivo.add(" ");
1720
1727
  arquivo.add("01");
1721
1728
  arquivo.add(tipoInscricao);
1722
1729
  arquivo.add(pagador.cpfCnpj.padStart(15, "0"));
1723
- arquivo.add(removerAcentos(pagador.nome.toUpperCase()).substring(0, 40).padEnd(40, " "));
1724
- arquivo.add(removerAcentos(tipo_logradouro).padEnd(3, " "));
1725
- arquivo.add(" ");
1726
- arquivo.add(removerAcentos(logradouro).substring(0, 29).padEnd(29, " "));
1727
- arquivo.add(" ");
1728
- arquivo.add(pagador.endereco.numero.padEnd(6, " "));
1730
+ arquivo.add(removerAcentos(pagador.nome).substring(0, 40).padEnd(40, " "));
1731
+ arquivo.add(removerAcentos(pagador.endereco.logradouro).substring(0, 40).padEnd(40, " "));
1729
1732
  arquivo.add(removerAcentos(pagador.endereco.bairro).substring(0, 15).padEnd(15, " "));
1730
1733
  arquivo.add(pagador.endereco.cep.padEnd(8, " "));
1731
1734
  arquivo.add(removerAcentos(pagador.endereco.municipio).substring(0, 15).padEnd(15, " "));
@@ -1735,22 +1738,21 @@ function gerarRemessa4({ dados }) {
1735
1738
  arquivo.add(" ".padEnd(40, " "));
1736
1739
  arquivo.add("000");
1737
1740
  arquivo.add(" ".padEnd(28, " "));
1738
- sequencia++;
1739
1741
  arquivo.addLine();
1740
1742
  let multa = "0";
1741
1743
  let data_multa = "00000000";
1742
- let percentual_multa = "000000000000000";
1744
+ let valor_multa = "000000000000000";
1743
1745
  dadosBancario.multaAtraso = Number(dadosBancario.multaAtraso || 0);
1744
1746
  if (dadosBancario.multaAtraso > 0) {
1745
1747
  multa = "2";
1746
1748
  data_multa = format4(addDays3(new Date(boleto.vencimento), 1), "ddMMyyyy");
1747
- percentual_multa = (dadosBancario.multaAtraso * 100).toString().padStart(15, "0");
1749
+ valor_multa = dadosBancario.multaAtraso.toFixed(2).replace(".", "").padStart(15, "0");
1748
1750
  }
1749
1751
  arquivo.add("756");
1750
1752
  arquivo.add("0001");
1751
1753
  arquivo.add("3");
1752
1754
  arquivo.add("");
1753
- arquivo.add(sequencia.toString().padStart(5, "0"));
1755
+ arquivo.add((++sequencia).toString().padStart(5, "0"));
1754
1756
  arquivo.add("R");
1755
1757
  arquivo.add(" ");
1756
1758
  arquivo.add("01");
@@ -1762,7 +1764,7 @@ function gerarRemessa4({ dados }) {
1762
1764
  arquivo.add("000000000000000");
1763
1765
  arquivo.add(multa);
1764
1766
  arquivo.add(data_multa);
1765
- arquivo.add(percentual_multa);
1767
+ arquivo.add(valor_multa);
1766
1768
  arquivo.add(" ".padEnd(10, " "));
1767
1769
  arquivo.add(" ".padEnd(40, " "));
1768
1770
  arquivo.add(" ".padEnd(40, " "));
@@ -1806,47 +1808,6 @@ function gerarRemessa4({ dados }) {
1806
1808
  return null;
1807
1809
  }
1808
1810
  }
1809
- function getLogradouro(logradouro) {
1810
- const logradouro_split = logradouro.split(" ");
1811
- let tipo_logradouro = "RUA";
1812
- if (/^R(\.|UA)?\b/i.test(logradouro_split[0])) {
1813
- logradouro = logradouro_split.slice(1).join(" ");
1814
- } else if (/^AV(\.|ENIDA)?\b/i.test(logradouro_split[0])) {
1815
- tipo_logradouro = "AV";
1816
- logradouro = logradouro_split.slice(1).join(" ");
1817
- } else if (/^SERVIDAO\b/i.test(logradouro_split[0])) {
1818
- tipo_logradouro = "SEV";
1819
- logradouro = logradouro_split.slice(1).join(" ");
1820
- } else if (/^SEV(\.)?\b/i.test(logradouro_split[0])) {
1821
- tipo_logradouro = "SEV";
1822
- logradouro = logradouro_split.slice(1).join(" ");
1823
- } else if (/^ROD(\.|OVIA)?\b/i.test(logradouro_split[0])) {
1824
- tipo_logradouro = "ROD";
1825
- logradouro = logradouro_split.slice(1).join(" ");
1826
- } else if (/^FAZ(\.|ENDA)?\b/i.test(logradouro_split[0])) {
1827
- tipo_logradouro = "FAZ";
1828
- logradouro = logradouro_split.slice(1).join(" ");
1829
- } else if (/^EST(\.|RADA)?\b/i.test(logradouro_split[0])) {
1830
- tipo_logradouro = "EST";
1831
- logradouro = logradouro_split.slice(1).join(" ");
1832
- } else if (/^ALA(\.|MEDA)?\b/i.test(logradouro_split[0])) {
1833
- tipo_logradouro = "ALA";
1834
- logradouro = logradouro_split.slice(1).join(" ");
1835
- } else if (/^ENC(\.|RUZILHADA)?\b/i.test(logradouro_split[0])) {
1836
- tipo_logradouro = "ENC";
1837
- logradouro = logradouro_split.slice(1).join(" ");
1838
- } else if (/^PR(\.|ACA)?\b/i.test(logradouro_split[0])) {
1839
- tipo_logradouro = "PR";
1840
- logradouro = logradouro_split.slice(1).join(" ");
1841
- } else if (/^TRAVESSA\b/i.test(logradouro_split[0])) {
1842
- tipo_logradouro = "TV";
1843
- logradouro = logradouro_split.slice(1).join(" ");
1844
- } else if (/^TV(\.)?\b/i.test(logradouro_split[0])) {
1845
- tipo_logradouro = "TV";
1846
- logradouro = logradouro_split.slice(1).join(" ");
1847
- }
1848
- return { tipo_logradouro, logradouro };
1849
- }
1850
1811
 
1851
1812
  // src/banks/sicoob/gerarPDF.ts
1852
1813
  import BwipJs4 from "bwip-js";
@@ -1860,14 +1821,11 @@ function gerarPDF4(_0) {
1860
1821
  text: dadosPDF.boleto.codigoBarra,
1861
1822
  height: 20
1862
1823
  });
1863
- dadosPDF.boleto.numeroDocumento = formatNumeroDocumento(
1864
- dadosPDF.boleto.numeroDocumento,
1865
- dadosPDF.boleto.parcela
1866
- );
1867
1824
  dadosPDF.beneficiario.dadosBancario.agencia = formatAgenciaCodigoCedente(
1868
1825
  dadosPDF.beneficiario.dadosBancario.agencia,
1869
1826
  dadosPDF.beneficiario.dadosBancario.codigo_cliente
1870
1827
  );
1828
+ dadosPDF.beneficiario.dadosBancario.carteira = dadosPDF.beneficiario.dadosBancario.carteira.padStart(2, "0");
1871
1829
  dadosPDF.boleto.nossoNumero = formatNossoNumero(
1872
1830
  dadosPDF.boleto.parcela,
1873
1831
  dadosPDF.boleto.nossoNumero
@@ -1888,6 +1846,7 @@ function gerarPDF4(_0) {
1888
1846
  dadosPDF.boleto.valorDescontoAbatimento = maskFormat_default.numberToReal(
1889
1847
  dadosPDF.boleto.valorDescontoAbatimento
1890
1848
  );
1849
+ const valorDocumento = Number(dadosPDF.boleto.valorDocumento);
1891
1850
  dadosPDF.boleto.valorDocumento = maskFormat_default.numberToReal(
1892
1851
  dadosPDF.boleto.valorDocumento
1893
1852
  );
@@ -1898,6 +1857,23 @@ function gerarPDF4(_0) {
1898
1857
  if (dadosPDF.boleto.quantidade) {
1899
1858
  dadosPDF.boleto.quantidade = maskFormat_default.numberToReal(dadosPDF.boleto.quantidade);
1900
1859
  }
1860
+ const jurosMes = dadosPDF.beneficiario.dadosBancario.juros;
1861
+ const jurosDia = jurosMes / 100 / 30 * valorDocumento;
1862
+ if (jurosDia > 0) {
1863
+ dadosPDF.boleto.instrucao1 = `COBRAR JUROS DE R$${maskFormat_default.numberToReal(jurosDia)} AO DIA, AP\xD3S O VENCIMENTO`;
1864
+ }
1865
+ const descontoVencimento = dadosPDF.beneficiario.dadosBancario.desconto || 0;
1866
+ if (descontoVencimento > 0) {
1867
+ dadosPDF.boleto.instrucao2 = `AT\xC9 O VENCIMENTO, CONCEDER DESCONTO DE ${descontoVencimento}%`;
1868
+ }
1869
+ const multaAtraso = dadosPDF.beneficiario.dadosBancario.multa || 0;
1870
+ if (multaAtraso > 0) {
1871
+ dadosPDF.boleto.instrucao3 = `MULTA DE ${multaAtraso}%`;
1872
+ }
1873
+ const protestoDias = dadosPDF.beneficiario.dadosBancario.protesto || 0;
1874
+ if (protestoDias > 0) {
1875
+ dadosPDF.boleto.instrucao4 = `PROTESTAR AP\xD3S ${protestoDias} DIAS CORRIDOS DO VENCIMENTO`;
1876
+ }
1901
1877
  dadosPDF.boleto.valor = maskFormat_default.numberToReal(dadosPDF.boleto.valor);
1902
1878
  const content = compileHbs(getPathTemplates("sicoob-boleto.hbs"), dadosPDF);
1903
1879
  const config = {
@@ -1938,21 +1914,75 @@ function formatAgenciaCodigoCedente(agencia, conta) {
1938
1914
  function formatNossoNumero(parcela, nossoNumero) {
1939
1915
  parcela = String(parcela).padStart(2, "0");
1940
1916
  nossoNumero = nossoNumero.padStart(8, "0");
1941
- const nossoNumeroFmt = new StringMask2("00/0000000-0");
1942
- return nossoNumeroFmt.apply(parcela + nossoNumero);
1917
+ return `${parcela}/${nossoNumero.slice(0, 7)}-${nossoNumero.slice(7, 8)}`;
1943
1918
  }
1944
- function formatNumeroDocumento(numeroDocumento, parcela) {
1945
- parcela = String(parcela).padStart(2, "0");
1946
- numeroDocumento = numeroDocumento.padStart(6, "0");
1947
- const numeroDoctoFmt = new StringMask2("000000-00");
1948
- return numeroDoctoFmt.apply(numeroDocumento + parcela);
1919
+
1920
+ // src/banks/sicoob/gerarRetorno.ts
1921
+ function gerarRetorno4({ dados }) {
1922
+ try {
1923
+ const { arquivo } = dados;
1924
+ const documentos = [];
1925
+ for (let i = 0; i < arquivo.length; i++) {
1926
+ let linha = arquivo[i];
1927
+ const banco = linha.substring(0, 3);
1928
+ if (banco !== "756" /* SICOOB */) {
1929
+ continue;
1930
+ }
1931
+ const ocorrencia = linha.substring(15, 17);
1932
+ if (ocorrencia !== "06" && ocorrencia !== "17") {
1933
+ continue;
1934
+ }
1935
+ let segmento = linha.substring(13, 14);
1936
+ if (segmento === "T") {
1937
+ const meu_numero = linha.substring(105, 130).trimEnd();
1938
+ let tipo_documento = "INDEFINIDO";
1939
+ let id_documento = meu_numero;
1940
+ if (meu_numero.includes("-")) {
1941
+ const [tipo, id] = meu_numero.split("-");
1942
+ tipo_documento = tipo;
1943
+ id_documento = id;
1944
+ }
1945
+ const especie = tipo_documento.length ? tipo_documento : "INDEFINIDO";
1946
+ linha = arquivo[++i];
1947
+ segmento = linha.substring(13, 14);
1948
+ if (segmento === "U") {
1949
+ const valorAbatimentoString = linha.substring(47, 62);
1950
+ const valorAbatimento = Number(valorAbatimentoString) / 100;
1951
+ const valorDescontoString = linha.substring(32, 47);
1952
+ const valorDesconto = Number(valorDescontoString) / 100;
1953
+ const valorPagoString = linha.substring(77, 92);
1954
+ const valorPago = Number(valorPagoString) / 100;
1955
+ const valorJurosString = linha.substring(17, 32);
1956
+ const valorJuros = Number(valorJurosString) / 100;
1957
+ const valorMulta = 0;
1958
+ const descontos = valorAbatimento + valorDesconto;
1959
+ const valorTotal = valorPago - valorJuros + descontos;
1960
+ const documento = {
1961
+ id_documento,
1962
+ especie,
1963
+ valor: valorPago,
1964
+ valor_multa: valorMulta,
1965
+ valor_juros: valorJuros,
1966
+ valor_desconto: valorDesconto,
1967
+ valor_total: valorTotal
1968
+ };
1969
+ documentos.push(documento);
1970
+ }
1971
+ }
1972
+ }
1973
+ return documentos;
1974
+ } catch (error) {
1975
+ console.log(error);
1976
+ return null;
1977
+ }
1949
1978
  }
1950
1979
 
1951
1980
  // src/banks/sicoob/index.ts
1952
1981
  var sicoob = {
1953
1982
  gerarDadosBoleto: gerarDadosBoleto4,
1954
1983
  gerarRemessa: gerarRemessa4,
1955
- gerarPDF: gerarPDF4
1984
+ gerarPDF: gerarPDF4,
1985
+ gerarRetorno: gerarRetorno4
1956
1986
  };
1957
1987
 
1958
1988
  // src/banks/banco-brasil/gerarDadosBoleto.ts
@@ -2412,7 +2442,7 @@ function gerarRemessa5({ dados }) {
2412
2442
  }
2413
2443
 
2414
2444
  // src/banks/banco-brasil/gerarRetorno.ts
2415
- function gerarRetorno4({ dados }) {
2445
+ function gerarRetorno5({ dados }) {
2416
2446
  try {
2417
2447
  const { arquivo } = dados;
2418
2448
  const documentos = [];
@@ -2476,7 +2506,7 @@ var bancoBrasil = {
2476
2506
  gerarDadosBoleto: gerarDadosBoleto5,
2477
2507
  gerarPDF: gerarPDF5,
2478
2508
  gerarRemessa: gerarRemessa5,
2479
- gerarRetorno: gerarRetorno4
2509
+ gerarRetorno: gerarRetorno5
2480
2510
  };
2481
2511
 
2482
2512
  // src/gerar.ts
@@ -2550,6 +2580,9 @@ function retorno({ banco, dados }) {
2550
2580
  if (banco === "001" /* BANCO_BRASIL */) {
2551
2581
  return bancoBrasil.gerarRetorno({ banco, dados });
2552
2582
  }
2583
+ if (banco === "756" /* SICOOB */) {
2584
+ return sicoob.gerarRetorno({ banco, dados });
2585
+ }
2553
2586
  }
2554
2587
 
2555
2588
  // src/config/index.ts