lithic 0.3.0 → 0.5.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 (122) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +73 -0
  3. data/README.md +10 -1
  4. data/lib/lithic/internal/transport/pooled_net_requester.rb +1 -1
  5. data/lib/lithic/internal/util.rb +1 -1
  6. data/lib/lithic/models/account_holder.rb +14 -5
  7. data/lib/lithic/models/account_holder_create_params.rb +10 -1
  8. data/lib/lithic/models/account_holder_simulate_enrollment_review_params.rb +1 -0
  9. data/lib/lithic/models/account_holder_simulate_enrollment_review_response.rb +14 -5
  10. data/lib/lithic/models/account_holder_update_params.rb +10 -1
  11. data/lib/lithic/models/account_holder_update_response.rb +14 -5
  12. data/lib/lithic/models/account_holder_updated_webhook_event.rb +10 -1
  13. data/lib/lithic/models/auth_rules/conditional_ach_action_parameters.rb +3 -3
  14. data/lib/lithic/models/auth_rules/conditional_tokenization_action_parameters.rb +47 -21
  15. data/lib/lithic/models/auth_rules/v2_list_results_params.rb +70 -0
  16. data/lib/lithic/models/auth_rules/v2_list_results_response.rb +740 -0
  17. data/lib/lithic/models/auth_rules/velocity_limit_params.rb +21 -21
  18. data/lib/lithic/models/book_transfer_create_params.rb +9 -1
  19. data/lib/lithic/models/card_authorization_approval_request_webhook_event.rb +178 -25
  20. data/lib/lithic/models/card_create_params.rb +12 -5
  21. data/lib/lithic/models/card_updated_webhook_event.rb +40 -0
  22. data/lib/lithic/models/card_web_provision_response.rb +5 -5
  23. data/lib/lithic/models/event.rb +3 -0
  24. data/lib/lithic/models/event_list_params.rb +2 -0
  25. data/lib/lithic/models/event_subscription.rb +2 -0
  26. data/lib/lithic/models/events/subscription_create_params.rb +2 -0
  27. data/lib/lithic/models/events/subscription_send_simulated_example_params.rb +1 -0
  28. data/lib/lithic/models/events/subscription_update_params.rb +2 -0
  29. data/lib/lithic/models/financial_transaction.rb +4 -2
  30. data/lib/lithic/models/kyb.rb +10 -1
  31. data/lib/lithic/models/non_pci_card.rb +8 -10
  32. data/lib/lithic/models/parsed_webhook_event.rb +13 -2
  33. data/lib/lithic/models/payment.rb +1 -1
  34. data/lib/lithic/models/payment_create_params.rb +1 -1
  35. data/lib/lithic/models/transaction.rb +10 -1
  36. data/lib/lithic/models/transaction_simulate_authorization_params.rb +25 -1
  37. data/lib/lithic/models/transaction_simulate_credit_authorization_advice_params.rb +25 -1
  38. data/lib/lithic/models.rb +2 -0
  39. data/lib/lithic/resources/account_holders.rb +6 -2
  40. data/lib/lithic/resources/auth_rules/v2.rb +42 -0
  41. data/lib/lithic/resources/book_transfers.rb +3 -1
  42. data/lib/lithic/resources/cards.rb +32 -22
  43. data/lib/lithic/resources/financial_accounts.rb +5 -5
  44. data/lib/lithic/resources/transactions.rb +14 -2
  45. data/lib/lithic/resources/webhooks.rb +1 -1
  46. data/lib/lithic/version.rb +1 -1
  47. data/lib/lithic.rb +3 -0
  48. data/rbi/lithic/internal/util.rbi +1 -1
  49. data/rbi/lithic/models/account_holder.rbi +19 -6
  50. data/rbi/lithic/models/account_holder_create_params.rbi +13 -0
  51. data/rbi/lithic/models/account_holder_simulate_enrollment_review_params.rbi +5 -0
  52. data/rbi/lithic/models/account_holder_simulate_enrollment_review_response.rbi +19 -6
  53. data/rbi/lithic/models/account_holder_update_params.rbi +13 -0
  54. data/rbi/lithic/models/account_holder_update_response.rbi +19 -6
  55. data/rbi/lithic/models/account_holder_updated_webhook_event.rbi +13 -0
  56. data/rbi/lithic/models/auth_rules/conditional_ach_action_parameters.rbi +3 -3
  57. data/rbi/lithic/models/auth_rules/conditional_tokenization_action_parameters.rbi +69 -30
  58. data/rbi/lithic/models/auth_rules/v2_list_results_params.rbi +112 -0
  59. data/rbi/lithic/models/auth_rules/v2_list_results_response.rbi +1826 -0
  60. data/rbi/lithic/models/auth_rules/velocity_limit_params.rbi +47 -45
  61. data/rbi/lithic/models/book_transfer_create_params.rbi +11 -0
  62. data/rbi/lithic/models/card_authorization_approval_request_webhook_event.rbi +337 -36
  63. data/rbi/lithic/models/card_create_params.rbi +15 -6
  64. data/rbi/lithic/models/card_updated_webhook_event.rbi +61 -0
  65. data/rbi/lithic/models/card_web_provision_response.rbi +5 -10
  66. data/rbi/lithic/models/event.rbi +5 -0
  67. data/rbi/lithic/models/event_list_params.rbi +6 -0
  68. data/rbi/lithic/models/event_subscription.rbi +6 -0
  69. data/rbi/lithic/models/events/subscription_create_params.rbi +6 -0
  70. data/rbi/lithic/models/events/subscription_send_simulated_example_params.rbi +5 -0
  71. data/rbi/lithic/models/events/subscription_update_params.rbi +6 -0
  72. data/rbi/lithic/models/financial_transaction.rbi +8 -4
  73. data/rbi/lithic/models/kyb.rbi +13 -0
  74. data/rbi/lithic/models/non_pci_card.rbi +12 -15
  75. data/rbi/lithic/models/parsed_webhook_event.rbi +14 -0
  76. data/rbi/lithic/models/payment.rbi +5 -2
  77. data/rbi/lithic/models/transaction.rbi +10 -0
  78. data/rbi/lithic/models/transaction_simulate_authorization_params.rbi +33 -0
  79. data/rbi/lithic/models/transaction_simulate_credit_authorization_advice_params.rbi +33 -0
  80. data/rbi/lithic/models.rbi +2 -0
  81. data/rbi/lithic/resources/account_holders.rbi +8 -0
  82. data/rbi/lithic/resources/auth_rules/v2.rbi +42 -0
  83. data/rbi/lithic/resources/book_transfers.rbi +3 -0
  84. data/rbi/lithic/resources/cards.rbi +51 -45
  85. data/rbi/lithic/resources/financial_accounts.rbi +5 -5
  86. data/rbi/lithic/resources/transactions.rbi +18 -0
  87. data/rbi/lithic/resources/webhooks.rbi +62 -1
  88. data/sig/lithic/models/account_holder.rbs +7 -0
  89. data/sig/lithic/models/account_holder_create_params.rbs +7 -0
  90. data/sig/lithic/models/account_holder_simulate_enrollment_review_params.rbs +2 -1
  91. data/sig/lithic/models/account_holder_simulate_enrollment_review_response.rbs +7 -0
  92. data/sig/lithic/models/account_holder_update_params.rbs +7 -0
  93. data/sig/lithic/models/account_holder_update_response.rbs +7 -0
  94. data/sig/lithic/models/account_holder_updated_webhook_event.rbs +7 -0
  95. data/sig/lithic/models/auth_rules/v2_list_results_params.rbs +65 -0
  96. data/sig/lithic/models/auth_rules/v2_list_results_response.rbs +752 -0
  97. data/sig/lithic/models/auth_rules/velocity_limit_params.rbs +20 -16
  98. data/sig/lithic/models/book_transfer_create_params.rbs +7 -0
  99. data/sig/lithic/models/card_authorization_approval_request_webhook_event.rbs +96 -0
  100. data/sig/lithic/models/card_create_params.rbs +8 -1
  101. data/sig/lithic/models/card_updated_webhook_event.rbs +35 -0
  102. data/sig/lithic/models/card_web_provision_response.rbs +4 -10
  103. data/sig/lithic/models/event.rbs +2 -0
  104. data/sig/lithic/models/event_list_params.rbs +2 -0
  105. data/sig/lithic/models/event_subscription.rbs +2 -0
  106. data/sig/lithic/models/events/subscription_create_params.rbs +2 -0
  107. data/sig/lithic/models/events/subscription_send_simulated_example_params.rbs +2 -0
  108. data/sig/lithic/models/events/subscription_update_params.rbs +2 -0
  109. data/sig/lithic/models/kyb.rbs +7 -0
  110. data/sig/lithic/models/parsed_webhook_event.rbs +8 -0
  111. data/sig/lithic/models/payment.rbs +2 -2
  112. data/sig/lithic/models/transaction.rbs +5 -0
  113. data/sig/lithic/models/transaction_simulate_authorization_params.rbs +21 -0
  114. data/sig/lithic/models/transaction_simulate_credit_authorization_advice_params.rbs +22 -1
  115. data/sig/lithic/models.rbs +2 -0
  116. data/sig/lithic/resources/account_holders.rbs +2 -0
  117. data/sig/lithic/resources/auth_rules/v2.rbs +10 -0
  118. data/sig/lithic/resources/book_transfers.rbs +1 -0
  119. data/sig/lithic/resources/cards.rbs +1 -0
  120. data/sig/lithic/resources/transactions.rbs +6 -0
  121. data/sig/lithic/resources/webhooks.rbs +58 -1
  122. metadata +25 -2
