br_boleto 2.2.0 → 2.2.1
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.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/README.markdown +23 -17
- data/lib/br_boleto.rb +2 -0
- data/lib/br_boleto/boleto/banco_brasil.rb +24 -15
- data/lib/br_boleto/boleto/santander.rb +8 -2
- data/lib/br_boleto/conta/banco_brasil.rb +254 -56
- data/lib/br_boleto/conta/bradesco.rb +229 -27
- data/lib/br_boleto/conta/caixa.rb +208 -4
- data/lib/br_boleto/conta/cecred.rb +29 -0
- data/lib/br_boleto/conta/itau.rb +482 -87
- data/lib/br_boleto/conta/santander.rb +224 -97
- data/lib/br_boleto/conta/sicoob.rb +39 -24
- data/lib/br_boleto/conta/sicredi.rb +169 -64
- data/lib/br_boleto/conta/unicred.rb +16 -13
- data/lib/br_boleto/helper/default_codes.rb +2123 -54
- data/lib/br_boleto/remessa/cnab240/banco_brasil.rb +12 -6
- data/lib/br_boleto/remessa/cnab240/bradesco.rb +1 -1
- data/lib/br_boleto/remessa/cnab240/helper/segmento_p.rb +1 -1
- data/lib/br_boleto/remessa/cnab240/itau.rb +20 -3
- data/lib/br_boleto/remessa/cnab240/santander.rb +25 -24
- data/lib/br_boleto/remessa/cnab400/caixa.rb +197 -0
- data/lib/br_boleto/remessa/cnab400/santander.rb +32 -27
- data/lib/br_boleto/retorno/base.rb +24 -0
- data/lib/br_boleto/retorno/cnab240/base.rb +6 -2
- data/lib/br_boleto/retorno/cnab240/santander.rb +5 -1
- data/lib/br_boleto/retorno/cnab400/banco_brasil.rb +3 -1
- data/lib/br_boleto/retorno/cnab400/base.rb +2 -1
- data/lib/br_boleto/retorno/cnab400/bradesco.rb +6 -0
- data/lib/br_boleto/retorno/cnab400/caixa.rb +49 -0
- data/lib/br_boleto/retorno/cnab400/itau.rb +5 -1
- data/lib/br_boleto/retorno/cnab400/santander.rb +5 -1
- data/lib/br_boleto/retorno/cnab400/sicoob.rb +1 -0
- data/lib/br_boleto/retorno/cnab400/sicredi.rb +6 -0
- data/lib/br_boleto/retorno/pagamento.rb +50 -4
- data/lib/br_boleto/version.rb +1 -1
- data/test/br_boleto/boleto/santander_test.rb +1 -1
- data/test/br_boleto/boleto/sicredi_test.rb +1 -0
- data/test/br_boleto/conta/banco_brasil_test.rb +157 -0
- data/test/br_boleto/conta/base_test.rb +8 -8
- data/test/br_boleto/conta/bradesco_test.rb +165 -0
- data/test/br_boleto/conta/caixa_test.rb +159 -1
- data/test/br_boleto/conta/cecred_test.rb +22 -0
- data/test/br_boleto/conta/itau_test.rb +346 -3
- data/test/br_boleto/conta/santantader_test.rb +123 -10
- data/test/br_boleto/conta/sicoob_test.rb +8 -0
- data/test/br_boleto/conta/sicredi_test.rb +79 -0
- data/test/br_boleto/conta/unicred_test.rb +7 -7
- data/test/br_boleto/remessa/cnab240/itau_test.rb +1 -1
- data/test/br_boleto/remessa/cnab400/caixa_test.rb +184 -0
- data/test/br_boleto/remessa/cnab400/santander_test.rb +30 -17
- data/test/br_boleto/retorno/cnab240/banco_brasil_test.rb +30 -6
- data/test/br_boleto/retorno/cnab240/base_test.rb +25 -5
- data/test/br_boleto/retorno/cnab240/bradesco_test.rb +25 -5
- data/test/br_boleto/retorno/cnab240/caixa_test.rb +25 -5
- data/test/br_boleto/retorno/cnab240/cecred_test.rb +15 -3
- data/test/br_boleto/retorno/cnab240/itau_test.rb +25 -5
- data/test/br_boleto/retorno/cnab240/santander_test.rb +30 -6
- data/test/br_boleto/retorno/cnab240/sicoob_test.rb +25 -5
- data/test/br_boleto/retorno/cnab240/sicredi_test.rb +25 -5
- data/test/br_boleto/retorno/cnab240/unicred_test.rb +25 -5
- data/test/br_boleto/retorno/cnab400/bradesco_test.rb +30 -6
- data/test/br_boleto/retorno/cnab400/caixa_test.rb +7 -0
- data/test/br_boleto/retorno/cnab400/itau_test.rb +14 -4
- data/test/br_boleto/retorno/cnab400/sicoob_test.rb +25 -5
- data/test/br_boleto/retorno/cnab400/sicredi_test.rb +10 -2
- data/test/br_boleto/retorno/cnab400/unicred.rb +30 -6
- data/test/br_boleto/retorno/pagamento_test.rb +49 -1
- data/test/factories/remessa/cnab400/caixa.rb +8 -0
- data/test/fixtures/retorno/cnab240/santander.ret +1 -1
- metadata +10 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 498d01952f480ee5b1fac73ff516a920567a119f
|
4
|
+
data.tar.gz: 2332c8e617744dbbf730ab83cac4e050cb149c64
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: df38d3138642a8762055e9fb37cfe7e1bd2f619f735cfc8ae017914342fcc5326ff5a1b889c30c27220299bf9d826752d7d273e9a115f9f6859b12e28f258cec
|
7
|
+
data.tar.gz: 9e0af803bad811ac6193c831b87680f5f9aaa7abd3465ac331a9445b28dea7ebd2ae0a34537cf9e5e33d49dfbc47762c275b317d7edf21d3fef450b2616676b0
|
data/Gemfile.lock
CHANGED
data/README.markdown
CHANGED
@@ -9,11 +9,11 @@ Emissão de Boletos Bancários em Ruby.
|
|
9
9
|
**O que essa gem faz?**
|
10
10
|
|
11
11
|
1. Boleto bancário (apenas os cálculos para o boleto, sem a interface) para os bancos:
|
12
|
-
- Banco do Brasil
|
12
|
+
- Banco do Brasil
|
13
13
|
- Bradesco (em andamento)
|
14
14
|
- Caixa
|
15
15
|
- Cecred
|
16
|
-
- Itaú
|
16
|
+
- Itaú
|
17
17
|
- Santander (em andamento)
|
18
18
|
- Sicoob
|
19
19
|
- Sicredi
|
@@ -21,7 +21,7 @@ Emissão de Boletos Bancários em Ruby.
|
|
21
21
|
2. Arquivo de remessa para os Bancos:
|
22
22
|
- Banco do Brasil (CNAB240 e CNAB400)
|
23
23
|
- Bradesco (CNAB240 e CNAB400)
|
24
|
-
- Caixa (CNAB240)
|
24
|
+
- Caixa (CNAB240 e CNAB400)
|
25
25
|
- Cecred (CNAB240)
|
26
26
|
- Itaú (CNAB240 e CNAB400)
|
27
27
|
- Santander (CNAB240 e CNAB400)
|
@@ -31,7 +31,7 @@ Emissão de Boletos Bancários em Ruby.
|
|
31
31
|
3. Arquivo de retorno para os Bancos:
|
32
32
|
- Banco do Brasil (CNAB240 e CNAB400)
|
33
33
|
- Bradesco (CNAB240 e CNAB400)
|
34
|
-
- Caixa (CNAB240)
|
34
|
+
- Caixa (CNAB240 e CNAB400)
|
35
35
|
- Cecred (CNAB240)
|
36
36
|
- Itaú (CNAB240 e CNAB400)
|
37
37
|
- Santander (CNAB240 e CNAB400)
|
@@ -110,18 +110,18 @@ Para todos os bancos e carteiras implementadas, **seguimos as documentações**
|
|
110
110
|
<tr>
|
111
111
|
<td>Banco do Brasil</td>
|
112
112
|
<td>11, 12, 15, 16, 17, 18, 31, 51.</td>
|
113
|
-
<td>
|
113
|
+
<td>Homologado dia 15/12/2016</td>
|
114
114
|
<td>Ricardo Zanuzzo</td>
|
115
115
|
</tr>
|
116
116
|
<tr>
|
117
|
-
<td>
|
118
|
-
<td>
|
119
|
-
<td>
|
117
|
+
<td>Itaú</td>
|
118
|
+
<td>104, 105, 107, 108, 109, 112, 113, 116, 117, 119, 121, 122, 126, 131, 134, 135, 136, 142, 143, 146, 147, 150, 168, 169, 174, 175, 180, 191, 196, 198.</td>
|
119
|
+
<td>Homologado dia 16/12/2016</td>
|
120
120
|
<td>Ricardo Zanuzzo</td>
|
121
121
|
</tr>
|
122
122
|
<tr>
|
123
|
-
<td>
|
124
|
-
<td>
|
123
|
+
<td>Bradesco</td>
|
124
|
+
<td>06, 09, 19, 21, 22.</td>
|
125
125
|
<td>Pendente</td>
|
126
126
|
<td>Ricardo Zanuzzo</td>
|
127
127
|
</tr>
|
@@ -163,6 +163,12 @@ Para todos os bancos e carteiras implementadas, **seguimos as documentações**
|
|
163
163
|
<td>Homologado dia 11/11/2016</td>
|
164
164
|
<td>Bruno M. Merge</td>
|
165
165
|
</tr>
|
166
|
+
<tr>
|
167
|
+
<td>Caixa</td>
|
168
|
+
<td>400</td>
|
169
|
+
<td>Homologado dia 29/12/2016</td>
|
170
|
+
<td>Ricardo Zanuzzo</td>
|
171
|
+
</tr>
|
166
172
|
<tr>
|
167
173
|
<td>Cecred</td>
|
168
174
|
<td>240</td>
|
@@ -196,35 +202,35 @@ Para todos os bancos e carteiras implementadas, **seguimos as documentações**
|
|
196
202
|
<tr>
|
197
203
|
<td>Banco do Brasil</td>
|
198
204
|
<td>240</td>
|
199
|
-
<td>
|
205
|
+
<td>Homologado dia 30/12/2016</td>
|
200
206
|
<td>Ricardo Zanuzzo</td>
|
201
207
|
</tr>
|
202
208
|
<tr>
|
203
209
|
<td>Banco do Brasil</td>
|
204
210
|
<td>400</td>
|
205
|
-
<td>
|
211
|
+
<td>Homologado dia 15/12/2016</td>
|
206
212
|
<td>Ricardo Zanuzzo</td>
|
207
213
|
</tr>
|
208
214
|
<tr>
|
209
|
-
<td>
|
215
|
+
<td>Itaú</td>
|
210
216
|
<td>240</td>
|
211
217
|
<td>Pendente</td>
|
212
218
|
<td>Ricardo Zanuzzo</td>
|
213
219
|
</tr>
|
214
220
|
<tr>
|
215
|
-
<td>
|
221
|
+
<td>Itaú</td>
|
216
222
|
<td>400</td>
|
217
|
-
<td>
|
223
|
+
<td>Homologado dia 16/12/2016</td>
|
218
224
|
<td>Ricardo Zanuzzo</td>
|
219
225
|
</tr>
|
220
226
|
<tr>
|
221
|
-
<td>
|
227
|
+
<td>Bradesco</td>
|
222
228
|
<td>240</td>
|
223
229
|
<td>Pendente</td>
|
224
230
|
<td>Ricardo Zanuzzo</td>
|
225
231
|
</tr>
|
226
232
|
<tr>
|
227
|
-
<td>
|
233
|
+
<td>Bradesco</td>
|
228
234
|
<td>400</td>
|
229
235
|
<td>Pendente</td>
|
230
236
|
<td>Ricardo Zanuzzo</td>
|
data/lib/br_boleto.rb
CHANGED
@@ -126,6 +126,7 @@ module BrBoleto
|
|
126
126
|
autoload :Itau
|
127
127
|
autoload :BancoBrasil
|
128
128
|
autoload :Santander
|
129
|
+
autoload :Caixa
|
129
130
|
end
|
130
131
|
end
|
131
132
|
|
@@ -156,6 +157,7 @@ module BrBoleto
|
|
156
157
|
autoload :Itau
|
157
158
|
autoload :BancoBrasil
|
158
159
|
autoload :Santander
|
160
|
+
autoload :Caixa
|
159
161
|
end
|
160
162
|
end
|
161
163
|
|
@@ -14,7 +14,7 @@ module BrBoleto
|
|
14
14
|
|
15
15
|
################# VALIDAÇÕES DINÂMICAS #################
|
16
16
|
def valid_numero_documento_maximum
|
17
|
-
numero_documento_esperado[conta.convenio.
|
17
|
+
numero_documento_esperado["#{conta.convenio}".strip.size]
|
18
18
|
end
|
19
19
|
|
20
20
|
def valid_carteira_inclusion
|
@@ -98,31 +98,40 @@ module BrBoleto
|
|
98
98
|
# ___________________________________________________________________________
|
99
99
|
# | Posição | Tamanho | Descrição |
|
100
100
|
# |-----------------|---------------|-----------------------------------------|
|
101
|
-
# | 20-
|
102
|
-
# |
|
103
|
-
# |
|
104
|
-
# |
|
105
|
-
# |
|
106
|
-
# | 43-44 | 02 | Carteira |
|
101
|
+
# | 20-23 ou 20-25 | 4 ou 6 | Código do cedente (4 ou 6 dígitos) |
|
102
|
+
# | 24-30 ou 26-30 | 7 ou 5 | Número do documento (7 ou 5 dígitos) |
|
103
|
+
# | 31-34 | 04 | Agência (sem o dígito) |
|
104
|
+
# | 35-42 | 08 | Conta corrente (sem o dígito) |
|
105
|
+
# | 43-44 | 02 | Carteira |
|
107
106
|
# -----------------------------------------------------------------------------
|
108
107
|
#
|
109
108
|
# === Código de barras do banco com Convênio de 7 e 8 dígitos
|
110
109
|
# ___________________________________________________________________________
|
111
110
|
# | Posição | Tamanho | Descrição |
|
112
111
|
# |-----------------|---------------|-----------------------------------------|
|
113
|
-
# | 20-
|
114
|
-
# |
|
115
|
-
# | 33-42 ou 34-42 |
|
112
|
+
# | 20-25 | 06 | Zeros |
|
113
|
+
# | 26-32 ou 26-33 | 7 ou 8 | Código do cedente (7 ou 8 dígitos) |
|
114
|
+
# | 33-42 ou 34-42 | 10 ou 9 | Número do documento (10 ou 9 dígitos) |
|
116
115
|
# | 43-44 | 02 | Carteira |
|
117
116
|
# ----------------------------------------------------------------------------
|
118
117
|
#
|
119
118
|
def codigo_de_barras_do_banco
|
120
|
-
tamanho = conta.convenio.
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
"#{
|
119
|
+
tamanho = "#{conta.convenio}".strip.size
|
120
|
+
cod_barras = ''
|
121
|
+
if tamanho == 4 or tamanho == 6
|
122
|
+
cod_barras << "#{conta.convenio}"
|
123
|
+
cod_barras << "#{numero_documento}"
|
124
|
+
cod_barras << "#{conta.agencia}"
|
125
|
+
cod_barras << "#{conta.conta_corrente}"
|
126
|
+
cod_barras << "#{conta.carteira}"
|
127
|
+
|
128
|
+
elsif tamanho == 7 or tamanho == 8
|
129
|
+
cod_barras << "000000"
|
130
|
+
cod_barras << "#{conta.convenio}"
|
131
|
+
cod_barras << "#{numero_documento}"
|
132
|
+
cod_barras << "#{conta.carteira}"
|
125
133
|
end
|
134
|
+
cod_barras
|
126
135
|
end
|
127
136
|
|
128
137
|
end
|
@@ -65,12 +65,18 @@ module BrBoleto
|
|
65
65
|
# | 20 | 01 | Fixo 9 |
|
66
66
|
# | 21-27 | 07 | Código do cedente padrão Santander |
|
67
67
|
# | 28-40 | 13 | Nosso Número (Num. Documeto + DV) |
|
68
|
-
# | 41 | 01 | IOF
|
68
|
+
# | 41 | 01 | Zero (IOF somente para seguradoras) |
|
69
69
|
# | 42-44 | 03 | Carteira de cobrança |
|
70
70
|
# -------------------------------------------------------------------
|
71
71
|
#
|
72
72
|
def codigo_de_barras_do_banco
|
73
|
-
|
73
|
+
cod_barras = ''
|
74
|
+
cod_barras << "9"
|
75
|
+
cod_barras << "#{conta.convenio}"
|
76
|
+
cod_barras << "#{nosso_numero.gsub('-','')}"
|
77
|
+
cod_barras << "0"
|
78
|
+
cod_barras << "#{conta.carteira}"
|
79
|
+
cod_barras
|
74
80
|
end
|
75
81
|
end
|
76
82
|
end
|
@@ -92,65 +92,263 @@ module BrBoleto
|
|
92
92
|
def agencia_codigo_cedente
|
93
93
|
"#{agencia}-#{agencia_dv} / #{conta_corrente}-#{conta_corrente_dv}"
|
94
94
|
end
|
95
|
+
|
95
96
|
|
96
|
-
|
97
|
-
def equivalent_tipo_cobranca_400
|
98
|
-
{
|
99
|
-
'5' => '8', # Cobrança BBVendor
|
100
|
-
'7' => '7', # Cobrança Direta Especial
|
101
|
-
}
|
102
|
-
end
|
97
|
+
##################################### DEFAULT CODES ###############################################
|
103
98
|
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
'04' => '04' , # Concessão de abatimento
|
112
|
-
'05' => '05' , # Cancelamento de abatimento
|
113
|
-
'06' => '06' , # Alteração de vencimento de título
|
114
|
-
'22' => '07' , # Alteração do número de controle do participante
|
115
|
-
'21' => '08' , # Alteração do número do titulo dado pelo cedente
|
116
|
-
'09' => '09' , # Instrução para protestar
|
117
|
-
'10' => '10' , # Instrução para sustar protesto
|
118
|
-
'11' => '11' , # Instrução para dispensar juros
|
119
|
-
'24' => '12' , # Alteração de nome e endereço do Sacado
|
120
|
-
'12' => '16' , # Alterar Juros de Mora
|
121
|
-
'31' => '31' , # Conceder desconto
|
122
|
-
'32' => '32' , # Não conceder desconto
|
123
|
-
'33' => '33' , # Retificar dados da concessão de desconto
|
124
|
-
'34' => '34' , # Alterar data para concessão de desconto
|
125
|
-
'35' => '35' , # Cobrar multa
|
126
|
-
'36' => '36' , # Dispensar multa
|
127
|
-
'37' => '37' , # Dispensar indexador
|
128
|
-
'38' => '38' , # Dispensar prazo limite de recebimento
|
129
|
-
'39' => '39' , # Alterar prazo limite de recebimento
|
130
|
-
'40' => '40' , # Alterar carteira/modalidade
|
131
|
-
}
|
132
|
-
end
|
99
|
+
# Código da Carteira
|
100
|
+
def equivalent_tipo_cobranca_400
|
101
|
+
{
|
102
|
+
'5' => '8', # Cobrança BBVendor
|
103
|
+
'7' => '7', # Cobrança Direta Especial
|
104
|
+
}
|
105
|
+
end
|
133
106
|
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
107
|
+
# Código Movimento da Remessa CNAB400
|
108
|
+
def equivalent_codigo_movimento_remessa_400
|
109
|
+
# Padrão Código para Descrição
|
110
|
+
{# da GEM o Banco
|
111
|
+
'01' => '01' , # Registro de títulos
|
112
|
+
'02' => '02' , # Solicitação de baixa
|
113
|
+
'03' => '03' , # Pedido de débito em conta
|
114
|
+
'04' => '04' , # Concessão de abatimento
|
115
|
+
'05' => '05' , # Cancelamento de abatimento
|
116
|
+
'06' => '06' , # Alteração de vencimento de título
|
117
|
+
'22' => '07' , # Alteração do número de controle do participante
|
118
|
+
'21' => '08' , # Alteração do número do Título dado pelo cedente
|
119
|
+
'09' => '09' , # Instrução para protestar
|
120
|
+
'10' => '10' , # Instrução para sustar protesto
|
121
|
+
'11' => '11' , # Instrução para dispensar juros
|
122
|
+
'24' => '12' , # Alteração de nome e endereço do Sacado
|
123
|
+
'12' => '16' , # Alterar Juros de Mora
|
124
|
+
'31' => '31' , # Conceder desconto
|
125
|
+
'32' => '32' , # Não conceder desconto
|
126
|
+
'33' => '33' , # Retificar dados da concessão de desconto
|
127
|
+
'34' => '34' , # Alterar data para concessão de desconto
|
128
|
+
'35' => '35' , # Cobrar multa
|
129
|
+
'36' => '36' , # Dispensar multa
|
130
|
+
'37' => '37' , # Dispensar indexador
|
131
|
+
'38' => '38' , # Dispensar prazo limite de recebimento
|
132
|
+
'39' => '39' , # Alterar prazo limite de recebimento
|
133
|
+
'40' => '40' , # Alterar carteira/modalidade
|
134
|
+
}
|
135
|
+
end
|
136
|
+
|
137
|
+
# Espécie do Título
|
138
|
+
def equivalent_especie_titulo_400
|
139
|
+
# Padrão Código para
|
140
|
+
{# da GEM o Banco
|
141
|
+
'01' => '10' , # Cheque
|
142
|
+
'02' => '01' , # Duplicata Mercantil
|
143
|
+
'04' => '12' , # Duplicata de Serviço
|
144
|
+
'07' => '08' , # Letra de Câmbio
|
145
|
+
'12' => '02' , # Nota Promissória
|
146
|
+
'16' => '03' , # Nota de Seguro
|
147
|
+
'17' => '05' , # Recibo
|
148
|
+
'19' => '13' , # Nota de Débito
|
149
|
+
'20' => '15' , # Apólice de Seguro
|
150
|
+
'26' => '09' , # Warrant
|
151
|
+
'27' => '26' , # Dívida Ativa de Estado
|
152
|
+
'28' => '27' , # Dívida Ativa de Município
|
153
|
+
'29' => '25' , # Dívida Ativa da União
|
154
|
+
'99' => '99' , # Outros
|
155
|
+
}
|
156
|
+
end
|
157
|
+
|
158
|
+
# Código Motivo Ocorrência Retorno
|
159
|
+
def equivalent_codigo_motivo_ocorrencia_A_240 codigo_movimento_gem
|
160
|
+
super.merge(
|
161
|
+
# Padrão Código para
|
162
|
+
{# do Banco a GEM
|
163
|
+
'52' => 'A104' , # Registro Rejeitado – Título já Liquidado
|
164
|
+
})
|
165
|
+
end
|
166
|
+
|
167
|
+
# Código Motivo Ocorrência Retorno CNAB 400
|
168
|
+
def codigos_movimento_retorno_para_ocorrencia_A_400
|
169
|
+
%w[02 03]
|
170
|
+
end
|
171
|
+
def equivalent_codigo_motivo_ocorrencia_A_400 codigo_movimento_gem
|
172
|
+
case codigo_movimento_gem
|
173
|
+
when '02'
|
174
|
+
super.merge(
|
175
|
+
# Padrão Código para
|
176
|
+
{# do Banco a GEM
|
177
|
+
'00' => 'A207', # Entrada Por meio magnético
|
178
|
+
'11' => 'A151', # Entrada Por via convencional
|
179
|
+
'16' => 'A152', # Entrada Por alteração do código do cedente
|
180
|
+
'17' => 'A153', # Entrada Por alteração da variação
|
181
|
+
'18' => 'A154', # Entrada Por alteração da carteira
|
182
|
+
})
|
183
|
+
when '03'
|
184
|
+
super.merge(
|
185
|
+
# Padrão Código para
|
186
|
+
{# do Banco a GEM
|
187
|
+
'03' => 'A27', # valor dos juros por um dia inválido
|
188
|
+
'04' => 'A29', # valor do desconto inválido
|
189
|
+
'05' => 'A22', # espécie de título inválida para carteira/variação
|
190
|
+
'07' => 'A07', # Prefixo da agência usuária inválido
|
191
|
+
'08' => 'A20', # valor do título/apólice inválido
|
192
|
+
'09' => 'A16', # data de vencimento inválida
|
193
|
+
'16' => 'A11', # Título preenchido de forma irregular
|
194
|
+
'19' => 'A105', # Código do cedente inválido
|
195
|
+
'20' => 'A45', # Nome/endereço do cliente não informado (ECT)
|
196
|
+
'21' => 'A10', # Carteira inválida
|
197
|
+
'24' => 'A33', # Valor do abatimento inválido
|
198
|
+
'25' => 'A86', # Novo número do título dado pelo cedente inválido (Seu número)
|
199
|
+
'26' => 'A32', # Valor do IOF de seguro inválido
|
200
|
+
'29' => 'A47', # Endereço não informado
|
201
|
+
'30' => 'A104', # Registro de título já liquidado (carteira 17-tipo 4)
|
202
|
+
'33' => 'A09', # Nosso número já existente
|
203
|
+
'37' => 'A24', # Data de emissão do título inválida
|
204
|
+
'38' => 'A25', # Data do vencimento anterior à data da emissão do título
|
205
|
+
'39' => 'A04', # Comando de alteração indevido para a carteira
|
206
|
+
'41' => 'A36', # Abatimento não permitido
|
207
|
+
'42' => 'A51', # CEP/UF inválido/não compatíveis (ECT)
|
208
|
+
'46' => 'A105', # Convenio encerrado
|
209
|
+
'49' => 'A107', # Abatimento a cancelar não consta do título
|
210
|
+
'52' => 'A34', # Abatimento igual ou maior que o valor do Título
|
211
|
+
'66' => 'A53', # Número do documento do sacado (CNPJ/CPF) inválido
|
212
|
+
'69' => 'A59', # Valor/Percentual de Juros Inválido
|
213
|
+
'75' => 'A97', # Qtde. de dias do prazo limite p/ recebimento de título vencido inválido
|
214
|
+
'80' => 'A08', # Nosso numero inválido
|
215
|
+
'81' => 'A80', # Data para concessão do desconto inválida.
|
216
|
+
'82' => 'A48', # CEP do sacado inválido
|
217
|
+
|
218
|
+
'01' => 'A155', # identificação inválida
|
219
|
+
'02' => 'A156', # variação da carteira inválida
|
220
|
+
'06' => 'A157', # espécie de valor invariável inválido
|
221
|
+
'10' => 'A158', # fora do prazo/só admissível na carteira
|
222
|
+
'11' => 'A159', # inexistência de margem para desconto
|
223
|
+
'12' => 'A160', # o banco não tem agência na praça do sacado
|
224
|
+
'13' => 'A161', # razões cadastrais
|
225
|
+
'14' => 'A162', # sacado interligado com o sacador (só admissível em cobrança simples- cart. 11 e 17)
|
226
|
+
'15' => 'A163', # Título sacado contra órgão do Poder Público (só admissível na carteira 11 e sem ordem de protesto)
|
227
|
+
'17' => 'A164', # Título rasurado
|
228
|
+
'18' => 'A165', # Endereço do sacado não localizado ou incompleto
|
229
|
+
'22' => 'A166', # Quantidade de valor variável inválida
|
230
|
+
'23' => 'A167', # Faixa nosso-numero excedida
|
231
|
+
'27' => 'A168', # Nome do sacado/cedente inválido
|
232
|
+
'28' => 'A169', # Data do novo vencimento inválida
|
233
|
+
'31' => 'A170', # Numero do borderô inválido
|
234
|
+
'32' => 'A171', # Nome da pessoa autorizada inválido
|
235
|
+
'34' => 'A172', # Numero da prestação do contrato inválido
|
236
|
+
'35' => 'A173', # percentual de desconto inválido
|
237
|
+
'36' => 'A174', # Dias para fichamento de protesto inválido
|
238
|
+
'40' => 'A175', # Tipo de moeda inválido
|
239
|
+
'43' => 'A176', # Código de unidade variável incompatível com a data de emissão do título
|
240
|
+
'44' => 'A177', # Dados para débito ao sacado inválidos
|
241
|
+
'45' => 'A178', # Carteira/variação encerrada
|
242
|
+
'47' => 'A179', # Título tem valor diverso do informado
|
243
|
+
'48' => 'A180', # Motivo de baixa invalido para a carteira
|
244
|
+
'50' => 'A181', # Comando incompatível com a carteira
|
245
|
+
'51' => 'A182', # Código do convenente invalido
|
246
|
+
'53' => 'A183', # Título já se encontra na situação pretendida
|
247
|
+
'54' => 'A184', # Título fora do prazo admitido para a conta 1
|
248
|
+
'55' => 'A185', # Novo vencimento fora dos limites da carteira
|
249
|
+
'56' => 'A186', # Título não pertence ao convenente
|
250
|
+
'57' => 'A187', # Variação incompatível com a carteira
|
251
|
+
'58' => 'A188', # Impossível a variação única para a carteira indicada
|
252
|
+
'59' => 'A189', # Título vencido em transferência para a carteira 51
|
253
|
+
'60' => 'A190', # Título com prazo superior a 179 dias em variação única para carteira 51
|
254
|
+
'61' => 'A191', # Título já foi fichado para protesto
|
255
|
+
'62' => 'A192', # Alteração da situação de débito inválida para o código de responsabilidade
|
256
|
+
'63' => 'A193', # DV do nosso número inválido
|
257
|
+
'64' => 'A194', # Título não passível de débito/baixa – situação anormal
|
258
|
+
'65' => 'A195', # Título com ordem de não protestar – não pode ser encaminhado a cartório
|
259
|
+
'67' => 'A196', # Título/carne rejeitado
|
260
|
+
'70' => 'A197', # Título já se encontra isento de juros
|
261
|
+
'71' => 'A198', # Código de Juros Inválido
|
262
|
+
'72' => 'A199', # Prefixo da Ag. cobradora inválido
|
263
|
+
'73' => 'A200', # Numero do controle do participante inválido
|
264
|
+
'74' => 'A201', # Cliente não cadastrado no CIOPE (Desconto/Vendor)
|
265
|
+
'76' => 'A202', # Título excluído automaticamente por decurso de prazo CIOPE (Desconto/Vendor)
|
266
|
+
'77' => 'A203', # Título vencido transferido para a conta 1 – Carteira vinculada
|
267
|
+
'83' => 'A204', # Carteira/variação não localizada no cedente
|
268
|
+
'84' => 'A205', # Título não localizado na existência/Baixado por protesto
|
269
|
+
'85' => 'A206', # Recusa do Comando “41” – Parâmetro de Liquidação Parcial.
|
270
|
+
'99' => 'A999', # Outros motivos
|
271
|
+
})
|
272
|
+
else
|
273
|
+
super
|
274
|
+
end
|
275
|
+
end
|
276
|
+
|
277
|
+
def codigos_movimento_retorno_para_ocorrencia_C_400
|
278
|
+
%w[06 09 10 17 45 101 102 103 120]
|
279
|
+
end
|
280
|
+
def equivalent_codigo_motivo_ocorrencia_C_400 codigo_movimento_gem
|
281
|
+
super.merge(
|
282
|
+
# Padrão Código para
|
283
|
+
{# do Banco a GEM
|
284
|
+
'01' => 'C103', # Liquidação normal
|
285
|
+
'02' => 'C104', # Liquidação parcial
|
286
|
+
'03' => 'C01', # Liquidação por saldo
|
287
|
+
'04' => 'C105', # Liquidação com cheque a compensar
|
288
|
+
'05' => 'C106', # Liquidação de título sem registro (carteira 7 tipo 4)
|
289
|
+
'07' => 'C107', # Liquidação na apresentação
|
290
|
+
'09' => 'C08', # Liquidação em cartório
|
291
|
+
'10' => 'C110', # Liquidação Parcial com Cheque a Compensar
|
292
|
+
'11' => 'C111', # Liquidação por Saldo com Cheque a Compensar
|
293
|
+
|
294
|
+
'00' => 'C10', # Solicitada pelo cliente
|
295
|
+
'15' => 'C14', # Protestado
|
296
|
+
'18' => 'C118', # Por alteração da carteira
|
297
|
+
'19' => 'C119', # Débito automático
|
298
|
+
'31' => 'C131', # Liquidado anteriormente
|
299
|
+
'32' => 'C132', # Habilitado em processo
|
300
|
+
'33' => 'C133', # Incobrável por nosso intermédio
|
301
|
+
'34' => 'C134', # Transferido para créditos em liquidação
|
302
|
+
'46' => 'C46', # Por alteração da variação
|
303
|
+
'47' => 'C47', # Por alteração da variação
|
304
|
+
'51' => 'C51', # Acerto
|
305
|
+
'90' => 'C90', # Baixa automática
|
306
|
+
})
|
307
|
+
end
|
308
|
+
|
309
|
+
def codigos_movimento_retorno_para_ocorrencia_D_400
|
310
|
+
%w[72]
|
311
|
+
end
|
312
|
+
def equivalent_codigo_motivo_ocorrencia_D_400 codigo_movimento_gem
|
313
|
+
# Código Padrão para
|
314
|
+
{# do Banco a Gem
|
315
|
+
'00' => 'D00', # Transferência de título de cobrança simples para descontada ou vice-versa
|
316
|
+
'52' => 'D52', # Reembolso de título vendor ou descontado, quando ocorrerem reembolsos de títulos
|
317
|
+
# por falta de liquidação. Não há migração de carteira descontada para simples.
|
318
|
+
}
|
319
|
+
end
|
320
|
+
|
321
|
+
# Identificações de Ocorrência / Código de ocorrência:
|
322
|
+
def equivalent_codigo_movimento_retorno_400
|
323
|
+
super.merge(
|
324
|
+
# Padrão Código para
|
325
|
+
{# do Banco a GEM
|
326
|
+
'05' => '17', # Liquidado sem registro (carteira 17=tipo4)
|
327
|
+
'07' => '102', # Liquidação por Conta/Parcial
|
328
|
+
'08' => '103', # Liquidação por Saldo
|
329
|
+
'15' => '101', # Liquidação em Cartório
|
330
|
+
'16' => '57', # Confirmação de alteração de juros de mora
|
331
|
+
'20' => '120', # Débito em Conta
|
332
|
+
'21' => '43', # Alteração do Nome do Sacado
|
333
|
+
'22' => '43', # Alteração do Endereço do Sacado
|
334
|
+
'24' => '20', # Sustar Protesto
|
335
|
+
'25' => '60', # Dispensar Juros de mora
|
336
|
+
'26' => '40', # Alteração do número do título dado pelo Cedente (Seu número) – 10 e 15posições
|
337
|
+
'28' => '108', # Manutenção de Título vencido
|
338
|
+
'31' => '07', # Conceder desconto
|
339
|
+
'32' => '08', # Não conceder desconto
|
340
|
+
'33' => '58', # Retificar desconto
|
341
|
+
'34' => '58', # Alterar data para desconto
|
342
|
+
'35' => '56', # Cobrar Multa
|
343
|
+
'36' => '55', # Dispensar Multa
|
344
|
+
'37' => '121', # Dispensar Indexador
|
345
|
+
'38' => '39', # Dispensar prazo limite para recebimento
|
346
|
+
'39' => '38', # Alterar prazo limite para recebimento
|
347
|
+
'46' => '45', # Título pago com cheque, aguardando compensação
|
348
|
+
'73' => '123', # Confirmação de Instrução de Parâmetro de Pagamento Parcial
|
349
|
+
})
|
350
|
+
end
|
351
|
+
|
154
352
|
end
|
155
353
|
end
|
156
354
|
end
|