lithic 0.1.0.pre.alpha.54 → 0.1.0.pre.alpha.55

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 (134) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +19 -0
  3. data/README.md +1 -1
  4. data/lib/lithic/models/account_holder_simulate_enrollment_review_response.rb +2 -2
  5. data/lib/lithic/models/account_holder_update_response.rb +4 -4
  6. data/lib/lithic/models/auth_rules/conditional_authorization_action_parameters.rb +252 -0
  7. data/lib/lithic/models/auth_rules/v2_create_params.rb +38 -284
  8. data/lib/lithic/models/auth_rules/v2_create_response.rb +8 -508
  9. data/lib/lithic/models/auth_rules/v2_draft_params.rb +4 -250
  10. data/lib/lithic/models/auth_rules/v2_draft_response.rb +8 -508
  11. data/lib/lithic/models/auth_rules/v2_list_response.rb +8 -508
  12. data/lib/lithic/models/auth_rules/v2_promote_response.rb +8 -508
  13. data/lib/lithic/models/auth_rules/v2_retrieve_features_response.rb +4 -11
  14. data/lib/lithic/models/auth_rules/v2_retrieve_response.rb +8 -508
  15. data/lib/lithic/models/auth_rules/v2_update_response.rb +8 -508
  16. data/lib/lithic/models/auth_rules/velocity_limit_params.rb +4 -7
  17. data/lib/lithic/models/auth_rules/velocity_limit_period.rb +154 -0
  18. data/lib/lithic/models/book_transfer_response.rb +5 -5
  19. data/lib/lithic/models/dispute.rb +510 -242
  20. data/lib/lithic/models/dispute_create_response.rb +326 -0
  21. data/lib/lithic/models/dispute_delete_response.rb +326 -0
  22. data/lib/lithic/models/dispute_list_response.rb +326 -0
  23. data/lib/lithic/models/dispute_retrieve_response.rb +326 -0
  24. data/lib/lithic/models/dispute_update_response.rb +326 -0
  25. data/lib/lithic/models/event.rb +213 -69
  26. data/lib/lithic/models/event_list_params.rb +112 -6
  27. data/lib/lithic/models/event_subscription.rb +112 -6
  28. data/lib/lithic/models/events/subscription_create_params.rb +112 -6
  29. data/lib/lithic/models/events/subscription_send_simulated_example_params.rb +12 -6
  30. data/lib/lithic/models/events/subscription_update_params.rb +112 -6
  31. data/lib/lithic/models/financial_account.rb +1 -65
  32. data/lib/lithic/models/financial_accounts/financial_account_credit_config.rb +1 -64
  33. data/lib/lithic/models/financial_accounts/loan_tape.rb +99 -3
  34. data/lib/lithic/models/financial_accounts/statement.rb +66 -2
  35. data/lib/lithic/models/payment.rb +9 -9
  36. data/lib/lithic/models/payment_simulate_action_params.rb +17 -1
  37. data/lib/lithic/models/tokenization.rb +189 -23
  38. data/lib/lithic/models/transaction.rb +12 -116
  39. data/lib/lithic/models/transactions/events/enhanced_data.rb +9 -9
  40. data/lib/lithic/resources/auth_rules/v2/backtests.rb +3 -5
  41. data/lib/lithic/resources/auth_rules/v2.rb +13 -56
  42. data/lib/lithic/resources/disputes.rb +10 -10
  43. data/lib/lithic/resources/payments.rb +5 -1
  44. data/lib/lithic/version.rb +1 -1
  45. data/lib/lithic.rb +7 -3
  46. data/rbi/lithic/models/account_holder_simulate_enrollment_review_response.rbi +3 -6
  47. data/rbi/lithic/models/account_holder_update_response.rbi +6 -12
  48. data/rbi/lithic/models/auth_rules/conditional_authorization_action_parameters.rbi +577 -0
  49. data/rbi/lithic/models/auth_rules/v2_create_params.rbi +85 -679
  50. data/rbi/lithic/models/auth_rules/v2_create_response.rbi +4 -1146
  51. data/rbi/lithic/models/auth_rules/v2_draft_params.rbi +4 -575
  52. data/rbi/lithic/models/auth_rules/v2_draft_response.rbi +4 -1146
  53. data/rbi/lithic/models/auth_rules/v2_list_response.rbi +4 -1146
  54. data/rbi/lithic/models/auth_rules/v2_promote_response.rbi +4 -1146
  55. data/rbi/lithic/models/auth_rules/v2_retrieve_features_response.rbi +9 -22
  56. data/rbi/lithic/models/auth_rules/v2_retrieve_response.rbi +4 -1146
  57. data/rbi/lithic/models/auth_rules/v2_update_response.rbi +4 -1146
  58. data/rbi/lithic/models/auth_rules/velocity_limit_params.rbi +17 -29
  59. data/rbi/lithic/models/auth_rules/velocity_limit_period.rbi +223 -0
  60. data/rbi/lithic/models/book_transfer_response.rbi +14 -11
  61. data/rbi/lithic/models/dispute.rbi +942 -395
  62. data/rbi/lithic/models/dispute_create_response.rbi +599 -0
  63. data/rbi/lithic/models/dispute_delete_response.rbi +599 -0
  64. data/rbi/lithic/models/dispute_list_response.rbi +582 -0
  65. data/rbi/lithic/models/dispute_retrieve_response.rbi +601 -0
  66. data/rbi/lithic/models/dispute_update_response.rbi +599 -0
  67. data/rbi/lithic/models/event.rbi +348 -111
  68. data/rbi/lithic/models/event_list_params.rbi +155 -25
  69. data/rbi/lithic/models/event_subscription.rbi +155 -25
  70. data/rbi/lithic/models/events/subscription_create_params.rbi +155 -25
  71. data/rbi/lithic/models/events/subscription_send_simulated_example_params.rbi +55 -25
  72. data/rbi/lithic/models/events/subscription_update_params.rbi +155 -25
  73. data/rbi/lithic/models/financial_account.rbi +3 -132
  74. data/rbi/lithic/models/financial_accounts/financial_account_credit_config.rbi +3 -136
  75. data/rbi/lithic/models/financial_accounts/loan_tape.rbi +132 -9
  76. data/rbi/lithic/models/financial_accounts/statement.rbi +88 -6
  77. data/rbi/lithic/models/payment.rbi +11 -14
  78. data/rbi/lithic/models/payment_simulate_action_params.rbi +22 -0
  79. data/rbi/lithic/models/tokenization.rbi +429 -34
  80. data/rbi/lithic/models/transaction.rbi +22 -246
  81. data/rbi/lithic/models/transactions/events/enhanced_data.rbi +12 -12
  82. data/rbi/lithic/resources/auth_rules/v2/backtests.rbi +0 -3
  83. data/rbi/lithic/resources/auth_rules/v2.rbi +24 -72
  84. data/rbi/lithic/resources/disputes.rbi +7 -5
  85. data/rbi/lithic/resources/payments.rbi +6 -0
  86. data/sig/lithic/models/account_holder_simulate_enrollment_review_response.rbs +4 -6
  87. data/sig/lithic/models/account_holder_update_response.rbs +8 -12
  88. data/sig/lithic/models/auth_rules/conditional_authorization_action_parameters.rbs +163 -0
  89. data/sig/lithic/models/auth_rules/v2_create_params.rbs +22 -188
  90. data/sig/lithic/models/auth_rules/v2_create_response.rbs +2 -318
  91. data/sig/lithic/models/auth_rules/v2_draft_params.rbs +1 -159
  92. data/sig/lithic/models/auth_rules/v2_draft_response.rbs +2 -318
  93. data/sig/lithic/models/auth_rules/v2_list_response.rbs +2 -318
  94. data/sig/lithic/models/auth_rules/v2_promote_response.rbs +2 -318
  95. data/sig/lithic/models/auth_rules/v2_retrieve_features_response.rbs +4 -4
  96. data/sig/lithic/models/auth_rules/v2_retrieve_response.rbs +2 -318
  97. data/sig/lithic/models/auth_rules/v2_update_response.rbs +2 -318
  98. data/sig/lithic/models/auth_rules/velocity_limit_params.rbs +4 -4
  99. data/sig/lithic/models/auth_rules/velocity_limit_period.rbs +91 -0
  100. data/sig/lithic/models/book_transfer_response.rbs +7 -7
  101. data/sig/lithic/models/dispute.rbs +417 -157
  102. data/sig/lithic/models/dispute_create_response.rbs +210 -0
  103. data/sig/lithic/models/dispute_delete_response.rbs +210 -0
  104. data/sig/lithic/models/dispute_list_response.rbs +210 -0
  105. data/sig/lithic/models/dispute_retrieve_response.rbs +210 -0
  106. data/sig/lithic/models/dispute_update_response.rbs +210 -0
  107. data/sig/lithic/models/event.rbs +25 -13
  108. data/sig/lithic/models/event_list_params.rbs +25 -13
  109. data/sig/lithic/models/event_subscription.rbs +25 -13
  110. data/sig/lithic/models/events/subscription_create_params.rbs +25 -13
  111. data/sig/lithic/models/events/subscription_send_simulated_example_params.rbs +25 -13
  112. data/sig/lithic/models/events/subscription_update_params.rbs +25 -13
  113. data/sig/lithic/models/financial_account.rbs +3 -45
  114. data/sig/lithic/models/financial_accounts/financial_account_credit_config.rbs +3 -49
  115. data/sig/lithic/models/financial_accounts/loan_tape.rbs +87 -9
  116. data/sig/lithic/models/financial_accounts/statement.rbs +58 -6
  117. data/sig/lithic/models/payment.rbs +8 -10
  118. data/sig/lithic/models/payment_simulate_action_params.rbs +14 -0
  119. data/sig/lithic/models/tokenization.rbs +160 -13
  120. data/sig/lithic/models/transaction.rbs +13 -94
  121. data/sig/lithic/models/transactions/events/enhanced_data.rbs +15 -15
  122. data/sig/lithic/resources/auth_rules/v2.rbs +2 -12
  123. data/sig/lithic/resources/disputes.rbs +5 -5
  124. data/sig/lithic/resources/payments.rbs +2 -0
  125. metadata +23 -11
  126. data/lib/lithic/models/auth_rules/v2_apply_params.rb +0 -56
  127. data/lib/lithic/models/auth_rules/v2_apply_response.rb +0 -766
  128. data/lib/lithic/models/auth_rules/velocity_limit_params_period_window.rb +0 -248
  129. data/rbi/lithic/models/auth_rules/v2_apply_params.rbi +0 -86
  130. data/rbi/lithic/models/auth_rules/v2_apply_response.rbi +0 -1638
  131. data/rbi/lithic/models/auth_rules/velocity_limit_params_period_window.rbi +0 -557
  132. data/sig/lithic/models/auth_rules/v2_apply_params.rbs +0 -54
  133. data/sig/lithic/models/auth_rules/v2_apply_response.rbs +0 -509
  134. data/sig/lithic/models/auth_rules/velocity_limit_params_period_window.rbs +0 -223
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0cafb9995bee6a1f6538ae3f917907ec64d021442bdadc54d796f527e4b8a398
4
- data.tar.gz: 7d0de20d92faba1f2f0951f3fc446653743b9fff0510677e927311cf4cef1ddb
3
+ metadata.gz: d9dadacd8b6002b5b63b6a326fbb1031b7e24631c27f08dff022faa3ce36c76d
4
+ data.tar.gz: 25c3dd78abfd815ced1cf1562190fada84ec6ffce9dca464dc02e300bda85426
5
5
  SHA512:
