lithic 0.2.0 → 0.4.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 (135) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +78 -0
  3. data/README.md +1 -1
  4. data/lib/lithic/client.rb +5 -10
  5. data/lib/lithic/internal/transport/pooled_net_requester.rb +12 -10
  6. data/lib/lithic/internal/util.rb +7 -2
  7. data/lib/lithic/models/auth_rules/conditional_tokenization_action_parameters.rb +5 -0
  8. data/lib/lithic/models/auth_rules/velocity_limit_params.rb +21 -21
  9. data/lib/lithic/models/book_transfer_retry_params.rb +26 -0
  10. data/lib/lithic/models/{asa_request_webhook_event.rb → card_authorization_approval_request_webhook_event.rb} +151 -129
  11. data/lib/lithic/models/card_create_params.rb +12 -5
  12. data/lib/lithic/models/card_updated_webhook_event.rb +40 -0
  13. data/lib/lithic/models/card_web_provision_response.rb +5 -5
  14. data/lib/lithic/models/event.rb +3 -0
  15. data/lib/lithic/models/event_list_params.rb +2 -0
  16. data/lib/lithic/models/event_subscription.rb +2 -0
  17. data/lib/lithic/models/events/subscription_create_params.rb +2 -0
  18. data/lib/lithic/models/events/subscription_send_simulated_example_params.rb +1 -0
  19. data/lib/lithic/models/events/subscription_update_params.rb +2 -0
  20. data/lib/lithic/models/external_payment_create_params.rb +15 -1
  21. data/lib/lithic/models/financial_account.rb +33 -25
  22. data/lib/lithic/models/financial_account_update_status_params.rb +9 -1
  23. data/lib/lithic/models/financial_accounts/loan_tape.rb +52 -3
  24. data/lib/lithic/models/financial_transaction.rb +4 -2
  25. data/lib/lithic/models/management_operation_create_params.rb +6 -1
  26. data/lib/lithic/models/non_pci_card.rb +8 -10
  27. data/lib/lithic/models/parsed_webhook_event.rb +5 -4
  28. data/lib/lithic/models/payment.rb +10 -1
  29. data/lib/lithic/models/payment_create_params.rb +1 -1
  30. data/lib/lithic/models/three_ds_authentication_approval_request_webhook_event.rb +17 -0
  31. data/lib/lithic/models/transaction.rb +12 -1
  32. data/lib/lithic/models/transaction_simulate_authorization_params.rb +25 -1
  33. data/lib/lithic/models/transaction_simulate_credit_authorization_advice_params.rb +25 -1
  34. data/lib/lithic/models/transfer_limit_list_params.rb +22 -0
  35. data/lib/lithic/models/transfer_limits_response.rb +274 -0
  36. data/lib/lithic/models.rb +14 -6
  37. data/lib/lithic/resources/book_transfers.rb +27 -0
  38. data/lib/lithic/resources/cards.rb +33 -27
  39. data/lib/lithic/resources/external_payments.rb +13 -1
  40. data/lib/lithic/resources/financial_accounts.rb +8 -6
  41. data/lib/lithic/resources/management_operations.rb +4 -1
  42. data/lib/lithic/resources/transactions.rb +14 -2
  43. data/lib/lithic/resources/transfer_limits.rb +37 -0
  44. data/lib/lithic/resources/webhooks.rb +3 -2
  45. data/lib/lithic/version.rb +1 -1
  46. data/lib/lithic.rb +7 -7
  47. data/rbi/lithic/client.rbi +3 -3
  48. data/rbi/lithic/models/auth_rules/conditional_tokenization_action_parameters.rbi +11 -0
  49. data/rbi/lithic/models/auth_rules/velocity_limit_params.rbi +47 -45
  50. data/rbi/lithic/models/book_transfer_retry_params.rbi +42 -0
  51. data/rbi/lithic/models/{asa_request_webhook_event.rbi → card_authorization_approval_request_webhook_event.rbi} +394 -256
  52. data/rbi/lithic/models/card_create_params.rbi +15 -6
  53. data/rbi/lithic/models/card_updated_webhook_event.rbi +61 -0
  54. data/rbi/lithic/models/card_web_provision_response.rbi +5 -10
  55. data/rbi/lithic/models/event.rbi +5 -0
  56. data/rbi/lithic/models/event_list_params.rbi +6 -0
  57. data/rbi/lithic/models/event_subscription.rbi +6 -0
  58. data/rbi/lithic/models/events/subscription_create_params.rbi +6 -0
  59. data/rbi/lithic/models/events/subscription_send_simulated_example_params.rbi +5 -0
  60. data/rbi/lithic/models/events/subscription_update_params.rbi +6 -0
  61. data/rbi/lithic/models/external_payment_create_params.rbi +4 -0
  62. data/rbi/lithic/models/financial_account.rbi +62 -54
  63. data/rbi/lithic/models/financial_account_update_status_params.rbi +11 -0
  64. data/rbi/lithic/models/financial_accounts/loan_tape.rbi +93 -4
  65. data/rbi/lithic/models/financial_transaction.rbi +8 -4
  66. data/rbi/lithic/models/management_operation_create_params.rbi +4 -0
  67. data/rbi/lithic/models/non_pci_card.rbi +12 -15
  68. data/rbi/lithic/models/parsed_webhook_event.rbi +3 -2
  69. data/rbi/lithic/models/payment.rbi +16 -3
  70. data/rbi/lithic/models/three_ds_authentication_approval_request_webhook_event.rbi +27 -0
  71. data/rbi/lithic/models/transaction.rbi +20 -0
  72. data/rbi/lithic/models/transaction_simulate_authorization_params.rbi +33 -0
  73. data/rbi/lithic/models/transaction_simulate_credit_authorization_advice_params.rbi +33 -0
  74. data/rbi/lithic/models/transfer_limit_list_params.rbi +43 -0
  75. data/rbi/lithic/models/transfer_limits_response.rbi +604 -0
  76. data/rbi/lithic/models.rbi +14 -6
  77. data/rbi/lithic/resources/book_transfers.rbi +18 -0
  78. data/rbi/lithic/resources/cards.rbi +52 -49
  79. data/rbi/lithic/resources/external_payments.rbi +2 -0
  80. data/rbi/lithic/resources/financial_accounts.rbi +8 -5
  81. data/rbi/lithic/resources/management_operations.rbi +2 -0
  82. data/rbi/lithic/resources/transactions.rbi +18 -0
  83. data/rbi/lithic/resources/transfer_limits.rbi +28 -0
  84. data/rbi/lithic/resources/webhooks.rbi +4 -65
  85. data/sig/lithic/client.rbs +2 -2
  86. data/sig/lithic/models/auth_rules/conditional_tokenization_action_parameters.rbs +2 -0
  87. data/sig/lithic/models/auth_rules/velocity_limit_params.rbs +20 -16
  88. data/sig/lithic/models/book_transfer_retry_params.rbs +23 -0
  89. data/sig/lithic/models/{asa_request_webhook_event.rbs → card_authorization_approval_request_webhook_event.rbs} +161 -156
  90. data/sig/lithic/models/card_create_params.rbs +8 -1
  91. data/sig/lithic/models/card_updated_webhook_event.rbs +35 -0
  92. data/sig/lithic/models/card_web_provision_response.rbs +4 -10
  93. data/sig/lithic/models/event.rbs +2 -0
  94. data/sig/lithic/models/event_list_params.rbs +2 -0
  95. data/sig/lithic/models/event_subscription.rbs +2 -0
  96. data/sig/lithic/models/events/subscription_create_params.rbs +2 -0
  97. data/sig/lithic/models/events/subscription_send_simulated_example_params.rbs +2 -0
  98. data/sig/lithic/models/events/subscription_update_params.rbs +2 -0
  99. data/sig/lithic/models/financial_account.rbs +32 -27
  100. data/sig/lithic/models/financial_account_update_status_params.rbs +8 -1
  101. data/sig/lithic/models/financial_accounts/loan_tape.rbs +46 -4
  102. data/sig/lithic/models/parsed_webhook_event.rbs +3 -2
  103. data/sig/lithic/models/payment.rbs +10 -3
  104. data/sig/lithic/models/three_ds_authentication_approval_request_webhook_event.rbs +22 -0
  105. data/sig/lithic/models/transaction.rbs +9 -0
  106. data/sig/lithic/models/transaction_simulate_authorization_params.rbs +21 -0
  107. data/sig/lithic/models/transaction_simulate_credit_authorization_advice_params.rbs +22 -1
  108. data/sig/lithic/models/transfer_limit_list_params.rbs +22 -0
  109. data/sig/lithic/models/transfer_limits_response.rbs +232 -0
  110. data/sig/lithic/models.rbs +12 -6
  111. data/sig/lithic/resources/book_transfers.rbs +6 -0
  112. data/sig/lithic/resources/cards.rbs +1 -2
  113. data/sig/lithic/resources/financial_accounts.rbs +1 -0
  114. data/sig/lithic/resources/transactions.rbs +6 -0
  115. data/sig/lithic/resources/transfer_limits.rbs +12 -0
  116. data/sig/lithic/resources/webhooks.rbs +4 -61
  117. metadata +37 -23
  118. data/lib/lithic/models/aggregate_balance.rb +0 -113
  119. data/lib/lithic/models/aggregate_balance_list_params.rb +0 -35
  120. data/lib/lithic/models/cards/aggregate_balance_list_params.rb +0 -32
  121. data/lib/lithic/models/cards/aggregate_balance_list_response.rb +0 -92
  122. data/lib/lithic/resources/aggregate_balances.rb +0 -38
  123. data/lib/lithic/resources/cards/aggregate_balances.rb +0 -41
  124. data/rbi/lithic/models/aggregate_balance.rbi +0 -164
  125. data/rbi/lithic/models/aggregate_balance_list_params.rbi +0 -104
  126. data/rbi/lithic/models/cards/aggregate_balance_list_params.rbi +0 -62
  127. data/rbi/lithic/models/cards/aggregate_balance_list_response.rbi +0 -115
  128. data/rbi/lithic/resources/aggregate_balances.rbi +0 -28
  129. data/rbi/lithic/resources/cards/aggregate_balances.rbi +0 -35
  130. data/sig/lithic/models/aggregate_balance.rbs +0 -78
  131. data/sig/lithic/models/aggregate_balance_list_params.rbs +0 -43
  132. data/sig/lithic/models/cards/aggregate_balance_list_params.rbs +0 -34
  133. data/sig/lithic/models/cards/aggregate_balance_list_response.rbs +0 -62
  134. data/sig/lithic/resources/aggregate_balances.rbs +0 -12
  135. data/sig/lithic/resources/cards/aggregate_balances.rbs +0 -15
