Sicredi (748)¶
Manuais oficiais de referência: Manual CNAB 240 — Cobrança Sicredi (ago/2019) ·
Manual CNAB 400 — Cobrança Sicredi (ago/2019). Fontes e portal em
fontes-oficiais.md — os PDFs não são redistribuídos, apenas citados.
Implementação: pycobranca/bancos/sicredi.py ·
Dígito do banco: X · PIX: —
Logo empacotado: disponível via logo_do_banco("748") — a marca é do banco (uso nominativo); ver render/logos/NOTICE.md.
Resumo¶
Nosso número com ano (AA) e byte identificador (1=agência, 2-9=beneficiário).
Campo livre (posições 20–44 do código de barras)¶
| Posições | Tam. | Conteúdo |
|---|---|---|
| 1 | 1 | Carteira |
| 2 | 1 | 1 (fixo) |
| 3–4 | 2 | Ano (2 últimos dígitos da data do documento) |
| 5 | 1 | Byte de identificação (1=agência, 2–9=beneficiário) |
| 6–10 | 5 | Nosso número |
| 11 | 1 | DV do nosso número (módulo 11) |
| 12–15 | 4 | Agência |
| 16–17 | 2 | Posto |
| 18–22 | 5 | Convênio (código do beneficiário) |
| 23–24 | 2 | 10 (constante) |
| 25 | 1 | DV do campo livre (módulo 11) |
Dígitos verificadores¶
- DV do nosso número — módulo 11 sobre
agência(4) + posto(2) + convênio(5) + ano(2) + byte(1) + nosso número(5)(pesos9..2cíclicos, direita→esquerda),DV = soma % 11; resultados 10 e 11 viram 0. - DV do campo livre — módulo 11 sobre as 24 primeiras posições do campo livre, mesmos parâmetros.
Validação de campos (geração do boleto)¶
Tamanhos em dígitos (mín.–máx.); a máscara é descartada e o valor é preenchido com zero à esquerda. Violações vêm em BoletoInvalido.erros (lista) — ver o contrato de erros e a matriz completa.
| Campo | Regra |
|---|---|
| Agência | 1–4 dígitos |
| Posto | até 2 dígitos (opcional) |
| Convênio | 1–5 dígitos |
| Nosso número | 1–5 dígitos |
| Carteira | conjunto: 1, 3 |
Formatos de exibição¶
- Nosso número:
AA/Bnnnnn-DV(AA = ano, B = byte identificador) →26/212345-8 - Agência/conta:
agência(4).posto(2).convênio(5)→0165.07.12345
Exemplo (saída da engine)¶
Entrada: agência 0123, posto 04, convênio 12345, byte identificador 2, nosso número
12345, carteira 1, data do documento e vencimento 15/08/2026, R$ 127,50.
Campo livre: 1126212345001230412345109
Código de barras: 74891153900000127501126212345001230412345109
Linha digitável: 74891.12628 12345.001239 04123.451090 1 15390000012750
Remessa CNAB 240 — implementada e validada byte a byte ✓¶
Implementação: pycobranca/cnab/cnab240/sicredi.py ·
fixture: tests/fixtures/remessa_sicredi_cnab240.rem
Estrutura em lotes (registros de 240 posições, CRLF, maiúsculas sem acentos). Versão do
layout de arquivo 081, de lote 040. Densidade 01600, espécie 03,
forma_cadastramento = 1, tipo_documento = 1.
| Registro | Conteúdo principal |
|---|---|
| Header de Arquivo (0) | 748 · CPF/CNPJ · convênio em brancos(20) · info da conta (agência 5 + DV branco + conta 12 + dígito) · empresa(30) · SICREDI · data + hora + sequencial · versão 081 |
| Header de Lote (1) | serviço 01 · convênio do lote em brancos · info da conta · empresa · versão 040 |
| Segmento P | ocorrência · agência 5 · conta 12 + dígito · nosso número (ljust 20) · vencimento (DDMMAAAA) · valor(15) · espécie 03 · mora/desconto (1)/IOF/abatimento · protesto · baixa (1 / 060) |
| Segmento Q | dados do sacado (tipo/doc 15/nome 40/endereço 40/bairro 15/CEP/cidade 15/UF) · avalista |
| Segmento R | multa e data da multa |
| Trailer de Lote (5) | contadores (complemento com 4 blocos de 23 zeros) |
| Trailer de Arquivo (9) | contadores de lotes/registros (variante Sicredi com 0*6 + brancos) |
Observações: data_mora usa vencimento + 1 dia; código de desconto e de baixa fixos em
1; agência sem DV (branco). O CNAB 240 da Unicred (136) herda este mesmo layout — ver
136-unicred.md.