@@ -38,6 +38,7 @@ module Lithic
38
38
  ],
39
39
  external_id: String,
40
40
  kyb_passed_timestamp: String,
41
+ naics_code: String,
41
42
  website_url: String,
42
43
  kyc_passed_timestamp: String,
43
44
  business_account_token: String,
@@ -98,6 +99,9 @@ module Lithic
98
99
  #
99
100
  # This field is required only if workflow type is `KYB_BYO`.
100
101
  kyb_passed_timestamp: nil,
102
+ # 6-digit North American Industry Classification System (NAICS) code for the
103
+ # business.
104
+ naics_code: nil,
101
105
  # Company website URL.
102
106
  website_url: nil,
103
107
  # An RFC 3339 timestamp indicating when precomputed KYC was completed on the
@@ -154,6 +158,7 @@ module Lithic
154
158
  control_person:
155
159
  Lithic::AccountHolderUpdateParams::ControlPerson::OrHash,
156
160
  external_id: String,
161
+ naics_code: String,
157
162
  nature_of_business: String,
158
163
  website_url: String,
159
164
  individual: Lithic::AccountHolderUpdateParams::Individual::OrHash,
@@ -194,6 +199,9 @@ module Lithic
194
199
  # A user provided id that can be used to link an account holder with an external
195
200
  # system