@@ -3,9 +3,6 @@
3
3
  module Lithic
4
4
  module Resources
5
5
  class Cards
6
- sig { returns(Lithic::Resources::Cards::AggregateBalances) }
7
- attr_reader :aggregate_balances
8
-
9
6
  sig { returns(Lithic::Resources::Cards::Balances) }
10
7
  attr_reader :balances
11
8
 
@@ -37,11 +34,12 @@ module Lithic
37
34
  spend_limit: Integer,
38
35
  spend_limit_duration: Lithic::SpendLimitDuration::OrSymbol,
39
36
  state: Lithic::CardCreateParams::State::OrSymbol,
37
+ idempotency_key: String,
40
38
  request_options: Lithic::RequestOptions::OrHash
41
39
  ).returns(Lithic::Card)
42
40
  end
43
41
  def create(
44
- # Card types:
42
+ # Body param: Card types:
45
43
  #
46
44
  # - `VIRTUAL` - Card will authorize at any merchant and can be added to a digital
47
45
  # wallet like Apple Pay or Google Pay (if the card program is digital
@@ -51,65 +49,67 @@ module Lithic
51
49
  # Reach out at [lithic.com/contact](https://lithic.com/contact) for more
52
50
  # information.
53
51
  # - `SINGLE_USE` - Card is closed upon first successful authorization.
54
- # - `MERCHANT_LOCKED` - _[Deprecated]_ Card is locked to the first merchant that
55
- # successfully authorizes the card.
52
+ # - `MERCHANT_LOCKED` - Card is locked to the first merchant that successfully
53
+ # authorizes the card.
56
54
  # - `UNLOCKED` - _[Deprecated]_ Similar behavior to VIRTUAL cards, please use
57
55
  # VIRTUAL instead.
58
56
  # - `DIGITAL_WALLET` - _[Deprecated]_ Similar behavior to VIRTUAL cards, please
59
57
  # use VIRTUAL instead.
60
58
  type:,
61
- # Globally unique identifier for the account that the card will be associated
62
- # 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
63
61
  # [/account_holders endpoint](https://docs.lithic.com/docs/account-holders-kyc).
64
62
  # See [Managing Your Program](doc:managing-your-program) for more information.
65
63
  account_token: nil,
66
- # Globally unique identifier for an existing bulk order to associate this card
67
- # with. When specified, the card will be added to the bulk order for batch
68
- # 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
69
67
  bulk_order_token: nil,
70
- # For card programs with more than one BIN range. This must be configured with
71
- # Lithic before use. Identifies the card program/BIN range under which to create
72
- # the card. If omitted, will utilize the program's default `card_program_token`.
73
- # 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
74
72
  # 00000000-0000-0000-2000-000000000000 to test creating cards on specific card
75
73
  # programs.
76
74
  card_program_token: nil,
75
+ # Body param
77
76
  carrier: nil,
78
- # Specifies the digital card art to be displayed in the user’s digital wallet
79
- # after tokenization. This artwork must be approved by Mastercard and configured
80
- # 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
81
80
  # [Flexible Card Art Guide](https://docs.lithic.com/docs/about-digital-wallets#flexible-card-art).
82
81
  digital_card_art_token: nil,
83
- # Two digit (MM) expiry month. If neither `exp_month` nor `exp_year` is provided,
84
- # 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.
85
84
  exp_month: nil,
86
- # Four digit (yyyy) expiry year. If neither `exp_month` nor `exp_year` is
87
- # 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.
88
87
  exp_year: nil,
89
- # Friendly name to identify the card.
88
+ # Body param: Friendly name to identify the card.
90
89
  memo: nil,
91
- # Encrypted PIN block (in base64). Applies to cards of type `PHYSICAL` and
92
- # `VIRTUAL`. See
90
+ # Body param: Encrypted PIN block (in base64). Applies to cards of type `PHYSICAL`
91
+ # and `VIRTUAL`. See
93
92
  # [Encrypted PIN Block](https://docs.lithic.com/docs/cards#encrypted-pin-block).
94
93
  pin: nil,
95
- # Only applicable to cards of type `PHYSICAL`. This must be configured with Lithic
96
- # before use. Specifies the configuration (i.e., physical card art) that the card
97
- # 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.
98
97
  product_id: nil,
99
- # Restricted field limited to select use cases. Lithic will reach out directly if
100
- # this field should be used. Globally unique identifier for the replacement card's
101
- # account. If this field is specified, `replacement_for` must also be specified.
102
- # If `replacement_for` is specified and this field is omitted, the replacement
103
- # 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.
104
103
  replacement_account_token: nil,
105
- # Additional context or information related to the card that this card will
106
- # replace.
104
+ # Body param: Additional context or information related to the card that this card
105
+ # will replace.
107
106
  replacement_comment: nil,
108
- # Globally unique identifier for the card that this card will replace. If the card
109
- # type is `PHYSICAL` it will be replaced by a `PHYSICAL` card. If the card type is
110
- # `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.
111
110
  replacement_for: nil,
112
- # 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:
113
113
  #
114
114
  # - `LOST` - The physical card is no longer in the cardholder's possession due to
115
115
  # being lost or never received by the cardholder.
@@ -137,9 +137,10 @@ module Lithic
137
137
  # - `OTHER` - The reason for the status does not fall into any of the above
138
138
  # categories. A comment should be provided to specify the reason.
139
139
  replacement_substatus: nil,
140
+ # Body param
140
141
  shipping_address: nil,
141
- # Shipping method for the card. Only applies to cards of type PHYSICAL. Use of
142
- # 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.
143
144
  #
144
145
  # - `STANDARD` - USPS regular mail or similar international option, with no
145
146
  # tracking
@@ -154,13 +155,13 @@ module Lithic
154
155
  # or similar international option, with tracking
155
156
  # - `BULK_EXPEDITED` - Bulk shipment with Expedited shipping
156
157
  shipping_method: nil,
157
- # Amount (in cents) to limit approved authorizations (e.g. 100000 would be a
158
- # $1,000 limit). Transaction requests above the spend limit will be declined. Note
159
- # that a spend limit of 0 is effectively no limit, and should only be used to
160
- # reset or remove a prior limit. Only a limit of 1 or above will result in
161
- # 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.
162
163
  spend_limit: nil,
163
- # Spend limit duration values:
164
+ # Body param: Spend limit duration values:
164
165
  #
165
166
  # - `ANNUALLY` - Card will authorize transactions up to spend limit for the
166
167
  # trailing year.
@@ -173,13 +174,15 @@ module Lithic
173
174
  # - `TRANSACTION` - Card will authorize multiple transactions if each individual
174
175
  # transaction is under the spend limit.
175
176
  spend_limit_duration: nil,
176
- # Card state values:
177
+ # Body param: Card state values:
177
178
  #
178
179
  # - `OPEN` - Card will approve authorizations (if they match card and account
179
180
  # parameters).
180
181
  # - `PAUSED` - Card will decline authorizations, but can be resumed at a later
181
182
  # time.
182
183
  state: nil,
184
+ # Header param: Idempotency key for the request
185
+ idempotency_key: nil,
183
186
  request_options: {}
184
187
  )
