andersondanilo / cnab_yaml Goto Github PK
View Code? Open in Web Editor NEWFormato do CNAB 240 e CNAB 400 em Yaml
License: MIT License
Formato do CNAB 240 e CNAB 400 em Yaml
License: MIT License
Teria como gerar uma versão 1.3.1 para o cnab_php carregar pelo composer as novas modificações?
O Banco Coopnore (Cooperativa de Crédito) utiliza o mesmo retorno BB, mesmo header tudo praticamente igual, porém eles mudaram as posições de início e fim do nosso número que no arquivo de exemplo, está nas posições 46 a 63 (17 caracteres) onde:
Nosso número completo no retorno: 16280000000000023,
Sugestões de como adaptar a factory para trabalhar com este retorno?
Teria como inserir o arquivo package.json
para que o projeto tenha compatibilidade com o npm ... Quero usar o teu projeto no meu projeto de CNAB em node.js ...
Fiz um migrador do teu formato yaml pro meu formato json ... Aí com isso posso usar o teu projeto como base dos meus modelos e quando eu for inserir um segmento novo já poderia inclui-lo no nesse teu projeto ...
Ele ficaria de base ... Tem como?
Atualmente usamos o código bancário e o layout para identificar o formato, porém parece que a caixa tem 2 formatos no mesmo layout 400bytes.
Segmentos utilizando codigos invalidos
agora a caixa disponibilizou um validador
segue:
https://validadordearquivos.caixa.gov.br/sivcb/pages/validacao/validador.xhtml
Olá, pessoal. Desculpem-me se não compreendi por completo a atualização do projeto. Para criação da Remessa CNAB 400 do BB basta trabalhar neste repositório com atualização dos arquivos e yml? Acarreta em mudanças no projeto CnabPHP do Anderson? Abraços
Gente, acredito fortemente ser necessária uma revisão nos arquivos .yml genéricos, pois
há campos que não existem por exemplo no santander 240, e se acontece no Santander pode acontecer em outros bancos também.
Tomemos como exemplo
header_arquivo.yml (Genérico)
ele possui "codigo_convenio", no santander esse campo chama-se "codigo_transmissao"
como ha esse problema no arquivo genérico (e ele sempre é usado) teremos exception por campo
de valor nulo, afinal de contas no santander "codigo_convenio" jamais sera preenchido.
Entre outros campos que não existem, não vou elencar todos por esse tópico ficaria muito extenso.
Eu proponho, que seja encorajado que os arquivos genéricos possuam apenas padroes comuns em todos os bancos e que as particularidades sejam especificados apenas pelo yml especifico de cada banco.
Também notei que Arquivo.php (Format) usa IF's para determinar o preenchimento ou nao de alguns campos, isso não deveria acontecer e cada atribuição poderia ser melhor feito sem if's através de polimorfismo.
Nossa me desculpem, quero ajudar, mas eu vejo muito a se fazer
No arquivo genérico onde é descrito o identificacao_distribuicao
as opções comentadas não diz respeito a todos os bancos.
// https://github.com/andersondanilo/cnab_yaml/blob/master/cnab240/generic/remessa/detalhe_segmento_p.yml#L196
identificacao_distribuicao:
# Código adotado pela FEBRABAN para identificar o responsável pela distribuição do bloqueto.
# ‘1’ = Banco Distribui
# ‘2’ = Cliente Distribui
pos: [62,62]
picture: '9(1)'
default: '2'
Segundo o documento o documento da Caixa (http://www.caixa.gov.br/Downloads/cobranca-caixa-manuais/Manual_Leiaute_CNAB240_SIGCB.pdf) as opções possíveis são:
‘0’ = Postagem pelo Beneficiário
‘1’ = Pagador via Correios
‘2’ = Beneficiário via Agência CAIXA
‘3’ = Pagador via e-mail
‘4’ = Pagador via SMS
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.