bs2_api 0.1.0 → 0.3.2

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.
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Bs2Api
4
+ module Payment
5
+ class Key < Base
6
+ def initialize key
7
+ @key = key
8
+ end
9
+
10
+ private
11
+ def url
12
+ "#{Bs2Api.endpoint}/pix/direto/forintegration/v1/pagamentos/chave"
13
+ end
14
+
15
+ def payload
16
+ {
17
+ "chave": @key.to_hash
18
+ }
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Bs2Api
4
+ module Payment
5
+ class Manual < Base
6
+ def initialize bank
7
+ raise Bs2Api::Errors::InvalidBank, 'Invalid Bank' unless bank.is_a?(Bs2Api::Entities::Bank)
8
+ @bank = bank
9
+ end
10
+
11
+ private
12
+ def url
13
+ "#{Bs2Api.endpoint}/pix/direto/forintegration/v1/pagamentos/manual"
14
+ end
15
+
16
+ def payload
17
+ {
18
+ "recebedor": @bank.to_hash
19
+ }
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,52 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Bs2Api
4
+ module Request
5
+ class Auth
6
+ class << self
7
+ def token
8
+ Bs2Api.configuration.valid?
9
+
10
+ response = create_session
11
+
12
+ raise Bs2Api::Errors::Unauthorized, response["error_description"] if response.unauthorized?
13
+ raise Bs2Api::Errors::BadRequest, response["error_description"] if response.bad_request?
14
+ raise Bs2Api::Errors::ServerError, response.body if !response.success?
15
+
16
+ response["access_token"]
17
+ end
18
+
19
+ private
20
+ def create_session
21
+ HTTParty.post(
22
+ auth_url,
23
+ headers: headers,
24
+ body: body,
25
+ basic_auth: {
26
+ username: Bs2Api.configuration.client_id,
27
+ password: Bs2Api.configuration.client_secret
28
+ }
29
+ )
30
+ end
31
+
32
+ def headers
33
+ {
34
+ "Content-Type": "application/x-www-form-urlencoded",
35
+ "Accept": "application/json"
36
+ }
37
+ end
38
+
39
+ def body
40
+ {
41
+ grant_type: "client_credentials",
42
+ scope: "pix.write%20pix.read"
43
+ }.queryfy
44
+ end
45
+
46
+ def auth_url
47
+ "#{Bs2Api.endpoint}/auth/oauth/v2/token"
48
+ end
49
+ end
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'yaml'
4
+
5
+ module Bs2Api
6
+ module Util
7
+ class BankService
8
+ class << self
9
+ def find_by_code code
10
+ bank = bank_list.find {|b| b["code"] == code }
11
+ raise Bs2Api::Errors::MissingBank, 'Bank not registered into util/banks.yml file' if bank.blank?
12
+ bank
13
+ end
14
+
15
+ private
16
+ def bank_list
17
+ @bank_list ||= YAML.load_file(File.join(__dir__, 'banks.yml'))
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,393 @@
1
+ - name: "Banco A.J. RENNER"
2
+ code: "654"
3
+ ispb: "92874270"
4
+ - name: "Banco ABC Brasil"
5
+ code: "246"
6
+ ispb: "28195667"
7
+ - name: "Banco ABN AMRO"
8
+ code: "75"
9
+ ispb: "3532415"
10
+ - name: "Banco ALFA"
11
+ code: "25"
12
+ ispb: "3323840"
13
+ - name: "Banco ARBI"
14
+ code: "213"
15
+ ispb: "54403563"
16
+ - name: "Banco AZTECA do Brasil"
17
+ code: "19"
18
+ ispb: "9391857"
19
+ - name: "Banco BARCLAYS"
20
+ code: "740"
21
+ ispb: "61146577"
22
+ - name: "Banco BBM"
23
+ code: "107"
24
+ ispb: "15114366"
25
+ - name: "Banco BMFBOVESPA"
26
+ code: "96"
27
+ ispb: "997185"
28
+ - name: "Banco BMG"
29
+ code: "318"
30
+ ispb: "61186680"
31
+ - name: "Banco BNP PARIBAS Brasil"
32
+ code: "752"
33
+ ispb: "1522368"
34
+ - name: "Banco BOA VISTA INTERATLANTICO"
35
+ code: "248"
36
+ ispb: "33485541"
37
+ - name: "Banco BONSUCESSO"
38
+ code: "218"
39
+ ispb: "71027866"
40
+ - name: "Banco BRACCE"
41
+ code: "65"
42
+ ispb: "48795256"
43
+ - name: "Banco BRADESCARD"
44
+ code: "63"
45
+ ispb: "4184779"
46
+ - name: "Banco BRADESCO"
47
+ code: "237"
48
+ ispb: "60746948"
49
+ - name: "Banco BRADESCO BBI"
50
+ code: "36"
51
+ ispb: "60746948"
52
+ - name: "Banco BRADESCO CARTÕES"
53
+ code: "204"
54
+ ispb: "59438325"
55
+ - name: "Banco BRADESCO FINANCIAMENTOS"
56
+ code: "394"
57
+ ispb: "7207996"
58
+ - name: "Banco BTG PACTUAL"
59
+ code: "208"
60
+ ispb: "30306294"
61
+ - name: "Banco CACIQUE"
62
+ code: "263"
63
+ ispb: "33349358"
64
+ - name: "Banco CAIXA GERAL – Brasil"
65
+ code: "473"
66
+ ispb: "33466988"
67
+ - name: "Banco CAPITAL"
68
+ code: "412"
69
+ ispb: "15173776"
70
+ - name: "Banco CARGILL"
71
+ code: "40"
72
+ ispb: "3609817"
73
+ - name: "Banco CEDULA"
74
+ code: "266"
75
+ ispb: "33132044"
76
+ - name: "Banco CETELEM"
77
+ code: "739"
78
+ ispb: "558456"
79
+ - name: "Banco CIFRA"
80
+ code: "233"
81
+ ispb: "62421979"
82
+ - name: "Banco CITIBANK"
83
+ code: "745"
84
+ ispb: "33479023"
85
+ - name: "Banco CLÁSSICO"
86
+ code: "241"
87
+ ispb: "31597552"
88
+ - name: "Banco COOPERATIVO do Brasil – Bancoob"
89
+ code: "756"
90
+ ispb: "2038232"
91
+ - name: "Banco COOPERATIVO SICREDI"
92
+ code: "748"
93
+ ispb: "1181521"
94
+ - name: "Banco CREDIT AGRICOLE Brasil"
95
+ code: "222"
96
+ ispb: "75647891"
97
+ - name: "Banco CREDIT SUISSE (Brasil)"
98
+ code: "505"
99
+ ispb: "32062580"
100
+ - name: "Banco da AMAZONIA"
101
+ code: "3"
102
+ ispb: "4902979"
103
+ - name: "Banco da CHINA Brasil"
104
+ code: "83"
105
+ ispb: "10690848"
106
+ - name: "Banco DAYCOVAL"
107
+ code: "707"
108
+ ispb: "62232889"
109
+ - name: "Banco de LA NACION ARGENTINA"
110
+ code: "300"
111
+ ispb: "33042151"
112
+ - name: "Banco de LA PROVINCIA de BUENOS AIRES"
113
+ code: "495"
114
+ ispb: "44189447"
115
+ - name: "Banco de LA REPUBLICA ORIENTAL DEL URUGUAY"
116
+ code: "494"
117
+ ispb: "51938876"
118
+ - name: "Banco de TOKYO MITSUBISHI UFJ Brasil"
119
+ code: "456"
120
+ ispb: "60498557"
121
+ - name: "Banco DIBENS"
122
+ code: "214"
123
+ ispb: "61199881"
124
+ - name: "Banco do BRASIL"
125
+ code: "1"
126
+ ispb: "0"
127
+ - name: "Banco do ESTADO de SERGIPE"
128
+ code: "47"
129
+ ispb: "13009717"
130
+ - name: "Banco do ESTADO do PARA"
131
+ code: "37"
132
+ ispb: "4913711"
133
+ - name: "Banco do ESTADO do RIO GRANDE do SUL (BANRISUL"
134
+ code: "41"
135
+ ispb: "92702067"
136
+ - name: "Banco do NORDESTE do Brasil"
137
+ code: "4"
138
+ ispb: "7237373"
139
+ - name: "Banco FATOR"
140
+ code: "265"
141
+ ispb: "33644196"
142
+ - name: "Banco FIBRA"
143
+ code: "224"
144
+ ispb: "58616418"
145
+ - name: "Banco FICSA"
146
+ code: "626"
147
+ ispb: "61348538"
148
+ - name: "Banco GERADOR"
149
+ code: "121"
150
+ ispb: "10664513"
151
+ - name: "Banco GUANABARA"
152
+ code: "612"
153
+ ispb: "31880826"
154
+ - name: "Banco INDUSTRIAL do Brasil"
155
+ code: "604"
156
+ ispb: "31895683"
157
+ - name: "Banco INDUSTRIAL e COMERCIAL"
158
+ code: "320"
159
+ ispb: "7450604"
160
+ - name: "Banco INDUSVAL"
161
+ code: "653"
162
+ ispb: "61024352"
163
+ - name: "Banco INTERCAP"
164
+ code: "630"
165
+ ispb: "58497702"
166
+ - name: "Banco INTERMEDIUM"
167
+ code: "77"
168
+ ispb: "416968"
169
+ - name: "Banco INVESTCRED UNIBANCO"
170
+ code: "249"
171
+ ispb: "61182408"
172
+ - name: "Banco ITAU BBA"
173
+ code: "184"
174
+ ispb: "17298092"
175
+ - name: "Banco ITAÚ HOLDING FINANCEIRA"
176
+ code: "652"
177
+ ispb: "60872504"
178
+ - name: "Banco J. SAFRA"
179
+ code: "74"
180
+ ispb: "3017677"
181
+ - name: "Banco J.P. MORGAN"
182
+ code: "376"
183
+ ispb: "33172537"
184
+ - name: "Banco JOHN DEERE"
185
+ code: "217"
186
+ ispb: "91884981"
187
+ - name: "Banco KDB do Brasil"
188
+ code: "76"
189
+ ispb: "7656500"
190
+ - name: "Banco KEB do Brasil"
191
+ code: "757"
192
+ ispb: "2318507"
193
+ - name: "Banco LUSO BRASILEIRO"
194
+ code: "600"
195
+ ispb: "59118133"
196
+ - name: "Banco MÁXIMA"
197
+ code: "243"
198
+ ispb: "33923798"
199
+ - name: "Banco MERCANTIL do BRASIL"
200
+ code: "389"
201
+ ispb: "17184037"
202
+ - name: "Banco MIZUHO do Brasil"
203
+ code: "370"
204
+ ispb: "61088183"
205
+ - name: "Banco MODAL"
206
+ code: "746"
207
+ ispb: "30723886"
208
+ - name: "Banco MORGAN STANLEY DEAN WITTER"
209
+ code: "66"
210
+ ispb: "2801938"
211
+ - name: "Banco ORIGINAL"
212
+ code: "212"
213
+ ispb: "92894922"
214
+ - name: "Banco ORIGINAL do Agronegócio"
215
+ code: "79"
216
+ ispb: "9516419"
217
+ - name: "Banco PANAMERICANO"
218
+ code: "623"
219
+ ispb: "59285411"
220
+ - name: "Banco PAULISTA"
221
+ code: "611"
222
+ ispb: "61820817"
223
+ - name: "Banco PECUNIA"
224
+ code: "613"
225
+ ispb: "60850229"
226
+ - name: "Banco PETRA"
227
+ code: "94"
228
+ ispb: "11758741"
229
+ - name: "Banco PINE"
230
+ code: "643"
231
+ ispb: "62144175"
232
+ - name: "Banco POTTENCIAL"
233
+ code: "735"
234
+ ispb: "253448"
235
+ - name: "Banco RABOBANK INTERNATIONAL Brasil"
236
+ code: "747"
237
+ ispb: "1023570"
238
+ - name: "Banco RANDON"
239
+ code: "88"
240
+ ispb: "11476673"
241
+ - name: "Banco RENDIMENTO"
242
+ code: "633"
243
+ ispb: "68900810"
244
+ - name: "Banco RIBEIRAO PRETO"
245
+ code: "741"
246
+ ispb: "517645"
247
+ - name: "Banco RODOBENS"
248
+ code: "120"
249
+ ispb: "33603457"
250
+ - name: "Banco SAFRA"
251
+ code: "422"
252
+ ispb: "58160789"
253
+ - name: "Banco SANTANDER (Brasil"
254
+ code: "33"
255
+ ispb: "90400888"
256
+ - name: "Banco SEMEAR"
257
+ code: "743"
258
+ ispb: "795423"
259
+ - name: "Banco SOCIETE GENERALE Brasil"
260
+ code: "366"
261
+ ispb: "61533584"
262
+ - name: "Banco SOFISA"
263
+ code: "637"
264
+ ispb: "60889128"
265
+ - name: "Banco SUMITOMO MITSUI Brasileiro"
266
+ code: "464"
267
+ ispb: "60518222"
268
+ - name: "Banco TOPAZIO"
269
+ code: "82"
270
+ ispb: "7679404"
271
+ - name: "Banco TRIÂNGULO"
272
+ code: "634"
273
+ ispb: "17351180"
274
+ - name: "Banco VOTORANTIM"
275
+ code: "655"
276
+ ispb: "59588111"
277
+ - name: "Banco VR"
278
+ code: "610"
279
+ ispb: "78626983"
280
+ - name: "Banco WESTERN UNION do Brasil"
281
+ code: "119"
282
+ ispb: "13720915"
283
+ - name: "Banco WOORI BANK do Brasil"
284
+ code: "124"
285
+ ispb: "15357060"
286
+ - name: "BANESTES (Banco do ESTADO do ESPIRITO SANTO"
287
+ code: "21"
288
+ ispb: "28127603"
289
+ - name: "BANIF – Banco INTERNACIONAL do FUNCHAL (Brasil)"
290
+ code: "719"
291
+ ispb: "33884941"
292
+ - name: "BANK OF AMERICA MERRILL LYNCH Banco Múltiplo"
293
+ code: "755"
294
+ ispb: "62073200"
295
+ - name: "BCV – Banco de Crédito e Varejo"
296
+ code: "250"
297
+ ispb: "50585090"
298
+ - name: "BES Investimento do Brasil – Banco de Investimento"
299
+ code: "78"
300
+ ispb: "34111187"
301
+ - name: "BM TRICURY"
302
+ code: "18"
303
+ ispb: "57839805"
304
+ - name: "BNY MELLON"
305
+ code: "17"
306
+ ispb: "42272526"
307
+ - name: "BPN Brasil Banco Múltiplo"
308
+ code: "69"
309
+ ispb: "61033106"
310
+ - name: "BRADESCO BERJ"
311
+ code: "122"
312
+ ispb: "33147315"
313
+ - name: "BRASIL PLURAL Banco Múltiplo"
314
+ code: "125"
315
+ ispb: "45246410"
316
+ - name: "BRB – Banco de Brasília"
317
+ code: "70"
318
+ ispb: "208"
319
+ - name: "BRICKELL Crédito Financiamento e Investimento"
320
+ code: "92"
321
+ ispb: "12865507"
322
+ - name: "CAIXA ECONOMICA FEDERAL"
323
+ code: "104"
324
+ ispb: "360305"
325
+ - name: "CC CREDICOAMO Crédito Rural Cooperativa"
326
+ code: "10"
327
+ ispb: "81723108"
328
+ - name: "CC UNICRED Brasil Central"
329
+ code: "112"
330
+ ispb: "4243780"
331
+ - name: "CC UNICRED do Brasil"
332
+ code: "136"
333
+ ispb: "315557"
334
+ - name: "CC UNIPRIME NORTE do PARANA"
335
+ code: "84"
336
+ ispb: "2398976"
337
+ - name: "CECOOPES – Central das Cooperativas de Economia e Crédito Mútuo"
338
+ code: "114"
339
+ ispb: "5790149"
340
+ - name: "CITIBANK N.A."
341
+ code: "477"
342
+ ispb: "33042953"
343
+ - name: "Cooperativa Central de Crédito do Estado de SP"
344
+ code: "90"
345
+ ispb: "73085573"
346
+ - name: "Cooperativa Central de Crédito NOROESTE Brasileiro"
347
+ code: "97"
348
+ ispb: "4632856"
349
+ - name: "Cooperativa Central de Crédito Urbano – CECRED"
350
+ code: "85"
351
+ ispb: "5463212"
352
+ - name: "Cooperativa de Crédito Rural da Região da Mogiana"
353
+ code: "89"
354
+ ispb: "62109566"
355
+ - name: "CREDIALIANCA Cooperativa de Crédito RURAL"
356
+ code: "98"
357
+ ispb: "78157146"
358
+ - name: "DEUTSCHE BANK – Banco ALEMÃO"
359
+ code: "487"
360
+ ispb: "62331228"
361
+ - name: "HIPERCARD Banco Múltiplo"
362
+ code: "62"
363
+ ispb: "3012230"
364
+ - name: "HSBC BANK Brasil – Banco Múltiplo"
365
+ code: "399"
366
+ ispb: "1701201"
367
+ - name: "ICBC do Brasil Banco Múltiplo"
368
+ code: "132"
369
+ ispb: "17453575"
370
+ - name: "ING BANK N.V."
371
+ code: "492"
372
+ ispb: "49336860"
373
+ - name: "ITAÚ UNIBANCO"
374
+ code: "341"
375
+ ispb: "60701190"
376
+ - name: "NOVO Banco CONTINENTAL"
377
+ code: "753"
378
+ ispb: "74828799"
379
+ - name: "PARANA Banco"
380
+ code: "254"
381
+ ispb: "14388334"
382
+ - name: "SCOTIABANK Brasil Banco Múltiplo"
383
+ code: "751"
384
+ ispb: "29030467"
385
+ - name: "UNICRED Central RS – Central de Cooperativa de Economia e Crédito Mútuo do Estado do RS"
386
+ code: "91"
387
+ ispb: "1634601"
388
+ - name: "UNICRED Central Santa Catarina"
389
+ code: "87"
390
+ ispb: "543968"
391
+ - name: "UNIPRIME Central – Central Interestadual de Cooperativa de Crédito"
392
+ code: "99"
393
+ ispb: "3046391"