185
188
  end
@@ -611,7 +614,7 @@ module Lithic
611
614
  end
612
615
 
613
616
  # Allow your cardholders to directly add payment cards to the device's digital
614
- # wallet from a browser on the web. Currently only suported for Apple Pay.
617
+ # wallet from a browser on the web.
615
618
  #
616
619
  # This requires some additional setup and configuration. Please
617
620
  # [Contact Us](https://lithic.com/contact) or your Customer Success representative
@@ -26,6 +26,8 @@ module Lithic
26
26
  effective_date:,
27
27
  financial_account_token:,
28
28
  payment_type:,
29
+ # Customer-provided token that will serve as an idempotency token. This token will
30
+ # become the transaction token.
29
31
  token: nil,
30
32
  memo: nil,
31
33
  progress_to: nil,
@@ -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
  )
@@ -113,6 +113,7 @@ module Lithic
113
113
  T.nilable(
114
114
  Lithic::FinancialAccountUpdateStatusParams::Substatus::OrSymbol
115
115
  ),
116
+ user_defined_status: String,
116
117
  request_options: Lithic::RequestOptions::OrHash
117
118
  ).returns(Lithic::FinancialAccount)
118
119
  end
@@ -123,6 +124,8 @@ module Lithic
123
124
  status:,
124
125
  # Substatus for the financial account