196
201
  external_id: nil,
202
+ # 6-digit North American Industry Classification System (NAICS) code for the
203
+ # business.
204
+ naics_code: nil,
197
205
  # Short description of the company's line of business (i.e., what does the company
198
206
  # do?).
199
207
  nature_of_business: nil,
@@ -198,6 +198,48 @@ module Lithic
198
198
  )
199
199
  end
200
200
 
201
+ # Lists Auth Rule evaluation results.
202
+ #
203
+ # **Limitations:**
204
+ #
205
+ # - Results are available for the past 3 months only
206
+ # - At least one filter (`event_token` or `auth_rule_token`) must be provided
207
+ # - When filtering by `event_token`, pagination is not supported
208
+ sig do
209
+ params(
210
+ auth_rule_token: String,
211
+ ending_before: String,
212
+ event_token: String,
213
+ has_actions: T::Boolean,
214
+ page_size: Integer,
215
+ starting_after: String,
216
+ request_options: Lithic::RequestOptions::OrHash
217
+ ).returns(
218
+ Lithic::Internal::CursorPage[
219
+ Lithic::Models::AuthRules::V2ListResultsResponse::Variants
220
+ ]
221
+ )
222
+ end
223
+ def list_results(
224
+ # Filter by Auth Rule token
225
+ auth_rule_token: nil,
226
+ # A cursor representing an item's token before which a page of results should end.
227
+ # Used to retrieve the previous page of results before this item.
228
+ ending_before: nil,
229
+ # Filter by event token
230
+ event_token: nil,
231
+ # Filter by whether the rule evaluation produced any actions. When not provided,
232
+ # all results are returned.
233
+ has_actions: nil,
234
+ # Page size (for pagination).
235
+ page_size: nil,
236
+ # A cursor representing an item's token after which a page of results should
237
+ # begin. Used to retrieve the next page of results after this item.
238
+ starting_after: nil,
239
+ request_options: {}
240
+ )
241
+ end
242
+
201
243
  # Promotes the draft version of an Auth rule to the currently active version such
202
244
  # that it is enforced in the respective stream.
203
245
  sig do
@@ -15,6 +15,7 @@ module Lithic
15
15
  type: Lithic::BookTransferCreateParams::Type::OrSymbol,
16
16
  token: String,
17
17
  external_id: String,
18
+ hold_token: String,
18
19
  memo: String,
19
20
  on_closed_account:
20
21
  Lithic::BookTransferCreateParams::OnClosedAccount::OrSymbol,
@@ -41,6 +42,8 @@ module Lithic
41
42
  token: nil,
42
43
  # External ID defined by the customer
43
44
  external_id: nil,
45
+ # Token of an existing hold to settle when this transfer is initiated
46
+ hold_token: nil,
44
47
  # Optional descriptor for the transfer.
45
48
  memo: nil,
46
49
  # What to do if the financial account is closed when posting an operation
@@ -34,11 +34,12 @@ module Lithic
34
34
  spend_limit: Integer,
35
35
  spend_limit_duration: Lithic::SpendLimitDuration::OrSymbol,
36
36
  state: Lithic::CardCreateParams::State::OrSymbol,
37
+ idempotency_key: String,
37
38
  request_options: Lithic::RequestOptions::OrHash
38
39
  ).returns(Lithic::Card)
39
40
  end