6
- metadata.gz: 92d1c6cb2842552f0630d9d9c748ea67f84739d99b7470c46d252a6c8a0c6903ad653b221f118e34872a76e38f0293965ebc1d045b56359b131386225f890010
7
- data.tar.gz: 3adb703444bf3e91ff3105312e561b615ea5df93ac6a6be10b626f2c6b5dd32ddc9222d355dff361f7065b0470a1ec5729566a05e80e5413e9dcfbf187fafa71
6
+ metadata.gz: 0eec5194aa61913696390c4423f52ab0b96b38745ee8ec5499ac1e6fdb11b7b5b1838693aa3032c57c61af3a773a202d7f6aab219a9e5a150c8b9a658dae334c
7
+ data.tar.gz: 4364f3f60854cd2783fe6d1d3f72bc69dc9958898642b5461ad0b4f578bd64b58e92a300af18361e3da7f6f43b2c69538086bd872a18b296f7315ff296ff980b
data/CHANGELOG.md CHANGED
@@ -1,5 +1,24 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.1.0-alpha.55 (2025-11-11)
4
+
5
+ Full Changelog: [v0.1.0-alpha.54...v0.1.0-alpha.55](https://github.com/lithic-com/lithic-ruby/compare/v0.1.0-alpha.54...v0.1.0-alpha.55)
6
+
7
+ ### Features
8
+
9
+ * **api:** add payment_details ([413b65a](https://github.com/lithic-com/lithic-ruby/commit/413b65a7028d3277f1e4f3419fd643e7c0730966))
10
+ * **api:** deprecate auth rule apply endpoint and fix several schemas ([7b9a282](https://github.com/lithic-com/lithic-ruby/commit/7b9a282603b666e314c6445439cfb839c479eada))
11
+ * **api:** new fields in Statements APIs ([be8c6ea](https://github.com/lithic-com/lithic-ruby/commit/be8c6ea99b996707b3848cba8e0109c47fc1715e))
12
+ * **api:** re-add rules metadata to tokenization events ([da13854](https://github.com/lithic-com/lithic-ruby/commit/da13854e8c9794024b786da4584ffbe492999c6a))
13
+ * **api:** remove deprecated fields from Cardholder Authentication object ([da13854](https://github.com/lithic-com/lithic-ruby/commit/da13854e8c9794024b786da4584ffbe492999c6a))
14
+
15
+
16
+ ### Bug Fixes
17
+
18
+ * **api:** adjust Auth Rules spec for better SDK structure ([da13854](https://github.com/lithic-com/lithic-ruby/commit/da13854e8c9794024b786da4584ffbe492999c6a))
19
+ * **api:** fix oneOf -> anyOf in account holder update ([413b65a](https://github.com/lithic-com/lithic-ruby/commit/413b65a7028d3277f1e4f3419fd643e7c0730966))
20
+ * **api:** fixing spec for Tokenizations and Enhanced data ([be8c6ea](https://github.com/lithic-com/lithic-ruby/commit/be8c6ea99b996707b3848cba8e0109c47fc1715e))
21
+
3
22
  ## 0.1.0-alpha.54 (2025-11-04)
4
23
 
5
24
  Full Changelog: [v0.1.0-alpha.53...v0.1.0-alpha.54](https://github.com/lithic-com/lithic-ruby/compare/v0.1.0-alpha.53...v0.1.0-alpha.54)
data/README.md CHANGED
@@ -15,7 +15,7 @@ To use this gem, install via Bundler by adding the following to your application
15
15
  <!-- x-release-please-start-version -->
16
16
 
17
17
  ```ruby
18
- gem "lithic", "~> 0.1.0.pre.alpha.54"
18
+ gem "lithic", "~> 0.1.0.pre.alpha.55"
19
19
  ```
20
20
 
21
21
  <!-- x-release-please-end -->
@@ -40,7 +40,7 @@ module Lithic
40
40
  # with the AUTHORIZED_USER in this field.
41
41
  #
42
42
  # @return [String, nil]
43
- optional :business_account_token, String
43
+ optional :business_account_token, String, nil?: true
44
44
 
45
45
  # @!attribute business_entity
46
46
  # Only present when user_type == "BUSINESS". Information about the business for
@@ -179,7 +179,7 @@ module Lithic
179
179
  #
180
180
  # @param beneficial_owner_individuals [Array<Lithic::Models::AccountHolderSimulateEnrollmentReviewResponse::BeneficialOwnerIndividual>] Only present when user_type == "BUSINESS". You must submit a list of all direct
181
181
  #
182
- # @param business_account_token [String] Only applicable for customers using the KYC-Exempt workflow to enroll authorized
182
+ # @param business_account_token [String, nil] Only applicable for customers using the KYC-Exempt workflow to enroll authorized
183
183
  #
184
184
  # @param business_entity [Lithic::Models::KYBBusinessEntity] Only present when user_type == "BUSINESS". Information about the business for wh
185
185
  #
@@ -47,7 +47,7 @@ module Lithic
47
47
  # with the AUTHORIZED_USER in this field.
48
48
  #
49
49
  # @return [String, nil]
50
- optional :business_account_token, String
50
+ optional :business_account_token, String, nil?: true
51
51
 
52
52
  # @!attribute business_entity
53
53
  # Only present when user_type == "BUSINESS". Information about the business for
@@ -187,7 +187,7 @@ module Lithic
187
187
  #
188
188
  # @param beneficial_owner_individuals [Array<Lithic::Models::AccountHolderUpdateResponse::KYBKYCPatchResponse::BeneficialOwnerIndividual>] Only present when user_type == "BUSINESS". You must submit a list of all direct
189
189
  #
190
- # @param business_account_token [String] Only applicable for customers using the KYC-Exempt workflow to enroll authorized
190
+ # @param business_account_token [String, nil] Only applicable for customers using the KYC-Exempt workflow to enroll authorized
191
191
  #
192
192
  # @param business_entity [Lithic::Models::KYBBusinessEntity] Only present when user_type == "BUSINESS". Information about the business for wh
193
193
  #
@@ -813,7 +813,7 @@ module Lithic
813
813
  # The token for the business account that the account holder is associated with
814
814
  #
815
815
  # @return [String, nil]
816
- optional :business_account_token, String
816
+ optional :business_account_token, String, nil?: true
817
817
 
818
818
  # @!attribute email
819
819
  # The email for the account holder
@@ -850,7 +850,7 @@ module Lithic
850
850
  #
851
851
  # @param address [Lithic::Models::AccountHolderUpdateResponse::PatchResponse::Address] The address for the account holder
852
852
  #
853
- # @param business_account_token [String] The token for the business account that the account holder is associated with
853
+ # @param business_account_token [String, nil] The token for the business account that the account holder is associated with
854
854
  #
855
855
  # @param email [String] The email for the account holder
856
856
  #
@@ -0,0 +1,252 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Lithic
4
+ module Models
5
+ module AuthRules
6
+ class ConditionalAuthorizationActionParameters < Lithic::Internal::Type::BaseModel
7
+ # @!attribute action
8
+ # The action to take if the conditions are met.
9
+ #
10
+ # @return [Symbol, Lithic::Models::AuthRules::ConditionalAuthorizationActionParameters::Action]
11
+ required :action, enum: -> { Lithic::AuthRules::ConditionalAuthorizationActionParameters::Action }
12
+
13
+ # @!attribute conditions
14
+ #
15
+ # @return [Array<Lithic::Models::AuthRules::ConditionalAuthorizationActionParameters::Condition>]
16
+ required :conditions,
17
+ -> { Lithic::Internal::Type::ArrayOf[Lithic::AuthRules::ConditionalAuthorizationActionParameters::Condition] }
18
+
19
+ # @!method initialize(action:, conditions:)
20
+ # @param action [Symbol, Lithic::Models::AuthRules::ConditionalAuthorizationActionParameters::Action] The action to take if the conditions are met.
21
+ #
22
+ # @param conditions [Array<Lithic::Models::AuthRules::ConditionalAuthorizationActionParameters::Condition>]
23
+
24
+ # The action to take if the conditions are met.
25
+ #
26
+ # @see Lithic::Models::AuthRules::ConditionalAuthorizationActionParameters#action
27
+ module Action
28
+ extend Lithic::Internal::Type::Enum
29
+
30
+ DECLINE = :DECLINE
31
+ CHALLENGE = :CHALLENGE
32
+
33
+ # @!method self.values
34
+ # @return [Array<Symbol>]
35
+ end
36
+
37
+ class Condition < Lithic::Internal::Type::BaseModel
38
+ # @!attribute attribute
39
+ # The attribute to target.
40
+ #
41
+ # The following attributes may be targeted:
42
+ #
43
+ # - `MCC`: A four-digit number listed in ISO 18245. An MCC is used to classify a
44
+ # business by the types of goods or services it provides.
45
+ # - `COUNTRY`: Country of entity of card acceptor. Possible values are: (1) all
46
+ # ISO 3166-1 alpha-3 country codes, (2) QZZ for Kosovo, and (3) ANT for
47
+ # Netherlands Antilles.
48
+ # - `CURRENCY`: 3-character alphabetic ISO 4217 code for the merchant currency of
49
+ # the transaction.
50
+ # - `MERCHANT_ID`: Unique alphanumeric identifier for the payment card acceptor
51
+ # (merchant).
52
+ # - `DESCRIPTOR`: Short description of card acceptor.
53
+ # - `LIABILITY_SHIFT`: Indicates whether chargeback liability shift to the issuer
54
+ # applies to the transaction. Valid values are `NONE`, `3DS_AUTHENTICATED`, or
55
+ # `TOKEN_AUTHENTICATED`.
56
+ # - `PAN_ENTRY_MODE`: The method by which the cardholder's primary account number
57
+ # (PAN) was entered. Valid values are `AUTO_ENTRY`, `BAR_CODE`, `CONTACTLESS`,
58
+ # `ECOMMERCE`, `ERROR_KEYED`, `ERROR_MAGNETIC_STRIPE`, `ICC`, `KEY_ENTERED`,
59
+ # `MAGNETIC_STRIPE`, `MANUAL`, `OCR`, `SECURE_CARDLESS`, `UNSPECIFIED`,
60
+ # `UNKNOWN`, `CREDENTIAL_ON_FILE`, or `ECOMMERCE`.
61
+ # - `TRANSACTION_AMOUNT`: The base transaction amount (in cents) plus the acquirer
62
+ # fee field in the settlement/cardholder billing currency. This is the amount
63
+ # the issuer should authorize against unless the issuer is paying the acquirer
64
+ # fee on behalf of the cardholder.
65
+ # - `CASH_AMOUNT`: The cash amount of the transaction in minor units (cents). This
66
+ # represents the amount of cash being withdrawn or advanced.
67
+ # - `RISK_SCORE`: Network-provided score assessing risk level associated with a
68
+ # given authorization. Scores are on a range of 0-999, with 0 representing the
69
+ # lowest risk and 999 representing the highest risk. For Visa transactions,
70
+ # where the raw score has a range of 0-99, Lithic will normalize the score by
71
+ # multiplying the raw score by 10x.
72
+ # - `CARD_TRANSACTION_COUNT_15M`: The number of transactions on the card in the
73
+ # trailing 15 minutes before the authorization.
74
+ # - `CARD_TRANSACTION_COUNT_1H`: The number of transactions on the card in the
75
+ # trailing hour up and until the authorization.
76
+ # - `CARD_TRANSACTION_COUNT_24H`: The number of transactions on the card in the
77
+ # trailing 24 hours up and until the authorization.
78
+ # - `CARD_STATE`: The current state of the card associated with the transaction.
79
+ # Valid values are `CLOSED`, `OPEN`, `PAUSED`, `PENDING_ACTIVATION`,
80
+ # `PENDING_FULFILLMENT`.
81
+ # - `PIN_ENTERED`: Indicates whether a PIN was entered during the transaction.
82
+ # Valid values are `TRUE`, `FALSE`.
83
+ # - `PIN_STATUS`: The current state of card's PIN. Valid values are `NOT_SET`,
84
+ # `OK`, `BLOCKED`.
85
+ # - `WALLET_TYPE`: For transactions using a digital wallet token, indicates the
86
+ # source of the token. Valid values are `APPLE_PAY`, `GOOGLE_PAY`,
87
+ # `SAMSUNG_PAY`, `MASTERPASS`, `MERCHANT`, `OTHER`, `NONE`.
88
+ # - `TRANSACTION_INITIATOR`: The entity that initiated the transaction indicates
89
+ # the source of the token. Valid values are `CARDHOLDER`, `MERCHANT`, `UNKNOWN`.
90
+ # - `ADDRESS_MATCH`: Lithic's evaluation result comparing transaction's address
91
+ # data with the cardholder KYC data if it exists. Valid values are `MATCH`,
92
+ # `MATCH_ADDRESS_ONLY`, `MATCH_ZIP_ONLY`,`MISMATCH`,`NOT_PRESENT`.
93
+ #
94
+ # @return [Symbol, Lithic::Models::AuthRules::ConditionalAuthorizationActionParameters::Condition::Attribute, nil]
95
+ optional :attribute,
96
+ enum: -> { Lithic::AuthRules::ConditionalAuthorizationActionParameters::Condition::Attribute }
97
+
98
+ # @!attribute operation
99
+ # The operation to apply to the attribute
100
+ #
101
+ # @return [Symbol, Lithic::Models::AuthRules::ConditionalAuthorizationActionParameters::Condition::Operation, nil]
102
+ optional :operation,
103
+ enum: -> { Lithic::AuthRules::ConditionalAuthorizationActionParameters::Condition::Operation }
104
+
105
+ # @!attribute value
106
+ # A regex string, to be used with `MATCHES` or `DOES_NOT_MATCH`
107
+ #
108
+ # @return [String, Integer, Array<String>, nil]
109
+ optional :value,
110
+ union: -> { Lithic::AuthRules::ConditionalAuthorizationActionParameters::Condition::Value }
111
+
112
+ # @!method initialize(attribute: nil, operation: nil, value: nil)
113
+ # Some parameter documentations has been truncated, see
114
+ # {Lithic::Models::AuthRules::ConditionalAuthorizationActionParameters::Condition}
115
+ # for more details.
116
+ #
117
+ # @param attribute [Symbol, Lithic::Models::AuthRules::ConditionalAuthorizationActionParameters::Condition::Attribute] The attribute to target.
118
+ #
119
+ # @param operation [Symbol, Lithic::Models::AuthRules::ConditionalAuthorizationActionParameters::Condition::Operation] The operation to apply to the attribute
120
+ #
121
+ # @param value [String, Integer, Array<String>] A regex string, to be used with `MATCHES` or `DOES_NOT_MATCH`
122
+
123
+ # The attribute to target.
124
+ #
125
+ # The following attributes may be targeted:
126
+ #
127
+ # - `MCC`: A four-digit number listed in ISO 18245. An MCC is used to classify a
128
+ # business by the types of goods or services it provides.
129
+ # - `COUNTRY`: Country of entity of card acceptor. Possible values are: (1) all
130
+ # ISO 3166-1 alpha-3 country codes, (2) QZZ for Kosovo, and (3) ANT for
131
+ # Netherlands Antilles.
132
+ # - `CURRENCY`: 3-character alphabetic ISO 4217 code for the merchant currency of
133
+ # the transaction.
134
+ # - `MERCHANT_ID`: Unique alphanumeric identifier for the payment card acceptor
135
+ # (merchant).
136
+ # - `DESCRIPTOR`: Short description of card acceptor.
137
+ # - `LIABILITY_SHIFT`: Indicates whether chargeback liability shift to the issuer
138
+ # applies to the transaction. Valid values are `NONE`, `3DS_AUTHENTICATED`, or
139
+ # `TOKEN_AUTHENTICATED`.
140
+ # - `PAN_ENTRY_MODE`: The method by which the cardholder's primary account number
141
+ # (PAN) was entered. Valid values are `AUTO_ENTRY`, `BAR_CODE`, `CONTACTLESS`,
142
+ # `ECOMMERCE`, `ERROR_KEYED`, `ERROR_MAGNETIC_STRIPE`, `ICC`, `KEY_ENTERED`,
143
+ # `MAGNETIC_STRIPE`, `MANUAL`, `OCR`, `SECURE_CARDLESS`, `UNSPECIFIED`,
144
+ # `UNKNOWN`, `CREDENTIAL_ON_FILE`, or `ECOMMERCE`.
145
+ # - `TRANSACTION_AMOUNT`: The base transaction amount (in cents) plus the acquirer
146
+ # fee field in the settlement/cardholder billing currency. This is the amount
147
+ # the issuer should authorize against unless the issuer is paying the acquirer
148
+ # fee on behalf of the cardholder.
149
+ # - `CASH_AMOUNT`: The cash amount of the transaction in minor units (cents). This
150
+ # represents the amount of cash being withdrawn or advanced.
151
+ # - `RISK_SCORE`: Network-provided score assessing risk level associated with a
152
+ # given authorization. Scores are on a range of 0-999, with 0 representing the
153
+ # lowest risk and 999 representing the highest risk. For Visa transactions,
154
+ # where the raw score has a range of 0-99, Lithic will normalize the score by
155
+ # multiplying the raw score by 10x.
156
+ # - `CARD_TRANSACTION_COUNT_15M`: The number of transactions on the card in the
157
+ # trailing 15 minutes before the authorization.
158
+ # - `CARD_TRANSACTION_COUNT_1H`: The number of transactions on the card in the
159
+ # trailing hour up and until the authorization.
160
+ # - `CARD_TRANSACTION_COUNT_24H`: The number of transactions on the card in the
161
+ # trailing 24 hours up and until the authorization.
162
+ # - `CARD_STATE`: The current state of the card associated with the transaction.
163
+ # Valid values are `CLOSED`, `OPEN`, `PAUSED`, `PENDING_ACTIVATION`,
164
+ # `PENDING_FULFILLMENT`.
165
+ # - `PIN_ENTERED`: Indicates whether a PIN was entered during the transaction.
166
+ # Valid values are `TRUE`, `FALSE`.
167
+ # - `PIN_STATUS`: The current state of card's PIN. Valid values are `NOT_SET`,
168
+ # `OK`, `BLOCKED`.
169
+ # - `WALLET_TYPE`: For transactions using a digital wallet token, indicates the
170
+ # source of the token. Valid values are `APPLE_PAY`, `GOOGLE_PAY`,
171
+ # `SAMSUNG_PAY`, `MASTERPASS`, `MERCHANT`, `OTHER`, `NONE`.
172
+ # - `TRANSACTION_INITIATOR`: The entity that initiated the transaction indicates
173
+ # the source of the token. Valid values are `CARDHOLDER`, `MERCHANT`, `UNKNOWN`.
174
+ # - `ADDRESS_MATCH`: Lithic's evaluation result comparing transaction's address
175
+ # data with the cardholder KYC data if it exists. Valid values are `MATCH`,
176
+ # `MATCH_ADDRESS_ONLY`, `MATCH_ZIP_ONLY`,`MISMATCH`,`NOT_PRESENT`.
177
+ #
178
+ # @see Lithic::Models::AuthRules::ConditionalAuthorizationActionParameters::Condition#attribute
179
+ module Attribute
180
+ extend Lithic::Internal::Type::Enum
181
+
182
+ MCC = :MCC
183
+ COUNTRY = :COUNTRY
184
+ CURRENCY = :CURRENCY
185
+ MERCHANT_ID = :MERCHANT_ID
186
+ DESCRIPTOR = :DESCRIPTOR
187
+ LIABILITY_SHIFT = :LIABILITY_SHIFT
188
+ PAN_ENTRY_MODE = :PAN_ENTRY_MODE
189
+ TRANSACTION_AMOUNT = :TRANSACTION_AMOUNT
190
+ CASH_AMOUNT = :CASH_AMOUNT
191
+ RISK_SCORE = :RISK_SCORE
192
+ CARD_TRANSACTION_COUNT_15_M = :CARD_TRANSACTION_COUNT_15M
193
+ CARD_TRANSACTION_COUNT_1_H = :CARD_TRANSACTION_COUNT_1H
194
+ CARD_TRANSACTION_COUNT_24_H = :CARD_TRANSACTION_COUNT_24H
195
+ CARD_STATE = :CARD_STATE
196
+ PIN_ENTERED = :PIN_ENTERED
197
+ PIN_STATUS = :PIN_STATUS
198
+ WALLET_TYPE = :WALLET_TYPE
199
+ TRANSACTION_INITIATOR = :TRANSACTION_INITIATOR
200
+ ADDRESS_MATCH = :ADDRESS_MATCH
201
+
202
+ # @!method self.values
203
+ # @return [Array<Symbol>]
204
+ end
205
+
206
+ # The operation to apply to the attribute
207
+ #
208
+ # @see Lithic::Models::AuthRules::ConditionalAuthorizationActionParameters::Condition#operation
209
+ module Operation
210
+ extend Lithic::Internal::Type::Enum
211
+
212
+ IS_ONE_OF = :IS_ONE_OF
213
+ IS_NOT_ONE_OF = :IS_NOT_ONE_OF
214
+ MATCHES = :MATCHES
215
+ DOES_NOT_MATCH = :DOES_NOT_MATCH
216
+ IS_EQUAL_TO = :IS_EQUAL_TO
217
+ IS_NOT_EQUAL_TO = :IS_NOT_EQUAL_TO
218
+ IS_GREATER_THAN = :IS_GREATER_THAN
219
+ IS_GREATER_THAN_OR_EQUAL_TO = :IS_GREATER_THAN_OR_EQUAL_TO
220
+ IS_LESS_THAN = :IS_LESS_THAN
221
+ IS_LESS_THAN_OR_EQUAL_TO = :IS_LESS_THAN_OR_EQUAL_TO
222
+
223
+ # @!method self.values
224
+ # @return [Array<Symbol>]
225
+ end
226
+
227
+ # A regex string, to be used with `MATCHES` or `DOES_NOT_MATCH`
228
+ #
229
+ # @see Lithic::Models::AuthRules::ConditionalAuthorizationActionParameters::Condition#value
230
+ module Value
231
+ extend Lithic::Internal::Type::Union
232
+
233
+ # A regex string, to be used with `MATCHES` or `DOES_NOT_MATCH`
234
+ variant String
235
+
236
+ # A number, to be used with `IS_GREATER_THAN`, `IS_GREATER_THAN_OR_EQUAL_TO`, `IS_LESS_THAN`, `IS_LESS_THAN_OR_EQUAL_TO`, `IS_EQUAL_TO`, or `IS_NOT_EQUAL_TO`
237
+ variant Integer
238
+
239
+ # An array of strings, to be used with `IS_ONE_OF` or `IS_NOT_ONE_OF`
240
+ variant -> { Lithic::Models::AuthRules::ConditionalAuthorizationActionParameters::Condition::Value::StringArray }
241
+
242
+ # @!method self.variants
243
+ # @return [Array(String, Integer, Array<String>)]
244
+
245
+ # @type [Lithic::Internal::Type::Converter]
246
+ StringArray = Lithic::Internal::Type::ArrayOf[String]
247
+ end
248
+ end
249
+ end
250
+ end
251
+ end
252
+ end