125
126
  substatus:,
127
+ # User-defined status for the financial account
128
+ user_defined_status: nil,
126
129
  request_options: {}
127
130
  )
128
131
  end
@@ -30,6 +30,8 @@ module Lithic
30
30
  effective_date:,
31
31
  event_type:,
32
32
  financial_account_token:,
33
+ # Customer-provided token that will serve as an idempotency token. This token will
34
+ # become the transaction token.
33
35
  token: nil,
34
36
  memo: nil,
35
37
  # What to do if the financial account is closed when posting an operation
@@ -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
@@ -0,0 +1,28 @@
1
+ # typed: strong
2
+
3
+ module Lithic
4
+ module Resources
5
+ class TransferLimits
6
+ # Get transfer limits for a specified date
7
+ sig do
8
+ params(
9
+ date: Date,
10
+ request_options: Lithic::RequestOptions::OrHash
11
+ ).returns(
12
+ Lithic::Internal::SinglePage[Lithic::TransferLimitsResponse::Data]
13
+ )
14
+ end
15
+ def list(
16
+ # Date for which to retrieve transfer limits (ISO 8601 format)
17
+ date: nil,
18
+ request_options: {}
19
+ )
20
+ end
21
+
22
+ # @api private
23
+ sig { params(client: Lithic::Client).returns(T.attached_class) }
24
+ def self.new(client:)
25
+ end
26
+ end
27
+ end
28
+ end
@@ -16,7 +16,7 @@ module Lithic
16
16
  Lithic::ParsedWebhookEvent::LegacyPayload,