40
41
  def create(
41
- # Card types:
42
+ # Body param: Card types:
42
43
  #
43
44
  # - `VIRTUAL` - Card will authorize at any merchant and can be added to a digital
44
45
  # wallet like Apple Pay or Google Pay (if the card program is digital
@@ -48,65 +49,67 @@ module Lithic
48
49
  # Reach out at [lithic.com/contact](https://lithic.com/contact) for more
49
50
  # information.
50
51
  # - `SINGLE_USE` - Card is closed upon first successful authorization.
51
- # - `MERCHANT_LOCKED` - _[Deprecated]_ Card is locked to the first merchant that
52
- # successfully authorizes the card.
52
+ # - `MERCHANT_LOCKED` - Card is locked to the first merchant that successfully
53
+ # authorizes the card.
53
54
  # - `UNLOCKED` - _[Deprecated]_ Similar behavior to VIRTUAL cards, please use
54
55
  # VIRTUAL instead.
55
56
  # - `DIGITAL_WALLET` - _[Deprecated]_ Similar behavior to VIRTUAL cards, please
56
57
  # use VIRTUAL instead.
57
58
  type:,
58
- # Globally unique identifier for the account that the card will be associated
59
- # with. Required for programs enrolling users using the
59
+ # Body param: Globally unique identifier for the account that the card will be
60
+ # associated with. Required for programs enrolling users using the
60
61
  # [/account_holders endpoint](https://docs.lithic.com/docs/account-holders-kyc).
61
62
  # See [Managing Your Program](doc:managing-your-program) for more information.
62
63
  account_token: nil,
63
- # Globally unique identifier for an existing bulk order to associate this card
64
- # with. When specified, the card will be added to the bulk order for batch
65
- # shipment. Only applicable to cards of type PHYSICAL
64
+ # Body param: Globally unique identifier for an existing bulk order to associate
65
+ # this card with. When specified, the card will be added to the bulk order for
66
+ # batch shipment. Only applicable to cards of type PHYSICAL
66
67
  bulk_order_token: nil,
67
- # For card programs with more than one BIN range. This must be configured with
68
- # Lithic before use. Identifies the card program/BIN range under which to create
69
- # the card. If omitted, will utilize the program's default `card_program_token`.
70
- # In Sandbox, use 00000000-0000-0000-1000-000000000000 and
68
+ # Body param: For card programs with more than one BIN range. This must be
69
+ # configured with Lithic before use. Identifies the card program/BIN range under
70
+ # which to create the card. If omitted, will utilize the program's default
71
+ # `card_program_token`. In Sandbox, use 00000000-0000-0000-1000-000000000000 and
71
72
  # 00000000-0000-0000-2000-000000000000 to test creating cards on specific card
72
73
  # programs.
73
74
  card_program_token: nil,
75
+ # Body param
74
76
  carrier: nil,
75
- # Specifies the digital card art to be displayed in the user’s digital wallet
76
- # after tokenization. This artwork must be approved by Mastercard and configured
77
- # by Lithic to use. See
77
+ # Body param: Specifies the digital card art to be displayed in the user’s digital
78
+ # wallet after tokenization. This artwork must be approved by Mastercard and
79
+ # configured by Lithic to use. See
78
80
  # [Flexible Card Art Guide](https://docs.lithic.com/docs/about-digital-wallets#flexible-card-art).
79
81
  digital_card_art_token: nil,
80
- # Two digit (MM) expiry month. If neither `exp_month` nor `exp_year` is provided,
81
- # an expiration date will be generated.
82
+ # Body param: Two digit (MM) expiry month. If neither `exp_month` nor `exp_year`
83
+ # is provided, an expiration date will be generated.
82
84
  exp_month: nil,
83
- # Four digit (yyyy) expiry year. If neither `exp_month` nor `exp_year` is
84
- # provided, an expiration date will be generated.
85
+ # Body param: Four digit (yyyy) expiry year. If neither `exp_month` nor `exp_year`
86
+ # is provided, an expiration date will be generated.
85
87
  exp_year: nil,
86
- # Friendly name to identify the card.
88
+ # Body param: Friendly name to identify the card.
87
89
  memo: nil,
88
- # Encrypted PIN block (in base64). Applies to cards of type `PHYSICAL` and
89
- # `VIRTUAL`. See
90
+ # Body param: Encrypted PIN block (in base64). Applies to cards of type `PHYSICAL`
91
+ # and `VIRTUAL`. See
90
92
  # [Encrypted PIN Block](https://docs.lithic.com/docs/cards#encrypted-pin-block).
91
93
  pin: nil,
92
- # Only applicable to cards of type `PHYSICAL`. This must be configured with Lithic
93
- # before use. Specifies the configuration (i.e., physical card art) that the card
94
- # should be manufactured with.
94
+ # Body param: Only applicable to cards of type `PHYSICAL`. This must be configured
95
+ # with Lithic before use. Specifies the configuration (i.e., physical card art)
96
+ # that the card should be manufactured with.
95
97
  product_id: nil,
96
- # Restricted field limited to select use cases. Lithic will reach out directly if
97
- # this field should be used. Globally unique identifier for the replacement card's
98
- # account. If this field is specified, `replacement_for` must also be specified.
99
- # If `replacement_for` is specified and this field is omitted, the replacement
100
- # card's account will be inferred from the card being replaced.
98
+ # Body param: Restricted field limited to select use cases. Lithic will reach out
99
+ # directly if this field should be used. Globally unique identifier for the
100
+ # replacement card's account. If this field is specified, `replacement_for` must
101
+ # also be specified. If `replacement_for` is specified and this field is omitted,
102
+ # the replacement card's account will be inferred from the card being replaced.
101
103
  replacement_account_token: nil,
102
- # Additional context or information related to the card that this card will
103
- # replace.
104
+ # Body param: Additional context or information related to the card that this card
105
+ # will replace.
104
106
  replacement_comment: nil,
105
- # Globally unique identifier for the card that this card will replace. If the card
106
- # type is `PHYSICAL` it will be replaced by a `PHYSICAL` card. If the card type is
107
- # `VIRTUAL` it will be replaced by a `VIRTUAL` card.
107
+ # Body param: Globally unique identifier for the card that this card will replace.
108
+ # If the card type is `PHYSICAL` it will be replaced by a `PHYSICAL` card. If the
109
+ # card type is `VIRTUAL` it will be replaced by a `VIRTUAL` card.
108
110
  replacement_for: nil,
109
- # Card state substatus values for the card that this card will replace:
111
+ # Body param: Card state substatus values for the card that this card will
112
+ # replace:
110
113
  #
111
114
  # - `LOST` - The physical card is no longer in the cardholder's possession due to
112
115
  # being lost or never received by the cardholder.
@@ -134,9 +137,10 @@ module Lithic
134
137
  # - `OTHER` - The reason for the status does not fall into any of the above
135
138
  # categories. A comment should be provided to specify the reason.
136
139
  replacement_substatus: nil,
140
+ # Body param
137
141
  shipping_address: nil,
138
- # Shipping method for the card. Only applies to cards of type PHYSICAL. Use of
139
- # options besides `STANDARD` require additional permissions.
142
+ # Body param: Shipping method for the card. Only applies to cards of type
143
+ # PHYSICAL. Use of options besides `STANDARD` require additional permissions.
140
144
  #
141
145
  # - `STANDARD` - USPS regular mail or similar international option, with no
142
146
  # tracking
@@ -151,13 +155,13 @@ module Lithic
151
155
  # or similar international option, with tracking
152
156
  # - `BULK_EXPEDITED` - Bulk shipment with Expedited shipping
153
157
  shipping_method: nil,
154
- # Amount (in cents) to limit approved authorizations (e.g. 100000 would be a
155
- # $1,000 limit). Transaction requests above the spend limit will be declined. Note
156
- # that a spend limit of 0 is effectively no limit, and should only be used to
157
- # reset or remove a prior limit. Only a limit of 1 or above will result in
158
- # declined transactions due to checks against the card limit.
158
+ # Body param: Amount (in cents) to limit approved authorizations (e.g. 100000
159
+ # would be a $1,000 limit). Transaction requests above the spend limit will be
160
+ # declined. Note that a spend limit of 0 is effectively no limit, and should only
161
+ # be used to reset or remove a prior limit. Only a limit of 1 or above will result
162
+ # in declined transactions due to checks against the card limit.
159
163
  spend_limit: nil,
160
- # Spend limit duration values:
164
+ # Body param: Spend limit duration values:
161
165
  #
162
166
  # - `ANNUALLY` - Card will authorize transactions up to spend limit for the
163
167
  # trailing year.
@@ -170,13 +174,15 @@ module Lithic
170
174
  # - `TRANSACTION` - Card will authorize multiple transactions if each individual
171
175
  # transaction is under the spend limit.
172
176
  spend_limit_duration: nil,
173
- # Card state values:
177
+ # Body param: Card state values:
174
178
  #
175
179
  # - `OPEN` - Card will approve authorizations (if they match card and account
176
180
  # parameters).
177
181
  # - `PAUSED` - Card will decline authorizations, but can be resumed at a later
178
182
  # time.
179
183
  state: nil,
184
+ # Header param: Idempotency key for the request
185
+ idempotency_key: nil,
180
186
  request_options: {}
181
187
  )
