starkinfra 0.1.0 → 0.3.0
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/lib/brcodepreview/brcodepreview.rb +125 -0
- data/lib/cardmethod/cardmethod.rb +56 -0
- data/lib/creditholmes/creditholmes.rb +160 -0
- data/lib/creditnote/creditnote.rb +51 -355
- data/lib/creditnote/invoice/description.rb +51 -0
- data/lib/creditnote/invoice/discount.rb +49 -0
- data/lib/creditnote/invoice/invoice.rb +124 -0
- data/lib/creditnote/log.rb +18 -19
- data/lib/creditnote/transfer.rb +90 -0
- data/lib/creditpreview/creditnotepreview.rb +85 -0
- data/lib/creditpreview/creditpreview.rb +77 -0
- data/lib/creditsigner/creditsigner.rb +57 -0
- data/lib/dynamicbrcode/dynamicbrcode.rb +350 -0
- data/lib/event/attempt.rb +5 -4
- data/lib/event/event.rb +11 -11
- data/lib/individualdocument/individualdocument.rb +165 -0
- data/lib/individualdocument/log.rb +125 -0
- data/lib/individualidentity/individualidentity.rb +193 -0
- data/lib/individualidentity/log.rb +124 -0
- data/lib/issuingbalance/issuingbalance.rb +4 -4
- data/lib/issuingcard/issuingcard.rb +35 -33
- data/lib/issuingcard/log.rb +21 -21
- data/lib/issuingdesign/issuingdesign.rb +138 -0
- data/lib/issuingembossingkit/issuingembossingkit.rb +121 -0
- data/lib/issuingembossingrequest/issuingembossingrequest.rb +210 -0
- data/lib/issuingembossingrequest/log.rb +128 -0
- data/lib/issuingholder/issuingholder.rb +21 -15
- data/lib/issuingholder/log.rb +19 -19
- data/lib/issuinginvoice/issuinginvoice.rb +29 -14
- data/lib/issuinginvoice/log.rb +18 -18
- data/lib/{issuingbin/issuingbin.rb → issuingproduct/issuingproduct.rb} +27 -30
- data/lib/issuingpurchase/issuingpurchase.rb +111 -31
- data/lib/issuingpurchase/log.rb +16 -16
- data/lib/issuingrestock/issuingrestock.rb +162 -0
- data/lib/issuingrestock/log.rb +127 -0
- data/lib/issuingrule/issuingrule.rb +64 -18
- data/lib/issuingstock/issuingstock.rb +138 -0
- data/lib/issuingstock/log.rb +130 -0
- data/lib/issuingtransaction/issuingtransaction.rb +12 -13
- data/lib/issuingwithdrawal/issuingwithdrawal.rb +12 -11
- data/lib/merchantcategory/merchantcategory.rb +63 -0
- data/lib/merchantcountry/merchantcountry.rb +59 -0
- data/lib/pixbalance/pixbalance.rb +5 -5
- data/lib/pixchargeback/log.rb +15 -15
- data/lib/pixchargeback/pixchargeback.rb +32 -20
- data/lib/pixclaim/log.rb +21 -24
- data/lib/pixclaim/pixclaim.rb +44 -34
- data/lib/pixdirector/pixdirector.rb +9 -11
- data/lib/pixdomain/certificate.rb +1 -1
- data/lib/pixdomain/pixdomain.rb +5 -5
- data/lib/pixinfraction/log.rb +20 -20
- data/lib/pixinfraction/pixinfraction.rb +23 -15
- data/lib/pixkey/log.rb +23 -23
- data/lib/pixkey/pixkey.rb +14 -12
- data/lib/pixrequest/log.rb +24 -20
- data/lib/pixrequest/pixrequest.rb +54 -21
- data/lib/pixreversal/log.rb +3 -3
- data/lib/pixreversal/pixreversal.rb +48 -21
- data/lib/pixstatement/pixstatement.rb +13 -8
- data/lib/starkinfra.rb +40 -15
- data/lib/staticbrcode/staticbrcode.rb +170 -0
- data/lib/user/project.rb +1 -1
- data/lib/utils/api.rb +1 -0
- data/lib/utils/bacenid.rb +1 -1
- data/lib/utils/parse.rb +7 -3
- data/lib/utils/request.rb +1 -1
- data/lib/utils/resource.rb +1 -1
- data/lib/utils/sub_resource.rb +21 -22
- data/lib/webhook/webhook.rb +11 -11
- metadata +29 -4
- data/lib/issuingauthorization/issuingauthorization.rb +0 -141
data/lib/pixclaim/pixclaim.rb
CHANGED
@@ -1,43 +1,48 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require_relative('../utils/resource')
|
4
3
|
require_relative('../utils/rest')
|
5
4
|
require_relative('../utils/checks')
|
5
|
+
require_relative('../utils/resource')
|
6
6
|
|
7
7
|
module StarkInfra
|
8
8
|
# # PixClaim object
|
9
9
|
#
|
10
|
-
#
|
10
|
+
# A Pix Claim is a request to transfer a Pix Key from an account hosted at another
|
11
|
+
# Pix participant to an account under your bank code. Pix Claims must always be requested by the claimer.
|
12
|
+
#
|
11
13
|
# When you initialize a PixClaim, the entity will not be automatically
|
12
14
|
# created in the Stark Infra API. The 'create' function sends the objects
|
13
15
|
# to the Stark Infra API and returns the created object.
|
14
16
|
#
|
15
17
|
# ## Parameters (required):
|
16
|
-
# - account_created [Date, DateTime or string]: opening Date or DateTime for the account claiming the
|
17
|
-
# - account_number [string]: number of the account claiming the
|
18
|
-
# - account_type [string]: type of the account claiming the
|
19
|
-
# - branch_code [string]: branch code of the account claiming the
|
20
|
-
# - name [string]: holder's name of the account claiming the
|
21
|
-
# - tax_id [string]: holder's taxId of the account claiming the
|
18
|
+
# - account_created [Date, DateTime or string]: opening Date or DateTime for the account claiming the PixKey. ex: '2022-01-01', Date.new(2020, 3, 10) or DateTime.new(2020, 3, 10, 10, 30, 0, 0)
|
19
|
+
# - account_number [string]: number of the account claiming the PixKey. ex: '76543'.
|
20
|
+
# - account_type [string]: type of the account claiming the PixKey. Options: 'checking', 'savings', 'salary' or 'payment'.
|
21
|
+
# - branch_code [string]: branch code of the account claiming the PixKey. ex: 1234'.
|
22
|
+
# - name [string]: holder's name of the account claiming the PixKey. ex: 'Jamie Lannister'.
|
23
|
+
# - tax_id [string]: holder's taxId of the account claiming the PixKey (CPF/CNPJ). ex: '012.345.678-90'.
|
22
24
|
# - key_id [string]: id of the registered Pix Key to be claimed. Allowed keyTypes are CPF, CNPJ, phone number or email. ex: '+5511989898989'.
|
23
25
|
#
|
26
|
+
# ## Parameters (optional):
|
27
|
+
# - tags [list of strings, default nil]: list of strings for tagging. ex: ['travel', 'food']
|
28
|
+
#
|
24
29
|
# ## Attributes (return-only):
|
25
30
|
# - id [string]: unique id returned when the PixClaim is created. ex: '5656565656565656'
|
26
31
|
# - status [string]: current PixClaim status. Options: 'created', 'failed', 'delivered', 'confirmed', 'success', 'canceled'
|
27
32
|
# - type [string]: type of Pix Claim. Options: 'ownership', 'portability'.
|
28
33
|
# - key_type [string]: keyType of the claimed Pix Key. Options: 'CPF', 'CNPJ', 'phone' or 'email'
|
29
|
-
# -
|
30
|
-
# -
|
34
|
+
# - flow [string]: direction of the Pix Claim. Options: 'in' if you received the PixClaim or 'out' if you created the PixClaim.
|
35
|
+
# - claimer_bank_code [string]: bank_code of the Pix participant that created the PixClaim. ex: '20018183'.
|
31
36
|
# - claimed_bank_code [string]: bank_code of the account donating the PixClaim. ex: '20018183'.
|
32
37
|
# - created [DateTime]: creation datetime for the PixClaim. ex: DateTime.new(2020, 3, 10, 10, 30, 0, 0)
|
33
38
|
# - updated [DateTime]: update datetime for the PixClaim. ex: DateTime.new(2020, 3, 10, 10, 30, 0, 0)
|
34
39
|
class PixClaim < StarkInfra::Utils::Resource
|
35
40
|
attr_reader :account_created, :account_number, :account_type, :branch_code, :name, :tax_id, :key_id,
|
36
|
-
:id, :status, :type, :key_type, :
|
41
|
+
:tags, :id, :status, :type, :key_type, :flow, :claimer_bank_code, :claimed_bank_code, :created, :updated
|
37
42
|
def initialize(
|
38
43
|
account_created:, account_number:, account_type:, branch_code:, name:,
|
39
|
-
tax_id:, key_id:, id: nil, status: nil, type: nil, key_type: nil,
|
40
|
-
|
44
|
+
tax_id:, key_id:, tags: nil, id: nil, status: nil, type: nil, key_type: nil, flow: nil,
|
45
|
+
claimer_bank_code: nil, claimed_bank_code: nil, created: nil, updated: nil
|
41
46
|
)
|
42
47
|
super(id)
|
43
48
|
@account_created = account_created
|
@@ -47,22 +52,24 @@ module StarkInfra
|
|
47
52
|
@name = name
|
48
53
|
@tax_id = tax_id
|
49
54
|
@key_id = key_id
|
55
|
+
@tags = tags
|
50
56
|
@status = status
|
51
57
|
@type = type
|
52
58
|
@key_type = key_type
|
53
|
-
@
|
54
|
-
@
|
59
|
+
@flow = flow
|
60
|
+
@claimer_bank_code = claimer_bank_code
|
55
61
|
@claimed_bank_code = claimed_bank_code
|
56
62
|
@created = StarkInfra::Utils::Checks.check_datetime(created)
|
57
63
|
@updated = StarkInfra::Utils::Checks.check_datetime(updated)
|
58
64
|
end
|
59
65
|
|
60
|
-
# # Create a PixClaim
|
66
|
+
# # Create a PixClaim object
|
61
67
|
#
|
62
|
-
#
|
68
|
+
# Create a PixClaim to request the transfer of a PixKey to an account
|
69
|
+
# hosted at other Pix participants in the Stark Infra API.
|
63
70
|
#
|
64
71
|
# ## Parameters (required):
|
65
|
-
# - claim [PixClaim object]: PixClaim object to be created in the API.
|
72
|
+
# - claim [PixClaim object]: PixClaim object to be created in the API.
|
66
73
|
#
|
67
74
|
# ## Parameters (optional):
|
68
75
|
# - user [Organization/Project object, default nil]: Organization or Project object. Not necessary if StarkInfra.user was set before function call
|
@@ -73,9 +80,9 @@ module StarkInfra
|
|
73
80
|
StarkInfra::Utils::Rest.post_single(entity: claim, user: user, **resource)
|
74
81
|
end
|
75
82
|
|
76
|
-
# # Retrieve a
|
83
|
+
# # Retrieve a PixClaim object
|
77
84
|
#
|
78
|
-
#
|
85
|
+
# Retrieve a PixClaim object linked to your Workspace in the Stark Infra API by its id.
|
79
86
|
#
|
80
87
|
# ## Parameters (required):
|
81
88
|
# - id [string]: object unique id. ex: '5656565656565656'
|
@@ -84,7 +91,7 @@ module StarkInfra
|
|
84
91
|
# - user [Organization/Project object, default nil]: Organization or Project object. Not necessary if StarkInfra.user was set before function call
|
85
92
|
#
|
86
93
|
# ## Return:
|
87
|
-
# - PixClaim object
|
94
|
+
# - PixClaim object that corresponds to the given id.
|
88
95
|
def self.get(id, user: nil)
|
89
96
|
StarkInfra::Utils::Rest.get_id(id: id, user: user, **resource)
|
90
97
|
end
|
@@ -98,19 +105,19 @@ module StarkInfra
|
|
98
105
|
# - after [Date or string, default nil]: date filter for objects created or updated only after specified date. ex: Date.new(2020, 3, 10)
|
99
106
|
# - before [Date or string, default nil]: date filter for objects created or updated only before specified date. ex: Date.new(2020, 3, 10)
|
100
107
|
# - status [string, default nil]: filter for status of retrieved objects. Options: 'created', 'failed', 'delivered', 'confirmed', 'success', 'canceled'
|
101
|
-
# - tags [list of strings, default nil]: tags to filter retrieved objects. ex: ['tony', 'stark']
|
102
108
|
# - ids [list of strings, default nil]: list of ids to filter retrieved objects. ex: ['5656565656565656', '4545454545454545']
|
103
109
|
# - type [string, default nil]: filter for the type of retrieved PixClaims. Options: 'ownership' or 'portability'
|
104
|
-
# - agent [string, default nil]: filter for the agent of retrieved PixClaims. Options: 'claimer' or 'claimed'.
|
105
110
|
# - key_type [string, default nil]: filter for the PixKey type of retrieved PixClaims. Options: 'cpf', 'cnpj', 'phone', 'email' and 'evp',
|
106
111
|
# - key_id [string, default nil]: filter PixClaims linked to a specific PixKey id. Example: '+5511989898989'.
|
112
|
+
# - flow [string, default nil]: direction of the Pix Claim. Options: 'in' if you received the PixClaim or 'out' if you created the PixClaim.
|
113
|
+
# - tags [list of strings, default nil]: tags to filter retrieved objects. ex: ['tony', 'stark']
|
107
114
|
# - user [Organization/Project object, default nil]: Organization or Project object. Not necessary if StarkInfra.user was set before function call
|
108
115
|
#
|
109
116
|
# ## Return:
|
110
117
|
# - generator of PixClaim objects with updated attributes
|
111
118
|
def self.query(
|
112
119
|
limit: nil, after: nil, before: nil, status: nil, ids: nil,
|
113
|
-
type: nil,
|
120
|
+
type: nil, flow: nil, tags: nil, key_type: nil, key_id: nil, user: nil
|
114
121
|
)
|
115
122
|
after = StarkInfra::Utils::Checks.check_date(after)
|
116
123
|
before = StarkInfra::Utils::Checks.check_date(before)
|
@@ -121,7 +128,8 @@ module StarkInfra
|
|
121
128
|
status: status,
|
122
129
|
ids: ids,
|
123
130
|
type: type,
|
124
|
-
|
131
|
+
flow: flow,
|
132
|
+
tags: tags,
|
125
133
|
key_type: key_type,
|
126
134
|
key_id: key_id,
|
127
135
|
user: user,
|
@@ -140,12 +148,12 @@ module StarkInfra
|
|
140
148
|
# - after [Date or string, default nil]: date filter for objects created or updated only after specified date. ex: Date.new(2020, 3, 10)
|
141
149
|
# - before [Date or string, default nil]: date filter for objects created or updated only before specified date. ex: Date.new(2020, 3, 10)
|
142
150
|
# - status [string, default nil]: filter for status of retrieved objects. Options: 'created', 'failed', 'delivered', 'confirmed', 'success', 'canceled'
|
143
|
-
# - tags [list of strings, default nil]: tags to filter retrieved objects. ex: ['tony', 'stark']
|
144
151
|
# - ids [list of strings, default nil]: list of ids to filter retrieved objects. ex: ['5656565656565656', '4545454545454545']
|
145
152
|
# - type [string, default nil]: filter for the type of retrieved PixClaims. Options: 'ownership' or 'portability'
|
146
|
-
# - agent [string, default nil]: filter for the agent of retrieved PixClaims. Options: 'claimer' or 'claimed'.
|
147
153
|
# - key_type [string, default nil]: filter for the PixKey type of retrieved PixClaims. Options: 'cpf', 'cnpj', 'phone', 'email' and 'evp',
|
148
154
|
# - key_id [string, default nil]: filter PixClaims linked to a specific PixKey id. Example: '+5511989898989'.
|
155
|
+
# - flow [string, default nil]: direction of the Pix Claim. Options: 'in' if you received the PixClaim or 'out' if you created the PixClaim.
|
156
|
+
# - tags [list of strings, default nil]: tags to filter retrieved objects. ex: ['tony', 'stark']
|
149
157
|
# - user [Organization/Project object, default nil]: Organization or Project object. Not necessary if StarkInfra.user was set before function call
|
150
158
|
#
|
151
159
|
# ## Return:
|
@@ -153,7 +161,7 @@ module StarkInfra
|
|
153
161
|
# - cursor to retrieve the next page of PixClaim objects
|
154
162
|
def self.page(
|
155
163
|
cursor: nil, limit: nil, after: nil, before: nil, status: nil, ids: nil,
|
156
|
-
type: nil,
|
164
|
+
type: nil, flow: nil, tags: nil, key_type: nil, key_id: nil, user: nil
|
157
165
|
)
|
158
166
|
after = StarkInfra::Utils::Checks.check_date(after)
|
159
167
|
before = StarkInfra::Utils::Checks.check_date(before)
|
@@ -165,7 +173,8 @@ module StarkInfra
|
|
165
173
|
status: status,
|
166
174
|
ids: ids,
|
167
175
|
type: type,
|
168
|
-
|
176
|
+
flow: flow,
|
177
|
+
tags: tags,
|
169
178
|
key_type: key_type,
|
170
179
|
key_id: key_id,
|
171
180
|
user: user,
|
@@ -175,7 +184,7 @@ module StarkInfra
|
|
175
184
|
|
176
185
|
# # Update a PixClaim entity
|
177
186
|
#
|
178
|
-
#
|
187
|
+
# Update a PixClaim parameters by passing id.
|
179
188
|
#
|
180
189
|
# ## Parameters (required):
|
181
190
|
# - id [string]: PixClaim unique id. ex: '5656565656565656'
|
@@ -186,7 +195,7 @@ module StarkInfra
|
|
186
195
|
# - user [Organization/Project object, default nil]: Organization or Project object. Not necessary if StarkInfra.user was set before function call
|
187
196
|
#
|
188
197
|
# ## Return:
|
189
|
-
# - updated PixClaim object
|
198
|
+
# - updated PixClaim object with updated attributes
|
190
199
|
def self.update(id, status:, reason: nil, user: nil)
|
191
200
|
StarkInfra::Utils::Rest.patch_id(
|
192
201
|
id: id,
|
@@ -202,6 +211,7 @@ module StarkInfra
|
|
202
211
|
resource_name: 'PixClaim',
|
203
212
|
resource_maker: proc { |json|
|
204
213
|
PixClaim.new(
|
214
|
+
id: json['id'],
|
205
215
|
account_created: json['account_created'],
|
206
216
|
account_number: json['account_number'],
|
207
217
|
account_type: json['account_type'],
|
@@ -209,12 +219,12 @@ module StarkInfra
|
|
209
219
|
name: json['name'],
|
210
220
|
tax_id: json['tax_id'],
|
211
221
|
key_id: json['key_id'],
|
212
|
-
|
222
|
+
tags: json['tags'],
|
213
223
|
status: json['status'],
|
214
224
|
type: json['type'],
|
215
225
|
key_type: json['key_type'],
|
216
|
-
|
217
|
-
|
226
|
+
flow: json['flow'],
|
227
|
+
claimer_bank_code: json['claimer_bank_code'],
|
218
228
|
claimed_bank_code: json['claimed_bank_code'],
|
219
229
|
created: json['created'],
|
220
230
|
updated: json['updated']
|
@@ -1,16 +1,17 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require_relative('../utils/resource')
|
4
3
|
require_relative('../utils/rest')
|
4
|
+
require_relative('../utils/resource')
|
5
5
|
|
6
6
|
module StarkInfra
|
7
7
|
# # PixDirector object
|
8
8
|
#
|
9
9
|
# Mandatory data that must be registered within the Central Bank for
|
10
|
-
# emergency contact purposes.
|
11
|
-
#
|
12
|
-
#
|
13
|
-
#
|
10
|
+
# emergency contact purposes.
|
11
|
+
#
|
12
|
+
# When you initialize a PixDirector, the entity will not be automatically
|
13
|
+
# created in the Stark Infra API. The 'create' function sends the objects
|
14
|
+
# to the Stark Infra API and returns the created object.
|
14
15
|
#
|
15
16
|
# ## Parameters (required):
|
16
17
|
# - name [string]: name of the PixDirector. ex: 'Edward Stark'.
|
@@ -22,12 +23,10 @@ module StarkInfra
|
|
22
23
|
# - team_phones [list of strings]: list of phones of the team. ex: ['+5511988889999', '+5511988889998']
|
23
24
|
#
|
24
25
|
# ## Attributes (return-only):
|
25
|
-
# - id [string]: unique id returned when the PixDirector is created. ex: '5656565656565656'
|
26
26
|
# - status [string]: current PixDirector status. ex: 'success'
|
27
|
-
class PixDirector < StarkInfra::Utils::
|
28
|
-
attr_reader :name, :tax_id, :phone, :email, :password, :team_email, :team_phones, :
|
29
|
-
def initialize(name:, tax_id:, phone:, email:, password:, team_email:, team_phones:,
|
30
|
-
super(id)
|
27
|
+
class PixDirector < StarkInfra::Utils::SubResource
|
28
|
+
attr_reader :name, :tax_id, :phone, :email, :password, :team_email, :team_phones, :status
|
29
|
+
def initialize(name:, tax_id:, phone:, email:, password:, team_email:, team_phones:, status: nil)
|
31
30
|
@name = name
|
32
31
|
@tax_id = tax_id
|
33
32
|
@phone = phone
|
@@ -59,7 +58,6 @@ module StarkInfra
|
|
59
58
|
resource_name: 'PixDirector',
|
60
59
|
resource_maker: proc { |json|
|
61
60
|
PixDirector.new(
|
62
|
-
id: json['id'],
|
63
61
|
name: json['name'],
|
64
62
|
tax_id: json['tax_id'],
|
65
63
|
phone: json['phone'],
|
data/lib/pixdomain/pixdomain.rb
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require_relative('../utils/resource')
|
4
|
-
require_relative('../utils/rest')
|
5
3
|
require_relative('certificate')
|
4
|
+
require_relative('../utils/rest')
|
5
|
+
require_relative('../utils/resource')
|
6
6
|
|
7
7
|
module StarkInfra
|
8
8
|
# # PixDomain object
|
9
9
|
#
|
10
|
-
# The PixDomain object displays the domain name and the QR Code
|
11
|
-
#
|
10
|
+
# The PixDomain object displays the domain name and the QR Code domain
|
11
|
+
# certificate of Pix participants.
|
12
12
|
# All certificates must be registered with the Central Bank.
|
13
13
|
#
|
14
14
|
# ## Attributes (return-only):
|
@@ -23,7 +23,7 @@ module StarkInfra
|
|
23
23
|
|
24
24
|
# # Retrieve PixDomains
|
25
25
|
#
|
26
|
-
# Receive a generator of PixDomain objects
|
26
|
+
# Receive a generator of PixDomain objects.
|
27
27
|
#
|
28
28
|
# ## Parameters (optional):
|
29
29
|
# - user [Organization/Project object, default nil]: Organization or Project object. Not necessary if StarkInfra.user was set before function call
|
data/lib/pixinfraction/log.rb
CHANGED
@@ -1,9 +1,9 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require_relative('
|
3
|
+
require_relative('pixinfraction')
|
4
4
|
require_relative('../utils/rest')
|
5
5
|
require_relative('../utils/checks')
|
6
|
-
require_relative('
|
6
|
+
require_relative('../utils/resource')
|
7
7
|
|
8
8
|
module StarkInfra
|
9
9
|
class PixInfraction
|
@@ -13,25 +13,25 @@ module StarkInfra
|
|
13
13
|
# is generated for the entity. This log is never generated by the
|
14
14
|
# user.
|
15
15
|
#
|
16
|
-
# ## Attributes:
|
16
|
+
# ## Attributes (return-only):
|
17
17
|
# - id [string]: unique id returned when the log is created. ex: '5656565656565656'
|
18
|
-
# -
|
18
|
+
# - infraction [PixInfraction]: PixInfraction entity to which the log refers to.
|
19
19
|
# - type [string]: type of the PixInfraction event which triggered the log creation. Options: 'created', 'failed', 'delivering', 'delivered', 'closed', 'canceled'
|
20
20
|
# - errors [list of strings]: list of errors linked to this PixInfraction event.
|
21
|
-
# -
|
21
|
+
# - created [DateTime]: creation datetime for the log. ex: DateTime.new(2020, 3, 10, 10, 30, 0, 0)
|
22
22
|
class Log < StarkInfra::Utils::Resource
|
23
23
|
attr_reader :id, :created, :type, :errors, :infraction
|
24
24
|
def initialize(id:, created:, type:, errors:, infraction:)
|
25
25
|
super(id)
|
26
|
-
@
|
26
|
+
@infraction = infraction
|
27
27
|
@type = type
|
28
28
|
@errors = errors
|
29
|
-
@
|
29
|
+
@created = StarkInfra::Utils::Checks.check_datetime(created)
|
30
30
|
end
|
31
31
|
|
32
|
-
# # Retrieve a specific Log
|
32
|
+
# # Retrieve a specific PixInfraction::Log
|
33
33
|
#
|
34
|
-
# Receive a single Log object previously created by the Stark Infra API by passing its id
|
34
|
+
# Receive a single PixInfraction::Log object previously created by the Stark Infra API by passing its id
|
35
35
|
#
|
36
36
|
# ## Parameters (required):
|
37
37
|
# - id [string]: object unique id. ex: '5656565656565656'
|
@@ -40,26 +40,26 @@ module StarkInfra
|
|
40
40
|
# - user [Organization/Project object, default nil]: Organization or Project object. Not necessary if StarkInfra.user was set before function call
|
41
41
|
#
|
42
42
|
# ## Return:
|
43
|
-
# - Log object with updated attributes
|
43
|
+
# - PixInfraction::Log object with updated attributes
|
44
44
|
def self.get(id, user: nil)
|
45
45
|
StarkInfra::Utils::Rest.get_id(id: id, user: user, **resource)
|
46
46
|
end
|
47
47
|
|
48
|
-
# # Retrieve Logs
|
48
|
+
# # Retrieve PixInfraction::Logs
|
49
49
|
#
|
50
|
-
# Receive a generator of Log objects previously created in the Stark Infra API
|
50
|
+
# Receive a generator of PixInfraction::Log objects previously created in the Stark Infra API
|
51
51
|
#
|
52
52
|
# ## Parameters (optional):
|
53
|
-
# - ids [list of strings, default nil]: Log ids to filter PixInfraction Logs. ex: ['5656565656565656']
|
54
53
|
# - limit [integer, default nil]: maximum number of objects to be retrieved. Unlimited if nil. ex: 35
|
55
54
|
# - after [Date or string, default nil]: date filter for objects created only after specified date. ex: Date.new(2020, 3, 10)
|
56
55
|
# - before [Date or string, default nil]: date filter for objects created only before specified date. ex: Date.new(2020, 3, 10)
|
57
56
|
# - types [list of strings, default nil]: filter retrieved objects by their types. Options: 'created', 'failed', 'delivering', 'delivered', 'closed', 'canceled'
|
58
57
|
# - infraction_ids [list of strings, default nil]: list of PixInfraction ids to filter retrieved objects. ex: %w[5656565656565656 4545454545454545]
|
58
|
+
# - ids [list of strings, default nil]: Log ids to filter PixInfraction Logs. ex: ['5656565656565656']
|
59
59
|
# - user [Organization/Project object, default nil]: Organization or Project object. Not necessary if StarkInfra.user was set before function call
|
60
60
|
#
|
61
61
|
# ## Return:
|
62
|
-
# - list of Log objects with updated attributes
|
62
|
+
# - list of PixInfraction::Log objects with updated attributes
|
63
63
|
def self.query(ids: nil, limit: nil, after: nil, before: nil, types: nil, infraction_ids: nil, user: nil)
|
64
64
|
after = StarkInfra::Utils::Checks.check_date(after)
|
65
65
|
before = StarkInfra::Utils::Checks.check_date(before)
|
@@ -75,23 +75,23 @@ module StarkInfra
|
|
75
75
|
)
|
76
76
|
end
|
77
77
|
|
78
|
-
# # Retrieve paged Logs
|
78
|
+
# # Retrieve paged PixInfraction::Logs
|
79
79
|
#
|
80
|
-
# Receive a list of up to 100 Log objects previously created in the Stark Infra API and the cursor to the next page.
|
80
|
+
# Receive a list of up to 100 PixInfraction::Log objects previously created in the Stark Infra API and the cursor to the next page.
|
81
81
|
# Use this function instead of query if you want to manually page your infractions.
|
82
82
|
#
|
83
83
|
# ## Parameters (optional):
|
84
84
|
# - cursor [string, default nil]: cursor returned on the previous page function call
|
85
|
-
# - ids [list of strings, default nil]: Log ids to filter PixInfraction Logs. ex: ['5656565656565656']
|
86
85
|
# - limit [integer, default 100]: maximum number of objects to be retrieved. Max = 100. ex: 35
|
87
86
|
# - after [Date or string, default nil]: date filter for objects created only after specified date. ex: Date.new(2020, 3, 10)
|
88
87
|
# - before [Date or string, default nil]: date filter for objects created only before specified date. ex: Date.new(2020, 3, 10)
|
89
88
|
# - types [list of strings, default nil]: filter retrieved objects by their types. Options: 'created', 'failed', 'delivering', 'delivered', 'closed', 'canceled'
|
90
89
|
# - infraction_ids [list of strings, default nil]: list of PixInfraction ids to filter retrieved objects. ex: %w[5656565656565656 4545454545454545]
|
90
|
+
# - ids [list of strings, default nil]: Log ids to filter PixInfraction Logs. ex: ['5656565656565656']
|
91
91
|
# - user [Organization/Project object, default nil]: Organization or Project object. Not necessary if StarkInfra.user was set before function call
|
92
92
|
#
|
93
93
|
# ## Return:
|
94
|
-
# - list of Log objects with updated attributes
|
94
|
+
# - list of PixInfraction::Log objects with updated attributes
|
95
95
|
# - Cursor to retrieve the next page of Log objects
|
96
96
|
def self.page(cursor: nil, ids: nil, limit: nil, after: nil, before: nil, types: nil, infraction_ids: nil, user: nil)
|
97
97
|
after = StarkInfra::Utils::Checks.check_date(after)
|
@@ -116,10 +116,10 @@ module StarkInfra
|
|
116
116
|
resource_maker: proc { |json|
|
117
117
|
Log.new(
|
118
118
|
id: json['id'],
|
119
|
-
|
119
|
+
infraction: StarkInfra::Utils::API.from_api_json(infraction_maker, json['infraction']),
|
120
120
|
type: json['type'],
|
121
121
|
errors: json['errors'],
|
122
|
-
|
122
|
+
created: json['created'],
|
123
123
|
)
|
124
124
|
}
|
125
125
|
}
|
@@ -1,8 +1,8 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require_relative('../utils/resource')
|
4
3
|
require_relative('../utils/rest')
|
5
4
|
require_relative('../utils/checks')
|
5
|
+
require_relative('../utils/resource')
|
6
6
|
|
7
7
|
module StarkInfra
|
8
8
|
# # PixInfraction object
|
@@ -19,35 +19,35 @@ module StarkInfra
|
|
19
19
|
#
|
20
20
|
# ## Parameters (optional):
|
21
21
|
# - description [string, default nil]: description for any details that can help with the infraction investigation.
|
22
|
+
# - tags [list of strings, default nil]: list of strings for tagging. ex: ['travel', 'food']
|
22
23
|
#
|
23
24
|
# ## Attributes (return-only):
|
24
25
|
# - id [string]: unique id returned when the PixInfraction is created. ex: '5656565656565656'
|
25
26
|
# - credited_bank_code [string]: bank_code of the credited Pix participant in the reported transaction. ex: '20018183'
|
26
27
|
# - debited_bank_code [string]: bank_code of the debited Pix participant in the reported transaction. ex: '20018183'
|
27
|
-
# -
|
28
|
+
# - flow [string]: direction of the PixInfraction flow. Options: 'out' if you created the PixInfraction, 'in' if you received the PixInfraction.
|
28
29
|
# - analysis [string]: analysis that led to the result.
|
29
|
-
# - bacen_id [string]: central bank's unique UUID that identifies the infraction report.
|
30
30
|
# - reported_by [string]: agent that reported the PixInfraction. Options: 'debited', 'credited'.
|
31
31
|
# - result [string]: result after the analysis of the PixInfraction by the receiving party. Options: 'agreed', 'disagreed'
|
32
32
|
# - status [string]: current PixInfraction status. Options: 'created', 'failed', 'delivered', 'closed', 'canceled'.
|
33
33
|
# - created [DateTime]: creation datetime for the PixInfraction. ex: DateTime.new(2020, 3, 10, 10, 30, 0, 0)
|
34
34
|
# - updated [DateTime]: latest update datetime for the PixInfraction. ex: DateTime.new(2020, 3, 10, 10, 30, 0, 0)
|
35
35
|
class PixInfraction < StarkInfra::Utils::Resource
|
36
|
-
attr_reader :reference_id, :type, :description, :id, :credited_bank_code, :
|
36
|
+
attr_reader :reference_id, :type, :description, :tags, :id, :credited_bank_code, :flow, :analysis,
|
37
37
|
:debited_bank_code, :reported_by, :result, :status, :created, :updated
|
38
38
|
def initialize(
|
39
|
-
reference_id:, type:, description
|
40
|
-
|
39
|
+
reference_id:, type:, description: nil, id: nil, tags: nil, credited_bank_code: nil, debited_bank_code: nil,
|
40
|
+
flow: nil, analysis: nil, reported_by: nil, result: nil, status: nil, created: nil, updated: nil
|
41
41
|
)
|
42
42
|
super(id)
|
43
43
|
@reference_id = reference_id
|
44
44
|
@type = type
|
45
45
|
@description = description
|
46
|
+
@tags = tags
|
46
47
|
@credited_bank_code = credited_bank_code
|
47
|
-
@agent = agent
|
48
|
-
@analysis = analysis
|
49
|
-
@bacen_id = bacen_id
|
50
48
|
@debited_bank_code = debited_bank_code
|
49
|
+
@flow = flow
|
50
|
+
@analysis = analysis
|
51
51
|
@reported_by = reported_by
|
52
52
|
@result = result
|
53
53
|
@status = status
|
@@ -98,11 +98,13 @@ module StarkInfra
|
|
98
98
|
# - status [string, default nil]: filter for status of retrieved objects. ex: 'success' or 'failed'
|
99
99
|
# - ids [list of strings, default nil]: list of ids to filter retrieved objects. ex: ['5656565656565656', '4545454545454545']
|
100
100
|
# - type [string]: filter for the type of retrieved PixInfractions. Options: 'fraud', 'reversal', 'reversalChargeback'
|
101
|
+
# - flow [string, default nil]: direction of the PixInfraction flow. Options: 'out' if you created the PixInfraction, 'in' if you received the PixInfraction.
|
102
|
+
# - tags [list of strings, default nil]: list of strings for tagging. ex: ['travel', 'food']
|
101
103
|
# - user [Organization/Project object, default nil]: Organization or Project object. Not necessary if StarkInfra.user was set before function call
|
102
104
|
#
|
103
105
|
# ## Return:
|
104
106
|
# - generator of PixInfraction objects with updated attributes
|
105
|
-
def self.query(limit: nil, after: nil, before: nil, status: nil, ids: nil, type: nil, user: nil)
|
107
|
+
def self.query(limit: nil, after: nil, before: nil, status: nil, ids: nil, type: nil, flow: nil, tags: nil, user: nil)
|
106
108
|
after = StarkInfra::Utils::Checks.check_date(after)
|
107
109
|
before = StarkInfra::Utils::Checks.check_date(before)
|
108
110
|
StarkInfra::Utils::Rest.get_stream(
|
@@ -112,6 +114,8 @@ module StarkInfra
|
|
112
114
|
status: status,
|
113
115
|
ids: ids,
|
114
116
|
type: type,
|
117
|
+
flow: flow,
|
118
|
+
tags: tags,
|
115
119
|
user: user,
|
116
120
|
**resource
|
117
121
|
)
|
@@ -130,12 +134,14 @@ module StarkInfra
|
|
130
134
|
# - status [string, default nil]: filter for status of retrieved objects. ex: 'success' or 'failed'
|
131
135
|
# - ids [list of strings, default nil]: list of ids to filter retrieved objects. ex: ['5656565656565656', '4545454545454545']
|
132
136
|
# - type [string, default nil]: filter for the type of retrieved PixInfractions. Options: 'fraud', 'reversal', 'reversalChargeback'
|
137
|
+
# - flow [string, default nil]: direction of the PixInfraction flow. Options: 'out' if you created the PixInfraction, 'in' if you received the PixInfraction.
|
138
|
+
# - tags [list of strings, default nil]: list of strings for tagging. ex: ['travel', 'food']
|
133
139
|
# - user [Organization/Project object, default nil]: Organization or Project object. Not necessary if StarkInfra.user was set before function call
|
134
140
|
#
|
135
141
|
# ## Return:
|
136
142
|
# - list of PixInfraction objects with updated attributes
|
137
143
|
# - cursor to retrieve the next page of PixInfraction objects
|
138
|
-
def self.page(cursor: nil, limit: nil, after: nil, before: nil, status: nil, ids: nil, type: nil, user: nil)
|
144
|
+
def self.page(cursor: nil, limit: nil, after: nil, before: nil, status: nil, ids: nil, flow: nil, tags: nil, type: nil, user: nil)
|
139
145
|
after = StarkInfra::Utils::Checks.check_date(after)
|
140
146
|
before = StarkInfra::Utils::Checks.check_date(before)
|
141
147
|
StarkInfra::Utils::Rest.get_page(
|
@@ -145,6 +151,8 @@ module StarkInfra
|
|
145
151
|
before: before,
|
146
152
|
status: status,
|
147
153
|
ids: ids,
|
154
|
+
flow: flow,
|
155
|
+
tags: tags,
|
148
156
|
type: type,
|
149
157
|
user: user,
|
150
158
|
**resource
|
@@ -164,7 +172,7 @@ module StarkInfra
|
|
164
172
|
# - user [Organization/Project object, default nil]: Organization or Project object. Not necessary if StarkInfra.user was set before function call
|
165
173
|
#
|
166
174
|
# ## Return:
|
167
|
-
# -
|
175
|
+
# - PixInfraction object with updated attributes
|
168
176
|
def self.update(id, result:, analysis: nil, user: nil)
|
169
177
|
StarkInfra::Utils::Rest.patch_id(id: id, result: result, analysis: analysis, user: user, **resource)
|
170
178
|
end
|
@@ -194,11 +202,11 @@ module StarkInfra
|
|
194
202
|
reference_id: json['reference_id'],
|
195
203
|
type: json['type'],
|
196
204
|
description: json['description'],
|
205
|
+
tags: json['tags'],
|
197
206
|
credited_bank_code: json['credited_bank_code'],
|
198
|
-
agent: json['agent'],
|
199
|
-
analysis: json['analysis'],
|
200
|
-
bacen_id: json['bacen_id'],
|
201
207
|
debited_bank_code: json['debited_bank_code'],
|
208
|
+
flow: json['flow'],
|
209
|
+
analysis: json['analysis'],
|
202
210
|
reported_by: json['reported_by'],
|
203
211
|
result: json['result'],
|
204
212
|
status: json['status'],
|