17
17
  Lithic::AccountHolderVerificationWebhookEvent,
18
18
  Lithic::AccountHolderDocumentUpdatedWebhookEvent,
19
- Lithic::AsaRequestWebhookEvent,
19
+ Lithic::CardAuthorizationApprovalRequestWebhookEvent,
20
20
  Lithic::TokenizationDecisioningRequestWebhookEvent,
21
21
  Lithic::AuthRulesBacktestReportCreatedWebhookEvent,
22
22
  Lithic::BalanceUpdatedWebhookEvent,
@@ -27,6 +27,7 @@ module Lithic
27
27
  Lithic::CardRenewedWebhookEvent,
28
28
  Lithic::CardReissuedWebhookEvent,
29
29
  Lithic::CardShippedWebhookEvent,
30
+ Lithic::CardUpdatedWebhookEvent,
30
31
  Lithic::CardTransactionUpdatedWebhookEvent,
31
32
  Lithic::CardTransactionEnhancedDataCreatedWebhookEvent,
32
33
  Lithic::CardTransactionEnhancedDataUpdatedWebhookEvent,
@@ -64,7 +65,7 @@ module Lithic
64
65
  Lithic::TokenizationTwoFactorAuthenticationCodeWebhookEvent,
65
66
  Lithic::TokenizationTwoFactorAuthenticationCodeSentWebhookEvent,
