Class: Lithic::Models::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/lithic/models/auth_rules/conditional_card_transaction_update_action_parameters.rb

Defined Under Namespace

Modules: Attribute Classes: Parameters

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Internal::Type::BaseModel

==, #==, #[], coerce, #deconstruct_keys, #deep_to_h, dump, fields, hash, #hash, inherited, inspect, #inspect, known_fields, optional, recursively_to_h, required, #to_h, #to_json, #to_s, to_sorbet_type, #to_yaml

Methods included from Internal::Type::Converter

#coerce, coerce, #dump, dump, #inspect, inspect, meta_info, new_coerce_state, type_info

Methods included from Internal::Util::SorbetRuntimeSupport

#const_missing, #define_sorbet_constant!, #sorbet_constant_defined?, #to_sorbet_type, to_sorbet_type

Constructor Details

#initialize(attribute:, operation:, value:, parameters: nil) ⇒ Object

Some parameter documentations has been truncated, see Lithic::Models::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition for more details.

Parameters:



24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
# File 'lib/lithic/models/auth_rules/conditional_card_transaction_update_action_parameters.rb', line 24

class Condition < Lithic::Internal::Type::BaseModel
  # @!attribute attribute
  #   The attribute to target.
  #
  #   The following attributes may be targeted:
  #
  #   - `MCC`: A four-digit number listed in ISO 18245. An MCC is used to classify a
  #     business by the types of goods or services it provides.
  #   - `COUNTRY`: Country of entity of card acceptor. Possible values are: (1) all
  #     ISO 3166-1 alpha-3 country codes, (2) QZZ for Kosovo, and (3) ANT for
  #     Netherlands Antilles.
  #   - `CURRENCY`: 3-character alphabetic ISO 4217 code for the merchant currency of
  #     the transaction.
  #   - `MERCHANT_ID`: Unique alphanumeric identifier for the payment card acceptor
  #     (merchant).
  #   - `DESCRIPTOR`: Short description of card acceptor.
  #   - `TRANSACTION_AMOUNT`: The base transaction amount (in cents) plus the acquirer
  #     fee field in the settlement/cardholder billing currency. This is the amount
  #     the issuer should authorize against unless the issuer is paying the acquirer
  #     fee on behalf of the cardholder.
  #   - `RISK_SCORE`: Network-provided score assessing risk level associated with a
  #     given authorization. Scores are on a range of 0-999, with 0 representing the
  #     lowest risk and 999 representing the highest risk. For Visa transactions,
  #     where the raw score has a range of 0-99, Lithic will normalize the score by
  #     multiplying the raw score by 10x.
  #   - `TRANSACTION_STATUS`: The status of the transaction. Valid values are
  #     `PENDING`, `VOIDED`, `SETTLING`, `SETTLED`, `BOUNCED`, `RETURNED`, `DECLINED`,
  #     `EXPIRED`.
  #   - `LAST_EVENT_TYPE`: The type of the most recent event on the transaction. Valid
  #     values are `AUTHORIZATION`, `AUTHORIZATION_ADVICE`, `AUTHORIZATION_EXPIRY`,
  #     `AUTHORIZATION_REVERSAL`, `BALANCE_INQUIRY`, `CLEARING`, `CORRECTION_CREDIT`,
  #     `CORRECTION_DEBIT`, `CREDIT_AUTHORIZATION`, `CREDIT_AUTHORIZATION_ADVICE`,
  #     `FINANCIAL_AUTHORIZATION`, `FINANCIAL_CREDIT_AUTHORIZATION`, `RETURN`,
  #     `RETURN_REVERSAL`.
  #   - `LIABILITY_SHIFT`: Indicates whether chargeback liability shift to the issuer
  #     applies to the transaction. Valid values are `NONE`, `3DS_AUTHENTICATED`, or
  #     `TOKEN_AUTHENTICATED`.
  #   - `PAN_ENTRY_MODE`: The method by which the cardholder's primary account number
  #     (PAN) was entered. Valid values are `AUTO_ENTRY`, `BAR_CODE`, `CONTACTLESS`,
  #     `ECOMMERCE`, `ERROR_KEYED`, `ERROR_MAGNETIC_STRIPE`, `ICC`, `KEY_ENTERED`,
  #     `MAGNETIC_STRIPE`, `MANUAL`, `OCR`, `SECURE_CARDLESS`, `UNSPECIFIED`,
  #     `UNKNOWN`, or `CREDENTIAL_ON_FILE`.
  #   - `WALLET_TYPE`: For transactions using a digital wallet token, indicates the
  #     source of the token. Valid values are `APPLE_PAY`, `GOOGLE_PAY`,
  #     `SAMSUNG_PAY`, `MASTERPASS`, `MERCHANT`, `OTHER`, `NONE`.
  #   - `CARD_AGE`: The age of the card in seconds at the time of the transaction.
  #   - `ACCOUNT_AGE`: The age of the account in seconds at the time of the
  #     transaction.
  #   - `SPEND_VELOCITY_COUNT`: The number of transactions matching the specified
  #     filters within the given period. Requires `parameters` with `scope`, `period`,
  #     and optional `filters`.
  #   - `SPEND_VELOCITY_AMOUNT`: The total spend amount (in cents) of transactions
  #     matching the specified filters within the given period. Requires `parameters`
  #     with `scope`, `period`, and optional `filters`.
  #
  #   @return [Symbol, Lithic::Models::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Attribute]
  required :attribute,
           enum: -> { Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Attribute }

  # @!attribute operation
  #   The operation to apply to the attribute
  #
  #   @return [Symbol, Lithic::Models::AuthRules::ConditionalOperation]
  required :operation, enum: -> { Lithic::AuthRules::ConditionalOperation }

  # @!attribute value
  #   A regex string, to be used with `MATCHES` or `DOES_NOT_MATCH`
  #
  #   @return [String, Integer, Array<String>, Time]
  required :value, union: -> { Lithic::AuthRules::ConditionalValue }

  # @!attribute parameters
  #   Additional parameters for spend velocity attributes. Required when `attribute`
  #   is `SPEND_VELOCITY_COUNT` or `SPEND_VELOCITY_AMOUNT`. Not used for other
  #   attributes.
  #
  #   @return [Lithic::Models::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters, nil]
  optional :parameters,
           -> { Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters }

  # @!method initialize(attribute:, operation:, value:, parameters: nil)
  #   Some parameter documentations has been truncated, see
  #   {Lithic::Models::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition}
  #   for more details.
  #
  #   @param attribute [Symbol, Lithic::Models::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Attribute] The attribute to target.
  #
  #   @param operation [Symbol, Lithic::Models::AuthRules::ConditionalOperation] The operation to apply to the attribute
  #
  #   @param value [String, Integer, Array<String>, Time] A regex string, to be used with `MATCHES` or `DOES_NOT_MATCH`
  #
  #   @param parameters [Lithic::Models::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters] Additional parameters for spend velocity attributes. Required when `attribute` i

  # The attribute to target.
  #
  # The following attributes may be targeted:
  #
  # - `MCC`: A four-digit number listed in ISO 18245. An MCC is used to classify a
  #   business by the types of goods or services it provides.
  # - `COUNTRY`: Country of entity of card acceptor. Possible values are: (1) all
  #   ISO 3166-1 alpha-3 country codes, (2) QZZ for Kosovo, and (3) ANT for
  #   Netherlands Antilles.
  # - `CURRENCY`: 3-character alphabetic ISO 4217 code for the merchant currency of
  #   the transaction.
  # - `MERCHANT_ID`: Unique alphanumeric identifier for the payment card acceptor
  #   (merchant).
  # - `DESCRIPTOR`: Short description of card acceptor.
  # - `TRANSACTION_AMOUNT`: The base transaction amount (in cents) plus the acquirer
  #   fee field in the settlement/cardholder billing currency. This is the amount
  #   the issuer should authorize against unless the issuer is paying the acquirer
  #   fee on behalf of the cardholder.
  # - `RISK_SCORE`: Network-provided score assessing risk level associated with a
  #   given authorization. Scores are on a range of 0-999, with 0 representing the
  #   lowest risk and 999 representing the highest risk. For Visa transactions,
  #   where the raw score has a range of 0-99, Lithic will normalize the score by
  #   multiplying the raw score by 10x.
  # - `TRANSACTION_STATUS`: The status of the transaction. Valid values are
  #   `PENDING`, `VOIDED`, `SETTLING`, `SETTLED`, `BOUNCED`, `RETURNED`, `DECLINED`,
  #   `EXPIRED`.
  # - `LAST_EVENT_TYPE`: The type of the most recent event on the transaction. Valid
  #   values are `AUTHORIZATION`, `AUTHORIZATION_ADVICE`, `AUTHORIZATION_EXPIRY`,
  #   `AUTHORIZATION_REVERSAL`, `BALANCE_INQUIRY`, `CLEARING`, `CORRECTION_CREDIT`,
  #   `CORRECTION_DEBIT`, `CREDIT_AUTHORIZATION`, `CREDIT_AUTHORIZATION_ADVICE`,
  #   `FINANCIAL_AUTHORIZATION`, `FINANCIAL_CREDIT_AUTHORIZATION`, `RETURN`,
  #   `RETURN_REVERSAL`.
  # - `LIABILITY_SHIFT`: Indicates whether chargeback liability shift to the issuer
  #   applies to the transaction. Valid values are `NONE`, `3DS_AUTHENTICATED`, or
  #   `TOKEN_AUTHENTICATED`.
  # - `PAN_ENTRY_MODE`: The method by which the cardholder's primary account number
  #   (PAN) was entered. Valid values are `AUTO_ENTRY`, `BAR_CODE`, `CONTACTLESS`,
  #   `ECOMMERCE`, `ERROR_KEYED`, `ERROR_MAGNETIC_STRIPE`, `ICC`, `KEY_ENTERED`,
  #   `MAGNETIC_STRIPE`, `MANUAL`, `OCR`, `SECURE_CARDLESS`, `UNSPECIFIED`,
  #   `UNKNOWN`, or `CREDENTIAL_ON_FILE`.
  # - `WALLET_TYPE`: For transactions using a digital wallet token, indicates the
  #   source of the token. Valid values are `APPLE_PAY`, `GOOGLE_PAY`,
  #   `SAMSUNG_PAY`, `MASTERPASS`, `MERCHANT`, `OTHER`, `NONE`.
  # - `CARD_AGE`: The age of the card in seconds at the time of the transaction.
  # - `ACCOUNT_AGE`: The age of the account in seconds at the time of the
  #   transaction.
  # - `SPEND_VELOCITY_COUNT`: The number of transactions matching the specified
  #   filters within the given period. Requires `parameters` with `scope`, `period`,
  #   and optional `filters`.
  # - `SPEND_VELOCITY_AMOUNT`: The total spend amount (in cents) of transactions
  #   matching the specified filters within the given period. Requires `parameters`
  #   with `scope`, `period`, and optional `filters`.
  #
  # @see Lithic::Models::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition#attribute
  module Attribute
    extend Lithic::Internal::Type::Enum

    MCC = :MCC
    COUNTRY = :COUNTRY
    CURRENCY = :CURRENCY
    MERCHANT_ID = :MERCHANT_ID
    DESCRIPTOR = :DESCRIPTOR
    TRANSACTION_AMOUNT = :TRANSACTION_AMOUNT
    RISK_SCORE = :RISK_SCORE
    TRANSACTION_STATUS = :TRANSACTION_STATUS
    LAST_EVENT_TYPE = :LAST_EVENT_TYPE
    LIABILITY_SHIFT = :LIABILITY_SHIFT
    PAN_ENTRY_MODE = :PAN_ENTRY_MODE
    WALLET_TYPE = :WALLET_TYPE
    CARD_AGE = :CARD_AGE
    ACCOUNT_AGE = :ACCOUNT_AGE
    SPEND_VELOCITY_COUNT = :SPEND_VELOCITY_COUNT
    SPEND_VELOCITY_AMOUNT = :SPEND_VELOCITY_AMOUNT

    # @!method self.values
    #   @return [Array<Symbol>]
  end

  # @see Lithic::Models::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition#parameters
  class Parameters < Lithic::Internal::Type::BaseModel
    # @!attribute filters
    #
    #   @return [Lithic::Models::AuthRules::SpendVelocityFilters, nil]
    optional :filters, -> { Lithic::AuthRules::SpendVelocityFilters }

    # @!attribute period
    #   The time period over which to calculate the spend velocity.
    #
    #   @return [Lithic::Models::AuthRules::VelocityLimitPeriod::TrailingWindowObject, Lithic::Models::AuthRules::VelocityLimitPeriod::FixedWindowDay, Lithic::Models::AuthRules::VelocityLimitPeriod::FixedWindowWeek, Lithic::Models::AuthRules::VelocityLimitPeriod::FixedWindowMonth, Lithic::Models::AuthRules::VelocityLimitPeriod::FixedWindowYear, nil]
    optional :period, union: -> { Lithic::AuthRules::VelocityLimitPeriod }

    # @!attribute scope
    #   The entity scope to evaluate the attribute against.
    #
    #   @return [Symbol, Lithic::Models::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters::Scope, nil]
    optional :scope,
             enum: -> { Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters::Scope }

    # @!method initialize(filters: nil, period: nil, scope: nil)
    #   Additional parameters for spend velocity attributes. Required when `attribute`
    #   is `SPEND_VELOCITY_COUNT` or `SPEND_VELOCITY_AMOUNT`. Not used for other
    #   attributes.
    #
    #   @param filters [Lithic::Models::AuthRules::SpendVelocityFilters]
    #
    #   @param period [Lithic::Models::AuthRules::VelocityLimitPeriod::TrailingWindowObject, Lithic::Models::AuthRules::VelocityLimitPeriod::FixedWindowDay, Lithic::Models::AuthRules::VelocityLimitPeriod::FixedWindowWeek, Lithic::Models::AuthRules::VelocityLimitPeriod::FixedWindowMonth, Lithic::Models::AuthRules::VelocityLimitPeriod::FixedWindowYear] The time period over which to calculate the spend velocity.
    #
    #   @param scope [Symbol, Lithic::Models::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters::Scope] The entity scope to evaluate the attribute against.

    # The entity scope to evaluate the attribute against.
    #
    # @see Lithic::Models::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters#scope
    module Scope
      extend Lithic::Internal::Type::Enum

      CARD = :CARD
      ACCOUNT = :ACCOUNT
      GLOBAL = :GLOBAL

      # @!method self.values
      #   @return [Array<Symbol>]
    end
  end