182
188
  end
@@ -32,15 +32,15 @@ module Lithic
32
32
  ).returns(Lithic::FinancialAccount)
33
33
  end
34
34
  def create(
35
- # Body param:
35
+ # Body param
36
36
  nickname:,
37
- # Body param:
37
+ # Body param
38
38
  type:,
39
- # Body param:
39
+ # Body param
40
40
  account_token: nil,
41
- # Body param:
41
+ # Body param
42
42
  is_for_benefit_of: nil,
43
- # Header param:
43
+ # Header param: Idempotency key for the request
44
44
  idempotency_key: nil,
45
45
  request_options: {}
46
46
  )
@@ -96,7 +96,10 @@ module Lithic
96
96
  descriptor: String,
97
97
  pan: String,
98
98
  mcc: String,
99
+ merchant_acceptor_city: String,
100
+ merchant_acceptor_country: String,
99
101
  merchant_acceptor_id: String,
102
+ merchant_acceptor_state: String,
100
103
  merchant_amount: Integer,
101
104
  merchant_currency: String,
102
105
  partial_approval_capable: T::Boolean,
@@ -121,8 +124,14 @@ module Lithic
121
124
  # listed in ISO 18245. Supported merchant category codes can be found
122
125
  # [here](https://docs.lithic.com/docs/transactions#merchant-category-codes-mccs).
123
126
  mcc: nil,
127
+ # Merchant acceptor city
128
+ merchant_acceptor_city: nil,
129
+ # Merchant acceptor country code (ISO 3166-1 alpha-3)
130
+ merchant_acceptor_country: nil,
124
131
  # Unique identifier to identify the payment card acceptor.
125
132
  merchant_acceptor_id: nil,
133
+ # Merchant acceptor state/province (ISO 3166-2 subdivision code)
134
+ merchant_acceptor_state: nil,
126
135
  # Amount of the transaction to be simulated in currency specified in
127
136
  # merchant_currency, including any acquirer fees.
128
137
  merchant_amount: nil,
@@ -216,7 +225,10 @@ module Lithic
216
225
  descriptor: String,
217
226
  pan: String,
218
227
  mcc: String,
228
+ merchant_acceptor_city: String,
229
+ merchant_acceptor_country: String,
219
230
  merchant_acceptor_id: String,
231
+ merchant_acceptor_state: String,
220
232
  request_options: Lithic::RequestOptions::OrHash
221
233
  ).returns(
222
234
  Lithic::Models::TransactionSimulateCreditAuthorizationAdviceResponse
@@ -235,8 +247,14 @@ module Lithic
235
247
  # listed in ISO 18245. Supported merchant category codes can be found
236
248
  # [here](https://docs.lithic.com/docs/transactions#merchant-category-codes-mccs).
237
249
  mcc: nil,
250
+ # Merchant acceptor city
251
+ merchant_acceptor_city: nil,
252
+ # Merchant acceptor country code (ISO 3166-1 alpha-3)
253
+ merchant_acceptor_country: nil,
238
254
  # Unique identifier to identify the payment card acceptor.
239
255
  merchant_acceptor_id: nil,
256
+ # Merchant acceptor state/province (ISO 3166-2 subdivision code)
257
+ merchant_acceptor_state: nil,
240
258
  request_options: {}
241
259
  )
242
260
  end
@@ -8,7 +8,68 @@ module Lithic
8
8
  payload: String,
9
9
  headers: T::Hash[String, String],
10
10
  secret: T.nilable(String)