66
67
  Lithic::TokenizationUpdatedWebhookEvent,
67
- Lithic::ThreeDSAuthentication,
68
+ Lithic::ThreeDSAuthenticationApprovalRequestWebhookEvent,
68
69
  Lithic::DisputeTransactionCreatedWebhookEvent,
69
70
  Lithic::DisputeTransactionUpdatedWebhookEvent
70
71
  )
@@ -73,69 +74,7 @@ module Lithic
73
74
  def parse(payload, headers:, secret: nil)
74
75
  end
75
76
 
76
- sig do
77
- params(payload: String).returns(
78
- T.any(
79
- Lithic::AccountHolderCreatedWebhookEvent,
80
- Lithic::ParsedWebhookEvent::KYBPayload,
81
- Lithic::ParsedWebhookEvent::KYCPayload,
82
- Lithic::ParsedWebhookEvent::LegacyPayload,
83
- Lithic::AccountHolderVerificationWebhookEvent,
84
- Lithic::AccountHolderDocumentUpdatedWebhookEvent,
85
- Lithic::AsaRequestWebhookEvent,
86
- Lithic::TokenizationDecisioningRequestWebhookEvent,
87
- Lithic::AuthRulesBacktestReportCreatedWebhookEvent,
88
- Lithic::BalanceUpdatedWebhookEvent,
89
- Lithic::BookTransferTransactionCreatedWebhookEvent,
90
- Lithic::BookTransferTransactionUpdatedWebhookEvent,
91
- Lithic::CardCreatedWebhookEvent,
92
- Lithic::CardConvertedWebhookEvent,
93
- Lithic::CardRenewedWebhookEvent,
94
- Lithic::CardReissuedWebhookEvent,
95
- Lithic::CardShippedWebhookEvent,
96
- Lithic::CardTransactionUpdatedWebhookEvent,
97
- Lithic::CardTransactionEnhancedDataCreatedWebhookEvent,
98
- Lithic::CardTransactionEnhancedDataUpdatedWebhookEvent,
99
- Lithic::DigitalWalletTokenizationApprovalRequestWebhookEvent,
100
- Lithic::DigitalWalletTokenizationResultWebhookEvent,
101
- Lithic::DigitalWalletTokenizationTwoFactorAuthenticationCodeWebhookEvent,
102
- Lithic::DigitalWalletTokenizationTwoFactorAuthenticationCodeSentWebhookEvent,
103
- Lithic::DigitalWalletTokenizationUpdatedWebhookEvent,
104
- Lithic::DisputeUpdatedWebhookEvent,
105
- Lithic::DisputeEvidenceUploadFailedWebhookEvent,
106
- Lithic::ExternalBankAccountCreatedWebhookEvent,
107
- Lithic::ExternalBankAccountUpdatedWebhookEvent,
108
- Lithic::ExternalPaymentCreatedWebhookEvent,
109
- Lithic::ExternalPaymentUpdatedWebhookEvent,
110
- Lithic::FinancialAccountCreatedWebhookEvent,
111
- Lithic::FinancialAccountUpdatedWebhookEvent,
112
- Lithic::FundingEventCreatedWebhookEvent,
113
- Lithic::LoanTapeCreatedWebhookEvent,
114
- Lithic::LoanTapeUpdatedWebhookEvent,
115
- Lithic::ManagementOperationCreatedWebhookEvent,
116
- Lithic::ManagementOperationUpdatedWebhookEvent,
117
- Lithic::InternalTransactionCreatedWebhookEvent,
118
- Lithic::InternalTransactionUpdatedWebhookEvent,
119
- Lithic::NetworkTotalCreatedWebhookEvent,
120
- Lithic::NetworkTotalUpdatedWebhookEvent,
121
- Lithic::PaymentTransactionCreatedWebhookEvent,
122
- Lithic::PaymentTransactionUpdatedWebhookEvent,
123
- Lithic::SettlementReportUpdatedWebhookEvent,
124
- Lithic::StatementsCreatedWebhookEvent,
125
- Lithic::ThreeDSAuthenticationCreatedWebhookEvent,
126
- Lithic::ThreeDSAuthenticationUpdatedWebhookEvent,
127
- Lithic::ThreeDSAuthenticationChallengeWebhookEvent,
128
- Lithic::TokenizationApprovalRequestWebhookEvent,
129
- Lithic::TokenizationResultWebhookEvent,
130
- Lithic::TokenizationTwoFactorAuthenticationCodeWebhookEvent,
131
- Lithic::TokenizationTwoFactorAuthenticationCodeSentWebhookEvent,
132
- Lithic::TokenizationUpdatedWebhookEvent,
133
- Lithic::ThreeDSAuthentication,
134
- Lithic::DisputeTransactionCreatedWebhookEvent,
135
- Lithic::DisputeTransactionUpdatedWebhookEvent
136
- )
137
- )
138
- end
77
+ sig { params(payload: String).returns(Lithic::ParsedWebhookEvent::Variants) }
139
78
  def parse_unsafe(payload)
