increase 1.33.0 → 1.35.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.
Files changed (84) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +16 -0
  3. data/README.md +1 -1
  4. data/lib/increase/client.rb +12 -0
  5. data/lib/increase/models/card_push_transfer.rb +824 -0
  6. data/lib/increase/models/card_push_transfer_approve_params.rb +14 -0
  7. data/lib/increase/models/card_push_transfer_cancel_params.rb +14 -0
  8. data/lib/increase/models/card_push_transfer_create_params.rb +215 -0
  9. data/lib/increase/models/card_push_transfer_list_params.rb +159 -0
  10. data/lib/increase/models/card_push_transfer_retrieve_params.rb +14 -0
  11. data/lib/increase/models/card_token.rb +87 -0
  12. data/lib/increase/models/card_token_capabilities.rb +123 -0
  13. data/lib/increase/models/card_token_capabilities_params.rb +14 -0
  14. data/lib/increase/models/card_token_list_params.rb +83 -0
  15. data/lib/increase/models/card_token_retrieve_params.rb +14 -0
  16. data/lib/increase/models/card_validation.rb +759 -0
  17. data/lib/increase/models/card_validation_create_params.rb +116 -0
  18. data/lib/increase/models/card_validation_list_params.rb +150 -0
  19. data/lib/increase/models/card_validation_retrieve_params.rb +14 -0
  20. data/lib/increase/models/external_account.rb +3 -0
  21. data/lib/increase/models/external_account_create_params.rb +3 -0
  22. data/lib/increase/models/external_account_update_params.rb +3 -0
  23. data/lib/increase/models/simulations/card_token_create_params.rb +140 -0
  24. data/lib/increase/models.rb +30 -0
  25. data/lib/increase/resources/card_push_transfers.rb +167 -0
  26. data/lib/increase/resources/card_tokens.rb +86 -0
  27. data/lib/increase/resources/card_validations.rb +117 -0
  28. data/lib/increase/resources/simulations/card_tokens.rb +46 -0
  29. data/lib/increase/resources/simulations.rb +4 -0
  30. data/lib/increase/version.rb +1 -1
  31. data/lib/increase.rb +20 -0
  32. data/rbi/increase/client.rbi +9 -0
  33. data/rbi/increase/models/card_push_transfer.rbi +1450 -0
  34. data/rbi/increase/models/card_push_transfer_approve_params.rbi +30 -0
  35. data/rbi/increase/models/card_push_transfer_cancel_params.rbi +30 -0
  36. data/rbi/increase/models/card_push_transfer_create_params.rbi +325 -0
  37. data/rbi/increase/models/card_push_transfer_list_params.rbi +329 -0
  38. data/rbi/increase/models/card_push_transfer_retrieve_params.rbi +30 -0
  39. data/rbi/increase/models/card_token.rbi +108 -0
  40. data/rbi/increase/models/card_token_capabilities.rbi +250 -0
  41. data/rbi/increase/models/card_token_capabilities_params.rbi +30 -0
  42. data/rbi/increase/models/card_token_list_params.rbi +146 -0
  43. data/rbi/increase/models/card_token_retrieve_params.rbi +27 -0
  44. data/rbi/increase/models/card_validation.rbi +1438 -0
  45. data/rbi/increase/models/card_validation_create_params.rbi +155 -0
  46. data/rbi/increase/models/card_validation_list_params.rbi +295 -0
  47. data/rbi/increase/models/card_validation_retrieve_params.rbi +30 -0
  48. data/rbi/increase/models/external_account.rbi +7 -0
  49. data/rbi/increase/models/external_account_create_params.rbi +7 -0
  50. data/rbi/increase/models/external_account_update_params.rbi +7 -0
  51. data/rbi/increase/models/simulations/card_token_create_params.rbi +297 -0
  52. data/rbi/increase/models.rbi +32 -0
  53. data/rbi/increase/resources/card_push_transfers.rbi +157 -0
  54. data/rbi/increase/resources/card_tokens.rbi +62 -0
  55. data/rbi/increase/resources/card_validations.rbi +107 -0
  56. data/rbi/increase/resources/simulations/card_tokens.rbi +43 -0
  57. data/rbi/increase/resources/simulations.rbi +3 -0
  58. data/sig/increase/client.rbs +6 -0
  59. data/sig/increase/models/card_push_transfer.rbs +679 -0
  60. data/sig/increase/models/card_push_transfer_approve_params.rbs +15 -0
  61. data/sig/increase/models/card_push_transfer_cancel_params.rbs +15 -0
  62. data/sig/increase/models/card_push_transfer_create_params.rbs +172 -0
  63. data/sig/increase/models/card_push_transfer_list_params.rbs +163 -0
  64. data/sig/increase/models/card_push_transfer_retrieve_params.rbs +15 -0
  65. data/sig/increase/models/card_token.rbs +60 -0
  66. data/sig/increase/models/card_token_capabilities.rbs +104 -0
  67. data/sig/increase/models/card_token_capabilities_params.rbs +15 -0
  68. data/sig/increase/models/card_token_list_params.rbs +79 -0
  69. data/sig/increase/models/card_token_retrieve_params.rbs +15 -0
  70. data/sig/increase/models/card_validation.rbs +634 -0
  71. data/sig/increase/models/card_validation_create_params.rbs +91 -0
  72. data/sig/increase/models/card_validation_list_params.rbs +151 -0
  73. data/sig/increase/models/card_validation_retrieve_params.rbs +15 -0
  74. data/sig/increase/models/external_account.rbs +4 -1
  75. data/sig/increase/models/external_account_create_params.rbs +4 -1
  76. data/sig/increase/models/external_account_update_params.rbs +4 -1
  77. data/sig/increase/models/simulations/card_token_create_params.rbs +129 -0
  78. data/sig/increase/models.rbs +30 -0
  79. data/sig/increase/resources/card_push_transfers.rbs +53 -0
  80. data/sig/increase/resources/card_tokens.rbs +24 -0
  81. data/sig/increase/resources/card_validations.rbs +38 -0
  82. data/sig/increase/resources/simulations/card_tokens.rbs +18 -0
  83. data/sig/increase/resources/simulations.rbs +2 -0
  84. metadata +62 -2
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Increase
4
+ module Models
5
+ # @see Increase::Resources::CardPushTransfers#approve
6
+ class CardPushTransferApproveParams < Increase::Internal::Type::BaseModel
7
+ extend Increase::Internal::Type::RequestParameters::Converter
8
+ include Increase::Internal::Type::RequestParameters
9
+
10
+ # @!method initialize(request_options: {})
11
+ # @param request_options [Increase::RequestOptions, Hash{Symbol=>Object}]
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Increase
4
+ module Models
5
+ # @see Increase::Resources::CardPushTransfers#cancel
6
+ class CardPushTransferCancelParams < Increase::Internal::Type::BaseModel
7
+ extend Increase::Internal::Type::RequestParameters::Converter
8
+ include Increase::Internal::Type::RequestParameters
9
+
10
+ # @!method initialize(request_options: {})
11
+ # @param request_options [Increase::RequestOptions, Hash{Symbol=>Object}]
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,215 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Increase
4
+ module Models
5
+ # @see Increase::Resources::CardPushTransfers#create
6
+ class CardPushTransferCreateParams < Increase::Internal::Type::BaseModel
7
+ extend Increase::Internal::Type::RequestParameters::Converter
8
+ include Increase::Internal::Type::RequestParameters
9
+
10
+ # @!attribute amount
11
+ # The transfer amount in USD cents. For Card Push transfers, must be positive.
12
+ #
13
+ # @return [Integer]
14
+ required :amount, Integer
15
+
16
+ # @!attribute business_application_identifier
17
+ # The Business Application Identifier describes the type of transaction being
18
+ # performed. Your program must be approved for the specified Business Application
19
+ # Identifier in order to use it.
20
+ #
21
+ # @return [Symbol, Increase::Models::CardPushTransferCreateParams::BusinessApplicationIdentifier]
22
+ required :business_application_identifier,
23
+ enum: -> { Increase::CardPushTransferCreateParams::BusinessApplicationIdentifier }
24
+
25
+ # @!attribute card_token_id
26
+ # The Increase identifier for the Card Token that represents the card number
27
+ # you're pushing funds to.
28
+ #
29
+ # @return [String]
30
+ required :card_token_id, String
31
+
32
+ # @!attribute merchant_category_code
33
+ # The merchant category code (MCC) of the merchant (generally your business)
34
+ # sending the transfer. This is a four-digit code that describes the type of
35
+ # business or service provided by the merchant. Your program must be approved for
36
+ # the specified MCC in order to use it.
37
+ #
38
+ # @return [String]
39
+ required :merchant_category_code, String
40
+
41
+ # @!attribute merchant_city_name
42
+ # The city name of the merchant (generally your business) sending the transfer.
43
+ #
44
+ # @return [String]
45
+ required :merchant_city_name, String
46
+
47
+ # @!attribute merchant_name
48
+ # The merchant name shows up as the statement descriptor for the transfer. This is
49
+ # typically the name of your business or organization.
50
+ #
51
+ # @return [String]
52
+ required :merchant_name, String
53
+
54
+ # @!attribute merchant_name_prefix
55
+ # For certain Business Application Identifiers, the statement descriptor is
56
+ # `merchant_name_prefix*sender_name`, where the `merchant_name_prefix` is a one to
57
+ # four character prefix that identifies the merchant.
58
+ #
59
+ # @return [String]
60
+ required :merchant_name_prefix, String
61
+
62
+ # @!attribute merchant_postal_code
63
+ # The postal code of the merchant (generally your business) sending the transfer.
64
+ #
65
+ # @return [String]
66
+ required :merchant_postal_code, String
67
+
68
+ # @!attribute merchant_state
69
+ # The state of the merchant (generally your business) sending the transfer.
70
+ #
71
+ # @return [String]
72
+ required :merchant_state, String
73
+
74
+ # @!attribute recipient_name
75
+ # The name of the funds recipient.
76
+ #
77
+ # @return [String]
78
+ required :recipient_name, String
79
+
80
+ # @!attribute sender_address_city
81
+ # The city of the sender.
82
+ #
83
+ # @return [String]
84
+ required :sender_address_city, String
85
+
86
+ # @!attribute sender_address_line1
87
+ # The address line 1 of the sender.
88
+ #
89
+ # @return [String]
90
+ required :sender_address_line1, String
91
+
92
+ # @!attribute sender_address_postal_code
93
+ # The postal code of the sender.
94
+ #
95
+ # @return [String]
96
+ required :sender_address_postal_code, String
97
+
98
+ # @!attribute sender_address_state
99
+ # The state of the sender.
100
+ #
101
+ # @return [String]
102
+ required :sender_address_state, String
103
+
104
+ # @!attribute sender_name
105
+ # The name of the funds originator.
106
+ #
107
+ # @return [String]
108
+ required :sender_name, String
109
+
110
+ # @!attribute source_account_number_id
111
+ # The identifier of the Account Number from which to send the transfer.
112
+ #
113
+ # @return [String]
114
+ required :source_account_number_id, String
115
+
116
+ # @!attribute require_approval
117
+ # Whether the transfer requires explicit approval via the dashboard or API.
118
+ #
119
+ # @return [Boolean, nil]
120
+ optional :require_approval, Increase::Internal::Type::Boolean
121
+
122
+ # @!method initialize(amount:, business_application_identifier:, card_token_id:, merchant_category_code:, merchant_city_name:, merchant_name:, merchant_name_prefix:, merchant_postal_code:, merchant_state:, recipient_name:, sender_address_city:, sender_address_line1:, sender_address_postal_code:, sender_address_state:, sender_name:, source_account_number_id:, require_approval: nil, request_options: {})
123
+ # Some parameter documentations has been truncated, see
124
+ # {Increase::Models::CardPushTransferCreateParams} for more details.
125
+ #
126
+ # @param amount [Integer] The transfer amount in USD cents. For Card Push transfers, must be positive.
127
+ #
128
+ # @param business_application_identifier [Symbol, Increase::Models::CardPushTransferCreateParams::BusinessApplicationIdentifier] The Business Application Identifier describes the type of transaction being perf
129
+ #
130
+ # @param card_token_id [String] The Increase identifier for the Card Token that represents the card number you'r
131
+ #
132
+ # @param merchant_category_code [String] The merchant category code (MCC) of the merchant (generally your business) sendi
133
+ #
134
+ # @param merchant_city_name [String] The city name of the merchant (generally your business) sending the transfer.
135
+ #
136
+ # @param merchant_name [String] The merchant name shows up as the statement descriptor for the transfer. This is
137
+ #
138
+ # @param merchant_name_prefix [String] For certain Business Application Identifiers, the statement descriptor is `merch
139
+ #
140
+ # @param merchant_postal_code [String] The postal code of the merchant (generally your business) sending the transfer.
141
+ #
142
+ # @param merchant_state [String] The state of the merchant (generally your business) sending the transfer.
143
+ #
144
+ # @param recipient_name [String] The name of the funds recipient.
145
+ #
146
+ # @param sender_address_city [String] The city of the sender.
147
+ #
148
+ # @param sender_address_line1 [String] The address line 1 of the sender.
149
+ #
150
+ # @param sender_address_postal_code [String] The postal code of the sender.
151
+ #
152
+ # @param sender_address_state [String] The state of the sender.
153
+ #
154
+ # @param sender_name [String] The name of the funds originator.
155
+ #
156
+ # @param source_account_number_id [String] The identifier of the Account Number from which to send the transfer.
157
+ #
158
+ # @param require_approval [Boolean] Whether the transfer requires explicit approval via the dashboard or API.
159
+ #
160
+ # @param request_options [Increase::RequestOptions, Hash{Symbol=>Object}]
161
+
162
+ # The Business Application Identifier describes the type of transaction being
163
+ # performed. Your program must be approved for the specified Business Application
164
+ # Identifier in order to use it.
165
+ module BusinessApplicationIdentifier
166
+ extend Increase::Internal::Type::Enum
167
+
168
+ # Account to Account
169
+ ACCOUNT_TO_ACCOUNT = :account_to_account
170
+
171
+ # Business to Business
172
+ BUSINESS_TO_BUSINESS = :business_to_business
173
+
174
+ # Money Transfer Bank Initiated
175
+ MONEY_TRANSFER_BANK_INITIATED = :money_transfer_bank_initiated
176
+
177
+ # Non-Card Bill Payment
178
+ NON_CARD_BILL_PAYMENT = :non_card_bill_payment
179
+
180
+ # Consumer Bill Payment
181
+ CONSUMER_BILL_PAYMENT = :consumer_bill_payment
182
+
183
+ # Card Bill Payment
184
+ CARD_BILL_PAYMENT = :card_bill_payment
185
+
186
+ # Funds Disbursement
187
+ FUNDS_DISBURSEMENT = :funds_disbursement
188
+
189
+ # Funds Transfer
190
+ FUNDS_TRANSFER = :funds_transfer
191
+
192
+ # Loyalty and Offers
193
+ LOYALTY_AND_OFFERS = :loyalty_and_offers
194
+
195
+ # Merchant Disbursement
196
+ MERCHANT_DISBURSEMENT = :merchant_disbursement
197
+
198
+ # Merchant Payment
199
+ MERCHANT_PAYMENT = :merchant_payment
200
+
201
+ # Person to Person
202
+ PERSON_TO_PERSON = :person_to_person
203
+
204
+ # Top Up
205
+ TOP_UP = :top_up
206
+
207
+ # Wallet Transfer
208
+ WALLET_TRANSFER = :wallet_transfer
209
+
210
+ # @!method self.values
211
+ # @return [Array<Symbol>]
212
+ end
213
+ end
214
+ end
215
+ end
@@ -0,0 +1,159 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Increase
4
+ module Models
5
+ # @see Increase::Resources::CardPushTransfers#list
6
+ class CardPushTransferListParams < Increase::Internal::Type::BaseModel
7
+ extend Increase::Internal::Type::RequestParameters::Converter
8
+ include Increase::Internal::Type::RequestParameters
9
+
10
+ # @!attribute account_id
11
+ # Filter Card Push Transfers to ones belonging to the specified Account.
12
+ #
13
+ # @return [String, nil]
14
+ optional :account_id, String
15
+
16
+ # @!attribute created_at
17
+ #
18
+ # @return [Increase::Models::CardPushTransferListParams::CreatedAt, nil]
19
+ optional :created_at, -> { Increase::CardPushTransferListParams::CreatedAt }
20
+
21
+ # @!attribute cursor
22
+ # Return the page of entries after this one.
23
+ #
24
+ # @return [String, nil]
25
+ optional :cursor, String
26
+
27
+ # @!attribute idempotency_key
28
+ # Filter records to the one with the specified `idempotency_key` you chose for
29
+ # that object. This value is unique across Increase and is used to ensure that a
30
+ # request is only processed once. Learn more about
31
+ # [idempotency](https://increase.com/documentation/idempotency-keys).
32
+ #
33
+ # @return [String, nil]
34
+ optional :idempotency_key, String
35
+
36
+ # @!attribute limit
37
+ # Limit the size of the list that is returned. The default (and maximum) is 100
38
+ # objects.
39
+ #
40
+ # @return [Integer, nil]
41
+ optional :limit, Integer
42
+
43
+ # @!attribute status
44
+ #
45
+ # @return [Increase::Models::CardPushTransferListParams::Status, nil]
46
+ optional :status, -> { Increase::CardPushTransferListParams::Status }
47
+
48
+ # @!method initialize(account_id: nil, created_at: nil, cursor: nil, idempotency_key: nil, limit: nil, status: nil, request_options: {})
49
+ # Some parameter documentations has been truncated, see
50
+ # {Increase::Models::CardPushTransferListParams} for more details.
51
+ #
52
+ # @param account_id [String] Filter Card Push Transfers to ones belonging to the specified Account.
53
+ #
54
+ # @param created_at [Increase::Models::CardPushTransferListParams::CreatedAt]
55
+ #
56
+ # @param cursor [String] Return the page of entries after this one.
57
+ #
58
+ # @param idempotency_key [String] Filter records to the one with the specified `idempotency_key` you chose for tha
59
+ #
60
+ # @param limit [Integer] Limit the size of the list that is returned. The default (and maximum) is 100 ob
61
+ #
62
+ # @param status [Increase::Models::CardPushTransferListParams::Status]
63
+ #
64
+ # @param request_options [Increase::RequestOptions, Hash{Symbol=>Object}]
65
+
66
+ class CreatedAt < Increase::Internal::Type::BaseModel
67
+ # @!attribute after
68
+ # Return results after this [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)
69
+ # timestamp.
70
+ #
71
+ # @return [Time, nil]
72
+ optional :after, Time
73
+
74
+ # @!attribute before
75
+ # Return results before this [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)
76
+ # timestamp.
77
+ #
78
+ # @return [Time, nil]
79
+ optional :before, Time
80
+
81
+ # @!attribute on_or_after
82
+ # Return results on or after this
83
+ # [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) timestamp.
84
+ #
85
+ # @return [Time, nil]
86
+ optional :on_or_after, Time
87
+
88
+ # @!attribute on_or_before
89
+ # Return results on or before this
90
+ # [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) timestamp.
91
+ #
92
+ # @return [Time, nil]
93
+ optional :on_or_before, Time
94
+
95
+ # @!method initialize(after: nil, before: nil, on_or_after: nil, on_or_before: nil)
96
+ # Some parameter documentations has been truncated, see
97
+ # {Increase::Models::CardPushTransferListParams::CreatedAt} for more details.
98
+ #
99
+ # @param after [Time] Return results after this [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) tim
100
+ #
101
+ # @param before [Time] Return results before this [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) ti
102
+ #
103
+ # @param on_or_after [Time] Return results on or after this [ISO 8601](https://en.wikipedia.org/wiki/ISO_860
104
+ #
105
+ # @param on_or_before [Time] Return results on or before this [ISO 8601](https://en.wikipedia.org/wiki/ISO_86
106
+ end
107
+
108
+ class Status < Increase::Internal::Type::BaseModel
109
+ # @!attribute in_
110
+ # Filter Card Push Transfers by status. For GET requests, this should be encoded
111
+ # as a comma-delimited string, such as `?in=one,two,three`.
112
+ #
113
+ # @return [Array<Symbol, Increase::Models::CardPushTransferListParams::Status::In>, nil]
114
+ optional :in_,
115
+ -> {
116
+ Increase::Internal::Type::ArrayOf[enum: Increase::CardPushTransferListParams::Status::In]
117
+ },
118
+ api_name: :in
119
+
120
+ # @!method initialize(in_: nil)
121
+ # Some parameter documentations has been truncated, see
122
+ # {Increase::Models::CardPushTransferListParams::Status} for more details.
123
+ #
124
+ # @param in_ [Array<Symbol, Increase::Models::CardPushTransferListParams::Status::In>] Filter Card Push Transfers by status. For GET requests, this should be encoded a
125
+
126
+ module In
127
+ extend Increase::Internal::Type::Enum
128
+
129
+ # The transfer is pending approval.
130
+ PENDING_APPROVAL = :pending_approval
131
+
132
+ # The transfer has been canceled.
133
+ CANCELED = :canceled
134
+
135
+ # The transfer is pending review by Increase.
136
+ PENDING_REVIEWING = :pending_reviewing
137
+
138
+ # The transfer requires attention from an Increase operator.
139
+ REQUIRES_ATTENTION = :requires_attention
140
+
141
+ # The transfer is queued to be submitted to the card network.
142
+ PENDING_SUBMISSION = :pending_submission
143
+
144
+ # The transfer has been submitted and is pending a response from the card network.
145
+ SUBMITTED = :submitted
146
+
147
+ # The transfer has been sent successfully and is complete.
148
+ COMPLETE = :complete
149
+
150
+ # The transfer was declined by the network or the recipient's bank.
151
+ DECLINED = :declined
152
+
153
+ # @!method self.values
154
+ # @return [Array<Symbol>]
155
+ end
156
+ end
157
+ end
158
+ end
159
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Increase
4
+ module Models
5
+ # @see Increase::Resources::CardPushTransfers#retrieve
6
+ class CardPushTransferRetrieveParams < Increase::Internal::Type::BaseModel
7
+ extend Increase::Internal::Type::RequestParameters::Converter
8
+ include Increase::Internal::Type::RequestParameters
9
+
10
+ # @!method initialize(request_options: {})
11
+ # @param request_options [Increase::RequestOptions, Hash{Symbol=>Object}]
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,87 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Increase
4
+ module Models
5
+ # @see Increase::Resources::CardTokens#retrieve
6
+ class CardToken < Increase::Internal::Type::BaseModel
7
+ # @!attribute id
8
+ # The Card Token's identifier.
9
+ #
10
+ # @return [String]
11
+ required :id, String
12
+
13
+ # @!attribute created_at
14
+ # The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which
15
+ # the card token was created.
16
+ #
17
+ # @return [Time]
18
+ required :created_at, Time
19
+
20
+ # @!attribute expiration_date
21
+ # The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date when the card
22
+ # expires.
23
+ #
24
+ # @return [Date]
25
+ required :expiration_date, Date
26
+
27
+ # @!attribute last4
28
+ # The last 4 digits of the card number.
29
+ #
30
+ # @return [String]
31
+ required :last4, String
32
+
33
+ # @!attribute length
34
+ # The length of the card number.
35
+ #
36
+ # @return [Integer]
37
+ required :length, Integer
38
+
39
+ # @!attribute prefix
40
+ # The prefix of the card number, usually 8 digits.
41
+ #
42
+ # @return [String]
43
+ required :prefix, String
44
+
45
+ # @!attribute type
46
+ # A constant representing the object's type. For this resource it will always be
47
+ # `card_token`.
48
+ #
49
+ # @return [Symbol, Increase::Models::CardToken::Type]
50
+ required :type, enum: -> { Increase::CardToken::Type }
51
+
52
+ # @!method initialize(id:, created_at:, expiration_date:, last4:, length:, prefix:, type:)
53
+ # Some parameter documentations has been truncated, see
54
+ # {Increase::Models::CardToken} for more details.
55
+ #
56
+ # Card Tokens represent a tokenized card number that can be used for Card Push
57
+ # Transfers and Card Validations.
58
+ #
59
+ # @param id [String] The Card Token's identifier.
60
+ #
61
+ # @param created_at [Time] The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which th
62
+ #
63
+ # @param expiration_date [Date] The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date when the card expire
64
+ #
65
+ # @param last4 [String] The last 4 digits of the card number.
66
+ #
67
+ # @param length [Integer] The length of the card number.
68
+ #
69
+ # @param prefix [String] The prefix of the card number, usually 8 digits.
70
+ #
71
+ # @param type [Symbol, Increase::Models::CardToken::Type] A constant representing the object's type. For this resource it will always be `
72
+
73
+ # A constant representing the object's type. For this resource it will always be
74
+ # `card_token`.
75
+ #
76
+ # @see Increase::Models::CardToken#type
77
+ module Type
78
+ extend Increase::Internal::Type::Enum
79
+
80
+ CARD_TOKEN = :card_token
81
+
82
+ # @!method self.values
83
+ # @return [Array<Symbol>]
84
+ end
85
+ end
86
+ end
87
+ end
@@ -0,0 +1,123 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Increase
4
+ module Models
5
+ # @see Increase::Resources::CardTokens#capabilities
6
+ class CardTokenCapabilities < Increase::Internal::Type::BaseModel
7
+ # @!attribute routes
8
+ # Each route represent a path e.g., a push transfer can take.
9
+ #
10
+ # @return [Array<Increase::Models::CardTokenCapabilities::Route>]
11
+ required :routes, -> { Increase::Internal::Type::ArrayOf[Increase::CardTokenCapabilities::Route] }
12
+
13
+ # @!attribute type
14
+ # A constant representing the object's type. For this resource it will always be
15
+ # `card_token_capabilities`.
16
+ #
17
+ # @return [Symbol, Increase::Models::CardTokenCapabilities::Type]
18
+ required :type, enum: -> { Increase::CardTokenCapabilities::Type }
19
+
20
+ # @!method initialize(routes:, type:)
21
+ # Some parameter documentations has been truncated, see
22
+ # {Increase::Models::CardTokenCapabilities} for more details.
23
+ #
24
+ # The capabilities of a Card Token describe whether the card can be used for
25
+ # specific operations, such as Card Push Transfers. The capabilities can change
26
+ # over time based on the issuing bank's configuration of the card range.
27
+ #
28
+ # @param routes [Array<Increase::Models::CardTokenCapabilities::Route>] Each route represent a path e.g., a push transfer can take.
29
+ #
30
+ # @param type [Symbol, Increase::Models::CardTokenCapabilities::Type] A constant representing the object's type. For this resource it will always be `
31
+
32
+ class Route < Increase::Internal::Type::BaseModel
33
+ # @!attribute cross_border_push_transfers
34
+ # Whether you can push funds to the card using cross-border Card Push Transfers.
35
+ #
36
+ # @return [Symbol, Increase::Models::CardTokenCapabilities::Route::CrossBorderPushTransfers]
37
+ required :cross_border_push_transfers,
38
+ enum: -> { Increase::CardTokenCapabilities::Route::CrossBorderPushTransfers }
39
+
40
+ # @!attribute domestic_push_transfers
41
+ # Whether you can push funds to the card using domestic Card Push Transfers.
42
+ #
43
+ # @return [Symbol, Increase::Models::CardTokenCapabilities::Route::DomesticPushTransfers]
44
+ required :domestic_push_transfers,
45
+ enum: -> { Increase::CardTokenCapabilities::Route::DomesticPushTransfers }
46
+
47
+ # @!attribute route
48
+ # The card network route the capabilities apply to.
49
+ #
50
+ # @return [Symbol, Increase::Models::CardTokenCapabilities::Route::Route]
51
+ required :route, enum: -> { Increase::CardTokenCapabilities::Route::Route }
52
+
53
+ # @!method initialize(cross_border_push_transfers:, domestic_push_transfers:, route:)
54
+ # @param cross_border_push_transfers [Symbol, Increase::Models::CardTokenCapabilities::Route::CrossBorderPushTransfers] Whether you can push funds to the card using cross-border Card Push Transfers.
55
+ #
56
+ # @param domestic_push_transfers [Symbol, Increase::Models::CardTokenCapabilities::Route::DomesticPushTransfers] Whether you can push funds to the card using domestic Card Push Transfers.
57
+ #
58
+ # @param route [Symbol, Increase::Models::CardTokenCapabilities::Route::Route] The card network route the capabilities apply to.
59
+
60
+ # Whether you can push funds to the card using cross-border Card Push Transfers.
61
+ #
62
+ # @see Increase::Models::CardTokenCapabilities::Route#cross_border_push_transfers
63
+ module CrossBorderPushTransfers
64
+ extend Increase::Internal::Type::Enum
65
+
66
+ # The capability is supported.
67
+ SUPPORTED = :supported
68
+
69
+ # The capability is not supported.
70
+ NOT_SUPPORTED = :not_supported
71
+
72
+ # @!method self.values
73
+ # @return [Array<Symbol>]
74
+ end
75
+
76
+ # Whether you can push funds to the card using domestic Card Push Transfers.
77
+ #
78
+ # @see Increase::Models::CardTokenCapabilities::Route#domestic_push_transfers
79
+ module DomesticPushTransfers
80
+ extend Increase::Internal::Type::Enum
81
+
82
+ # The capability is supported.
83
+ SUPPORTED = :supported
84
+
85
+ # The capability is not supported.
86
+ NOT_SUPPORTED = :not_supported
87
+
88
+ # @!method self.values
89
+ # @return [Array<Symbol>]
90
+ end
91
+
92
+ # The card network route the capabilities apply to.
93
+ #
94
+ # @see Increase::Models::CardTokenCapabilities::Route#route
95
+ module Route
96
+ extend Increase::Internal::Type::Enum
97
+
98
+ # Visa and Interlink
99
+ VISA = :visa
100
+
101
+ # Mastercard and Maestro
102
+ MASTERCARD = :mastercard
103
+
104
+ # @!method self.values
105
+ # @return [Array<Symbol>]
106
+ end
107
+ end
108
+
109
+ # A constant representing the object's type. For this resource it will always be
110
+ # `card_token_capabilities`.
111
+ #
112
+ # @see Increase::Models::CardTokenCapabilities#type
113
+ module Type
114
+ extend Increase::Internal::Type::Enum
115
+
116
+ CARD_TOKEN_CAPABILITIES = :card_token_capabilities
117
+
118
+ # @!method self.values
119
+ # @return [Array<Symbol>]
120
+ end
121
+ end
122
+ end
123
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Increase
4
+ module Models
5
+ # @see Increase::Resources::CardTokens#capabilities
6
+ class CardTokenCapabilitiesParams < Increase::Internal::Type::BaseModel
7
+ extend Increase::Internal::Type::RequestParameters::Converter
8
+ include Increase::Internal::Type::RequestParameters
9
+
10
+ # @!method initialize(request_options: {})
11
+ # @param request_options [Increase::RequestOptions, Hash{Symbol=>Object}]
12
+ end
13
+ end
14
+ end