11
- ).returns(Lithic::ParsedWebhookEvent::Variants)
11
+ ).returns(
12
+ T.any(
13
+ Lithic::AccountHolderCreatedWebhookEvent,
14
+ Lithic::ParsedWebhookEvent::KYBPayload,
15
+ Lithic::ParsedWebhookEvent::KYCPayload,
16
+ Lithic::ParsedWebhookEvent::LegacyPayload,
17
+ Lithic::AccountHolderVerificationWebhookEvent,
18
+ Lithic::AccountHolderDocumentUpdatedWebhookEvent,
19
+ Lithic::CardAuthorizationApprovalRequestWebhookEvent,
20
+ Lithic::TokenizationDecisioningRequestWebhookEvent,
21
+ Lithic::AuthRulesBacktestReportCreatedWebhookEvent,
22
+ Lithic::BalanceUpdatedWebhookEvent,
23
+ Lithic::BookTransferTransactionCreatedWebhookEvent,
24
+ Lithic::BookTransferTransactionUpdatedWebhookEvent,
25
+ Lithic::CardCreatedWebhookEvent,
26
+ Lithic::CardConvertedWebhookEvent,
27
+ Lithic::CardRenewedWebhookEvent,
28
+ Lithic::CardReissuedWebhookEvent,
29
+ Lithic::CardShippedWebhookEvent,
30
+ Lithic::CardUpdatedWebhookEvent,
31
+ Lithic::CardTransactionUpdatedWebhookEvent,
32
+ Lithic::CardTransactionEnhancedDataCreatedWebhookEvent,
33
+ Lithic::CardTransactionEnhancedDataUpdatedWebhookEvent,
34
+ Lithic::DigitalWalletTokenizationApprovalRequestWebhookEvent,
35
+ Lithic::DigitalWalletTokenizationResultWebhookEvent,
36
+ Lithic::DigitalWalletTokenizationTwoFactorAuthenticationCodeWebhookEvent,
37
+ Lithic::DigitalWalletTokenizationTwoFactorAuthenticationCodeSentWebhookEvent,
38
+ Lithic::DigitalWalletTokenizationUpdatedWebhookEvent,
39
+ Lithic::DisputeUpdatedWebhookEvent,
40
+ Lithic::DisputeEvidenceUploadFailedWebhookEvent,
41
+ Lithic::ExternalBankAccountCreatedWebhookEvent,
42
+ Lithic::ExternalBankAccountUpdatedWebhookEvent,
43
+ Lithic::ExternalPaymentCreatedWebhookEvent,
44
+ Lithic::ExternalPaymentUpdatedWebhookEvent,
45
+ Lithic::FinancialAccountCreatedWebhookEvent,
46
+ Lithic::FinancialAccountUpdatedWebhookEvent,
47
+ Lithic::FundingEventCreatedWebhookEvent,
48
+ Lithic::LoanTapeCreatedWebhookEvent,
49
+ Lithic::LoanTapeUpdatedWebhookEvent,
50
+ Lithic::ManagementOperationCreatedWebhookEvent,
51
+ Lithic::ManagementOperationUpdatedWebhookEvent,
52
+ Lithic::InternalTransactionCreatedWebhookEvent,
53
+ Lithic::InternalTransactionUpdatedWebhookEvent,
54
+ Lithic::NetworkTotalCreatedWebhookEvent,
55
+ Lithic::NetworkTotalUpdatedWebhookEvent,
56
+ Lithic::PaymentTransactionCreatedWebhookEvent,
57
+ Lithic::PaymentTransactionUpdatedWebhookEvent,
58
+ Lithic::SettlementReportUpdatedWebhookEvent,
59
+ Lithic::StatementsCreatedWebhookEvent,
60
+ Lithic::ThreeDSAuthenticationCreatedWebhookEvent,
61
+ Lithic::ThreeDSAuthenticationUpdatedWebhookEvent,
62
+ Lithic::ThreeDSAuthenticationChallengeWebhookEvent,
63
+ Lithic::TokenizationApprovalRequestWebhookEvent,
64
+ Lithic::TokenizationResultWebhookEvent,
65
+ Lithic::TokenizationTwoFactorAuthenticationCodeWebhookEvent,
66
+ Lithic::TokenizationTwoFactorAuthenticationCodeSentWebhookEvent,
67
+ Lithic::TokenizationUpdatedWebhookEvent,
68
+ Lithic::ThreeDSAuthenticationApprovalRequestWebhookEvent,
69
+ Lithic::DisputeTransactionCreatedWebhookEvent,
70
+ Lithic::DisputeTransactionUpdatedWebhookEvent
71
+ )
72
+ )
12
73
  end
13
74
  def parse(payload, headers:, secret: nil)
14
75
  end
@@ -14,6 +14,7 @@ module Lithic
14
14
  exemption_type: Lithic::Models::AccountHolder::exemption_type,
15
15
  external_id: String,
16
16
  individual: Lithic::AccountHolder::Individual,
17
+ naics_code: String,
17
18
  nature_of_business: String,
18
19
  phone_number: String,
19
20
  required_documents: ::Array[Lithic::RequiredDocument],
@@ -81,6 +82,10 @@ module Lithic
81
82
  Lithic::AccountHolder::Individual
82
83
  ) -> Lithic::AccountHolder::Individual
83
84
 
85
+ attr_reader naics_code: String?
86
+
87
+ def naics_code=: (String) -> String
88
+
84
89
  attr_reader nature_of_business: String?