end

Instance Attribute Details

#attributeSymbol, Lithic::Models::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Attribute

The attribute to target.

The following attributes may be targeted:

  • ‘MCC`: A four-digit number listed in ISO 18245. An MCC is used to classify a business by the types of goods or services it provides.

  • ‘COUNTRY`: Country of entity of card acceptor. Possible values are: (1) all ISO 3166-1 alpha-3 country codes, (2) QZZ for Kosovo, and (3) ANT for Netherlands Antilles.

  • ‘CURRENCY`: 3-character alphabetic ISO 4217 code for the merchant currency of the transaction.

  • ‘MERCHANT_ID`: Unique alphanumeric identifier for the payment card acceptor (merchant).

  • ‘DESCRIPTOR`: Short description of card acceptor.

  • ‘TRANSACTION_AMOUNT`: The base transaction amount (in cents) plus the acquirer fee field in the settlement/cardholder billing currency. This is the amount the issuer should authorize against unless the issuer is paying the acquirer fee on behalf of the cardholder.

  • ‘RISK_SCORE`: Network-provided score assessing risk level associated with a given authorization. Scores are on a range of 0-999, with 0 representing the lowest risk and 999 representing the highest risk. For Visa transactions, where the raw score has a range of 0-99, Lithic will normalize the score by multiplying the raw score by 10x.

  • ‘TRANSACTION_STATUS`: The status of the transaction. Valid values are `PENDING`, `VOIDED`, `SETTLING`, `SETTLED`, `BOUNCED`, `RETURNED`, `DECLINED`, `EXPIRED`.

  • ‘LAST_EVENT_TYPE`: The type of the most recent event on the transaction. Valid values are `AUTHORIZATION`, `AUTHORIZATION_ADVICE`, `AUTHORIZATION_EXPIRY`, `AUTHORIZATION_REVERSAL`, `BALANCE_INQUIRY`, `CLEARING`, `CORRECTION_CREDIT`, `CORRECTION_DEBIT`, `CREDIT_AUTHORIZATION`, `CREDIT_AUTHORIZATION_ADVICE`, `FINANCIAL_AUTHORIZATION`, `FINANCIAL_CREDIT_AUTHORIZATION`, `RETURN`, `RETURN_REVERSAL`.

  • ‘LIABILITY_SHIFT`: Indicates whether chargeback liability shift to the issuer applies to the transaction. Valid values are `NONE`, `3DS_AUTHENTICATED`, or `TOKEN_AUTHENTICATED`.

  • ‘PAN_ENTRY_MODE`: The method by which the cardholder’s primary account number (PAN) was entered. Valid values are ‘AUTO_ENTRY`, `BAR_CODE`, `CONTACTLESS`, `ECOMMERCE`, `ERROR_KEYED`, `ERROR_MAGNETIC_STRIPE`, `ICC`, `KEY_ENTERED`, `MAGNETIC_STRIPE`, `MANUAL`, `OCR`, `SECURE_CARDLESS`, `UNSPECIFIED`, `UNKNOWN`, or `CREDENTIAL_ON_FILE`.

  • ‘WALLET_TYPE`: For transactions using a digital wallet token, indicates the source of the token. Valid values are `APPLE_PAY`, `GOOGLE_PAY`, `SAMSUNG_PAY`, `MASTERPASS`, `MERCHANT`, `OTHER`, `NONE`.

  • ‘CARD_AGE`: The age of the card in seconds at the time of the transaction.

  • ‘ACCOUNT_AGE`: The age of the account in seconds at the time of the transaction.

  • ‘SPEND_VELOCITY_COUNT`: The number of transactions matching the specified filters within the given period. Requires `parameters` with `scope`, `period`, and optional `filters`.

  • ‘SPEND_VELOCITY_AMOUNT`: The total spend amount (in cents) of transactions matching the specified filters within the given period. Requires `parameters` with `scope`, `period`, and optional `filters`.



80
81
# File 'lib/lithic/models/auth_rules/conditional_card_transaction_update_action_parameters.rb', line 80

required :attribute,
enum: -> { Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Attribute }

#operationSymbol, Lithic::Models::AuthRules::ConditionalOperation

The operation to apply to the attribute



87
# File 'lib/lithic/models/auth_rules/conditional_card_transaction_update_action_parameters.rb', line 87

required :operation, enum: -> { Lithic::AuthRules::ConditionalOperation }

#parametersLithic::Models::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters?

Additional parameters for spend velocity attributes. Required when ‘attribute` is `SPEND_VELOCITY_COUNT` or `SPEND_VELOCITY_AMOUNT`. Not used for other attributes.



101
102
# File 'lib/lithic/models/auth_rules/conditional_card_transaction_update_action_parameters.rb', line 101

optional :parameters,
-> { Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters }

#valueString, ...

A regex string, to be used with ‘MATCHES` or `DOES_NOT_MATCH`

Returns:

  • (String, Integer, Array<String>, Time)


93
# File 'lib/lithic/models/auth_rules/conditional_card_transaction_update_action_parameters.rb', line 93

required :value, union: -> { Lithic::AuthRules::ConditionalValue }

Class Method Details

.valuesArray<Symbol>

Returns:

  • (Array<Symbol>)


# File 'lib/lithic/models/auth_rules/conditional_card_transaction_update_action_parameters.rb', line 191