inttegro 9.0.0 → 9.1.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/CHANGELOG.md +5 -0
- data/lib/inttegro/balance_transaction/available_amount.rb +1 -1
- data/lib/inttegro/balance_transaction/balance_transaction.rb +41 -49
- data/lib/inttegro/balance_transaction/pending_amount.rb +1 -2
- data/lib/inttegro/balance_transaction/questions.rb +2 -1
- data/lib/inttegro/balance_transaction/response.rb +2 -6
- data/lib/inttegro/balance_transaction/spent_amount.rb +1 -2
- data/lib/inttegro/balance_transaction/type.rb +4 -1
- data/lib/inttegro/customer/customer.rb +10 -0
- data/lib/inttegro/generated/models.rb +1 -1
- data/lib/inttegro/payment/payment.rb +2 -6
- data/lib/inttegro/payout/payout.rb +7 -0
- data/lib/inttegro/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 505bb0fb6560e58fc73e184b3bf9768d264d2788e0fd2cd1c782c73eb004e3eb
|
|
4
|
+
data.tar.gz: 843c5c156bde85253c0f94843f5de3731b864a3c37b5479130f6a1b7fe6541eb
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 1a008265df9c387cd21da22d01c52a8c4bc7bfda2e3dbe5f7d703c7c593547f75daa5f98458a8b89cf99db99653d55f6d474780f979e31be5eef7114c0a87622
|
|
7
|
+
data.tar.gz: ca020602b0228107d07a475d380fa5d117f18def87ac131d97303b957f764d348bc85c286eadc3eaaff9228c9d31989e4969b2fc719bd5ddae0e02484ce2508f
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
## [Unreleased]
|
|
2
2
|
|
|
3
|
+
## [9.1.0] - 2026-09-27
|
|
4
|
+
|
|
5
|
+
- Added the required application-scoped customer fingerprint to typed customer
|
|
6
|
+
responses for possible duplicate-record detection.
|
|
7
|
+
|
|
3
8
|
## [9.0.0] - 2026-09-23
|
|
4
9
|
|
|
5
10
|
- Breaking: replaced payout `balance_transactions` ID strings with typed
|
|
@@ -7,7 +7,7 @@ require_relative "base"
|
|
|
7
7
|
|
|
8
8
|
module Inttegro
|
|
9
9
|
class BalanceTransaction
|
|
10
|
-
# Amount still available for a refund or payout.
|
|
10
|
+
# Amount still available for a refund or payout.
|
|
11
11
|
#
|
|
12
12
|
# This generated model is immutable. Construct it with `.new`, or decode a string-keyed API
|
|
13
13
|
# payload with `.from_hash`. `#serialize` produces a string-keyed hash using the original wire
|
|
@@ -13,12 +13,8 @@ require_relative "spent_amount"
|
|
|
13
13
|
require_relative "type"
|
|
14
14
|
|
|
15
15
|
module Inttegro
|
|
16
|
-
# Merchant balance entry caused by a payment or
|
|
17
|
-
#
|
|
18
|
-
# `refund_id`. Exactly one matching reference is present. Payment transactions also expose
|
|
19
|
-
# their complete current allocation state and disjoint available, pending, and spent amounts.
|
|
20
|
-
# Allocation fields are omitted from refund transactions because refund transactions are
|
|
21
|
-
# consumers rather than sources.
|
|
16
|
+
# Merchant balance entry caused by a payment, refund, or payout. `type` is the discriminator
|
|
17
|
+
# and describes the semantic source rather than the direction.
|
|
22
18
|
#
|
|
23
19
|
# This generated model is immutable. Construct it with `.new`, or decode a string-keyed API
|
|
24
20
|
# payload with `.from_hash`. `#serialize` produces a string-keyed hash using the original wire
|
|
@@ -32,15 +28,32 @@ module Inttegro
|
|
|
32
28
|
# Required in the API payload. Wire name: `amount`.
|
|
33
29
|
# @return [Inttegro::BalanceTransaction::Amount]
|
|
34
30
|
#
|
|
31
|
+
# @!attribute [r] created_at
|
|
32
|
+
# Value of the `created_at` field in the Inttegro API payload.
|
|
33
|
+
#
|
|
34
|
+
# Required in the API payload. Wire name: `created_at`.
|
|
35
|
+
# @return [Time]
|
|
36
|
+
#
|
|
37
|
+
# @!attribute [r] id
|
|
38
|
+
# Value of the `id` field in the Inttegro API payload.
|
|
39
|
+
#
|
|
40
|
+
# Required in the API payload. Wire name: `id`.
|
|
41
|
+
# @return [String]
|
|
42
|
+
#
|
|
43
|
+
# @!attribute [r] type
|
|
44
|
+
# Value of the `type` field in the Inttegro API payload.
|
|
45
|
+
#
|
|
46
|
+
# Required in the API payload. Wire name: `type`.
|
|
47
|
+
# @return [Inttegro::BalanceTransaction::Type]
|
|
48
|
+
#
|
|
35
49
|
# @!attribute [r] allocations
|
|
36
|
-
# All current pending and completed allocations
|
|
37
|
-
# allocations are omitted. Present only when `type` is `payment`.
|
|
50
|
+
# All current pending and completed allocations. Released allocations are omitted.
|
|
38
51
|
#
|
|
39
52
|
# Optional in the API payload; omitted values default to `nil`. Wire name: `allocations`.
|
|
40
53
|
# @return [Array<Inttegro::BalanceTransaction::Allocation>, nil]
|
|
41
54
|
#
|
|
42
55
|
# @!attribute [r] available_amount
|
|
43
|
-
# Amount still available for a refund or payout.
|
|
56
|
+
# Amount still available for a refund or payout.
|
|
44
57
|
#
|
|
45
58
|
# Optional in the API payload; omitted values default to `nil`. Wire name: `available_amount`.
|
|
46
59
|
# @return [Inttegro::BalanceTransaction::AvailableAmount, nil]
|
|
@@ -58,23 +71,11 @@ module Inttegro
|
|
|
58
71
|
# Optional in the API payload; omitted values default to `nil`. Wire name: `claimed_at`.
|
|
59
72
|
# @return [Time, nil]
|
|
60
73
|
#
|
|
61
|
-
# @!attribute [r] created_at
|
|
62
|
-
# Value of the `created_at` field in the Inttegro API payload.
|
|
63
|
-
#
|
|
64
|
-
# Required in the API payload. Wire name: `created_at`.
|
|
65
|
-
# @return [Time]
|
|
66
|
-
#
|
|
67
|
-
# @!attribute [r] id
|
|
68
|
-
# Value of the `id` field in the Inttegro API payload.
|
|
69
|
-
#
|
|
70
|
-
# Required in the API payload. Wire name: `id`.
|
|
71
|
-
# @return [String]
|
|
72
|
-
#
|
|
73
74
|
# @!attribute [r] order_id
|
|
74
75
|
# Value of the `order_id` field in the Inttegro API payload.
|
|
75
76
|
#
|
|
76
|
-
#
|
|
77
|
-
# @return [String]
|
|
77
|
+
# Optional in the API payload; omitted values default to `nil`. Wire name: `order_id`.
|
|
78
|
+
# @return [String, nil]
|
|
78
79
|
#
|
|
79
80
|
# @!attribute [r] paid_at
|
|
80
81
|
# Legacy whole-transaction payout completion timestamp. New integrations should inspect
|
|
@@ -83,22 +84,14 @@ module Inttegro
|
|
|
83
84
|
# Optional in the API payload; omitted values default to `nil`. Wire name: `paid_at`.
|
|
84
85
|
# @return [Time, nil]
|
|
85
86
|
#
|
|
86
|
-
# @!attribute [r] pending_amount
|
|
87
|
-
# Amount temporarily unavailable because a refund or payout is unresolved. Present only when
|
|
88
|
-
# `type` is `payment`.
|
|
89
|
-
#
|
|
90
|
-
# Optional in the API payload; omitted values default to `nil`. Wire name: `pending_amount`.
|
|
91
|
-
# @return [Inttegro::BalanceTransaction::PendingAmount, nil]
|
|
92
|
-
#
|
|
93
87
|
# @!attribute [r] payment_id
|
|
94
|
-
#
|
|
88
|
+
# Value of the `payment_id` field in the Inttegro API payload.
|
|
95
89
|
#
|
|
96
90
|
# Optional in the API payload; omitted values default to `nil`. Wire name: `payment_id`.
|
|
97
91
|
# @return [String, nil]
|
|
98
92
|
#
|
|
99
93
|
# @!attribute [r] payout_id
|
|
100
|
-
#
|
|
101
|
-
# `allocations` because one transaction can participate in many payouts.
|
|
94
|
+
# Payout that created this finalized debit.
|
|
102
95
|
#
|
|
103
96
|
# Optional in the API payload; omitted values default to `nil`. Wire name: `payout_id`.
|
|
104
97
|
# @return [String, nil]
|
|
@@ -109,41 +102,40 @@ module Inttegro
|
|
|
109
102
|
# Optional in the API payload; omitted values default to `nil`. Wire name: `payout_configuration`.
|
|
110
103
|
# @return [Inttegro::BalanceTransaction::PayoutConfiguration, nil]
|
|
111
104
|
#
|
|
112
|
-
# @!attribute [r]
|
|
113
|
-
#
|
|
105
|
+
# @!attribute [r] pending_amount
|
|
106
|
+
# Amount temporarily unavailable because a refund or payout is unresolved.
|
|
114
107
|
#
|
|
115
|
-
# Optional in the API payload; omitted values default to `nil`. Wire name: `
|
|
116
|
-
# @return [
|
|
108
|
+
# Optional in the API payload; omitted values default to `nil`. Wire name: `pending_amount`.
|
|
109
|
+
# @return [Inttegro::BalanceTransaction::PendingAmount, nil]
|
|
117
110
|
#
|
|
118
111
|
# @!attribute [r] spent_amount
|
|
119
|
-
# Amount permanently consumed by completed
|
|
120
|
-
# `payment`.
|
|
112
|
+
# Amount permanently consumed by completed refund and payout allocations.
|
|
121
113
|
#
|
|
122
114
|
# Optional in the API payload; omitted values default to `nil`. Wire name: `spent_amount`.
|
|
123
115
|
# @return [Inttegro::BalanceTransaction::SpentAmount, nil]
|
|
124
116
|
#
|
|
125
|
-
# @!attribute [r]
|
|
126
|
-
#
|
|
117
|
+
# @!attribute [r] refund_id
|
|
118
|
+
# Value of the `refund_id` field in the Inttegro API payload.
|
|
127
119
|
#
|
|
128
|
-
#
|
|
129
|
-
# @return [
|
|
120
|
+
# Optional in the API payload; omitted values default to `nil`. Wire name: `refund_id`.
|
|
121
|
+
# @return [String, nil]
|
|
130
122
|
class BalanceTransaction
|
|
131
123
|
const :amount, Inttegro::BalanceTransaction::Amount
|
|
124
|
+
const :created_at, Time
|
|
125
|
+
const :id, String
|
|
126
|
+
const :type, Inttegro::BalanceTransaction::Type
|
|
132
127
|
const :allocations, T.nilable(T::Array[Inttegro::BalanceTransaction::Allocation]), default: nil
|
|
133
128
|
const :available_amount, T.nilable(Inttegro::BalanceTransaction::AvailableAmount), default: nil
|
|
134
129
|
const :available_at, T.nilable(Time), default: nil
|
|
135
130
|
const :claimed_at, T.nilable(Time), default: nil
|
|
136
|
-
const :
|
|
137
|
-
const :id, String
|
|
138
|
-
const :order_id, String
|
|
131
|
+
const :order_id, T.nilable(String), default: nil
|
|
139
132
|
const :paid_at, T.nilable(Time), default: nil
|
|
140
|
-
const :pending_amount, T.nilable(Inttegro::BalanceTransaction::PendingAmount), default: nil
|
|
141
133
|
const :payment_id, T.nilable(String), default: nil
|
|
142
134
|
const :payout_id, T.nilable(String), default: nil
|
|
143
135
|
const :payout_configuration, T.nilable(Inttegro::BalanceTransaction::PayoutConfiguration), default: nil
|
|
144
|
-
const :
|
|
136
|
+
const :pending_amount, T.nilable(Inttegro::BalanceTransaction::PendingAmount), default: nil
|
|
145
137
|
const :spent_amount, T.nilable(Inttegro::BalanceTransaction::SpentAmount), default: nil
|
|
146
|
-
const :
|
|
138
|
+
const :refund_id, T.nilable(String), default: nil
|
|
147
139
|
|
|
148
140
|
extend T::Sig
|
|
149
141
|
|
|
@@ -7,8 +7,7 @@ require_relative "base"
|
|
|
7
7
|
|
|
8
8
|
module Inttegro
|
|
9
9
|
class BalanceTransaction
|
|
10
|
-
# Amount temporarily unavailable because a refund or payout is unresolved.
|
|
11
|
-
# `type` is `payment`.
|
|
10
|
+
# Amount temporarily unavailable because a refund or payout is unresolved.
|
|
12
11
|
#
|
|
13
12
|
# This generated model is immutable. Construct it with `.new`, or decode a string-keyed API
|
|
14
13
|
# payload with `.from_hash`. `#serialize` produces a string-keyed hash using the original wire
|
|
@@ -42,7 +42,8 @@ module Inttegro
|
|
|
42
42
|
#
|
|
43
43
|
# @return [Boolean] whether the transaction satisfies the local identity checks
|
|
44
44
|
def valid?
|
|
45
|
-
|
|
45
|
+
order = order_id
|
|
46
|
+
!id.empty? && !order.nil? && !order.empty? && valid_source?
|
|
46
47
|
end
|
|
47
48
|
end
|
|
48
49
|
end
|
|
@@ -17,12 +17,8 @@ module Inttegro
|
|
|
17
17
|
# @api public
|
|
18
18
|
#
|
|
19
19
|
# @!attribute [r] transaction
|
|
20
|
-
# Merchant balance entry caused by a payment or
|
|
21
|
-
#
|
|
22
|
-
# `refund_id`. Exactly one matching reference is present. Payment transactions also expose
|
|
23
|
-
# their complete current allocation state and disjoint available, pending, and spent amounts.
|
|
24
|
-
# Allocation fields are omitted from refund transactions because refund transactions are
|
|
25
|
-
# consumers rather than sources.
|
|
20
|
+
# Merchant balance entry caused by a payment, refund, or payout. `type` is the discriminator
|
|
21
|
+
# and describes the semantic source rather than the direction.
|
|
26
22
|
#
|
|
27
23
|
# Required in the API payload. Wire name: `transaction`.
|
|
28
24
|
# @return [Inttegro::BalanceTransaction]
|
|
@@ -7,8 +7,7 @@ require_relative "base"
|
|
|
7
7
|
|
|
8
8
|
module Inttegro
|
|
9
9
|
class BalanceTransaction
|
|
10
|
-
# Amount permanently consumed by completed
|
|
11
|
-
# `payment`.
|
|
10
|
+
# Amount permanently consumed by completed refund and payout allocations.
|
|
12
11
|
#
|
|
13
12
|
# This generated model is immutable. Construct it with `.new`, or decode a string-keyed API
|
|
14
13
|
# payload with `.from_hash`. `#serialize` produces a string-keyed hash using the original wire
|
|
@@ -7,7 +7,7 @@ require_relative "base"
|
|
|
7
7
|
|
|
8
8
|
module Inttegro
|
|
9
9
|
class BalanceTransaction
|
|
10
|
-
#
|
|
10
|
+
# String-backed values accepted by the Inttegro API for Inttegro::BalanceTransaction::Type.
|
|
11
11
|
#
|
|
12
12
|
# Use the constants below when constructing a request. `#serialize` returns the documented
|
|
13
13
|
# string wire value received from or sent to the API.
|
|
@@ -21,6 +21,9 @@ module Inttegro
|
|
|
21
21
|
# Serialized wire value: `refund`.
|
|
22
22
|
# @return [Inttegro::BalanceTransaction::Type]
|
|
23
23
|
REFUND = new("refund")
|
|
24
|
+
# Serialized wire value: `payout`.
|
|
25
|
+
# @return [Inttegro::BalanceTransaction::Type]
|
|
26
|
+
PAYOUT = new("payout")
|
|
24
27
|
end
|
|
25
28
|
end
|
|
26
29
|
end
|
|
@@ -48,6 +48,15 @@ module Inttegro
|
|
|
48
48
|
# Optional in the API payload; omitted values default to `nil`. Wire name: `email_address`.
|
|
49
49
|
# @return [String, nil]
|
|
50
50
|
#
|
|
51
|
+
# @!attribute [r] fingerprint
|
|
52
|
+
# Application-scoped value for spotting possible duplicate customer records. Matching nonempty
|
|
53
|
+
# fingerprints within the same application indicate that the records likely belong to the same
|
|
54
|
+
# buyer. Compare fingerprints only within that application, and continue to use each customer
|
|
55
|
+
# ID for API operations.
|
|
56
|
+
#
|
|
57
|
+
# Required in the API payload. Wire name: `fingerprint`.
|
|
58
|
+
# @return [String]
|
|
59
|
+
#
|
|
51
60
|
# @!attribute [r] guest
|
|
52
61
|
# Value of the `guest` field in the Inttegro API payload.
|
|
53
62
|
#
|
|
@@ -107,6 +116,7 @@ module Inttegro
|
|
|
107
116
|
const :created_at, Time
|
|
108
117
|
const :custom_data, T.nilable(Inttegro::CustomData), default: nil
|
|
109
118
|
const :email_address, T.nilable(String), default: nil
|
|
119
|
+
const :fingerprint, String
|
|
110
120
|
const :guest, T::Boolean
|
|
111
121
|
const :id, String
|
|
112
122
|
const :name, String
|
|
@@ -54,9 +54,9 @@ require_relative "../balance_transaction/payout_allocation_payout"
|
|
|
54
54
|
require_relative "../balance_transaction/payout_allocation"
|
|
55
55
|
require_relative "../balance_transaction/allocation"
|
|
56
56
|
require_relative "../balance_transaction/available_amount"
|
|
57
|
-
require_relative "../balance_transaction/pending_amount"
|
|
58
57
|
require_relative "../balance_transaction/payout_configuration_destination"
|
|
59
58
|
require_relative "../balance_transaction/payout_configuration"
|
|
59
|
+
require_relative "../balance_transaction/pending_amount"
|
|
60
60
|
require_relative "../balance_transaction/spent_amount"
|
|
61
61
|
require_relative "../balance_transaction/balance_transaction"
|
|
62
62
|
require_relative "../balance_transaction/allocation_base"
|
|
@@ -49,12 +49,8 @@ module Inttegro
|
|
|
49
49
|
# @return [Inttegro::Money::Amount]
|
|
50
50
|
#
|
|
51
51
|
# @!attribute [r] balance_transaction
|
|
52
|
-
# Merchant balance entry caused by a payment or
|
|
53
|
-
#
|
|
54
|
-
# `refund_id`. Exactly one matching reference is present. Payment transactions also expose
|
|
55
|
-
# their complete current allocation state and disjoint available, pending, and spent amounts.
|
|
56
|
-
# Allocation fields are omitted from refund transactions because refund transactions are
|
|
57
|
-
# consumers rather than sources.
|
|
52
|
+
# Merchant balance entry caused by a payment, refund, or payout. `type` is the discriminator
|
|
53
|
+
# and describes the semantic source rather than the direction.
|
|
58
54
|
#
|
|
59
55
|
# Optional in the API payload; omitted values default to `nil`. Wire name: `balance_transaction`.
|
|
60
56
|
# @return [Inttegro::BalanceTransaction, nil]
|
|
@@ -34,6 +34,12 @@ module Inttegro
|
|
|
34
34
|
# Optional in the API payload; omitted values default to `nil`. Wire name: `balance_transactions`.
|
|
35
35
|
# @return [Array<Inttegro::Payout::BalanceTransaction>, nil]
|
|
36
36
|
#
|
|
37
|
+
# @!attribute [r] balance_transaction_id
|
|
38
|
+
# Immutable debit balance transaction created when this payout succeeds.
|
|
39
|
+
#
|
|
40
|
+
# Optional in the API payload; omitted values default to `nil`. Wire name: `balance_transaction_id`.
|
|
41
|
+
# @return [String, nil]
|
|
42
|
+
#
|
|
37
43
|
# @!attribute [r] canceled_at
|
|
38
44
|
# When the payout was canceled
|
|
39
45
|
#
|
|
@@ -157,6 +163,7 @@ module Inttegro
|
|
|
157
163
|
class Payout
|
|
158
164
|
const :amount, T.nilable(Inttegro::Money::Amount), default: nil
|
|
159
165
|
const :balance_transactions, T.nilable(T::Array[Inttegro::Payout::BalanceTransaction]), default: nil
|
|
166
|
+
const :balance_transaction_id, T.nilable(String), default: nil
|
|
160
167
|
const :canceled_at, T.nilable(Time), default: nil
|
|
161
168
|
const :custom_data, T.nilable(Inttegro::CustomData), default: nil
|
|
162
169
|
const :destination_id, String
|
data/lib/inttegro/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: inttegro
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 9.
|
|
4
|
+
version: 9.1.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Inttegro Engineering
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-09-
|
|
11
|
+
date: 2026-09-27 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: sorbet-runtime
|