85
90
 
86
91
  def nature_of_business=: (String) -> String
@@ -136,6 +141,7 @@ module Lithic
136
141
  ?exemption_type: Lithic::Models::AccountHolder::exemption_type,
137
142
  ?external_id: String,
138
143
  ?individual: Lithic::AccountHolder::Individual,
144
+ ?naics_code: String,
139
145
  ?nature_of_business: String,
140
146
  ?phone_number: String,
141
147
  ?required_documents: ::Array[Lithic::RequiredDocument],
@@ -159,6 +165,7 @@ module Lithic
159
165
  exemption_type: Lithic::Models::AccountHolder::exemption_type,
160
166
  external_id: String,
161
167
  individual: Lithic::AccountHolder::Individual,
168
+ naics_code: String,
162
169
  nature_of_business: String,
163
170
  phone_number: String,
164
171
  required_documents: ::Array[Lithic::RequiredDocument],
@@ -11,6 +11,7 @@ module Lithic
11
11
  beneficial_owner_entities: ::Array[Lithic::AccountHolderCreateParams::BeneficialOwnerEntity],
12
12
  external_id: String,
13
13
  kyb_passed_timestamp: String,
14
+ naics_code: String,
14
15
  website_url: String,
15
16
  individual: Lithic::AccountHolderCreateParams::Individual,
16
17
  kyc_passed_timestamp: String,
@@ -64,6 +65,10 @@ module Lithic
64
65
 
65
66
  def kyb_passed_timestamp=: (String) -> String
66
67
 
68
+ attr_reader naics_code: String?
69
+
70
+ def naics_code=: (String) -> String
71
+
67
72
  attr_reader website_url: String?
68
73
 
69
74
  def website_url=: (String) -> String
@@ -107,6 +112,7 @@ module Lithic
107
112
  ?beneficial_owner_entities: ::Array[Lithic::AccountHolderCreateParams::BeneficialOwnerEntity],
108
113
  ?external_id: String,
109
114
  ?kyb_passed_timestamp: String,
115
+ ?naics_code: String,
110
116
  ?website_url: String,
111
117
  ?kyc_passed_timestamp: String,
112
118
  ?business_account_token: String,
@@ -123,6 +129,7 @@ module Lithic
123
129
  beneficial_owner_entities: ::Array[Lithic::AccountHolderCreateParams::BeneficialOwnerEntity],
124
130
  external_id: String,
125
131
  kyb_passed_timestamp: String,
132
+ naics_code: String,
126
133
  website_url: String,
127
134
  individual: Lithic::AccountHolderCreateParams::Individual,
128
135
  kyc_passed_timestamp: String,
@@ -42,13 +42,14 @@ module Lithic
42
42
  request_options: Lithic::RequestOptions
43
43
  }
44
44
 
45
- type status = :ACCEPTED | :REJECTED
45
+ type status = :ACCEPTED | :REJECTED | :PENDING_REVIEW
46
46
 
47
47
  module Status
48
48
  extend Lithic::Internal::Type::Enum
49
49
 
50
50
  ACCEPTED: :ACCEPTED
51
51
  REJECTED: :REJECTED
52
+ PENDING_REVIEW: :PENDING_REVIEW
52
53
 
53
54
  def self?.values: -> ::Array[Lithic::Models::AccountHolderSimulateEnrollmentReviewParams::status]
54
55
  end
@@ -14,6 +14,7 @@ module Lithic
14
14
  exemption_type: Lithic::Models::AccountHolderSimulateEnrollmentReviewResponse::exemption_type,
15
15
  external_id: String,
16
16
  individual: Lithic::Models::AccountHolderSimulateEnrollmentReviewResponse::Individual,
17
+ naics_code: String,
17
18
  nature_of_business: String,
18
19
  phone_number: String,
19
20
  required_documents: ::Array[Lithic::RequiredDocument],
@@ -83,6 +84,10 @@ module Lithic
83
84
  Lithic::Models::AccountHolderSimulateEnrollmentReviewResponse::Individual
84
85
  ) -> Lithic::Models::AccountHolderSimulateEnrollmentReviewResponse::Individual
85
86
 
87
+ attr_reader naics_code: String?
88
+
89
+ def naics_code=: (String) -> String
90
+
86
91
  attr_reader nature_of_business: String?
87
92
 
88
93
  def nature_of_business=: (String) -> String
@@ -138,6 +143,7 @@ module Lithic
138
143
  ?exemption_type: Lithic::Models::AccountHolderSimulateEnrollmentReviewResponse::exemption_type,
139
144
  ?external_id: String,
140
145
  ?individual: Lithic::Models::AccountHolderSimulateEnrollmentReviewResponse::Individual,
146
+ ?naics_code: String,
141
147
  ?nature_of_business: String,
142
148
  ?phone_number: String,
143
149
  ?required_documents: ::Array[Lithic::RequiredDocument],
@@ -161,6 +167,7 @@ module Lithic
161
167
  exemption_type: Lithic::Models::AccountHolderSimulateEnrollmentReviewResponse::exemption_type,
162
168
  external_id: String,
163
169
  individual: Lithic::Models::AccountHolderSimulateEnrollmentReviewResponse::Individual,
170
+ naics_code: String,
164
171
  nature_of_business: String,
165
172
  phone_number: String,
166
173
  required_documents: ::Array[Lithic::RequiredDocument],
@@ -7,6 +7,7 @@ module Lithic
7
7
  business_entity: Lithic::AccountHolderUpdateParams::BusinessEntity,