140
79
  end
141
80
 
@@ -33,8 +33,6 @@ module Lithic
33
33
 
34
34
  attr_reader balances: Lithic::Resources::Balances
35
35
 
36
- attr_reader aggregate_balances: Lithic::Resources::AggregateBalances
37
-
38
36
  attr_reader disputes: Lithic::Resources::Disputes
39
37
 
40
38
  attr_reader disputes_v2: Lithic::Resources::DisputesV2
@@ -79,6 +77,8 @@ module Lithic
79
77
 
80
78
  attr_reader account_activity: Lithic::Resources::AccountActivity
81
79
 
80
+ attr_reader transfer_limits: Lithic::Resources::TransferLimits
81
+
82
82
  attr_reader webhooks: Lithic::Resources::Webhooks
83
83
 
84
84
  def api_status: (
@@ -215,6 +215,7 @@ module Lithic
215
215
  | :WALLET_RECOMMENDATION_REASONS
216
216
  | :TOKEN_REQUESTOR_ID
217
217
  | :WALLET_TOKEN_STATUS
218
+ | :CARD_STATE
218
219
 
219
220
  module Attribute
220
221
  extend Lithic::Internal::Type::Enum
@@ -229,6 +230,7 @@ module Lithic
229
230
  WALLET_RECOMMENDATION_REASONS: :WALLET_RECOMMENDATION_REASONS
230
231
  TOKEN_REQUESTOR_ID: :TOKEN_REQUESTOR_ID
231
232
  WALLET_TOKEN_STATUS: :WALLET_TOKEN_STATUS
233
+ CARD_STATE: :CARD_STATE
232
234
 
233
235
  def self?.values: -> ::Array[Lithic::Models::AuthRules::ConditionalTokenizationActionParameters::Condition::attribute]
234
236
  end
@@ -3,40 +3,55 @@ module Lithic
3
3
  module AuthRules
4
4
  type velocity_limit_params =
5
5
  {
6
- filters: Lithic::AuthRules::VelocityLimitParams::Filters,
7
6
  period: Lithic::Models::AuthRules::velocity_limit_period,
8
7
  scope: Lithic::Models::AuthRules::VelocityLimitParams::scope,
8
+ filters: Lithic::AuthRules::VelocityLimitParams::Filters,
9
9
  limit_amount: Integer?,
10
10
  limit_count: Integer?
11
11
  }
12
12
 
13
13
  class VelocityLimitParams < Lithic::Internal::Type::BaseModel
14
- attr_accessor filters: Lithic::AuthRules::VelocityLimitParams::Filters
15
-
16
14
  attr_accessor period: Lithic::Models::AuthRules::velocity_limit_period
17
15
 
18
16
  attr_accessor scope: Lithic::Models::AuthRules::VelocityLimitParams::scope
19
17
 
18
+ attr_reader filters: Lithic::AuthRules::VelocityLimitParams::Filters?
19
+
20
+ def filters=: (
21
+ Lithic::AuthRules::VelocityLimitParams::Filters
22
+ ) -> Lithic::AuthRules::VelocityLimitParams::Filters
23
+
20
24
  attr_accessor limit_amount: Integer?
21
25
 
22
26
  attr_accessor limit_count: Integer?
23
27
 
24
28
  def initialize: (
25
- filters: Lithic::AuthRules::VelocityLimitParams::Filters,
26
29
  period: Lithic::Models::AuthRules::velocity_limit_period,
27
30
  scope: Lithic::Models::AuthRules::VelocityLimitParams::scope,
31
+ ?filters: Lithic::AuthRules::VelocityLimitParams::Filters,
28
32
  ?limit_amount: Integer?,
29
33
  ?limit_count: Integer?
30
34
  ) -> void
31
35
 
32
36
  def to_hash: -> {
33
- filters: Lithic::AuthRules::VelocityLimitParams::Filters,
34
37
  period: Lithic::Models::AuthRules::velocity_limit_period,
35
38
  scope: Lithic::Models::AuthRules::VelocityLimitParams::scope,
39
+ filters: Lithic::AuthRules::VelocityLimitParams::Filters,
36
40
  limit_amount: Integer?,
37
41
  limit_count: Integer?
38
42
  }
39
43
 
44
+ type scope = :CARD | :ACCOUNT
45
+
46
+ module Scope
47
+ extend Lithic::Internal::Type::Enum
48
+
49
+ CARD: :CARD
50
+ ACCOUNT: :ACCOUNT
51
+
52
+ def self?.values: -> ::Array[Lithic::Models::AuthRules::VelocityLimitParams::scope]
53
+ end
54
+
40
55
  type filters =
41
56
  {
42
57
  exclude_countries: ::Array[String]?,
@@ -112,17 +127,6 @@ module Lithic
112
127
  def self?.values: -> ::Array[Lithic::Models::AuthRules::VelocityLimitParams::Filters::include_pan_entry_mode]
113
128
  end
114
129
  end
115
-
116
- type scope = :CARD | :ACCOUNT
117
-
118
- module Scope
119
- extend Lithic::Internal::Type::Enum
120
-
121
- CARD: :CARD
122
- ACCOUNT: :ACCOUNT
123
-
124
- def self?.values: -> ::Array[Lithic::Models::AuthRules::VelocityLimitParams::scope]
125
- end
126
130
  end
127
131
  end
128
132
  end
@@ -0,0 +1,23 @@
1
+ module Lithic
2
+ module Models
3
+ type book_transfer_retry_params =
4
+ { retry_token: String } & Lithic::Internal::Type::request_parameters
5
+
6
+ class BookTransferRetryParams < Lithic::Internal::Type::BaseModel
7
+ extend Lithic::Internal::Type::RequestParameters::Converter
8
+ include Lithic::Internal::Type::RequestParameters
9
+
10
+ attr_accessor retry_token: String
11
+
12
+ def initialize: (
13
+ retry_token: String,
14
+ ?request_options: Lithic::request_opts
15
+ ) -> void
16
+
17
+ def to_hash: -> {
18
+ retry_token: String,
19
+ request_options: Lithic::RequestOptions
20
+ }
21
+ end
22
+ end
23
+ end