lithic 0.9.0 → 0.10.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 (32) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +29 -0
  3. data/README.md +1 -1
  4. data/lib/lithic/models/account_holder_create_params.rb +2 -1
  5. data/lib/lithic/models/account_holder_update_params.rb +2 -1
  6. data/lib/lithic/models/account_holder_updated_webhook_event.rb +2 -1
  7. data/lib/lithic/models/auth_rules/conditional_authorization_action_parameters.rb +26 -0
  8. data/lib/lithic/models/auth_rules/rule_feature.rb +1 -1
  9. data/lib/lithic/models/card_authorization_approval_request_webhook_event.rb +95 -4
  10. data/lib/lithic/models/carrier.rb +7 -2
  11. data/lib/lithic/models/kyb.rb +2 -1
  12. data/lib/lithic/models/parsed_webhook_event.rb +2 -1
  13. data/lib/lithic/models/payment.rb +14 -1
  14. data/lib/lithic/models/transaction.rb +93 -4
  15. data/lib/lithic/version.rb +1 -1
  16. data/lib/lithic.rb +1 -1
  17. data/rbi/lithic/models/account_holder_create_params.rbi +4 -2
  18. data/rbi/lithic/models/account_holder_update_params.rbi +4 -2
  19. data/rbi/lithic/models/account_holder_updated_webhook_event.rbi +4 -2
  20. data/rbi/lithic/models/auth_rules/conditional_authorization_action_parameters.rbi +53 -0
  21. data/rbi/lithic/models/auth_rules/rule_feature.rbi +1 -1
  22. data/rbi/lithic/models/card_authorization_approval_request_webhook_event.rbi +171 -4
  23. data/rbi/lithic/models/carrier.rbi +6 -2
  24. data/rbi/lithic/models/kyb.rbi +4 -2
  25. data/rbi/lithic/models/parsed_webhook_event.rbi +4 -2
  26. data/rbi/lithic/models/payment.rbi +10 -0
  27. data/rbi/lithic/models/transaction.rbi +146 -4
  28. data/sig/lithic/models/auth_rules/conditional_authorization_action_parameters.rbs +8 -0
  29. data/sig/lithic/models/card_authorization_approval_request_webhook_event.rbs +75 -4
  30. data/sig/lithic/models/payment.rbs +5 -0
  31. data/sig/lithic/models/transaction.rbs +75 -4
  32. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bdfdaef84ba463bcef004c9ee56dffec28197c5be9c0ef5c0afc4fe5f5ff925e
4
- data.tar.gz: 987874852c6ee027d534ad085f842967c553a4d0bdd8ff7a9bec156d04f7cf0e
3
+ metadata.gz: 11e88e82fcc0153f5cdb72e8c89059d80322983cad5a04f21f7ee8cb58652a86
4
+ data.tar.gz: 326182c35442ef57d523b917d1f561302916593e64d9be3e72c4d8c47607ffd5
5
5
  SHA512:
6
- metadata.gz: 377bec29bb9c975d6b9c005f94a7236c526a05df1bd9a39e2910b0d2408d0d95ff32f2356360a8af624c033350df8dbf35d9713f5d89ae08647017670262e16b
7
- data.tar.gz: 77ccfee6e72f7f0142ea103476a66adf2c5b3d74af6ff50ead53c9c2b4ebefe09a93966b42e0df1305266d5878d7f91eb73737a64d369f95559969d03cf0f9b7
6
+ metadata.gz: da808cf2213f4fb880952816609649f93de70b6b4c544820d0bc3a86c93644f63bafb3a78debe42c0ba3c42bc5c9b62fdef755353f79234f6081990c72be9478
7
+ data.tar.gz: 29c1e2e9d8dbecf4f4fe2d20942afc6b625935627fe15deffc3b49ab03722f07aadd0eacf5c2146920feb50d6c6ab57f5e18544517dc6ca076c536fbbf890c13
data/CHANGELOG.md CHANGED
@@ -1,5 +1,34 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.10.0 (2026-03-23)
4
+
5
+ Full Changelog: [v0.9.0...v0.10.0](https://github.com/lithic-com/lithic-ruby/compare/v0.9.0...v0.10.0)
6
+
7
+ ### Features
8
+
9
+ * **api:** Add CARD_AGE and ACCOUNT_AGE attributes to authorization rules ([b5bc545](https://github.com/lithic-com/lithic-ruby/commit/b5bc54552df7e04862780f15b0dc96d2732ad038))
10
+ * **api:** add override_company_name parameter to external payment create ([73612ab](https://github.com/lithic-com/lithic-ruby/commit/73612ab7a4e46f5572f7d12839acddb7beeb4b75))
11
+ * **api:** Add service and merchant location fields ([d0111e3](https://github.com/lithic-com/lithic-ruby/commit/d0111e33b4f6ca04b75f07440f3fc11e0406bbcd))
12
+
13
+
14
+ ### Chores
15
+
16
+ * **internal:** replace steady mock server with prism ([180a5d5](https://github.com/lithic-com/lithic-ruby/commit/180a5d5b2986fd1c32ea81bb3b036eb609c35e9a))
17
+ * **internal:** update gitignore ([eac11a4](https://github.com/lithic-com/lithic-ruby/commit/eac11a49332ba63990479fb14e171fcb09edab93))
18
+ * **tests:** bump steady to v0.19.4 ([ecee69a](https://github.com/lithic-com/lithic-ruby/commit/ecee69aa012a80f970784d78a9298db6155dd991))
19
+ * **tests:** bump steady to v0.19.5 ([8a046d1](https://github.com/lithic-com/lithic-ruby/commit/8a046d1ed8d6b7409244efb552809b28937ebed8))
20
+ * **tests:** bump steady to v0.19.6 ([5b45679](https://github.com/lithic-com/lithic-ruby/commit/5b45679d7f42fb122e2c7254a8568189cc8ae2c7))
21
+
22
+
23
+ ### Documentation
24
+
25
+ * Update field descriptions for character limits and allowlist requirements ([e999dc1](https://github.com/lithic-com/lithic-ruby/commit/e999dc1091255c9688545bb50e39ec62fcdad9fc))
26
+
27
+
28
+ ### Refactors
29
+
30
+ * **tests:** switch from prism to steady ([74cea9d](https://github.com/lithic-com/lithic-ruby/commit/74cea9d46211777e8e1de61ef24f52b0412564cd))
31
+
3
32
  ## 0.9.0 (2026-03-17)
4
33
 
5
34
  Full Changelog: [v0.8.0...v0.9.0](https://github.com/lithic-com/lithic-ruby/compare/v0.8.0...v0.9.0)
data/README.md CHANGED
@@ -24,7 +24,7 @@ To use this gem, install via Bundler by adding the following to your application
24
24
  <!-- x-release-please-start-version -->
25
25
 
26
26
  ```ruby
27
- gem "lithic", "~> 0.9.0"
27
+ gem "lithic", "~> 0.10.0"
28
28
  ```
29
29
 
30
30
  <!-- x-release-please-end -->
@@ -75,7 +75,8 @@ module Lithic
75
75
 
76
76
  # @!attribute nature_of_business
77
77
  # Short description of the company's line of business (i.e., what does the company
78
- # do?).
78
+ # do?). Values longer than 255 characters will be truncated before KYB
79
+ # verification
79
80
  #
80
81
  # @return [String, nil]
81
82
  optional :nature_of_business, String
@@ -87,7 +87,8 @@ module Lithic
87
87
 
88
88
  # @!attribute nature_of_business
89
89
  # Short description of the company's line of business (i.e., what does the company
90
- # do?).
90
+ # do?). Values longer than 255 characters will be truncated before KYB
91
+ # verification
91
92
  #
92
93
  # @return [String, nil]
93
94
  optional :nature_of_business, String
@@ -50,7 +50,8 @@ module Lithic
50
50
 
51
51
  # @!attribute nature_of_business
52
52
  # Short description of the company's line of business (i.e., what does the company
53
- # do?).
53
+ # do?). Values longer than 255 characters will be truncated before KYB
54
+ # verification
54
55
  #
55
56
  # @return [String, nil]
56
57
  optional :nature_of_business, String
@@ -90,6 +90,17 @@ module Lithic
90
90
  # - `ADDRESS_MATCH`: Lithic's evaluation result comparing transaction's address
91
91
  # data with the cardholder KYC data if it exists. Valid values are `MATCH`,
92
92
  # `MATCH_ADDRESS_ONLY`, `MATCH_ZIP_ONLY`,`MISMATCH`,`NOT_PRESENT`.
93
+ # - `SERVICE_LOCATION_STATE`: The state/province code (ISO 3166-2) where the
94
+ # cardholder received the service, e.g. "NY". When a service location is present
95
+ # in the network data, the service location state is used. Otherwise, falls back
96
+ # to the card acceptor state.
97
+ # - `SERVICE_LOCATION_POSTAL_CODE`: The postal code where the cardholder received
98
+ # the service, e.g. "10001". When a service location is present in the network
99
+ # data, the service location postal code is used. Otherwise, falls back to the
100
+ # card acceptor postal code.
101
+ # - `CARD_AGE`: The age of the card in seconds at the time of the authorization.
102
+ # - `ACCOUNT_AGE`: The age of the account holder's account in seconds at the time
103
+ # of the authorization.
93
104
  #
94
105
  # @return [Symbol, Lithic::Models::AuthRules::ConditionalAuthorizationActionParameters::Condition::Attribute]
95
106
  required :attribute,
@@ -172,6 +183,17 @@ module Lithic
172
183
  # - `ADDRESS_MATCH`: Lithic's evaluation result comparing transaction's address
173
184
  # data with the cardholder KYC data if it exists. Valid values are `MATCH`,
174
185
  # `MATCH_ADDRESS_ONLY`, `MATCH_ZIP_ONLY`,`MISMATCH`,`NOT_PRESENT`.
186
+ # - `SERVICE_LOCATION_STATE`: The state/province code (ISO 3166-2) where the
187
+ # cardholder received the service, e.g. "NY". When a service location is present
188
+ # in the network data, the service location state is used. Otherwise, falls back
189
+ # to the card acceptor state.
190
+ # - `SERVICE_LOCATION_POSTAL_CODE`: The postal code where the cardholder received
191
+ # the service, e.g. "10001". When a service location is present in the network
192
+ # data, the service location postal code is used. Otherwise, falls back to the
193
+ # card acceptor postal code.
194
+ # - `CARD_AGE`: The age of the card in seconds at the time of the authorization.
195
+ # - `ACCOUNT_AGE`: The age of the account holder's account in seconds at the time
196
+ # of the authorization.
175
197
  #
176
198
  # @see Lithic::Models::AuthRules::ConditionalAuthorizationActionParameters::Condition#attribute
177
199
  module Attribute
@@ -196,6 +218,10 @@ module Lithic
196
218
  WALLET_TYPE = :WALLET_TYPE
197
219
  TRANSACTION_INITIATOR = :TRANSACTION_INITIATOR
198
220
  ADDRESS_MATCH = :ADDRESS_MATCH
221
+ SERVICE_LOCATION_STATE = :SERVICE_LOCATION_STATE
222
+ SERVICE_LOCATION_POSTAL_CODE = :SERVICE_LOCATION_POSTAL_CODE
223
+ CARD_AGE = :CARD_AGE
224
+ ACCOUNT_AGE = :ACCOUNT_AGE
199
225
 
200
226
  # @!method self.values
201
227
  # @return [Array<Symbol>]
@@ -18,7 +18,7 @@ module Lithic
18
18
  # - `CARD`: The card associated with the event. Available for AUTHORIZATION and
19
19
  # THREE_DS_AUTHENTICATION event stream rules.
20
20
  # - `ACCOUNT_HOLDER`: The account holder associated with the card. Available for
21
- # THREE_DS_AUTHENTICATION event stream rules.
21
+ # AUTHORIZATION and THREE_DS_AUTHENTICATION event stream rules.
22
22
  # - `IP_METADATA`: IP address metadata for the request. Available for
23
23
  # THREE_DS_AUTHENTICATION event stream rules.
24
24
  # - `SPEND_VELOCITY`: Spend velocity data for the card or account. Requires
@@ -90,9 +90,10 @@ module Lithic
90
90
  required :event_type, const: :"card_authorization.approval_request"
91
91
 
92
92
  # @!attribute merchant
93
+ # Merchant information including full location details.
93
94
  #
94
- # @return [Lithic::Models::Merchant]
95
- required :merchant, -> { Lithic::Merchant }
95
+ # @return [Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Merchant]
96
+ required :merchant, -> { Lithic::CardAuthorizationApprovalRequestWebhookEvent::Merchant }
96
97
 
97
98
  # @!attribute merchant_amount
98
99
  # @deprecated
@@ -114,6 +115,16 @@ module Lithic
114
115
  # @return [String]
115
116
  required :merchant_currency, String
116
117
 
118
+ # @!attribute service_location
119
+ # Where the cardholder received the service, when different from the card acceptor
120
+ # location. This is populated from network data elements such as Mastercard DE-122
121
+ # SE1 SF9-14 and Visa F34 DS02.
122
+ #
123
+ # @return [Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::ServiceLocation, nil]
124
+ required :service_location,
125
+ -> { Lithic::CardAuthorizationApprovalRequestWebhookEvent::ServiceLocation },
126
+ nil?: true
127
+
117
128
  # @!attribute settled_amount
118
129
  # @deprecated
119
130
  #
@@ -232,7 +243,7 @@ module Lithic
232
243
  # @return [Time, nil]
233
244
  optional :ttl, Time
234
245
 
235
- # @!method initialize(token:, acquirer_fee:, amount:, amounts:, authorization_amount:, avs:, card:, cardholder_currency:, cash_amount:, created:, merchant:, merchant_amount:, merchant_currency:, settled_amount:, status:, transaction_initiator:, account_type: nil, cardholder_authentication: nil, cashback: nil, conversion_rate: nil, event_token: nil, fleet_info: nil, latest_challenge: nil, network: nil, network_risk_score: nil, network_specific_data: nil, pos: nil, token_info: nil, ttl: nil, event_type: :"card_authorization.approval_request")
246
+ # @!method initialize(token:, acquirer_fee:, amount:, amounts:, authorization_amount:, avs:, card:, cardholder_currency:, cash_amount:, created:, merchant:, merchant_amount:, merchant_currency:, service_location:, settled_amount:, status:, transaction_initiator:, account_type: nil, cardholder_authentication: nil, cashback: nil, conversion_rate: nil, event_token: nil, fleet_info: nil, latest_challenge: nil, network: nil, network_risk_score: nil, network_specific_data: nil, pos: nil, token_info: nil, ttl: nil, event_type: :"card_authorization.approval_request")
236
247
  # Some parameter documentations has been truncated, see
237
248
  # {Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent} for more details.
238
249
  #
@@ -256,12 +267,14 @@ module Lithic
256
267
  #
257
268
  # @param created [Time] Date and time when the transaction first occurred in UTC.
258
269
  #
259
- # @param merchant [Lithic::Models::Merchant]
270
+ # @param merchant [Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Merchant] Merchant information including full location details.
260
271
  #
261
272
  # @param merchant_amount [Integer] Deprecated, use `amounts`. The amount that the merchant will receive, denominate
262
273
  #
263
274
  # @param merchant_currency [String] 3-character alphabetic ISO 4217 code for the local currency of the transaction.
264
275
  #
276
+ # @param service_location [Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::ServiceLocation, nil] Where the cardholder received the service, when different from the card acceptor
277
+ #
265
278
  # @param settled_amount [Integer] Deprecated, use `amounts`. Amount (in cents) of the transaction that has been se
266
279
  #
267
280
  # @param status [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Status] The type of authorization request that this request is for. Note that `CREDIT_AU
@@ -605,6 +618,84 @@ module Lithic
605
618
  end
606
619
  end
607
620
 
621
+ # @see Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent#merchant
622
+ class Merchant < Lithic::Models::Merchant
623
+ # @!attribute phone_number
624
+ # Phone number of card acceptor.
625
+ #
626
+ # @return [String, nil]
627
+ required :phone_number, String, nil?: true
628
+
629
+ # @!attribute postal_code
630
+ # Postal code of card acceptor.
631
+ #
632
+ # @return [String, nil]
633
+ required :postal_code, String, nil?: true
634
+
635
+ # @!attribute street_address
636
+ # Street address of card acceptor.
637
+ #
638
+ # @return [String, nil]
639
+ required :street_address, String, nil?: true
640
+
641
+ # @!method initialize(phone_number:, postal_code:, street_address:)
642
+ # Merchant information including full location details.
643
+ #
644
+ # @param phone_number [String, nil] Phone number of card acceptor.
645
+ #
646
+ # @param postal_code [String, nil] Postal code of card acceptor.
647
+ #
648
+ # @param street_address [String, nil] Street address of card acceptor.
649
+ end
650
+
651
+ # @see Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent#service_location
652
+ class ServiceLocation < Lithic::Internal::Type::BaseModel
653
+ # @!attribute city
654
+ # City of service location.
655
+ #
656
+ # @return [String, nil]
657
+ required :city, String, nil?: true
658
+
659
+ # @!attribute country
660
+ # Country code of service location, ISO 3166-1 alpha-3.
661
+ #
662
+ # @return [String, nil]
663
+ required :country, String, nil?: true
664
+
665
+ # @!attribute postal_code
666
+ # Postal code of service location.
667
+ #
668
+ # @return [String, nil]
669
+ required :postal_code, String, nil?: true
670
+
671
+ # @!attribute state
672
+ # State/province code of service location, ISO 3166-2.
673
+ #
674
+ # @return [String, nil]
675
+ required :state, String, nil?: true
676
+
677
+ # @!attribute street_address
678
+ # Street address of service location.
679
+ #
680
+ # @return [String, nil]
681
+ required :street_address, String, nil?: true
682
+
683
+ # @!method initialize(city:, country:, postal_code:, state:, street_address:)
684
+ # Where the cardholder received the service, when different from the card acceptor
685
+ # location. This is populated from network data elements such as Mastercard DE-122
686
+ # SE1 SF9-14 and Visa F34 DS02.
687
+ #
688
+ # @param city [String, nil] City of service location.
689
+ #
690
+ # @param country [String, nil] Country code of service location, ISO 3166-1 alpha-3.
691
+ #
692
+ # @param postal_code [String, nil] Postal code of service location.
693
+ #
694
+ # @param state [String, nil] State/province code of service location, ISO 3166-2.
695
+ #
696
+ # @param street_address [String, nil] Street address of service location.
697
+ end
698
+
608
699
  # The type of authorization request that this request is for. Note that
609
700
  # `CREDIT_AUTHORIZATION` and `FINANCIAL_CREDIT_AUTHORIZATION` is only available to
610
701
  # users with credit decisioning via ASA enabled.
@@ -4,13 +4,18 @@ module Lithic
4
4
  module Models
5
5
  class Carrier < Lithic::Internal::Type::BaseModel
6
6
  # @!attribute qr_code_url
7
- # QR code url to display on the card carrier
7
+ # QR code URL to display on the card carrier. The `qr_code_url` field requires
8
+ # your domain to be allowlisted by Lithic before use. Contact Support to configure
9
+ # your QR code domain
8
10
  #
9
11
  # @return [String, nil]
10
12
  optional :qr_code_url, String
11
13
 
12
14
  # @!method initialize(qr_code_url: nil)
13
- # @param qr_code_url [String] QR code url to display on the card carrier
15
+ # Some parameter documentations has been truncated, see {Lithic::Models::Carrier}
16
+ # for more details.
17
+ #
18
+ # @param qr_code_url [String] QR code URL to display on the card carrier. The `qr_code_url` field requires you
14
19
  end
15
20
  end
16
21
  end
@@ -37,7 +37,8 @@ module Lithic
37
37
 
38
38
  # @!attribute nature_of_business
39
39
  # Short description of the company's line of business (i.e., what does the company
40
- # do?).
40
+ # do?). Values longer than 255 characters will be truncated before KYB
41
+ # verification
41
42
  #
42
43
  # @return [String]
43
44
  required :nature_of_business, String
@@ -170,7 +170,8 @@ module Lithic
170
170
 
171
171
  # @!attribute nature_of_business
172
172
  # Short description of the company's line of business (i.e., what does the company
173
- # do?).
173
+ # do?). Values longer than 255 characters will be truncated before KYB
174
+ # verification
174
175
  #
175
176
  # @return [String, nil]
176
177
  optional :nature_of_business, String
@@ -514,6 +514,13 @@ module Lithic
514
514
  # @return [String, nil]
515
515
  optional :company_id, String, nil?: true
516
516
 
517
+ # @!attribute override_company_name
518
+ # Value to override the configured company name with. Can only be used if allowed
519
+ # to override
520
+ #
521
+ # @return [String, nil]
522
+ optional :override_company_name, String, nil?: true
523
+
517
524
  # @!attribute receipt_routing_number
518
525
  # Receipt routing number
519
526
  #
@@ -538,7 +545,11 @@ module Lithic
538
545
  # @return [Array<String>, nil]
539
546
  optional :trace_numbers, Lithic::Internal::Type::ArrayOf[String]
540
547
 
541
- # @!method initialize(sec_code:, ach_hold_period: nil, addenda: nil, company_id: nil, receipt_routing_number: nil, retries: nil, return_reason_code: nil, trace_numbers: nil)
548
+ # @!method initialize(sec_code:, ach_hold_period: nil, addenda: nil, company_id: nil, override_company_name: nil, receipt_routing_number: nil, retries: nil, return_reason_code: nil, trace_numbers: nil)
549
+ # Some parameter documentations has been truncated, see
550
+ # {Lithic::Models::Payment::MethodAttributes::ACHMethodAttributes} for more
551
+ # details.
552
+ #
542
553
  # @param sec_code [Symbol, Lithic::Models::Payment::MethodAttributes::ACHMethodAttributes::SecCode] SEC code for ACH transaction
543
554
  #
544
555
  # @param ach_hold_period [Integer, nil] Number of days the ACH transaction is on hold
@@ -547,6 +558,8 @@ module Lithic
547
558
  #
548
559
  # @param company_id [String, nil] Company ID for the ACH transaction
549
560
  #
561
+ # @param override_company_name [String, nil] Value to override the configured company name with. Can only be used if allowed
562
+ #
550
563
  # @param receipt_routing_number [String, nil] Receipt routing number
551
564
  #
552
565
  # @param retries [Integer, nil] Number of retries attempted
@@ -93,9 +93,10 @@ module Lithic
93
93
  required :financial_account_token, String, nil?: true
94
94
 
95
95
  # @!attribute merchant
96
+ # Merchant information including full location details.
96
97
  #
97
- # @return [Lithic::Models::Merchant]
98
- required :merchant, -> { Lithic::Merchant }
98
+ # @return [Lithic::Models::Transaction::Merchant]
99
+ required :merchant, -> { Lithic::Transaction::Merchant }
99
100
 
100
101
  # @!attribute merchant_amount
101
102
  # @deprecated
@@ -148,6 +149,14 @@ module Lithic
148
149
  # @return [Symbol, Lithic::Models::Transaction::Result]
149
150
  required :result, enum: -> { Lithic::Transaction::Result }
150
151
 
152
+ # @!attribute service_location
153
+ # Where the cardholder received the service, when different from the card acceptor
154
+ # location. This is populated from network data elements such as Mastercard DE-122
155
+ # SE1 SF9-14 and Visa F34 DS02.
156
+ #
157
+ # @return [Lithic::Models::Transaction::ServiceLocation, nil]
158
+ required :service_location, -> { Lithic::Transaction::ServiceLocation }, nil?: true
159
+
151
160
  # @!attribute settled_amount
152
161
  # @deprecated
153
162
  #
@@ -185,7 +194,7 @@ module Lithic
185
194
  # @return [Array<Lithic::Models::Transaction::Event>, nil]
186
195
  optional :events, -> { Lithic::Internal::Type::ArrayOf[Lithic::Transaction::Event] }
187
196
 
188
- # @!method initialize(token:, account_token:, acquirer_fee:, acquirer_reference_number:, amount:, amounts:, authorization_amount:, authorization_code:, avs:, card_token:, cardholder_authentication:, created:, financial_account_token:, merchant:, merchant_amount:, merchant_authorization_amount:, merchant_currency:, network:, network_risk_score:, pos:, result:, settled_amount:, status:, tags:, token_info:, updated:, events: nil)
197
+ # @!method initialize(token:, account_token:, acquirer_fee:, acquirer_reference_number:, amount:, amounts:, authorization_amount:, authorization_code:, avs:, card_token:, cardholder_authentication:, created:, financial_account_token:, merchant:, merchant_amount:, merchant_authorization_amount:, merchant_currency:, network:, network_risk_score:, pos:, result:, service_location:, settled_amount:, status:, tags:, token_info:, updated:, events: nil)
189
198
  # Some parameter documentations has been truncated, see
190
199
  # {Lithic::Models::Transaction} for more details.
191
200
  #
@@ -215,7 +224,7 @@ module Lithic
215
224
  #
216
225
  # @param financial_account_token [String, nil]
217
226
  #
218
- # @param merchant [Lithic::Models::Merchant]
227
+ # @param merchant [Lithic::Models::Transaction::Merchant] Merchant information including full location details.
219
228
  #
220
229
  # @param merchant_amount [Integer, nil] Analogous to the 'amount', but in the merchant currency.
221
230
  #
@@ -231,6 +240,8 @@ module Lithic
231
240
  #
232
241
  # @param result [Symbol, Lithic::Models::Transaction::Result]
233
242
  #
243
+ # @param service_location [Lithic::Models::Transaction::ServiceLocation, nil] Where the cardholder received the service, when different from the card acceptor
244
+ #
234
245
  # @param settled_amount [Integer] The settled amount of the transaction in the settlement currency.
235
246
  #
236
247
  # @param status [Symbol, Lithic::Models::Transaction::Status] Status of the transaction.
@@ -385,6 +396,36 @@ module Lithic
385
396
  # @param zipcode [String] Cardholder ZIP code
386
397
  end
387
398
 
399
+ # @see Lithic::Models::Transaction#merchant
400
+ class Merchant < Lithic::Models::Merchant
401
+ # @!attribute phone_number
402
+ # Phone number of card acceptor.
403
+ #
404
+ # @return [String, nil]
405
+ required :phone_number, String, nil?: true
406
+
407
+ # @!attribute postal_code
408
+ # Postal code of card acceptor.
409
+ #
410
+ # @return [String, nil]
411
+ required :postal_code, String, nil?: true
412
+
413
+ # @!attribute street_address
414
+ # Street address of card acceptor.
415
+ #
416
+ # @return [String, nil]
417
+ required :street_address, String, nil?: true
418
+
419
+ # @!method initialize(phone_number:, postal_code:, street_address:)
420
+ # Merchant information including full location details.
421
+ #
422
+ # @param phone_number [String, nil] Phone number of card acceptor.
423
+ #
424
+ # @param postal_code [String, nil] Postal code of card acceptor.
425
+ #
426
+ # @param street_address [String, nil] Street address of card acceptor.
427
+ end
428
+
388
429
  # Card network of the authorization. Value is `UNKNOWN` when Lithic cannot
389
430
  # determine the network code from the upstream provider.
390
431
  #
@@ -693,6 +734,54 @@ module Lithic
693
734
  # @return [Array<Symbol>]
694
735
  end
695
736
 
737
+ # @see Lithic::Models::Transaction#service_location
738
+ class ServiceLocation < Lithic::Internal::Type::BaseModel
739
+ # @!attribute city
740
+ # City of service location.
741
+ #
742
+ # @return [String, nil]
743
+ required :city, String, nil?: true
744
+
745
+ # @!attribute country
746
+ # Country code of service location, ISO 3166-1 alpha-3.
747
+ #
748
+ # @return [String, nil]
749
+ required :country, String, nil?: true
750
+
751
+ # @!attribute postal_code
752
+ # Postal code of service location.
753
+ #
754
+ # @return [String, nil]
755
+ required :postal_code, String, nil?: true
756
+
757
+ # @!attribute state
758
+ # State/province code of service location, ISO 3166-2.
759
+ #
760
+ # @return [String, nil]
761
+ required :state, String, nil?: true
762
+
763
+ # @!attribute street_address
764
+ # Street address of service location.
765
+ #
766
+ # @return [String, nil]
767
+ required :street_address, String, nil?: true
768
+
769
+ # @!method initialize(city:, country:, postal_code:, state:, street_address:)
770
+ # Where the cardholder received the service, when different from the card acceptor
771
+ # location. This is populated from network data elements such as Mastercard DE-122
772
+ # SE1 SF9-14 and Visa F34 DS02.
773
+ #
774
+ # @param city [String, nil] City of service location.
775
+ #
776
+ # @param country [String, nil] Country code of service location, ISO 3166-1 alpha-3.
777
+ #
778
+ # @param postal_code [String, nil] Postal code of service location.
779
+ #
780
+ # @param state [String, nil] State/province code of service location, ISO 3166-2.
781
+ #
782
+ # @param street_address [String, nil] Street address of service location.
783
+ end
784
+
696
785
  # Status of the transaction.
697
786
  #
698
787
  # @see Lithic::Models::Transaction#status
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Lithic
4
- VERSION = "0.9.0"
4
+ VERSION = "0.10.0"
5
5
  end
data/lib/lithic.rb CHANGED
@@ -55,6 +55,7 @@ require_relative "lithic/internal/transport/pooled_net_requester"
55
55
  require_relative "lithic/client"
56
56
  require_relative "lithic/internal/cursor_page"
57
57
  require_relative "lithic/internal/single_page"
58
+ require_relative "lithic/models/merchant"
58
59
  require_relative "lithic/models/transaction"
59
60
  require_relative "lithic/models/auth_rules/v2/backtest_results"
60
61
  require_relative "lithic/models/book_transfer_response"
@@ -348,7 +349,6 @@ require_relative "lithic/models/management_operation_list_params"
348
349
  require_relative "lithic/models/management_operation_retrieve_params"
349
350
  require_relative "lithic/models/management_operation_reverse_params"
350
351
  require_relative "lithic/models/management_operation_updated_webhook_event"
351
- require_relative "lithic/models/merchant"
352
352
  require_relative "lithic/models/message_attempt"
353
353
  require_relative "lithic/models/network_program"
354
354
  require_relative "lithic/models/network_program_list_params"
@@ -162,7 +162,8 @@ module Lithic
162
162
  attr_writer :naics_code
163
163
 
164
164
  # Short description of the company's line of business (i.e., what does the company
165
- # do?).
165
+ # do?). Values longer than 255 characters will be truncated before KYB
166
+ # verification
166
167
  sig { returns(T.nilable(String)) }
167
168
  attr_reader :nature_of_business
168
169
 
@@ -248,7 +249,8 @@ module Lithic
248
249
  # business.
249
250
  naics_code: nil,
250
251
  # Short description of the company's line of business (i.e., what does the company
251
- # do?).
252
+ # do?). Values longer than 255 characters will be truncated before KYB
253
+ # verification
252
254
  nature_of_business: nil,
253
255
  # An RFC 3339 timestamp indicating when the account holder accepted the applicable
254
256
  # legal agreements (e.g., cardholder terms) as agreed upon during API customer's
@@ -173,7 +173,8 @@ module Lithic
173
173
  attr_writer :naics_code
174
174
 
175
175
  # Short description of the company's line of business (i.e., what does the company
176
- # do?).
176
+ # do?). Values longer than 255 characters will be truncated before KYB
177
+ # verification
177
178
  sig { returns(T.nilable(String)) }
178
179
  attr_reader :nature_of_business
179
180
 
@@ -231,7 +232,8 @@ module Lithic
231
232
  # business.
232
233
  naics_code: nil,
233
234
  # Short description of the company's line of business (i.e., what does the company
234
- # do?).
235
+ # do?). Values longer than 255 characters will be truncated before KYB
236
+ # verification
235
237
  nature_of_business: nil,
236
238
  # Company website URL.
237
239
  website_url: nil
@@ -79,7 +79,8 @@ module Lithic
79
79
  attr_writer :naics_code
80
80
 
81
81
  # Short description of the company's line of business (i.e., what does the company
82
- # do?).
82
+ # do?). Values longer than 255 characters will be truncated before KYB
83
+ # verification
83
84
  sig { returns(T.nilable(String)) }
84
85
  attr_reader :nature_of_business
85
86
 
@@ -121,7 +122,8 @@ module Lithic
121
122
  # business. Only present if naics_code was included in the update request.
122
123
  naics_code: nil,
123
124
  # Short description of the company's line of business (i.e., what does the company
124
- # do?).
125
+ # do?). Values longer than 255 characters will be truncated before KYB
126
+ # verification
125
127
  nature_of_business: nil,
126
128
  # Company website URL.
127
129
  website_url: nil