8
8
  control_person: Lithic::AccountHolderUpdateParams::ControlPerson,
9
9
  external_id: String,
10
+ naics_code: String,
10
11
  nature_of_business: String,
11
12
  website_url: String,
12
13
  individual: Lithic::AccountHolderUpdateParams::Individual,
@@ -52,6 +53,10 @@ module Lithic
52
53
 
53
54
  def external_id=: (String) -> String
54
55
 
56
+ attr_reader naics_code: String?
57
+
58
+ def naics_code=: (String) -> String
59
+
55
60
  attr_reader nature_of_business: String?
56
61
 
57
62
  def nature_of_business=: (String) -> String
@@ -100,6 +105,7 @@ module Lithic
100
105
  ?business_entity: Lithic::AccountHolderUpdateParams::BusinessEntity,
101
106
  ?control_person: Lithic::AccountHolderUpdateParams::ControlPerson,
102
107
  ?external_id: String,
108
+ ?naics_code: String,
103
109
  ?nature_of_business: String,
104
110
  ?website_url: String,
105
111
  ?individual: Lithic::AccountHolderUpdateParams::Individual,
@@ -119,6 +125,7 @@ module Lithic
119
125
  business_entity: Lithic::AccountHolderUpdateParams::BusinessEntity,
120
126
  control_person: Lithic::AccountHolderUpdateParams::ControlPerson,
121
127
  external_id: String,
128
+ naics_code: String,
122
129
  nature_of_business: String,
123
130
  website_url: String,
124
131
  individual: Lithic::AccountHolderUpdateParams::Individual,
@@ -21,6 +21,7 @@ module Lithic
21
21
  exemption_type: Lithic::Models::AccountHolderUpdateResponse::KYBKYCPatchResponse::exemption_type,
22
22
  external_id: String,
23
23
  individual: Lithic::Models::AccountHolderUpdateResponse::KYBKYCPatchResponse::Individual,
24
+ naics_code: String,
24
25
  nature_of_business: String,
25
26
  phone_number: String,
26
27
  required_documents: ::Array[Lithic::RequiredDocument],
@@ -90,6 +91,10 @@ module Lithic
90
91
  Lithic::Models::AccountHolderUpdateResponse::KYBKYCPatchResponse::Individual
91
92
  ) -> Lithic::Models::AccountHolderUpdateResponse::KYBKYCPatchResponse::Individual
92
93
 
94
+ attr_reader naics_code: String?
95
+
96
+ def naics_code=: (String) -> String
97
+
93
98
  attr_reader nature_of_business: String?
94
99
 
95
100
  def nature_of_business=: (String) -> String
@@ -145,6 +150,7 @@ module Lithic
145
150
  ?exemption_type: Lithic::Models::AccountHolderUpdateResponse::KYBKYCPatchResponse::exemption_type,
146
151
  ?external_id: String,
147
152
  ?individual: Lithic::Models::AccountHolderUpdateResponse::KYBKYCPatchResponse::Individual,
153
+ ?naics_code: String,
148
154
  ?nature_of_business: String,
149
155
  ?phone_number: String,
150
156
  ?required_documents: ::Array[Lithic::RequiredDocument],
@@ -168,6 +174,7 @@ module Lithic
168
174
  exemption_type: Lithic::Models::AccountHolderUpdateResponse::KYBKYCPatchResponse::exemption_type,
169
175
  external_id: String,
170
176
  individual: Lithic::Models::AccountHolderUpdateResponse::KYBKYCPatchResponse::Individual,
177
+ naics_code: String,
171
178
  nature_of_business: String,
172
179
  phone_number: String,
173
180
  required_documents: ::Array[Lithic::RequiredDocument],
@@ -14,6 +14,7 @@ module Lithic
14
14
  update_request: Lithic::AccountHolderUpdatedWebhookEvent::KYBPayload::UpdateRequest,
15
15
  event_type: Lithic::Models::AccountHolderUpdatedWebhookEvent::KYBPayload::event_type,
16
16
  external_id: String,
17
+ naics_code: String,
17
18
  nature_of_business: String,
18
19
  website_url: String
19
20
  }
@@ -33,6 +34,10 @@ module Lithic
33
34
 
34
35
  def external_id=: (String) -> String
35
36
 
37
+ attr_reader naics_code: String?
38
+
39
+ def naics_code=: (String) -> String
40
+
36
41
  attr_reader nature_of_business: String?
37
42
 
38
43
  def nature_of_business=: (String) -> String
@@ -46,6 +51,7 @@ module Lithic
46
51
  update_request: Lithic::AccountHolderUpdatedWebhookEvent::KYBPayload::UpdateRequest,
47
52
  ?event_type: Lithic::Models::AccountHolderUpdatedWebhookEvent::KYBPayload::event_type,
48
53
  ?external_id: String,
54
+ ?naics_code: String,
49
55
  ?nature_of_business: String,
50
56
  ?website_url: String
51
57
  ) -> void
@@ -55,6 +61,7 @@ module Lithic
55
61
  update_request: Lithic::AccountHolderUpdatedWebhookEvent::KYBPayload::UpdateRequest,
56
62
  event_type: Lithic::Models::AccountHolderUpdatedWebhookEvent::KYBPayload::event_type,
57
63
  external_id: String,
64
+ naics_code: String,
58
65
  nature_of_business: String,
59
66
  website_url: String
60
67
  }