From e98a96d9cc37a5b233740a0fe7c60f14de1dcbf7 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Mon, 8 Dec 2025 23:54:33 +0000 Subject: [PATCH 1/2] feat(api): api update --- .stats.yml | 4 +- lib/increase/models/card_payment.rb | 1568 +++++++++++++--- rbi/increase/models/card_payment.rbi | 2519 +++++++++++++++++++++++--- sig/increase/models/card_payment.rbs | 1194 +++++++++--- 4 files changed, 4530 insertions(+), 755 deletions(-) diff --git a/.stats.yml b/.stats.yml index 537cdff6..f5d26caa 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 229 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/increase%2Fincrease-942f7494ee0f14c1634ede0989985359cea633e5eece3d761910e7ffd6ac0fd8.yml -openapi_spec_hash: d87134899fb29e27832158facf9d67eb +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/increase%2Fincrease-79f55910f087930ab5447372ef856ab63fe18f08d2151c59b8aebcccd6f41700.yml +openapi_spec_hash: 5b6d915106e3361863168d9b084a570c config_hash: b6f365add90e618b2174634df140826e diff --git a/lib/increase/models/card_payment.rb b/lib/increase/models/card_payment.rb index 2af88815..806b59ab 100644 --- a/lib/increase/models/card_payment.rb +++ b/lib/increase/models/card_payment.rb @@ -114,6 +114,16 @@ class Element < Increase::Internal::Type::BaseModel -> { Increase::CardPayment::Element::CardAuthorizationExpiration }, nil?: true + # @!attribute card_balance_inquiry + # A Card Balance Inquiry object. This field will be present in the JSON response + # if and only if `category` is equal to `card_balance_inquiry`. Card Balance + # Inquiries are transactions that allow merchants to check the available balance + # on a card without placing a hold on funds, commonly used when a customer + # requests their balance at an ATM. + # + # @return [Increase::Models::CardPayment::Element::CardBalanceInquiry, nil] + required :card_balance_inquiry, -> { Increase::CardPayment::Element::CardBalanceInquiry }, nil?: true + # @!attribute card_decline # A Card Decline object. This field will be present in the JSON response if and # only if `category` is equal to `card_decline`. @@ -208,7 +218,7 @@ class Element < Increase::Internal::Type::BaseModel # @return [Increase::Models::CardPayment::Element::Other, nil] required :other, -> { Increase::CardPayment::Element::Other }, nil?: true - # @!method initialize(card_authentication:, card_authorization:, card_authorization_expiration:, card_decline:, card_financial:, card_fuel_confirmation:, card_increment:, card_refund:, card_reversal:, card_settlement:, card_validation:, category:, created_at:, other:) + # @!method initialize(card_authentication:, card_authorization:, card_authorization_expiration:, card_balance_inquiry:, card_decline:, card_financial:, card_fuel_confirmation:, card_increment:, card_refund:, card_reversal:, card_settlement:, card_validation:, category:, created_at:, other:) # Some parameter documentations has been truncated, see # {Increase::Models::CardPayment::Element} for more details. # @@ -218,6 +228,8 @@ class Element < Increase::Internal::Type::BaseModel # # @param card_authorization_expiration [Increase::Models::CardPayment::Element::CardAuthorizationExpiration, nil] A Card Authorization Expiration object. This field will be present in the JSON r # + # @param card_balance_inquiry [Increase::Models::CardPayment::Element::CardBalanceInquiry, nil] A Card Balance Inquiry object. This field will be present in the JSON response i + # # @param card_decline [Increase::Models::CardPayment::Element::CardDecline, nil] A Card Decline object. This field will be present in the JSON response if and on # # @param card_financial [Increase::Models::CardPayment::Element::CardFinancial, nil] A Card Financial object. This field will be present in the JSON response if and @@ -985,47 +997,1257 @@ class AdditionalAmounts < Increase::Internal::Type::BaseModel # # @return [Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Unknown, nil] required :unknown, - -> { Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Unknown }, + -> { Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Unknown }, + nil?: true + + # @!attribute vision + # The part of this transaction amount that was for vision-related services. + # + # @return [Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Vision, nil] + required :vision, + -> { Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Vision }, + nil?: true + + # @!method initialize(clinic:, dental:, original:, prescription:, surcharge:, total_cumulative:, total_healthcare:, transit:, unknown:, vision:) + # Some parameter documentations has been truncated, see + # {Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts} + # for more details. + # + # Additional amounts associated with the card authorization, such as ATM + # surcharges fees. These are usually a subset of the `amount` field and are used + # to provide more detailed information about the transaction. + # + # @param clinic [Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Clinic, nil] The part of this transaction amount that was for clinic-related services. + # + # @param dental [Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Dental, nil] The part of this transaction amount that was for dental-related services. + # + # @param original [Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Original, nil] The original pre-authorized amount. + # + # @param prescription [Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Prescription, nil] The part of this transaction amount that was for healthcare prescriptions. + # + # @param surcharge [Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Surcharge, nil] The surcharge amount charged for this transaction by the merchant. + # + # @param total_cumulative [Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::TotalCumulative, nil] The total amount of a series of incremental authorizations, optionally provided. + # + # @param total_healthcare [Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::TotalHealthcare, nil] The total amount of healthcare-related additional amounts. + # + # @param transit [Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Transit, nil] The part of this transaction amount that was for transit-related services. + # + # @param unknown [Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Unknown, nil] An unknown additional amount. + # + # @param vision [Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Vision, nil] The part of this transaction amount that was for vision-related services. + + # @see Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts#clinic + class Clinic < Increase::Internal::Type::BaseModel + # @!attribute amount + # The amount in minor units of the `currency` field. The amount is positive if it + # is added to the amount (such as an ATM surcharge fee) and negative if it is + # subtracted from the amount (such as a discount). + # + # @return [Integer] + required :amount, Integer + + # @!attribute currency + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional + # amount's currency. + # + # @return [String] + required :currency, String + + # @!method initialize(amount:, currency:) + # Some parameter documentations has been truncated, see + # {Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Clinic} + # for more details. + # + # The part of this transaction amount that was for clinic-related services. + # + # @param amount [Integer] The amount in minor units of the `currency` field. The amount is positive if it + # + # @param currency [String] The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional a + end + + # @see Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts#dental + class Dental < Increase::Internal::Type::BaseModel + # @!attribute amount + # The amount in minor units of the `currency` field. The amount is positive if it + # is added to the amount (such as an ATM surcharge fee) and negative if it is + # subtracted from the amount (such as a discount). + # + # @return [Integer] + required :amount, Integer + + # @!attribute currency + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional + # amount's currency. + # + # @return [String] + required :currency, String + + # @!method initialize(amount:, currency:) + # Some parameter documentations has been truncated, see + # {Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Dental} + # for more details. + # + # The part of this transaction amount that was for dental-related services. + # + # @param amount [Integer] The amount in minor units of the `currency` field. The amount is positive if it + # + # @param currency [String] The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional a + end + + # @see Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts#original + class Original < Increase::Internal::Type::BaseModel + # @!attribute amount + # The amount in minor units of the `currency` field. The amount is positive if it + # is added to the amount (such as an ATM surcharge fee) and negative if it is + # subtracted from the amount (such as a discount). + # + # @return [Integer] + required :amount, Integer + + # @!attribute currency + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional + # amount's currency. + # + # @return [String] + required :currency, String + + # @!method initialize(amount:, currency:) + # Some parameter documentations has been truncated, see + # {Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Original} + # for more details. + # + # The original pre-authorized amount. + # + # @param amount [Integer] The amount in minor units of the `currency` field. The amount is positive if it + # + # @param currency [String] The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional a + end + + # @see Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts#prescription + class Prescription < Increase::Internal::Type::BaseModel + # @!attribute amount + # The amount in minor units of the `currency` field. The amount is positive if it + # is added to the amount (such as an ATM surcharge fee) and negative if it is + # subtracted from the amount (such as a discount). + # + # @return [Integer] + required :amount, Integer + + # @!attribute currency + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional + # amount's currency. + # + # @return [String] + required :currency, String + + # @!method initialize(amount:, currency:) + # Some parameter documentations has been truncated, see + # {Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Prescription} + # for more details. + # + # The part of this transaction amount that was for healthcare prescriptions. + # + # @param amount [Integer] The amount in minor units of the `currency` field. The amount is positive if it + # + # @param currency [String] The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional a + end + + # @see Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts#surcharge + class Surcharge < Increase::Internal::Type::BaseModel + # @!attribute amount + # The amount in minor units of the `currency` field. The amount is positive if it + # is added to the amount (such as an ATM surcharge fee) and negative if it is + # subtracted from the amount (such as a discount). + # + # @return [Integer] + required :amount, Integer + + # @!attribute currency + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional + # amount's currency. + # + # @return [String] + required :currency, String + + # @!method initialize(amount:, currency:) + # Some parameter documentations has been truncated, see + # {Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Surcharge} + # for more details. + # + # The surcharge amount charged for this transaction by the merchant. + # + # @param amount [Integer] The amount in minor units of the `currency` field. The amount is positive if it + # + # @param currency [String] The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional a + end + + # @see Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts#total_cumulative + class TotalCumulative < Increase::Internal::Type::BaseModel + # @!attribute amount + # The amount in minor units of the `currency` field. The amount is positive if it + # is added to the amount (such as an ATM surcharge fee) and negative if it is + # subtracted from the amount (such as a discount). + # + # @return [Integer] + required :amount, Integer + + # @!attribute currency + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional + # amount's currency. + # + # @return [String] + required :currency, String + + # @!method initialize(amount:, currency:) + # Some parameter documentations has been truncated, see + # {Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::TotalCumulative} + # for more details. + # + # The total amount of a series of incremental authorizations, optionally provided. + # + # @param amount [Integer] The amount in minor units of the `currency` field. The amount is positive if it + # + # @param currency [String] The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional a + end + + # @see Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts#total_healthcare + class TotalHealthcare < Increase::Internal::Type::BaseModel + # @!attribute amount + # The amount in minor units of the `currency` field. The amount is positive if it + # is added to the amount (such as an ATM surcharge fee) and negative if it is + # subtracted from the amount (such as a discount). + # + # @return [Integer] + required :amount, Integer + + # @!attribute currency + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional + # amount's currency. + # + # @return [String] + required :currency, String + + # @!method initialize(amount:, currency:) + # Some parameter documentations has been truncated, see + # {Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::TotalHealthcare} + # for more details. + # + # The total amount of healthcare-related additional amounts. + # + # @param amount [Integer] The amount in minor units of the `currency` field. The amount is positive if it + # + # @param currency [String] The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional a + end + + # @see Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts#transit + class Transit < Increase::Internal::Type::BaseModel + # @!attribute amount + # The amount in minor units of the `currency` field. The amount is positive if it + # is added to the amount (such as an ATM surcharge fee) and negative if it is + # subtracted from the amount (such as a discount). + # + # @return [Integer] + required :amount, Integer + + # @!attribute currency + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional + # amount's currency. + # + # @return [String] + required :currency, String + + # @!method initialize(amount:, currency:) + # Some parameter documentations has been truncated, see + # {Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Transit} + # for more details. + # + # The part of this transaction amount that was for transit-related services. + # + # @param amount [Integer] The amount in minor units of the `currency` field. The amount is positive if it + # + # @param currency [String] The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional a + end + + # @see Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts#unknown + class Unknown < Increase::Internal::Type::BaseModel + # @!attribute amount + # The amount in minor units of the `currency` field. The amount is positive if it + # is added to the amount (such as an ATM surcharge fee) and negative if it is + # subtracted from the amount (such as a discount). + # + # @return [Integer] + required :amount, Integer + + # @!attribute currency + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional + # amount's currency. + # + # @return [String] + required :currency, String + + # @!method initialize(amount:, currency:) + # Some parameter documentations has been truncated, see + # {Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Unknown} + # for more details. + # + # An unknown additional amount. + # + # @param amount [Integer] The amount in minor units of the `currency` field. The amount is positive if it + # + # @param currency [String] The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional a + end + + # @see Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts#vision + class Vision < Increase::Internal::Type::BaseModel + # @!attribute amount + # The amount in minor units of the `currency` field. The amount is positive if it + # is added to the amount (such as an ATM surcharge fee) and negative if it is + # subtracted from the amount (such as a discount). + # + # @return [Integer] + required :amount, Integer + + # @!attribute currency + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional + # amount's currency. + # + # @return [String] + required :currency, String + + # @!method initialize(amount:, currency:) + # Some parameter documentations has been truncated, see + # {Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Vision} + # for more details. + # + # The part of this transaction amount that was for vision-related services. + # + # @param amount [Integer] The amount in minor units of the `currency` field. The amount is positive if it + # + # @param currency [String] The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional a + end + end + + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the + # transaction's currency. + # + # @see Increase::Models::CardPayment::Element::CardAuthorization#currency + module Currency + extend Increase::Internal::Type::Enum + + # US Dollar (USD) + USD = :USD + + # @!method self.values + # @return [Array] + end + + # The direction describes the direction the funds will move, either from the + # cardholder to the merchant or from the merchant to the cardholder. + # + # @see Increase::Models::CardPayment::Element::CardAuthorization#direction + module Direction + extend Increase::Internal::Type::Enum + + # A regular card authorization where funds are debited from the cardholder. + SETTLEMENT = :settlement + + # A refund card authorization, sometimes referred to as a credit voucher authorization, where funds are credited to the cardholder. + REFUND = :refund + + # @!method self.values + # @return [Array] + end + + # @see Increase::Models::CardPayment::Element::CardAuthorization#network_details + class NetworkDetails < Increase::Internal::Type::BaseModel + # @!attribute category + # The payment network used to process this card authorization. + # + # @return [Symbol, Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Category] + required :category, + enum: -> { Increase::CardPayment::Element::CardAuthorization::NetworkDetails::Category } + + # @!attribute pulse + # Fields specific to the `pulse` network. + # + # @return [Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Pulse, nil] + required :pulse, + -> { Increase::CardPayment::Element::CardAuthorization::NetworkDetails::Pulse }, + nil?: true + + # @!attribute visa + # Fields specific to the `visa` network. + # + # @return [Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa, nil] + required :visa, + -> { + Increase::CardPayment::Element::CardAuthorization::NetworkDetails::Visa + }, + nil?: true + + # @!method initialize(category:, pulse:, visa:) + # Fields specific to the `network`. + # + # @param category [Symbol, Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Category] The payment network used to process this card authorization. + # + # @param pulse [Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Pulse, nil] Fields specific to the `pulse` network. + # + # @param visa [Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa, nil] Fields specific to the `visa` network. + + # The payment network used to process this card authorization. + # + # @see Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails#category + module Category + extend Increase::Internal::Type::Enum + + # Visa + VISA = :visa + + # Pulse + PULSE = :pulse + + # @!method self.values + # @return [Array] + end + + # @see Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails#pulse + class Pulse < Increase::Internal::Type::BaseModel + # @!method initialize + # Fields specific to the `pulse` network. + end + + # @see Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails#visa + class Visa < Increase::Internal::Type::BaseModel + # @!attribute electronic_commerce_indicator + # For electronic commerce transactions, this identifies the level of security used + # in obtaining the customer's payment credential. For mail or telephone order + # transactions, identifies the type of mail or telephone order. + # + # @return [Symbol, Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::ElectronicCommerceIndicator, nil] + required :electronic_commerce_indicator, + enum: -> { + Increase::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::ElectronicCommerceIndicator + }, + nil?: true + + # @!attribute point_of_service_entry_mode + # The method used to enter the cardholder's primary account number and card + # expiration date. + # + # @return [Symbol, Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::PointOfServiceEntryMode, nil] + required :point_of_service_entry_mode, + enum: -> { + Increase::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::PointOfServiceEntryMode + }, + nil?: true + + # @!attribute stand_in_processing_reason + # Only present when `actioner: network`. Describes why a card authorization was + # approved or declined by Visa through stand-in processing. + # + # @return [Symbol, Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::StandInProcessingReason, nil] + required :stand_in_processing_reason, + enum: -> { + Increase::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::StandInProcessingReason + }, + nil?: true + + # @!method initialize(electronic_commerce_indicator:, point_of_service_entry_mode:, stand_in_processing_reason:) + # Some parameter documentations has been truncated, see + # {Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa} + # for more details. + # + # Fields specific to the `visa` network. + # + # @param electronic_commerce_indicator [Symbol, Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::ElectronicCommerceIndicator, nil] For electronic commerce transactions, this identifies the level of security used + # + # @param point_of_service_entry_mode [Symbol, Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::PointOfServiceEntryMode, nil] The method used to enter the cardholder's primary account number and card expira + # + # @param stand_in_processing_reason [Symbol, Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::StandInProcessingReason, nil] Only present when `actioner: network`. Describes why a card authorization was ap + + # For electronic commerce transactions, this identifies the level of security used + # in obtaining the customer's payment credential. For mail or telephone order + # transactions, identifies the type of mail or telephone order. + # + # @see Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa#electronic_commerce_indicator + module ElectronicCommerceIndicator + extend Increase::Internal::Type::Enum + + # Single transaction of a mail/phone order: Use to indicate that the transaction is a mail/phone order purchase, not a recurring transaction or installment payment. For domestic transactions in the US region, this value may also indicate one bill payment transaction in the card-present or card-absent environments. + MAIL_PHONE_ORDER = :mail_phone_order + + # Recurring transaction: Payment indicator used to indicate a recurring transaction that originates from an acquirer in the US region. + RECURRING = :recurring + + # Installment payment: Payment indicator used to indicate one purchase of goods or services that is billed to the account in multiple charges over a period of time agreed upon by the cardholder and merchant from transactions that originate from an acquirer in the US region. + INSTALLMENT = :installment + + # Unknown classification: other mail order: Use to indicate that the type of mail/telephone order is unknown. + UNKNOWN_MAIL_PHONE_ORDER = :unknown_mail_phone_order + + # Secure electronic commerce transaction: Use to indicate that the electronic commerce transaction has been authenticated using e.g., 3-D Secure + SECURE_ELECTRONIC_COMMERCE = :secure_electronic_commerce + + # Non-authenticated security transaction at a 3-D Secure-capable merchant, and merchant attempted to authenticate the cardholder using 3-D Secure: Use to identify an electronic commerce transaction where the merchant attempted to authenticate the cardholder using 3-D Secure, but was unable to complete the authentication because the issuer or cardholder does not participate in the 3-D Secure program. + NON_AUTHENTICATED_SECURITY_TRANSACTION_AT_3DS_CAPABLE_MERCHANT = + :non_authenticated_security_transaction_at_3ds_capable_merchant + + # Non-authenticated security transaction: Use to identify an electronic commerce transaction that uses data encryption for security however, cardholder authentication is not performed using 3-D Secure. + NON_AUTHENTICATED_SECURITY_TRANSACTION = :non_authenticated_security_transaction + + # Non-secure transaction: Use to identify an electronic commerce transaction that has no data protection. + NON_SECURE_TRANSACTION = :non_secure_transaction + + # @!method self.values + # @return [Array] + end + + # The method used to enter the cardholder's primary account number and card + # expiration date. + # + # @see Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa#point_of_service_entry_mode + module PointOfServiceEntryMode + extend Increase::Internal::Type::Enum + + # Unknown + UNKNOWN = :unknown + + # Manual key entry + MANUAL = :manual + + # Magnetic stripe read, without card verification value + MAGNETIC_STRIPE_NO_CVV = :magnetic_stripe_no_cvv + + # Optical code + OPTICAL_CODE = :optical_code + + # Contact chip card + INTEGRATED_CIRCUIT_CARD = :integrated_circuit_card + + # Contactless read of chip card + CONTACTLESS = :contactless + + # Transaction initiated using a credential that has previously been stored on file + CREDENTIAL_ON_FILE = :credential_on_file + + # Magnetic stripe read + MAGNETIC_STRIPE = :magnetic_stripe + + # Contactless read of magnetic stripe data + CONTACTLESS_MAGNETIC_STRIPE = :contactless_magnetic_stripe + + # Contact chip card, without card verification value + INTEGRATED_CIRCUIT_CARD_NO_CVV = :integrated_circuit_card_no_cvv + + # @!method self.values + # @return [Array] + end + + # Only present when `actioner: network`. Describes why a card authorization was + # approved or declined by Visa through stand-in processing. + # + # @see Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa#stand_in_processing_reason + module StandInProcessingReason + extend Increase::Internal::Type::Enum + + # Increase failed to process the authorization in a timely manner. + ISSUER_ERROR = :issuer_error + + # The physical card read had an invalid CVV, dCVV, or authorization request cryptogram. + INVALID_PHYSICAL_CARD = :invalid_physical_card + + # The 3DS cardholder authentication verification value was invalid. + INVALID_CARDHOLDER_AUTHENTICATION_VERIFICATION_VALUE = + :invalid_cardholder_authentication_verification_value + + # An internal Visa error occurred. Visa uses this reason code for certain expected occurrences as well, such as Application Transaction Counter (ATC) replays. + INTERNAL_VISA_ERROR = :internal_visa_error + + # The merchant has enabled Visa's Transaction Advisory Service and requires further authentication to perform the transaction. In practice this is often utilized at fuel pumps to tell the cardholder to see the cashier. + MERCHANT_TRANSACTION_ADVISORY_SERVICE_AUTHENTICATION_REQUIRED = + :merchant_transaction_advisory_service_authentication_required + + # The transaction was blocked by Visa's Payment Fraud Disruption service due to fraudulent Acquirer behavior, such as card testing. + PAYMENT_FRAUD_DISRUPTION_ACQUIRER_BLOCK = :payment_fraud_disruption_acquirer_block + + # An unspecific reason for stand-in processing. + OTHER = :other + + # @!method self.values + # @return [Array] + end + end + end + + # @see Increase::Models::CardPayment::Element::CardAuthorization#network_identifiers + class NetworkIdentifiers < Increase::Internal::Type::BaseModel + # @!attribute authorization_identification_response + # The randomly generated 6-character Authorization Identification Response code + # sent back to the acquirer in an approved response. + # + # @return [String, nil] + required :authorization_identification_response, String, nil?: true + + # @!attribute retrieval_reference_number + # A life-cycle identifier used across e.g., an authorization and a reversal. + # Expected to be unique per acquirer within a window of time. For some card + # networks the retrieval reference number includes the trace counter. + # + # @return [String, nil] + required :retrieval_reference_number, String, nil?: true + + # @!attribute trace_number + # A counter used to verify an individual authorization. Expected to be unique per + # acquirer within a window of time. + # + # @return [String, nil] + required :trace_number, String, nil?: true + + # @!attribute transaction_id + # A globally unique transaction identifier provided by the card network, used + # across multiple life-cycle requests. + # + # @return [String, nil] + required :transaction_id, String, nil?: true + + # @!method initialize(authorization_identification_response:, retrieval_reference_number:, trace_number:, transaction_id:) + # Some parameter documentations has been truncated, see + # {Increase::Models::CardPayment::Element::CardAuthorization::NetworkIdentifiers} + # for more details. + # + # Network-specific identifiers for a specific request or transaction. + # + # @param authorization_identification_response [String, nil] The randomly generated 6-character Authorization Identification Response code se + # + # @param retrieval_reference_number [String, nil] A life-cycle identifier used across e.g., an authorization and a reversal. Expec + # + # @param trace_number [String, nil] A counter used to verify an individual authorization. Expected to be unique per + # + # @param transaction_id [String, nil] A globally unique transaction identifier provided by the card network, used acro + end + + # The processing category describes the intent behind the authorization, such as + # whether it was used for bill payments or an automatic fuel dispenser. + # + # @see Increase::Models::CardPayment::Element::CardAuthorization#processing_category + module ProcessingCategory + extend Increase::Internal::Type::Enum + + # Account funding transactions are transactions used to e.g., fund an account or transfer funds between accounts. + ACCOUNT_FUNDING = :account_funding + + # Automatic fuel dispenser authorizations occur when a card is used at a gas pump, prior to the actual transaction amount being known. They are followed by an advice message that updates the amount of the pending transaction. + AUTOMATIC_FUEL_DISPENSER = :automatic_fuel_dispenser + + # A transaction used to pay a bill. + BILL_PAYMENT = :bill_payment + + # Original credit transactions are used to send money to a cardholder. + ORIGINAL_CREDIT = :original_credit + + # A regular purchase. + PURCHASE = :purchase + + # Quasi-cash transactions represent purchases of items which may be convertible to cash. + QUASI_CASH = :quasi_cash + + # A refund card authorization, sometimes referred to as a credit voucher authorization, where funds are credited to the cardholder. + REFUND = :refund + + # Cash disbursement transactions are used to withdraw cash from an ATM or a point of sale. + CASH_DISBURSEMENT = :cash_disbursement + + # A balance inquiry transaction is used to check the balance of an account associated with a card. + BALANCE_INQUIRY = :balance_inquiry + + # The processing category is unknown. + UNKNOWN = :unknown + + # @!method self.values + # @return [Array] + end + + # A constant representing the object's type. For this resource it will always be + # `card_authorization`. + # + # @see Increase::Models::CardPayment::Element::CardAuthorization#type + module Type + extend Increase::Internal::Type::Enum + + CARD_AUTHORIZATION = :card_authorization + + # @!method self.values + # @return [Array] + end + + # @see Increase::Models::CardPayment::Element::CardAuthorization#verification + class Verification < Increase::Internal::Type::BaseModel + # @!attribute card_verification_code + # Fields related to verification of the Card Verification Code, a 3-digit code on + # the back of the card. + # + # @return [Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode] + required :card_verification_code, + -> { Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode } + + # @!attribute cardholder_address + # Cardholder address provided in the authorization request and the address on file + # we verified it against. + # + # @return [Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardholderAddress] + required :cardholder_address, + -> { Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress } + + # @!method initialize(card_verification_code:, cardholder_address:) + # Some parameter documentations has been truncated, see + # {Increase::Models::CardPayment::Element::CardAuthorization::Verification} for + # more details. + # + # Fields related to verification of cardholder-provided values. + # + # @param card_verification_code [Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode] Fields related to verification of the Card Verification Code, a 3-digit code on + # + # @param cardholder_address [Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardholderAddress] Cardholder address provided in the authorization request and the address on file + + # @see Increase::Models::CardPayment::Element::CardAuthorization::Verification#card_verification_code + class CardVerificationCode < Increase::Internal::Type::BaseModel + # @!attribute result + # The result of verifying the Card Verification Code. + # + # @return [Symbol, Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::Result] + required :result, + enum: -> { Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::Result } + + # @!method initialize(result:) + # Fields related to verification of the Card Verification Code, a 3-digit code on + # the back of the card. + # + # @param result [Symbol, Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::Result] The result of verifying the Card Verification Code. + + # The result of verifying the Card Verification Code. + # + # @see Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode#result + module Result + extend Increase::Internal::Type::Enum + + # No card verification code was provided in the authorization request. + NOT_CHECKED = :not_checked + + # The card verification code matched the one on file. + MATCH = :match + + # The card verification code did not match the one on file. + NO_MATCH = :no_match + + # @!method self.values + # @return [Array] + end + end + + # @see Increase::Models::CardPayment::Element::CardAuthorization::Verification#cardholder_address + class CardholderAddress < Increase::Internal::Type::BaseModel + # @!attribute actual_line1 + # Line 1 of the address on file for the cardholder. + # + # @return [String, nil] + required :actual_line1, String, nil?: true + + # @!attribute actual_postal_code + # The postal code of the address on file for the cardholder. + # + # @return [String, nil] + required :actual_postal_code, String, nil?: true + + # @!attribute provided_line1 + # The cardholder address line 1 provided for verification in the authorization + # request. + # + # @return [String, nil] + required :provided_line1, String, nil?: true + + # @!attribute provided_postal_code + # The postal code provided for verification in the authorization request. + # + # @return [String, nil] + required :provided_postal_code, String, nil?: true + + # @!attribute result + # The address verification result returned to the card network. + # + # @return [Symbol, Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::Result] + required :result, + enum: -> { Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::Result } + + # @!method initialize(actual_line1:, actual_postal_code:, provided_line1:, provided_postal_code:, result:) + # Some parameter documentations has been truncated, see + # {Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardholderAddress} + # for more details. + # + # Cardholder address provided in the authorization request and the address on file + # we verified it against. + # + # @param actual_line1 [String, nil] Line 1 of the address on file for the cardholder. + # + # @param actual_postal_code [String, nil] The postal code of the address on file for the cardholder. + # + # @param provided_line1 [String, nil] The cardholder address line 1 provided for verification in the authorization req + # + # @param provided_postal_code [String, nil] The postal code provided for verification in the authorization request. + # + # @param result [Symbol, Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::Result] The address verification result returned to the card network. + + # The address verification result returned to the card network. + # + # @see Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardholderAddress#result + module Result + extend Increase::Internal::Type::Enum + + # No address information was provided in the authorization request. + NOT_CHECKED = :not_checked + + # Postal code matches, but the street address does not match or was not provided. + POSTAL_CODE_MATCH_ADDRESS_NO_MATCH = :postal_code_match_address_no_match + + # Postal code does not match, but the street address matches or was not provided. + POSTAL_CODE_NO_MATCH_ADDRESS_MATCH = :postal_code_no_match_address_match + + # Postal code and street address match. + MATCH = :match + + # Postal code and street address do not match. + NO_MATCH = :no_match + + # Postal code matches, but the street address was not verified. (deprecated) + POSTAL_CODE_MATCH_ADDRESS_NOT_CHECKED = :postal_code_match_address_not_checked + + # @!method self.values + # @return [Array] + end + end + end + end + + # @see Increase::Models::CardPayment::Element#card_authorization_expiration + class CardAuthorizationExpiration < Increase::Internal::Type::BaseModel + # @!attribute id + # The Card Authorization Expiration identifier. + # + # @return [String] + required :id, String + + # @!attribute card_authorization_id + # The identifier for the Card Authorization this reverses. + # + # @return [String] + required :card_authorization_id, String + + # @!attribute currency + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the reversal's + # currency. + # + # @return [Symbol, Increase::Models::CardPayment::Element::CardAuthorizationExpiration::Currency] + required :currency, enum: -> { Increase::CardPayment::Element::CardAuthorizationExpiration::Currency } + + # @!attribute expired_amount + # The amount of this authorization expiration in the minor unit of the + # transaction's currency. For dollars, for example, this is cents. + # + # @return [Integer] + required :expired_amount, Integer + + # @!attribute network + # The card network used to process this card authorization. + # + # @return [Symbol, Increase::Models::CardPayment::Element::CardAuthorizationExpiration::Network] + required :network, enum: -> { Increase::CardPayment::Element::CardAuthorizationExpiration::Network } + + # @!attribute type + # A constant representing the object's type. For this resource it will always be + # `card_authorization_expiration`. + # + # @return [Symbol, Increase::Models::CardPayment::Element::CardAuthorizationExpiration::Type] + required :type, enum: -> { Increase::CardPayment::Element::CardAuthorizationExpiration::Type } + + # @!method initialize(id:, card_authorization_id:, currency:, expired_amount:, network:, type:) + # Some parameter documentations has been truncated, see + # {Increase::Models::CardPayment::Element::CardAuthorizationExpiration} for more + # details. + # + # A Card Authorization Expiration object. This field will be present in the JSON + # response if and only if `category` is equal to `card_authorization_expiration`. + # Card Authorization Expirations are cancellations of authorizations that were + # never settled by the acquirer. + # + # @param id [String] The Card Authorization Expiration identifier. + # + # @param card_authorization_id [String] The identifier for the Card Authorization this reverses. + # + # @param currency [Symbol, Increase::Models::CardPayment::Element::CardAuthorizationExpiration::Currency] The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the reversal's c + # + # @param expired_amount [Integer] The amount of this authorization expiration in the minor unit of the transaction + # + # @param network [Symbol, Increase::Models::CardPayment::Element::CardAuthorizationExpiration::Network] The card network used to process this card authorization. + # + # @param type [Symbol, Increase::Models::CardPayment::Element::CardAuthorizationExpiration::Type] A constant representing the object's type. For this resource it will always be ` + + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the reversal's + # currency. + # + # @see Increase::Models::CardPayment::Element::CardAuthorizationExpiration#currency + module Currency + extend Increase::Internal::Type::Enum + + # US Dollar (USD) + USD = :USD + + # @!method self.values + # @return [Array] + end + + # The card network used to process this card authorization. + # + # @see Increase::Models::CardPayment::Element::CardAuthorizationExpiration#network + module Network + extend Increase::Internal::Type::Enum + + # Visa + VISA = :visa + + # Pulse + PULSE = :pulse + + # @!method self.values + # @return [Array] + end + + # A constant representing the object's type. For this resource it will always be + # `card_authorization_expiration`. + # + # @see Increase::Models::CardPayment::Element::CardAuthorizationExpiration#type + module Type + extend Increase::Internal::Type::Enum + + CARD_AUTHORIZATION_EXPIRATION = :card_authorization_expiration + + # @!method self.values + # @return [Array] + end + end + + # @see Increase::Models::CardPayment::Element#card_balance_inquiry + class CardBalanceInquiry < Increase::Internal::Type::BaseModel + # @!attribute id + # The Card Balance Inquiry identifier. + # + # @return [String] + required :id, String + + # @!attribute additional_amounts + # Additional amounts associated with the card authorization, such as ATM + # surcharges fees. These are usually a subset of the `amount` field and are used + # to provide more detailed information about the transaction. + # + # @return [Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts] + required :additional_amounts, -> { Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts } + + # @!attribute balance + # The balance amount in the minor unit of the account's currency. For dollars, for + # example, this is cents. + # + # @return [Integer] + required :balance, Integer + + # @!attribute card_payment_id + # The ID of the Card Payment this transaction belongs to. + # + # @return [String] + required :card_payment_id, String + + # @!attribute currency + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the account's + # currency. + # + # @return [Symbol, Increase::Models::CardPayment::Element::CardBalanceInquiry::Currency] + required :currency, enum: -> { Increase::CardPayment::Element::CardBalanceInquiry::Currency } + + # @!attribute digital_wallet_token_id + # If the authorization was made via a Digital Wallet Token (such as an Apple Pay + # purchase), the identifier of the token that was used. + # + # @return [String, nil] + required :digital_wallet_token_id, String, nil?: true + + # @!attribute merchant_acceptor_id + # The merchant identifier (commonly abbreviated as MID) of the merchant the card + # is transacting with. + # + # @return [String] + required :merchant_acceptor_id, String + + # @!attribute merchant_category_code + # The Merchant Category Code (commonly abbreviated as MCC) of the merchant the + # card is transacting with. + # + # @return [String] + required :merchant_category_code, String + + # @!attribute merchant_city + # The city the merchant resides in. + # + # @return [String, nil] + required :merchant_city, String, nil?: true + + # @!attribute merchant_country + # The country the merchant resides in. + # + # @return [String] + required :merchant_country, String + + # @!attribute merchant_descriptor + # The merchant descriptor of the merchant the card is transacting with. + # + # @return [String] + required :merchant_descriptor, String + + # @!attribute merchant_postal_code + # The merchant's postal code. For US merchants this is either a 5-digit or 9-digit + # ZIP code, where the first 5 and last 4 are separated by a dash. + # + # @return [String, nil] + required :merchant_postal_code, String, nil?: true + + # @!attribute merchant_state + # The state the merchant resides in. + # + # @return [String, nil] + required :merchant_state, String, nil?: true + + # @!attribute network_details + # Fields specific to the `network`. + # + # @return [Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails] + required :network_details, -> { Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails } + + # @!attribute network_identifiers + # Network-specific identifiers for a specific request or transaction. + # + # @return [Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkIdentifiers] + required :network_identifiers, + -> { Increase::CardPayment::Element::CardBalanceInquiry::NetworkIdentifiers } + + # @!attribute network_risk_score + # The risk score generated by the card network. For Visa this is the Visa Advanced + # Authorization risk score, from 0 to 99, where 99 is the riskiest. For Pulse the + # score is from 0 to 999, where 999 is the riskiest. + # + # @return [Integer, nil] + required :network_risk_score, Integer, nil?: true + + # @!attribute physical_card_id + # If the authorization was made in-person with a physical card, the Physical Card + # that was used. + # + # @return [String, nil] + required :physical_card_id, String, nil?: true + + # @!attribute real_time_decision_id + # The identifier of the Real-Time Decision sent to approve or decline this + # transaction. + # + # @return [String, nil] + required :real_time_decision_id, String, nil?: true + + # @!attribute terminal_id + # The terminal identifier (commonly abbreviated as TID) of the terminal the card + # is transacting with. + # + # @return [String, nil] + required :terminal_id, String, nil?: true + + # @!attribute type + # A constant representing the object's type. For this resource it will always be + # `card_balance_inquiry`. + # + # @return [Symbol, Increase::Models::CardPayment::Element::CardBalanceInquiry::Type] + required :type, enum: -> { Increase::CardPayment::Element::CardBalanceInquiry::Type } + + # @!attribute verification + # Fields related to verification of cardholder-provided values. + # + # @return [Increase::Models::CardPayment::Element::CardBalanceInquiry::Verification] + required :verification, -> { Increase::CardPayment::Element::CardBalanceInquiry::Verification } + + # @!method initialize(id:, additional_amounts:, balance:, card_payment_id:, currency:, digital_wallet_token_id:, merchant_acceptor_id:, merchant_category_code:, merchant_city:, merchant_country:, merchant_descriptor:, merchant_postal_code:, merchant_state:, network_details:, network_identifiers:, network_risk_score:, physical_card_id:, real_time_decision_id:, terminal_id:, type:, verification:) + # Some parameter documentations has been truncated, see + # {Increase::Models::CardPayment::Element::CardBalanceInquiry} for more details. + # + # A Card Balance Inquiry object. This field will be present in the JSON response + # if and only if `category` is equal to `card_balance_inquiry`. Card Balance + # Inquiries are transactions that allow merchants to check the available balance + # on a card without placing a hold on funds, commonly used when a customer + # requests their balance at an ATM. + # + # @param id [String] The Card Balance Inquiry identifier. + # + # @param additional_amounts [Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts] Additional amounts associated with the card authorization, such as ATM surcharge + # + # @param balance [Integer] The balance amount in the minor unit of the account's currency. For dollars, for + # + # @param card_payment_id [String] The ID of the Card Payment this transaction belongs to. + # + # @param currency [Symbol, Increase::Models::CardPayment::Element::CardBalanceInquiry::Currency] The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the account's cu + # + # @param digital_wallet_token_id [String, nil] If the authorization was made via a Digital Wallet Token (such as an Apple Pay p + # + # @param merchant_acceptor_id [String] The merchant identifier (commonly abbreviated as MID) of the merchant the card i + # + # @param merchant_category_code [String] The Merchant Category Code (commonly abbreviated as MCC) of the merchant the car + # + # @param merchant_city [String, nil] The city the merchant resides in. + # + # @param merchant_country [String] The country the merchant resides in. + # + # @param merchant_descriptor [String] The merchant descriptor of the merchant the card is transacting with. + # + # @param merchant_postal_code [String, nil] The merchant's postal code. For US merchants this is either a 5-digit or 9-digit + # + # @param merchant_state [String, nil] The state the merchant resides in. + # + # @param network_details [Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails] Fields specific to the `network`. + # + # @param network_identifiers [Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkIdentifiers] Network-specific identifiers for a specific request or transaction. + # + # @param network_risk_score [Integer, nil] The risk score generated by the card network. For Visa this is the Visa Advanced + # + # @param physical_card_id [String, nil] If the authorization was made in-person with a physical card, the Physical Card + # + # @param real_time_decision_id [String, nil] The identifier of the Real-Time Decision sent to approve or decline this transac + # + # @param terminal_id [String, nil] The terminal identifier (commonly abbreviated as TID) of the terminal the card i + # + # @param type [Symbol, Increase::Models::CardPayment::Element::CardBalanceInquiry::Type] A constant representing the object's type. For this resource it will always be ` + # + # @param verification [Increase::Models::CardPayment::Element::CardBalanceInquiry::Verification] Fields related to verification of cardholder-provided values. + + # @see Increase::Models::CardPayment::Element::CardBalanceInquiry#additional_amounts + class AdditionalAmounts < Increase::Internal::Type::BaseModel + # @!attribute clinic + # The part of this transaction amount that was for clinic-related services. + # + # @return [Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Clinic, nil] + required :clinic, + -> { Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Clinic }, + nil?: true + + # @!attribute dental + # The part of this transaction amount that was for dental-related services. + # + # @return [Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Dental, nil] + required :dental, + -> { Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Dental }, + nil?: true + + # @!attribute original + # The original pre-authorized amount. + # + # @return [Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Original, nil] + required :original, + -> { Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Original }, + nil?: true + + # @!attribute prescription + # The part of this transaction amount that was for healthcare prescriptions. + # + # @return [Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Prescription, nil] + required :prescription, + -> { + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Prescription + }, + nil?: true + + # @!attribute surcharge + # The surcharge amount charged for this transaction by the merchant. + # + # @return [Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Surcharge, nil] + required :surcharge, + -> { Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Surcharge }, + nil?: true + + # @!attribute total_cumulative + # The total amount of a series of incremental authorizations, optionally provided. + # + # @return [Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::TotalCumulative, nil] + required :total_cumulative, + -> { + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::TotalCumulative + }, + nil?: true + + # @!attribute total_healthcare + # The total amount of healthcare-related additional amounts. + # + # @return [Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::TotalHealthcare, nil] + required :total_healthcare, + -> { + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::TotalHealthcare + }, + nil?: true + + # @!attribute transit + # The part of this transaction amount that was for transit-related services. + # + # @return [Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Transit, nil] + required :transit, + -> { Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Transit }, + nil?: true + + # @!attribute unknown + # An unknown additional amount. + # + # @return [Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Unknown, nil] + required :unknown, + -> { Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Unknown }, nil?: true # @!attribute vision # The part of this transaction amount that was for vision-related services. # - # @return [Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Vision, nil] + # @return [Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Vision, nil] required :vision, - -> { Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Vision }, + -> { Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Vision }, nil?: true # @!method initialize(clinic:, dental:, original:, prescription:, surcharge:, total_cumulative:, total_healthcare:, transit:, unknown:, vision:) # Some parameter documentations has been truncated, see - # {Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts} + # {Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts} # for more details. # # Additional amounts associated with the card authorization, such as ATM # surcharges fees. These are usually a subset of the `amount` field and are used # to provide more detailed information about the transaction. # - # @param clinic [Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Clinic, nil] The part of this transaction amount that was for clinic-related services. + # @param clinic [Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Clinic, nil] The part of this transaction amount that was for clinic-related services. # - # @param dental [Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Dental, nil] The part of this transaction amount that was for dental-related services. + # @param dental [Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Dental, nil] The part of this transaction amount that was for dental-related services. # - # @param original [Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Original, nil] The original pre-authorized amount. + # @param original [Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Original, nil] The original pre-authorized amount. # - # @param prescription [Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Prescription, nil] The part of this transaction amount that was for healthcare prescriptions. + # @param prescription [Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Prescription, nil] The part of this transaction amount that was for healthcare prescriptions. # - # @param surcharge [Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Surcharge, nil] The surcharge amount charged for this transaction by the merchant. + # @param surcharge [Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Surcharge, nil] The surcharge amount charged for this transaction by the merchant. # - # @param total_cumulative [Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::TotalCumulative, nil] The total amount of a series of incremental authorizations, optionally provided. + # @param total_cumulative [Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::TotalCumulative, nil] The total amount of a series of incremental authorizations, optionally provided. # - # @param total_healthcare [Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::TotalHealthcare, nil] The total amount of healthcare-related additional amounts. + # @param total_healthcare [Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::TotalHealthcare, nil] The total amount of healthcare-related additional amounts. # - # @param transit [Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Transit, nil] The part of this transaction amount that was for transit-related services. + # @param transit [Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Transit, nil] The part of this transaction amount that was for transit-related services. # - # @param unknown [Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Unknown, nil] An unknown additional amount. + # @param unknown [Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Unknown, nil] An unknown additional amount. # - # @param vision [Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Vision, nil] The part of this transaction amount that was for vision-related services. + # @param vision [Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Vision, nil] The part of this transaction amount that was for vision-related services. - # @see Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts#clinic + # @see Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts#clinic class Clinic < Increase::Internal::Type::BaseModel # @!attribute amount # The amount in minor units of the `currency` field. The amount is positive if it @@ -1044,7 +2266,7 @@ class Clinic < Increase::Internal::Type::BaseModel # @!method initialize(amount:, currency:) # Some parameter documentations has been truncated, see - # {Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Clinic} + # {Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Clinic} # for more details. # # The part of this transaction amount that was for clinic-related services. @@ -1054,7 +2276,7 @@ class Clinic < Increase::Internal::Type::BaseModel # @param currency [String] The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional a end - # @see Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts#dental + # @see Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts#dental class Dental < Increase::Internal::Type::BaseModel # @!attribute amount # The amount in minor units of the `currency` field. The amount is positive if it @@ -1073,7 +2295,7 @@ class Dental < Increase::Internal::Type::BaseModel # @!method initialize(amount:, currency:) # Some parameter documentations has been truncated, see - # {Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Dental} + # {Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Dental} # for more details. # # The part of this transaction amount that was for dental-related services. @@ -1083,7 +2305,7 @@ class Dental < Increase::Internal::Type::BaseModel # @param currency [String] The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional a end - # @see Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts#original + # @see Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts#original class Original < Increase::Internal::Type::BaseModel # @!attribute amount # The amount in minor units of the `currency` field. The amount is positive if it @@ -1102,7 +2324,7 @@ class Original < Increase::Internal::Type::BaseModel # @!method initialize(amount:, currency:) # Some parameter documentations has been truncated, see - # {Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Original} + # {Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Original} # for more details. # # The original pre-authorized amount. @@ -1112,7 +2334,7 @@ class Original < Increase::Internal::Type::BaseModel # @param currency [String] The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional a end - # @see Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts#prescription + # @see Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts#prescription class Prescription < Increase::Internal::Type::BaseModel # @!attribute amount # The amount in minor units of the `currency` field. The amount is positive if it @@ -1131,7 +2353,7 @@ class Prescription < Increase::Internal::Type::BaseModel # @!method initialize(amount:, currency:) # Some parameter documentations has been truncated, see - # {Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Prescription} + # {Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Prescription} # for more details. # # The part of this transaction amount that was for healthcare prescriptions. @@ -1141,7 +2363,7 @@ class Prescription < Increase::Internal::Type::BaseModel # @param currency [String] The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional a end - # @see Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts#surcharge + # @see Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts#surcharge class Surcharge < Increase::Internal::Type::BaseModel # @!attribute amount # The amount in minor units of the `currency` field. The amount is positive if it @@ -1160,7 +2382,7 @@ class Surcharge < Increase::Internal::Type::BaseModel # @!method initialize(amount:, currency:) # Some parameter documentations has been truncated, see - # {Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Surcharge} + # {Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Surcharge} # for more details. # # The surcharge amount charged for this transaction by the merchant. @@ -1170,7 +2392,7 @@ class Surcharge < Increase::Internal::Type::BaseModel # @param currency [String] The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional a end - # @see Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts#total_cumulative + # @see Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts#total_cumulative class TotalCumulative < Increase::Internal::Type::BaseModel # @!attribute amount # The amount in minor units of the `currency` field. The amount is positive if it @@ -1189,7 +2411,7 @@ class TotalCumulative < Increase::Internal::Type::BaseModel # @!method initialize(amount:, currency:) # Some parameter documentations has been truncated, see - # {Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::TotalCumulative} + # {Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::TotalCumulative} # for more details. # # The total amount of a series of incremental authorizations, optionally provided. @@ -1199,7 +2421,7 @@ class TotalCumulative < Increase::Internal::Type::BaseModel # @param currency [String] The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional a end - # @see Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts#total_healthcare + # @see Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts#total_healthcare class TotalHealthcare < Increase::Internal::Type::BaseModel # @!attribute amount # The amount in minor units of the `currency` field. The amount is positive if it @@ -1218,7 +2440,7 @@ class TotalHealthcare < Increase::Internal::Type::BaseModel # @!method initialize(amount:, currency:) # Some parameter documentations has been truncated, see - # {Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::TotalHealthcare} + # {Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::TotalHealthcare} # for more details. # # The total amount of healthcare-related additional amounts. @@ -1228,7 +2450,7 @@ class TotalHealthcare < Increase::Internal::Type::BaseModel # @param currency [String] The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional a end - # @see Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts#transit + # @see Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts#transit class Transit < Increase::Internal::Type::BaseModel # @!attribute amount # The amount in minor units of the `currency` field. The amount is positive if it @@ -1247,7 +2469,7 @@ class Transit < Increase::Internal::Type::BaseModel # @!method initialize(amount:, currency:) # Some parameter documentations has been truncated, see - # {Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Transit} + # {Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Transit} # for more details. # # The part of this transaction amount that was for transit-related services. @@ -1257,7 +2479,7 @@ class Transit < Increase::Internal::Type::BaseModel # @param currency [String] The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional a end - # @see Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts#unknown + # @see Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts#unknown class Unknown < Increase::Internal::Type::BaseModel # @!attribute amount # The amount in minor units of the `currency` field. The amount is positive if it @@ -1276,7 +2498,7 @@ class Unknown < Increase::Internal::Type::BaseModel # @!method initialize(amount:, currency:) # Some parameter documentations has been truncated, see - # {Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Unknown} + # {Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Unknown} # for more details. # # An unknown additional amount. @@ -1286,7 +2508,7 @@ class Unknown < Increase::Internal::Type::BaseModel # @param currency [String] The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional a end - # @see Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts#vision + # @see Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts#vision class Vision < Increase::Internal::Type::BaseModel # @!attribute amount # The amount in minor units of the `currency` field. The amount is positive if it @@ -1305,7 +2527,7 @@ class Vision < Increase::Internal::Type::BaseModel # @!method initialize(amount:, currency:) # Some parameter documentations has been truncated, see - # {Increase::Models::CardPayment::Element::CardAuthorization::AdditionalAmounts::Vision} + # {Increase::Models::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Vision} # for more details. # # The part of this transaction amount that was for vision-related services. @@ -1316,10 +2538,10 @@ class Vision < Increase::Internal::Type::BaseModel end end - # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the - # transaction's currency. + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the account's + # currency. # - # @see Increase::Models::CardPayment::Element::CardAuthorization#currency + # @see Increase::Models::CardPayment::Element::CardBalanceInquiry#currency module Currency extend Increase::Internal::Type::Enum @@ -1330,62 +2552,43 @@ module Currency # @return [Array] end - # The direction describes the direction the funds will move, either from the - # cardholder to the merchant or from the merchant to the cardholder. - # - # @see Increase::Models::CardPayment::Element::CardAuthorization#direction - module Direction - extend Increase::Internal::Type::Enum - - # A regular card authorization where funds are debited from the cardholder. - SETTLEMENT = :settlement - - # A refund card authorization, sometimes referred to as a credit voucher authorization, where funds are credited to the cardholder. - REFUND = :refund - - # @!method self.values - # @return [Array] - end - - # @see Increase::Models::CardPayment::Element::CardAuthorization#network_details + # @see Increase::Models::CardPayment::Element::CardBalanceInquiry#network_details class NetworkDetails < Increase::Internal::Type::BaseModel # @!attribute category # The payment network used to process this card authorization. # - # @return [Symbol, Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Category] + # @return [Symbol, Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Category] required :category, - enum: -> { Increase::CardPayment::Element::CardAuthorization::NetworkDetails::Category } + enum: -> { Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Category } # @!attribute pulse # Fields specific to the `pulse` network. # - # @return [Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Pulse, nil] + # @return [Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Pulse, nil] required :pulse, - -> { Increase::CardPayment::Element::CardAuthorization::NetworkDetails::Pulse }, + -> { Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Pulse }, nil?: true # @!attribute visa # Fields specific to the `visa` network. # - # @return [Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa, nil] + # @return [Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa, nil] required :visa, - -> { - Increase::CardPayment::Element::CardAuthorization::NetworkDetails::Visa - }, + -> { Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa }, nil?: true # @!method initialize(category:, pulse:, visa:) # Fields specific to the `network`. # - # @param category [Symbol, Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Category] The payment network used to process this card authorization. + # @param category [Symbol, Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Category] The payment network used to process this card authorization. # - # @param pulse [Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Pulse, nil] Fields specific to the `pulse` network. + # @param pulse [Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Pulse, nil] Fields specific to the `pulse` network. # - # @param visa [Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa, nil] Fields specific to the `visa` network. + # @param visa [Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa, nil] Fields specific to the `visa` network. # The payment network used to process this card authorization. # - # @see Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails#category + # @see Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails#category module Category extend Increase::Internal::Type::Enum @@ -1399,23 +2602,23 @@ module Category # @return [Array] end - # @see Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails#pulse + # @see Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails#pulse class Pulse < Increase::Internal::Type::BaseModel # @!method initialize # Fields specific to the `pulse` network. end - # @see Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails#visa + # @see Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails#visa class Visa < Increase::Internal::Type::BaseModel # @!attribute electronic_commerce_indicator # For electronic commerce transactions, this identifies the level of security used # in obtaining the customer's payment credential. For mail or telephone order # transactions, identifies the type of mail or telephone order. # - # @return [Symbol, Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::ElectronicCommerceIndicator, nil] + # @return [Symbol, Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::ElectronicCommerceIndicator, nil] required :electronic_commerce_indicator, enum: -> { - Increase::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::ElectronicCommerceIndicator + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::ElectronicCommerceIndicator }, nil?: true @@ -1423,10 +2626,10 @@ class Visa < Increase::Internal::Type::BaseModel # The method used to enter the cardholder's primary account number and card # expiration date. # - # @return [Symbol, Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::PointOfServiceEntryMode, nil] + # @return [Symbol, Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::PointOfServiceEntryMode, nil] required :point_of_service_entry_mode, enum: -> { - Increase::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::PointOfServiceEntryMode + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::PointOfServiceEntryMode }, nil?: true @@ -1434,31 +2637,31 @@ class Visa < Increase::Internal::Type::BaseModel # Only present when `actioner: network`. Describes why a card authorization was # approved or declined by Visa through stand-in processing. # - # @return [Symbol, Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::StandInProcessingReason, nil] + # @return [Symbol, Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::StandInProcessingReason, nil] required :stand_in_processing_reason, enum: -> { - Increase::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::StandInProcessingReason + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::StandInProcessingReason }, nil?: true # @!method initialize(electronic_commerce_indicator:, point_of_service_entry_mode:, stand_in_processing_reason:) # Some parameter documentations has been truncated, see - # {Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa} + # {Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa} # for more details. # # Fields specific to the `visa` network. # - # @param electronic_commerce_indicator [Symbol, Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::ElectronicCommerceIndicator, nil] For electronic commerce transactions, this identifies the level of security used + # @param electronic_commerce_indicator [Symbol, Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::ElectronicCommerceIndicator, nil] For electronic commerce transactions, this identifies the level of security used # - # @param point_of_service_entry_mode [Symbol, Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::PointOfServiceEntryMode, nil] The method used to enter the cardholder's primary account number and card expira + # @param point_of_service_entry_mode [Symbol, Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::PointOfServiceEntryMode, nil] The method used to enter the cardholder's primary account number and card expira # - # @param stand_in_processing_reason [Symbol, Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::StandInProcessingReason, nil] Only present when `actioner: network`. Describes why a card authorization was ap + # @param stand_in_processing_reason [Symbol, Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::StandInProcessingReason, nil] Only present when `actioner: network`. Describes why a card authorization was ap # For electronic commerce transactions, this identifies the level of security used # in obtaining the customer's payment credential. For mail or telephone order # transactions, identifies the type of mail or telephone order. # - # @see Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa#electronic_commerce_indicator + # @see Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa#electronic_commerce_indicator module ElectronicCommerceIndicator extend Increase::Internal::Type::Enum @@ -1494,7 +2697,7 @@ module ElectronicCommerceIndicator # The method used to enter the cardholder's primary account number and card # expiration date. # - # @see Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa#point_of_service_entry_mode + # @see Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa#point_of_service_entry_mode module PointOfServiceEntryMode extend Increase::Internal::Type::Enum @@ -1535,7 +2738,7 @@ module PointOfServiceEntryMode # Only present when `actioner: network`. Describes why a card authorization was # approved or declined by Visa through stand-in processing. # - # @see Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa#stand_in_processing_reason + # @see Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa#stand_in_processing_reason module StandInProcessingReason extend Increase::Internal::Type::Enum @@ -1568,7 +2771,7 @@ module StandInProcessingReason end end - # @see Increase::Models::CardPayment::Element::CardAuthorization#network_identifiers + # @see Increase::Models::CardPayment::Element::CardBalanceInquiry#network_identifiers class NetworkIdentifiers < Increase::Internal::Type::BaseModel # @!attribute authorization_identification_response # The randomly generated 6-character Authorization Identification Response code @@ -1601,7 +2804,7 @@ class NetworkIdentifiers < Increase::Internal::Type::BaseModel # @!method initialize(authorization_identification_response:, retrieval_reference_number:, trace_number:, transaction_id:) # Some parameter documentations has been truncated, see - # {Increase::Models::CardPayment::Element::CardAuthorization::NetworkIdentifiers} + # {Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkIdentifiers} # for more details. # # Network-specific identifiers for a specific request or transaction. @@ -1615,107 +2818,66 @@ class NetworkIdentifiers < Increase::Internal::Type::BaseModel # @param transaction_id [String, nil] A globally unique transaction identifier provided by the card network, used acro end - # The processing category describes the intent behind the authorization, such as - # whether it was used for bill payments or an automatic fuel dispenser. - # - # @see Increase::Models::CardPayment::Element::CardAuthorization#processing_category - module ProcessingCategory - extend Increase::Internal::Type::Enum - - # Account funding transactions are transactions used to e.g., fund an account or transfer funds between accounts. - ACCOUNT_FUNDING = :account_funding - - # Automatic fuel dispenser authorizations occur when a card is used at a gas pump, prior to the actual transaction amount being known. They are followed by an advice message that updates the amount of the pending transaction. - AUTOMATIC_FUEL_DISPENSER = :automatic_fuel_dispenser - - # A transaction used to pay a bill. - BILL_PAYMENT = :bill_payment - - # Original credit transactions are used to send money to a cardholder. - ORIGINAL_CREDIT = :original_credit - - # A regular purchase. - PURCHASE = :purchase - - # Quasi-cash transactions represent purchases of items which may be convertible to cash. - QUASI_CASH = :quasi_cash - - # A refund card authorization, sometimes referred to as a credit voucher authorization, where funds are credited to the cardholder. - REFUND = :refund - - # Cash disbursement transactions are used to withdraw cash from an ATM or a point of sale. - CASH_DISBURSEMENT = :cash_disbursement - - # A balance inquiry transaction is used to check the balance of an account associated with a card. - BALANCE_INQUIRY = :balance_inquiry - - # The processing category is unknown. - UNKNOWN = :unknown - - # @!method self.values - # @return [Array] - end - # A constant representing the object's type. For this resource it will always be - # `card_authorization`. + # `card_balance_inquiry`. # - # @see Increase::Models::CardPayment::Element::CardAuthorization#type + # @see Increase::Models::CardPayment::Element::CardBalanceInquiry#type module Type extend Increase::Internal::Type::Enum - CARD_AUTHORIZATION = :card_authorization + CARD_BALANCE_INQUIRY = :card_balance_inquiry # @!method self.values # @return [Array] end - # @see Increase::Models::CardPayment::Element::CardAuthorization#verification + # @see Increase::Models::CardPayment::Element::CardBalanceInquiry#verification class Verification < Increase::Internal::Type::BaseModel # @!attribute card_verification_code # Fields related to verification of the Card Verification Code, a 3-digit code on # the back of the card. # - # @return [Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode] + # @return [Increase::Models::CardPayment::Element::CardBalanceInquiry::Verification::CardVerificationCode] required :card_verification_code, - -> { Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode } + -> { Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardVerificationCode } # @!attribute cardholder_address # Cardholder address provided in the authorization request and the address on file # we verified it against. # - # @return [Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardholderAddress] + # @return [Increase::Models::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress] required :cardholder_address, - -> { Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress } + -> { Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress } # @!method initialize(card_verification_code:, cardholder_address:) # Some parameter documentations has been truncated, see - # {Increase::Models::CardPayment::Element::CardAuthorization::Verification} for + # {Increase::Models::CardPayment::Element::CardBalanceInquiry::Verification} for # more details. # # Fields related to verification of cardholder-provided values. # - # @param card_verification_code [Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode] Fields related to verification of the Card Verification Code, a 3-digit code on + # @param card_verification_code [Increase::Models::CardPayment::Element::CardBalanceInquiry::Verification::CardVerificationCode] Fields related to verification of the Card Verification Code, a 3-digit code on # - # @param cardholder_address [Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardholderAddress] Cardholder address provided in the authorization request and the address on file + # @param cardholder_address [Increase::Models::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress] Cardholder address provided in the authorization request and the address on file - # @see Increase::Models::CardPayment::Element::CardAuthorization::Verification#card_verification_code + # @see Increase::Models::CardPayment::Element::CardBalanceInquiry::Verification#card_verification_code class CardVerificationCode < Increase::Internal::Type::BaseModel # @!attribute result # The result of verifying the Card Verification Code. # - # @return [Symbol, Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::Result] + # @return [Symbol, Increase::Models::CardPayment::Element::CardBalanceInquiry::Verification::CardVerificationCode::Result] required :result, - enum: -> { Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::Result } + enum: -> { Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardVerificationCode::Result } # @!method initialize(result:) # Fields related to verification of the Card Verification Code, a 3-digit code on # the back of the card. # - # @param result [Symbol, Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::Result] The result of verifying the Card Verification Code. + # @param result [Symbol, Increase::Models::CardPayment::Element::CardBalanceInquiry::Verification::CardVerificationCode::Result] The result of verifying the Card Verification Code. # The result of verifying the Card Verification Code. # - # @see Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode#result + # @see Increase::Models::CardPayment::Element::CardBalanceInquiry::Verification::CardVerificationCode#result module Result extend Increase::Internal::Type::Enum @@ -1733,7 +2895,7 @@ module Result end end - # @see Increase::Models::CardPayment::Element::CardAuthorization::Verification#cardholder_address + # @see Increase::Models::CardPayment::Element::CardBalanceInquiry::Verification#cardholder_address class CardholderAddress < Increase::Internal::Type::BaseModel # @!attribute actual_line1 # Line 1 of the address on file for the cardholder. @@ -1763,13 +2925,13 @@ class CardholderAddress < Increase::Internal::Type::BaseModel # @!attribute result # The address verification result returned to the card network. # - # @return [Symbol, Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::Result] + # @return [Symbol, Increase::Models::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress::Result] required :result, - enum: -> { Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::Result } + enum: -> { Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress::Result } # @!method initialize(actual_line1:, actual_postal_code:, provided_line1:, provided_postal_code:, result:) # Some parameter documentations has been truncated, see - # {Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardholderAddress} + # {Increase::Models::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress} # for more details. # # Cardholder address provided in the authorization request and the address on file @@ -1783,11 +2945,11 @@ class CardholderAddress < Increase::Internal::Type::BaseModel # # @param provided_postal_code [String, nil] The postal code provided for verification in the authorization request. # - # @param result [Symbol, Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::Result] The address verification result returned to the card network. + # @param result [Symbol, Increase::Models::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress::Result] The address verification result returned to the card network. # The address verification result returned to the card network. # - # @see Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardholderAddress#result + # @see Increase::Models::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress#result module Result extend Increase::Internal::Type::Enum @@ -1816,113 +2978,6 @@ module Result end end - # @see Increase::Models::CardPayment::Element#card_authorization_expiration - class CardAuthorizationExpiration < Increase::Internal::Type::BaseModel - # @!attribute id - # The Card Authorization Expiration identifier. - # - # @return [String] - required :id, String - - # @!attribute card_authorization_id - # The identifier for the Card Authorization this reverses. - # - # @return [String] - required :card_authorization_id, String - - # @!attribute currency - # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the reversal's - # currency. - # - # @return [Symbol, Increase::Models::CardPayment::Element::CardAuthorizationExpiration::Currency] - required :currency, enum: -> { Increase::CardPayment::Element::CardAuthorizationExpiration::Currency } - - # @!attribute expired_amount - # The amount of this authorization expiration in the minor unit of the - # transaction's currency. For dollars, for example, this is cents. - # - # @return [Integer] - required :expired_amount, Integer - - # @!attribute network - # The card network used to process this card authorization. - # - # @return [Symbol, Increase::Models::CardPayment::Element::CardAuthorizationExpiration::Network] - required :network, enum: -> { Increase::CardPayment::Element::CardAuthorizationExpiration::Network } - - # @!attribute type - # A constant representing the object's type. For this resource it will always be - # `card_authorization_expiration`. - # - # @return [Symbol, Increase::Models::CardPayment::Element::CardAuthorizationExpiration::Type] - required :type, enum: -> { Increase::CardPayment::Element::CardAuthorizationExpiration::Type } - - # @!method initialize(id:, card_authorization_id:, currency:, expired_amount:, network:, type:) - # Some parameter documentations has been truncated, see - # {Increase::Models::CardPayment::Element::CardAuthorizationExpiration} for more - # details. - # - # A Card Authorization Expiration object. This field will be present in the JSON - # response if and only if `category` is equal to `card_authorization_expiration`. - # Card Authorization Expirations are cancellations of authorizations that were - # never settled by the acquirer. - # - # @param id [String] The Card Authorization Expiration identifier. - # - # @param card_authorization_id [String] The identifier for the Card Authorization this reverses. - # - # @param currency [Symbol, Increase::Models::CardPayment::Element::CardAuthorizationExpiration::Currency] The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the reversal's c - # - # @param expired_amount [Integer] The amount of this authorization expiration in the minor unit of the transaction - # - # @param network [Symbol, Increase::Models::CardPayment::Element::CardAuthorizationExpiration::Network] The card network used to process this card authorization. - # - # @param type [Symbol, Increase::Models::CardPayment::Element::CardAuthorizationExpiration::Type] A constant representing the object's type. For this resource it will always be ` - - # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the reversal's - # currency. - # - # @see Increase::Models::CardPayment::Element::CardAuthorizationExpiration#currency - module Currency - extend Increase::Internal::Type::Enum - - # US Dollar (USD) - USD = :USD - - # @!method self.values - # @return [Array] - end - - # The card network used to process this card authorization. - # - # @see Increase::Models::CardPayment::Element::CardAuthorizationExpiration#network - module Network - extend Increase::Internal::Type::Enum - - # Visa - VISA = :visa - - # Pulse - PULSE = :pulse - - # @!method self.values - # @return [Array] - end - - # A constant representing the object's type. For this resource it will always be - # `card_authorization_expiration`. - # - # @see Increase::Models::CardPayment::Element::CardAuthorizationExpiration#type - module Type - extend Increase::Internal::Type::Enum - - CARD_AUTHORIZATION_EXPIRATION = :card_authorization_expiration - - # @!method self.values - # @return [Array] - end - end - # @see Increase::Models::CardPayment::Element#card_decline class CardDecline < Increase::Internal::Type::BaseModel # @!attribute id @@ -9284,6 +10339,9 @@ module Category # Card Authentication: details will be under the `card_authentication` object. CARD_AUTHENTICATION = :card_authentication + # Card Balance Inquiry: details will be under the `card_balance_inquiry` object. + CARD_BALANCE_INQUIRY = :card_balance_inquiry + # Inbound Card Validation: details will be under the `card_validation` object. CARD_VALIDATION = :card_validation diff --git a/rbi/increase/models/card_payment.rbi b/rbi/increase/models/card_payment.rbi index 68f549a0..99b24a73 100644 --- a/rbi/increase/models/card_payment.rbi +++ b/rbi/increase/models/card_payment.rbi @@ -172,6 +172,26 @@ module Increase end attr_writer :card_authorization_expiration + # A Card Balance Inquiry object. This field will be present in the JSON response + # if and only if `category` is equal to `card_balance_inquiry`. Card Balance + # Inquiries are transactions that allow merchants to check the available balance + # on a card without placing a hold on funds, commonly used when a customer + # requests their balance at an ATM. + sig do + returns(T.nilable(Increase::CardPayment::Element::CardBalanceInquiry)) + end + attr_reader :card_balance_inquiry + + sig do + params( + card_balance_inquiry: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::OrHash + ) + ).void + end + attr_writer :card_balance_inquiry + # A Card Decline object. This field will be present in the JSON response if and # only if `category` is equal to `card_decline`. sig { returns(T.nilable(Increase::CardPayment::Element::CardDecline)) } @@ -339,6 +359,10 @@ module Increase T.nilable( Increase::CardPayment::Element::CardAuthorizationExpiration::OrHash ), + card_balance_inquiry: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::OrHash + ), card_decline: T.nilable(Increase::CardPayment::Element::CardDecline::OrHash), card_financial: @@ -377,6 +401,12 @@ module Increase # Card Authorization Expirations are cancellations of authorizations that were # never settled by the acquirer. card_authorization_expiration:, + # A Card Balance Inquiry object. This field will be present in the JSON response + # if and only if `category` is equal to `card_balance_inquiry`. Card Balance + # Inquiries are transactions that allow merchants to check the available balance + # on a card without placing a hold on funds, commonly used when a customer + # requests their balance at an ATM. + card_balance_inquiry:, # A Card Decline object. This field will be present in the JSON response if and # only if `category` is equal to `card_decline`. card_decline:, @@ -437,6 +467,8 @@ module Increase T.nilable( Increase::CardPayment::Element::CardAuthorizationExpiration ), + card_balance_inquiry: + T.nilable(Increase::CardPayment::Element::CardBalanceInquiry), card_decline: T.nilable(Increase::CardPayment::Element::CardDecline), card_financial: @@ -3108,17 +3140,2213 @@ module Increase sig do override.returns( - T::Array[ - Increase::CardPayment::Element::CardAuthorization::ProcessingCategory::TaggedSymbol - ] + T::Array[ + Increase::CardPayment::Element::CardAuthorization::ProcessingCategory::TaggedSymbol + ] + ) + end + def self.values + end + end + + # A constant representing the object's type. For this resource it will always be + # `card_authorization`. + module Type + extend Increase::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + Increase::CardPayment::Element::CardAuthorization::Type + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + CARD_AUTHORIZATION = + T.let( + :card_authorization, + Increase::CardPayment::Element::CardAuthorization::Type::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Increase::CardPayment::Element::CardAuthorization::Type::TaggedSymbol + ] + ) + end + def self.values + end + end + + class Verification < Increase::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Increase::CardPayment::Element::CardAuthorization::Verification, + Increase::Internal::AnyHash + ) + end + + # Fields related to verification of the Card Verification Code, a 3-digit code on + # the back of the card. + sig do + returns( + Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode + ) + end + attr_reader :card_verification_code + + sig do + params( + card_verification_code: + Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::OrHash + ).void + end + attr_writer :card_verification_code + + # Cardholder address provided in the authorization request and the address on file + # we verified it against. + sig do + returns( + Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress + ) + end + attr_reader :cardholder_address + + sig do + params( + cardholder_address: + Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::OrHash + ).void + end + attr_writer :cardholder_address + + # Fields related to verification of cardholder-provided values. + sig do + params( + card_verification_code: + Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::OrHash, + cardholder_address: + Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::OrHash + ).returns(T.attached_class) + end + def self.new( + # Fields related to verification of the Card Verification Code, a 3-digit code on + # the back of the card. + card_verification_code:, + # Cardholder address provided in the authorization request and the address on file + # we verified it against. + cardholder_address: + ) + end + + sig do + override.returns( + { + card_verification_code: + Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode, + cardholder_address: + Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress + } + ) + end + def to_hash + end + + class CardVerificationCode < Increase::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode, + Increase::Internal::AnyHash + ) + end + + # The result of verifying the Card Verification Code. + sig do + returns( + Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::Result::TaggedSymbol + ) + end + attr_accessor :result + + # Fields related to verification of the Card Verification Code, a 3-digit code on + # the back of the card. + sig do + params( + result: + Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::Result::OrSymbol + ).returns(T.attached_class) + end + def self.new( + # The result of verifying the Card Verification Code. + result: + ) + end + + sig do + override.returns( + { + result: + Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::Result::TaggedSymbol + } + ) + end + def to_hash + end + + # The result of verifying the Card Verification Code. + module Result + extend Increase::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::Result + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + # No card verification code was provided in the authorization request. + NOT_CHECKED = + T.let( + :not_checked, + Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::Result::TaggedSymbol + ) + + # The card verification code matched the one on file. + MATCH = + T.let( + :match, + Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::Result::TaggedSymbol + ) + + # The card verification code did not match the one on file. + NO_MATCH = + T.let( + :no_match, + Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::Result::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::Result::TaggedSymbol + ] + ) + end + def self.values + end + end + end + + class CardholderAddress < Increase::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress, + Increase::Internal::AnyHash + ) + end + + # Line 1 of the address on file for the cardholder. + sig { returns(T.nilable(String)) } + attr_accessor :actual_line1 + + # The postal code of the address on file for the cardholder. + sig { returns(T.nilable(String)) } + attr_accessor :actual_postal_code + + # The cardholder address line 1 provided for verification in the authorization + # request. + sig { returns(T.nilable(String)) } + attr_accessor :provided_line1 + + # The postal code provided for verification in the authorization request. + sig { returns(T.nilable(String)) } + attr_accessor :provided_postal_code + + # The address verification result returned to the card network. + sig do + returns( + Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::Result::TaggedSymbol + ) + end + attr_accessor :result + + # Cardholder address provided in the authorization request and the address on file + # we verified it against. + sig do + params( + actual_line1: T.nilable(String), + actual_postal_code: T.nilable(String), + provided_line1: T.nilable(String), + provided_postal_code: T.nilable(String), + result: + Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::Result::OrSymbol + ).returns(T.attached_class) + end + def self.new( + # Line 1 of the address on file for the cardholder. + actual_line1:, + # The postal code of the address on file for the cardholder. + actual_postal_code:, + # The cardholder address line 1 provided for verification in the authorization + # request. + provided_line1:, + # The postal code provided for verification in the authorization request. + provided_postal_code:, + # The address verification result returned to the card network. + result: + ) + end + + sig do + override.returns( + { + actual_line1: T.nilable(String), + actual_postal_code: T.nilable(String), + provided_line1: T.nilable(String), + provided_postal_code: T.nilable(String), + result: + Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::Result::TaggedSymbol + } + ) + end + def to_hash + end + + # The address verification result returned to the card network. + module Result + extend Increase::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::Result + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + # No address information was provided in the authorization request. + NOT_CHECKED = + T.let( + :not_checked, + Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::Result::TaggedSymbol + ) + + # Postal code matches, but the street address does not match or was not provided. + POSTAL_CODE_MATCH_ADDRESS_NO_MATCH = + T.let( + :postal_code_match_address_no_match, + Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::Result::TaggedSymbol + ) + + # Postal code does not match, but the street address matches or was not provided. + POSTAL_CODE_NO_MATCH_ADDRESS_MATCH = + T.let( + :postal_code_no_match_address_match, + Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::Result::TaggedSymbol + ) + + # Postal code and street address match. + MATCH = + T.let( + :match, + Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::Result::TaggedSymbol + ) + + # Postal code and street address do not match. + NO_MATCH = + T.let( + :no_match, + Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::Result::TaggedSymbol + ) + + # Postal code matches, but the street address was not verified. (deprecated) + POSTAL_CODE_MATCH_ADDRESS_NOT_CHECKED = + T.let( + :postal_code_match_address_not_checked, + Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::Result::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::Result::TaggedSymbol + ] + ) + end + def self.values + end + end + end + end + end + + class CardAuthorizationExpiration < Increase::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Increase::CardPayment::Element::CardAuthorizationExpiration, + Increase::Internal::AnyHash + ) + end + + # The Card Authorization Expiration identifier. + sig { returns(String) } + attr_accessor :id + + # The identifier for the Card Authorization this reverses. + sig { returns(String) } + attr_accessor :card_authorization_id + + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the reversal's + # currency. + sig do + returns( + Increase::CardPayment::Element::CardAuthorizationExpiration::Currency::TaggedSymbol + ) + end + attr_accessor :currency + + # The amount of this authorization expiration in the minor unit of the + # transaction's currency. For dollars, for example, this is cents. + sig { returns(Integer) } + attr_accessor :expired_amount + + # The card network used to process this card authorization. + sig do + returns( + Increase::CardPayment::Element::CardAuthorizationExpiration::Network::TaggedSymbol + ) + end + attr_accessor :network + + # A constant representing the object's type. For this resource it will always be + # `card_authorization_expiration`. + sig do + returns( + Increase::CardPayment::Element::CardAuthorizationExpiration::Type::TaggedSymbol + ) + end + attr_accessor :type + + # A Card Authorization Expiration object. This field will be present in the JSON + # response if and only if `category` is equal to `card_authorization_expiration`. + # Card Authorization Expirations are cancellations of authorizations that were + # never settled by the acquirer. + sig do + params( + id: String, + card_authorization_id: String, + currency: + Increase::CardPayment::Element::CardAuthorizationExpiration::Currency::OrSymbol, + expired_amount: Integer, + network: + Increase::CardPayment::Element::CardAuthorizationExpiration::Network::OrSymbol, + type: + Increase::CardPayment::Element::CardAuthorizationExpiration::Type::OrSymbol + ).returns(T.attached_class) + end + def self.new( + # The Card Authorization Expiration identifier. + id:, + # The identifier for the Card Authorization this reverses. + card_authorization_id:, + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the reversal's + # currency. + currency:, + # The amount of this authorization expiration in the minor unit of the + # transaction's currency. For dollars, for example, this is cents. + expired_amount:, + # The card network used to process this card authorization. + network:, + # A constant representing the object's type. For this resource it will always be + # `card_authorization_expiration`. + type: + ) + end + + sig do + override.returns( + { + id: String, + card_authorization_id: String, + currency: + Increase::CardPayment::Element::CardAuthorizationExpiration::Currency::TaggedSymbol, + expired_amount: Integer, + network: + Increase::CardPayment::Element::CardAuthorizationExpiration::Network::TaggedSymbol, + type: + Increase::CardPayment::Element::CardAuthorizationExpiration::Type::TaggedSymbol + } + ) + end + def to_hash + end + + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the reversal's + # currency. + module Currency + extend Increase::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + Increase::CardPayment::Element::CardAuthorizationExpiration::Currency + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + # US Dollar (USD) + USD = + T.let( + :USD, + Increase::CardPayment::Element::CardAuthorizationExpiration::Currency::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Increase::CardPayment::Element::CardAuthorizationExpiration::Currency::TaggedSymbol + ] + ) + end + def self.values + end + end + + # The card network used to process this card authorization. + module Network + extend Increase::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + Increase::CardPayment::Element::CardAuthorizationExpiration::Network + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + # Visa + VISA = + T.let( + :visa, + Increase::CardPayment::Element::CardAuthorizationExpiration::Network::TaggedSymbol + ) + + # Pulse + PULSE = + T.let( + :pulse, + Increase::CardPayment::Element::CardAuthorizationExpiration::Network::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Increase::CardPayment::Element::CardAuthorizationExpiration::Network::TaggedSymbol + ] + ) + end + def self.values + end + end + + # A constant representing the object's type. For this resource it will always be + # `card_authorization_expiration`. + module Type + extend Increase::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + Increase::CardPayment::Element::CardAuthorizationExpiration::Type + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + CARD_AUTHORIZATION_EXPIRATION = + T.let( + :card_authorization_expiration, + Increase::CardPayment::Element::CardAuthorizationExpiration::Type::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Increase::CardPayment::Element::CardAuthorizationExpiration::Type::TaggedSymbol + ] + ) + end + def self.values + end + end + end + + class CardBalanceInquiry < Increase::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Increase::CardPayment::Element::CardBalanceInquiry, + Increase::Internal::AnyHash + ) + end + + # The Card Balance Inquiry identifier. + sig { returns(String) } + attr_accessor :id + + # Additional amounts associated with the card authorization, such as ATM + # surcharges fees. These are usually a subset of the `amount` field and are used + # to provide more detailed information about the transaction. + sig do + returns( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts + ) + end + attr_reader :additional_amounts + + sig do + params( + additional_amounts: + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::OrHash + ).void + end + attr_writer :additional_amounts + + # The balance amount in the minor unit of the account's currency. For dollars, for + # example, this is cents. + sig { returns(Integer) } + attr_accessor :balance + + # The ID of the Card Payment this transaction belongs to. + sig { returns(String) } + attr_accessor :card_payment_id + + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the account's + # currency. + sig do + returns( + Increase::CardPayment::Element::CardBalanceInquiry::Currency::TaggedSymbol + ) + end + attr_accessor :currency + + # If the authorization was made via a Digital Wallet Token (such as an Apple Pay + # purchase), the identifier of the token that was used. + sig { returns(T.nilable(String)) } + attr_accessor :digital_wallet_token_id + + # The merchant identifier (commonly abbreviated as MID) of the merchant the card + # is transacting with. + sig { returns(String) } + attr_accessor :merchant_acceptor_id + + # The Merchant Category Code (commonly abbreviated as MCC) of the merchant the + # card is transacting with. + sig { returns(String) } + attr_accessor :merchant_category_code + + # The city the merchant resides in. + sig { returns(T.nilable(String)) } + attr_accessor :merchant_city + + # The country the merchant resides in. + sig { returns(String) } + attr_accessor :merchant_country + + # The merchant descriptor of the merchant the card is transacting with. + sig { returns(String) } + attr_accessor :merchant_descriptor + + # The merchant's postal code. For US merchants this is either a 5-digit or 9-digit + # ZIP code, where the first 5 and last 4 are separated by a dash. + sig { returns(T.nilable(String)) } + attr_accessor :merchant_postal_code + + # The state the merchant resides in. + sig { returns(T.nilable(String)) } + attr_accessor :merchant_state + + # Fields specific to the `network`. + sig do + returns( + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails + ) + end + attr_reader :network_details + + sig do + params( + network_details: + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::OrHash + ).void + end + attr_writer :network_details + + # Network-specific identifiers for a specific request or transaction. + sig do + returns( + Increase::CardPayment::Element::CardBalanceInquiry::NetworkIdentifiers + ) + end + attr_reader :network_identifiers + + sig do + params( + network_identifiers: + Increase::CardPayment::Element::CardBalanceInquiry::NetworkIdentifiers::OrHash + ).void + end + attr_writer :network_identifiers + + # The risk score generated by the card network. For Visa this is the Visa Advanced + # Authorization risk score, from 0 to 99, where 99 is the riskiest. For Pulse the + # score is from 0 to 999, where 999 is the riskiest. + sig { returns(T.nilable(Integer)) } + attr_accessor :network_risk_score + + # If the authorization was made in-person with a physical card, the Physical Card + # that was used. + sig { returns(T.nilable(String)) } + attr_accessor :physical_card_id + + # The identifier of the Real-Time Decision sent to approve or decline this + # transaction. + sig { returns(T.nilable(String)) } + attr_accessor :real_time_decision_id + + # The terminal identifier (commonly abbreviated as TID) of the terminal the card + # is transacting with. + sig { returns(T.nilable(String)) } + attr_accessor :terminal_id + + # A constant representing the object's type. For this resource it will always be + # `card_balance_inquiry`. + sig do + returns( + Increase::CardPayment::Element::CardBalanceInquiry::Type::TaggedSymbol + ) + end + attr_accessor :type + + # Fields related to verification of cardholder-provided values. + sig do + returns( + Increase::CardPayment::Element::CardBalanceInquiry::Verification + ) + end + attr_reader :verification + + sig do + params( + verification: + Increase::CardPayment::Element::CardBalanceInquiry::Verification::OrHash + ).void + end + attr_writer :verification + + # A Card Balance Inquiry object. This field will be present in the JSON response + # if and only if `category` is equal to `card_balance_inquiry`. Card Balance + # Inquiries are transactions that allow merchants to check the available balance + # on a card without placing a hold on funds, commonly used when a customer + # requests their balance at an ATM. + sig do + params( + id: String, + additional_amounts: + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::OrHash, + balance: Integer, + card_payment_id: String, + currency: + Increase::CardPayment::Element::CardBalanceInquiry::Currency::OrSymbol, + digital_wallet_token_id: T.nilable(String), + merchant_acceptor_id: String, + merchant_category_code: String, + merchant_city: T.nilable(String), + merchant_country: String, + merchant_descriptor: String, + merchant_postal_code: T.nilable(String), + merchant_state: T.nilable(String), + network_details: + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::OrHash, + network_identifiers: + Increase::CardPayment::Element::CardBalanceInquiry::NetworkIdentifiers::OrHash, + network_risk_score: T.nilable(Integer), + physical_card_id: T.nilable(String), + real_time_decision_id: T.nilable(String), + terminal_id: T.nilable(String), + type: + Increase::CardPayment::Element::CardBalanceInquiry::Type::OrSymbol, + verification: + Increase::CardPayment::Element::CardBalanceInquiry::Verification::OrHash + ).returns(T.attached_class) + end + def self.new( + # The Card Balance Inquiry identifier. + id:, + # Additional amounts associated with the card authorization, such as ATM + # surcharges fees. These are usually a subset of the `amount` field and are used + # to provide more detailed information about the transaction. + additional_amounts:, + # The balance amount in the minor unit of the account's currency. For dollars, for + # example, this is cents. + balance:, + # The ID of the Card Payment this transaction belongs to. + card_payment_id:, + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the account's + # currency. + currency:, + # If the authorization was made via a Digital Wallet Token (such as an Apple Pay + # purchase), the identifier of the token that was used. + digital_wallet_token_id:, + # The merchant identifier (commonly abbreviated as MID) of the merchant the card + # is transacting with. + merchant_acceptor_id:, + # The Merchant Category Code (commonly abbreviated as MCC) of the merchant the + # card is transacting with. + merchant_category_code:, + # The city the merchant resides in. + merchant_city:, + # The country the merchant resides in. + merchant_country:, + # The merchant descriptor of the merchant the card is transacting with. + merchant_descriptor:, + # The merchant's postal code. For US merchants this is either a 5-digit or 9-digit + # ZIP code, where the first 5 and last 4 are separated by a dash. + merchant_postal_code:, + # The state the merchant resides in. + merchant_state:, + # Fields specific to the `network`. + network_details:, + # Network-specific identifiers for a specific request or transaction. + network_identifiers:, + # The risk score generated by the card network. For Visa this is the Visa Advanced + # Authorization risk score, from 0 to 99, where 99 is the riskiest. For Pulse the + # score is from 0 to 999, where 999 is the riskiest. + network_risk_score:, + # If the authorization was made in-person with a physical card, the Physical Card + # that was used. + physical_card_id:, + # The identifier of the Real-Time Decision sent to approve or decline this + # transaction. + real_time_decision_id:, + # The terminal identifier (commonly abbreviated as TID) of the terminal the card + # is transacting with. + terminal_id:, + # A constant representing the object's type. For this resource it will always be + # `card_balance_inquiry`. + type:, + # Fields related to verification of cardholder-provided values. + verification: + ) + end + + sig do + override.returns( + { + id: String, + additional_amounts: + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts, + balance: Integer, + card_payment_id: String, + currency: + Increase::CardPayment::Element::CardBalanceInquiry::Currency::TaggedSymbol, + digital_wallet_token_id: T.nilable(String), + merchant_acceptor_id: String, + merchant_category_code: String, + merchant_city: T.nilable(String), + merchant_country: String, + merchant_descriptor: String, + merchant_postal_code: T.nilable(String), + merchant_state: T.nilable(String), + network_details: + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails, + network_identifiers: + Increase::CardPayment::Element::CardBalanceInquiry::NetworkIdentifiers, + network_risk_score: T.nilable(Integer), + physical_card_id: T.nilable(String), + real_time_decision_id: T.nilable(String), + terminal_id: T.nilable(String), + type: + Increase::CardPayment::Element::CardBalanceInquiry::Type::TaggedSymbol, + verification: + Increase::CardPayment::Element::CardBalanceInquiry::Verification + } + ) + end + def to_hash + end + + class AdditionalAmounts < Increase::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts, + Increase::Internal::AnyHash + ) + end + + # The part of this transaction amount that was for clinic-related services. + sig do + returns( + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Clinic + ) + ) + end + attr_reader :clinic + + sig do + params( + clinic: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Clinic::OrHash + ) + ).void + end + attr_writer :clinic + + # The part of this transaction amount that was for dental-related services. + sig do + returns( + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Dental + ) + ) + end + attr_reader :dental + + sig do + params( + dental: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Dental::OrHash + ) + ).void + end + attr_writer :dental + + # The original pre-authorized amount. + sig do + returns( + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Original + ) + ) + end + attr_reader :original + + sig do + params( + original: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Original::OrHash + ) + ).void + end + attr_writer :original + + # The part of this transaction amount that was for healthcare prescriptions. + sig do + returns( + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Prescription + ) + ) + end + attr_reader :prescription + + sig do + params( + prescription: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Prescription::OrHash + ) + ).void + end + attr_writer :prescription + + # The surcharge amount charged for this transaction by the merchant. + sig do + returns( + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Surcharge + ) + ) + end + attr_reader :surcharge + + sig do + params( + surcharge: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Surcharge::OrHash + ) + ).void + end + attr_writer :surcharge + + # The total amount of a series of incremental authorizations, optionally provided. + sig do + returns( + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::TotalCumulative + ) + ) + end + attr_reader :total_cumulative + + sig do + params( + total_cumulative: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::TotalCumulative::OrHash + ) + ).void + end + attr_writer :total_cumulative + + # The total amount of healthcare-related additional amounts. + sig do + returns( + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::TotalHealthcare + ) + ) + end + attr_reader :total_healthcare + + sig do + params( + total_healthcare: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::TotalHealthcare::OrHash + ) + ).void + end + attr_writer :total_healthcare + + # The part of this transaction amount that was for transit-related services. + sig do + returns( + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Transit + ) + ) + end + attr_reader :transit + + sig do + params( + transit: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Transit::OrHash + ) + ).void + end + attr_writer :transit + + # An unknown additional amount. + sig do + returns( + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Unknown + ) + ) + end + attr_reader :unknown + + sig do + params( + unknown: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Unknown::OrHash + ) + ).void + end + attr_writer :unknown + + # The part of this transaction amount that was for vision-related services. + sig do + returns( + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Vision + ) + ) + end + attr_reader :vision + + sig do + params( + vision: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Vision::OrHash + ) + ).void + end + attr_writer :vision + + # Additional amounts associated with the card authorization, such as ATM + # surcharges fees. These are usually a subset of the `amount` field and are used + # to provide more detailed information about the transaction. + sig do + params( + clinic: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Clinic::OrHash + ), + dental: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Dental::OrHash + ), + original: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Original::OrHash + ), + prescription: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Prescription::OrHash + ), + surcharge: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Surcharge::OrHash + ), + total_cumulative: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::TotalCumulative::OrHash + ), + total_healthcare: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::TotalHealthcare::OrHash + ), + transit: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Transit::OrHash + ), + unknown: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Unknown::OrHash + ), + vision: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Vision::OrHash + ) + ).returns(T.attached_class) + end + def self.new( + # The part of this transaction amount that was for clinic-related services. + clinic:, + # The part of this transaction amount that was for dental-related services. + dental:, + # The original pre-authorized amount. + original:, + # The part of this transaction amount that was for healthcare prescriptions. + prescription:, + # The surcharge amount charged for this transaction by the merchant. + surcharge:, + # The total amount of a series of incremental authorizations, optionally provided. + total_cumulative:, + # The total amount of healthcare-related additional amounts. + total_healthcare:, + # The part of this transaction amount that was for transit-related services. + transit:, + # An unknown additional amount. + unknown:, + # The part of this transaction amount that was for vision-related services. + vision: + ) + end + + sig do + override.returns( + { + clinic: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Clinic + ), + dental: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Dental + ), + original: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Original + ), + prescription: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Prescription + ), + surcharge: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Surcharge + ), + total_cumulative: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::TotalCumulative + ), + total_healthcare: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::TotalHealthcare + ), + transit: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Transit + ), + unknown: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Unknown + ), + vision: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Vision + ) + } + ) + end + def to_hash + end + + class Clinic < Increase::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Clinic, + Increase::Internal::AnyHash + ) + end + + # The amount in minor units of the `currency` field. The amount is positive if it + # is added to the amount (such as an ATM surcharge fee) and negative if it is + # subtracted from the amount (such as a discount). + sig { returns(Integer) } + attr_accessor :amount + + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional + # amount's currency. + sig { returns(String) } + attr_accessor :currency + + # The part of this transaction amount that was for clinic-related services. + sig do + params(amount: Integer, currency: String).returns( + T.attached_class + ) + end + def self.new( + # The amount in minor units of the `currency` field. The amount is positive if it + # is added to the amount (such as an ATM surcharge fee) and negative if it is + # subtracted from the amount (such as a discount). + amount:, + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional + # amount's currency. + currency: + ) + end + + sig { override.returns({ amount: Integer, currency: String }) } + def to_hash + end + end + + class Dental < Increase::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Dental, + Increase::Internal::AnyHash + ) + end + + # The amount in minor units of the `currency` field. The amount is positive if it + # is added to the amount (such as an ATM surcharge fee) and negative if it is + # subtracted from the amount (such as a discount). + sig { returns(Integer) } + attr_accessor :amount + + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional + # amount's currency. + sig { returns(String) } + attr_accessor :currency + + # The part of this transaction amount that was for dental-related services. + sig do + params(amount: Integer, currency: String).returns( + T.attached_class + ) + end + def self.new( + # The amount in minor units of the `currency` field. The amount is positive if it + # is added to the amount (such as an ATM surcharge fee) and negative if it is + # subtracted from the amount (such as a discount). + amount:, + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional + # amount's currency. + currency: + ) + end + + sig { override.returns({ amount: Integer, currency: String }) } + def to_hash + end + end + + class Original < Increase::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Original, + Increase::Internal::AnyHash + ) + end + + # The amount in minor units of the `currency` field. The amount is positive if it + # is added to the amount (such as an ATM surcharge fee) and negative if it is + # subtracted from the amount (such as a discount). + sig { returns(Integer) } + attr_accessor :amount + + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional + # amount's currency. + sig { returns(String) } + attr_accessor :currency + + # The original pre-authorized amount. + sig do + params(amount: Integer, currency: String).returns( + T.attached_class + ) + end + def self.new( + # The amount in minor units of the `currency` field. The amount is positive if it + # is added to the amount (such as an ATM surcharge fee) and negative if it is + # subtracted from the amount (such as a discount). + amount:, + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional + # amount's currency. + currency: + ) + end + + sig { override.returns({ amount: Integer, currency: String }) } + def to_hash + end + end + + class Prescription < Increase::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Prescription, + Increase::Internal::AnyHash + ) + end + + # The amount in minor units of the `currency` field. The amount is positive if it + # is added to the amount (such as an ATM surcharge fee) and negative if it is + # subtracted from the amount (such as a discount). + sig { returns(Integer) } + attr_accessor :amount + + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional + # amount's currency. + sig { returns(String) } + attr_accessor :currency + + # The part of this transaction amount that was for healthcare prescriptions. + sig do + params(amount: Integer, currency: String).returns( + T.attached_class + ) + end + def self.new( + # The amount in minor units of the `currency` field. The amount is positive if it + # is added to the amount (such as an ATM surcharge fee) and negative if it is + # subtracted from the amount (such as a discount). + amount:, + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional + # amount's currency. + currency: + ) + end + + sig { override.returns({ amount: Integer, currency: String }) } + def to_hash + end + end + + class Surcharge < Increase::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Surcharge, + Increase::Internal::AnyHash + ) + end + + # The amount in minor units of the `currency` field. The amount is positive if it + # is added to the amount (such as an ATM surcharge fee) and negative if it is + # subtracted from the amount (such as a discount). + sig { returns(Integer) } + attr_accessor :amount + + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional + # amount's currency. + sig { returns(String) } + attr_accessor :currency + + # The surcharge amount charged for this transaction by the merchant. + sig do + params(amount: Integer, currency: String).returns( + T.attached_class + ) + end + def self.new( + # The amount in minor units of the `currency` field. The amount is positive if it + # is added to the amount (such as an ATM surcharge fee) and negative if it is + # subtracted from the amount (such as a discount). + amount:, + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional + # amount's currency. + currency: + ) + end + + sig { override.returns({ amount: Integer, currency: String }) } + def to_hash + end + end + + class TotalCumulative < Increase::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::TotalCumulative, + Increase::Internal::AnyHash + ) + end + + # The amount in minor units of the `currency` field. The amount is positive if it + # is added to the amount (such as an ATM surcharge fee) and negative if it is + # subtracted from the amount (such as a discount). + sig { returns(Integer) } + attr_accessor :amount + + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional + # amount's currency. + sig { returns(String) } + attr_accessor :currency + + # The total amount of a series of incremental authorizations, optionally provided. + sig do + params(amount: Integer, currency: String).returns( + T.attached_class + ) + end + def self.new( + # The amount in minor units of the `currency` field. The amount is positive if it + # is added to the amount (such as an ATM surcharge fee) and negative if it is + # subtracted from the amount (such as a discount). + amount:, + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional + # amount's currency. + currency: + ) + end + + sig { override.returns({ amount: Integer, currency: String }) } + def to_hash + end + end + + class TotalHealthcare < Increase::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::TotalHealthcare, + Increase::Internal::AnyHash + ) + end + + # The amount in minor units of the `currency` field. The amount is positive if it + # is added to the amount (such as an ATM surcharge fee) and negative if it is + # subtracted from the amount (such as a discount). + sig { returns(Integer) } + attr_accessor :amount + + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional + # amount's currency. + sig { returns(String) } + attr_accessor :currency + + # The total amount of healthcare-related additional amounts. + sig do + params(amount: Integer, currency: String).returns( + T.attached_class + ) + end + def self.new( + # The amount in minor units of the `currency` field. The amount is positive if it + # is added to the amount (such as an ATM surcharge fee) and negative if it is + # subtracted from the amount (such as a discount). + amount:, + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional + # amount's currency. + currency: + ) + end + + sig { override.returns({ amount: Integer, currency: String }) } + def to_hash + end + end + + class Transit < Increase::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Transit, + Increase::Internal::AnyHash + ) + end + + # The amount in minor units of the `currency` field. The amount is positive if it + # is added to the amount (such as an ATM surcharge fee) and negative if it is + # subtracted from the amount (such as a discount). + sig { returns(Integer) } + attr_accessor :amount + + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional + # amount's currency. + sig { returns(String) } + attr_accessor :currency + + # The part of this transaction amount that was for transit-related services. + sig do + params(amount: Integer, currency: String).returns( + T.attached_class + ) + end + def self.new( + # The amount in minor units of the `currency` field. The amount is positive if it + # is added to the amount (such as an ATM surcharge fee) and negative if it is + # subtracted from the amount (such as a discount). + amount:, + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional + # amount's currency. + currency: + ) + end + + sig { override.returns({ amount: Integer, currency: String }) } + def to_hash + end + end + + class Unknown < Increase::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Unknown, + Increase::Internal::AnyHash + ) + end + + # The amount in minor units of the `currency` field. The amount is positive if it + # is added to the amount (such as an ATM surcharge fee) and negative if it is + # subtracted from the amount (such as a discount). + sig { returns(Integer) } + attr_accessor :amount + + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional + # amount's currency. + sig { returns(String) } + attr_accessor :currency + + # An unknown additional amount. + sig do + params(amount: Integer, currency: String).returns( + T.attached_class + ) + end + def self.new( + # The amount in minor units of the `currency` field. The amount is positive if it + # is added to the amount (such as an ATM surcharge fee) and negative if it is + # subtracted from the amount (such as a discount). + amount:, + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional + # amount's currency. + currency: + ) + end + + sig { override.returns({ amount: Integer, currency: String }) } + def to_hash + end + end + + class Vision < Increase::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Vision, + Increase::Internal::AnyHash + ) + end + + # The amount in minor units of the `currency` field. The amount is positive if it + # is added to the amount (such as an ATM surcharge fee) and negative if it is + # subtracted from the amount (such as a discount). + sig { returns(Integer) } + attr_accessor :amount + + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional + # amount's currency. + sig { returns(String) } + attr_accessor :currency + + # The part of this transaction amount that was for vision-related services. + sig do + params(amount: Integer, currency: String).returns( + T.attached_class + ) + end + def self.new( + # The amount in minor units of the `currency` field. The amount is positive if it + # is added to the amount (such as an ATM surcharge fee) and negative if it is + # subtracted from the amount (such as a discount). + amount:, + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional + # amount's currency. + currency: + ) + end + + sig { override.returns({ amount: Integer, currency: String }) } + def to_hash + end + end + end + + # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the account's + # currency. + module Currency + extend Increase::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + Increase::CardPayment::Element::CardBalanceInquiry::Currency + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + # US Dollar (USD) + USD = + T.let( + :USD, + Increase::CardPayment::Element::CardBalanceInquiry::Currency::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Increase::CardPayment::Element::CardBalanceInquiry::Currency::TaggedSymbol + ] + ) + end + def self.values + end + end + + class NetworkDetails < Increase::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails, + Increase::Internal::AnyHash + ) + end + + # The payment network used to process this card authorization. + sig do + returns( + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Category::TaggedSymbol + ) + end + attr_accessor :category + + # Fields specific to the `pulse` network. + sig do + returns( + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Pulse + ) + ) + end + attr_reader :pulse + + sig do + params( + pulse: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Pulse::OrHash + ) + ).void + end + attr_writer :pulse + + # Fields specific to the `visa` network. + sig do + returns( + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa + ) + ) + end + attr_reader :visa + + sig do + params( + visa: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::OrHash + ) + ).void + end + attr_writer :visa + + # Fields specific to the `network`. + sig do + params( + category: + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Category::OrSymbol, + pulse: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Pulse::OrHash + ), + visa: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::OrHash + ) + ).returns(T.attached_class) + end + def self.new( + # The payment network used to process this card authorization. + category:, + # Fields specific to the `pulse` network. + pulse:, + # Fields specific to the `visa` network. + visa: + ) + end + + sig do + override.returns( + { + category: + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Category::TaggedSymbol, + pulse: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Pulse + ), + visa: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa + ) + } + ) + end + def to_hash + end + + # The payment network used to process this card authorization. + module Category + extend Increase::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Category + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + # Visa + VISA = + T.let( + :visa, + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Category::TaggedSymbol + ) + + # Pulse + PULSE = + T.let( + :pulse, + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Category::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Category::TaggedSymbol + ] + ) + end + def self.values + end + end + + class Pulse < Increase::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Pulse, + Increase::Internal::AnyHash + ) + end + + # Fields specific to the `pulse` network. + sig { returns(T.attached_class) } + def self.new + end + + sig { override.returns({}) } + def to_hash + end + end + + class Visa < Increase::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa, + Increase::Internal::AnyHash + ) + end + + # For electronic commerce transactions, this identifies the level of security used + # in obtaining the customer's payment credential. For mail or telephone order + # transactions, identifies the type of mail or telephone order. + sig do + returns( + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::ElectronicCommerceIndicator::TaggedSymbol + ) + ) + end + attr_accessor :electronic_commerce_indicator + + # The method used to enter the cardholder's primary account number and card + # expiration date. + sig do + returns( + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::PointOfServiceEntryMode::TaggedSymbol + ) + ) + end + attr_accessor :point_of_service_entry_mode + + # Only present when `actioner: network`. Describes why a card authorization was + # approved or declined by Visa through stand-in processing. + sig do + returns( + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::StandInProcessingReason::TaggedSymbol + ) + ) + end + attr_accessor :stand_in_processing_reason + + # Fields specific to the `visa` network. + sig do + params( + electronic_commerce_indicator: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::ElectronicCommerceIndicator::OrSymbol + ), + point_of_service_entry_mode: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::PointOfServiceEntryMode::OrSymbol + ), + stand_in_processing_reason: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::StandInProcessingReason::OrSymbol + ) + ).returns(T.attached_class) + end + def self.new( + # For electronic commerce transactions, this identifies the level of security used + # in obtaining the customer's payment credential. For mail or telephone order + # transactions, identifies the type of mail or telephone order. + electronic_commerce_indicator:, + # The method used to enter the cardholder's primary account number and card + # expiration date. + point_of_service_entry_mode:, + # Only present when `actioner: network`. Describes why a card authorization was + # approved or declined by Visa through stand-in processing. + stand_in_processing_reason: + ) + end + + sig do + override.returns( + { + electronic_commerce_indicator: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::ElectronicCommerceIndicator::TaggedSymbol + ), + point_of_service_entry_mode: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::PointOfServiceEntryMode::TaggedSymbol + ), + stand_in_processing_reason: + T.nilable( + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::StandInProcessingReason::TaggedSymbol + ) + } + ) + end + def to_hash + end + + # For electronic commerce transactions, this identifies the level of security used + # in obtaining the customer's payment credential. For mail or telephone order + # transactions, identifies the type of mail or telephone order. + module ElectronicCommerceIndicator + extend Increase::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::ElectronicCommerceIndicator + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + # Single transaction of a mail/phone order: Use to indicate that the transaction is a mail/phone order purchase, not a recurring transaction or installment payment. For domestic transactions in the US region, this value may also indicate one bill payment transaction in the card-present or card-absent environments. + MAIL_PHONE_ORDER = + T.let( + :mail_phone_order, + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::ElectronicCommerceIndicator::TaggedSymbol + ) + + # Recurring transaction: Payment indicator used to indicate a recurring transaction that originates from an acquirer in the US region. + RECURRING = + T.let( + :recurring, + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::ElectronicCommerceIndicator::TaggedSymbol + ) + + # Installment payment: Payment indicator used to indicate one purchase of goods or services that is billed to the account in multiple charges over a period of time agreed upon by the cardholder and merchant from transactions that originate from an acquirer in the US region. + INSTALLMENT = + T.let( + :installment, + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::ElectronicCommerceIndicator::TaggedSymbol + ) + + # Unknown classification: other mail order: Use to indicate that the type of mail/telephone order is unknown. + UNKNOWN_MAIL_PHONE_ORDER = + T.let( + :unknown_mail_phone_order, + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::ElectronicCommerceIndicator::TaggedSymbol + ) + + # Secure electronic commerce transaction: Use to indicate that the electronic commerce transaction has been authenticated using e.g., 3-D Secure + SECURE_ELECTRONIC_COMMERCE = + T.let( + :secure_electronic_commerce, + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::ElectronicCommerceIndicator::TaggedSymbol + ) + + # Non-authenticated security transaction at a 3-D Secure-capable merchant, and merchant attempted to authenticate the cardholder using 3-D Secure: Use to identify an electronic commerce transaction where the merchant attempted to authenticate the cardholder using 3-D Secure, but was unable to complete the authentication because the issuer or cardholder does not participate in the 3-D Secure program. + NON_AUTHENTICATED_SECURITY_TRANSACTION_AT_3DS_CAPABLE_MERCHANT = + T.let( + :non_authenticated_security_transaction_at_3ds_capable_merchant, + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::ElectronicCommerceIndicator::TaggedSymbol + ) + + # Non-authenticated security transaction: Use to identify an electronic commerce transaction that uses data encryption for security however, cardholder authentication is not performed using 3-D Secure. + NON_AUTHENTICATED_SECURITY_TRANSACTION = + T.let( + :non_authenticated_security_transaction, + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::ElectronicCommerceIndicator::TaggedSymbol + ) + + # Non-secure transaction: Use to identify an electronic commerce transaction that has no data protection. + NON_SECURE_TRANSACTION = + T.let( + :non_secure_transaction, + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::ElectronicCommerceIndicator::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::ElectronicCommerceIndicator::TaggedSymbol + ] + ) + end + def self.values + end + end + + # The method used to enter the cardholder's primary account number and card + # expiration date. + module PointOfServiceEntryMode + extend Increase::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::PointOfServiceEntryMode + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + # Unknown + UNKNOWN = + T.let( + :unknown, + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::PointOfServiceEntryMode::TaggedSymbol + ) + + # Manual key entry + MANUAL = + T.let( + :manual, + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::PointOfServiceEntryMode::TaggedSymbol + ) + + # Magnetic stripe read, without card verification value + MAGNETIC_STRIPE_NO_CVV = + T.let( + :magnetic_stripe_no_cvv, + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::PointOfServiceEntryMode::TaggedSymbol + ) + + # Optical code + OPTICAL_CODE = + T.let( + :optical_code, + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::PointOfServiceEntryMode::TaggedSymbol + ) + + # Contact chip card + INTEGRATED_CIRCUIT_CARD = + T.let( + :integrated_circuit_card, + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::PointOfServiceEntryMode::TaggedSymbol + ) + + # Contactless read of chip card + CONTACTLESS = + T.let( + :contactless, + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::PointOfServiceEntryMode::TaggedSymbol + ) + + # Transaction initiated using a credential that has previously been stored on file + CREDENTIAL_ON_FILE = + T.let( + :credential_on_file, + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::PointOfServiceEntryMode::TaggedSymbol + ) + + # Magnetic stripe read + MAGNETIC_STRIPE = + T.let( + :magnetic_stripe, + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::PointOfServiceEntryMode::TaggedSymbol + ) + + # Contactless read of magnetic stripe data + CONTACTLESS_MAGNETIC_STRIPE = + T.let( + :contactless_magnetic_stripe, + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::PointOfServiceEntryMode::TaggedSymbol + ) + + # Contact chip card, without card verification value + INTEGRATED_CIRCUIT_CARD_NO_CVV = + T.let( + :integrated_circuit_card_no_cvv, + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::PointOfServiceEntryMode::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::PointOfServiceEntryMode::TaggedSymbol + ] + ) + end + def self.values + end + end + + # Only present when `actioner: network`. Describes why a card authorization was + # approved or declined by Visa through stand-in processing. + module StandInProcessingReason + extend Increase::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::StandInProcessingReason + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + # Increase failed to process the authorization in a timely manner. + ISSUER_ERROR = + T.let( + :issuer_error, + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::StandInProcessingReason::TaggedSymbol + ) + + # The physical card read had an invalid CVV, dCVV, or authorization request cryptogram. + INVALID_PHYSICAL_CARD = + T.let( + :invalid_physical_card, + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::StandInProcessingReason::TaggedSymbol + ) + + # The 3DS cardholder authentication verification value was invalid. + INVALID_CARDHOLDER_AUTHENTICATION_VERIFICATION_VALUE = + T.let( + :invalid_cardholder_authentication_verification_value, + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::StandInProcessingReason::TaggedSymbol + ) + + # An internal Visa error occurred. Visa uses this reason code for certain expected occurrences as well, such as Application Transaction Counter (ATC) replays. + INTERNAL_VISA_ERROR = + T.let( + :internal_visa_error, + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::StandInProcessingReason::TaggedSymbol + ) + + # The merchant has enabled Visa's Transaction Advisory Service and requires further authentication to perform the transaction. In practice this is often utilized at fuel pumps to tell the cardholder to see the cashier. + MERCHANT_TRANSACTION_ADVISORY_SERVICE_AUTHENTICATION_REQUIRED = + T.let( + :merchant_transaction_advisory_service_authentication_required, + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::StandInProcessingReason::TaggedSymbol + ) + + # The transaction was blocked by Visa's Payment Fraud Disruption service due to fraudulent Acquirer behavior, such as card testing. + PAYMENT_FRAUD_DISRUPTION_ACQUIRER_BLOCK = + T.let( + :payment_fraud_disruption_acquirer_block, + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::StandInProcessingReason::TaggedSymbol + ) + + # An unspecific reason for stand-in processing. + OTHER = + T.let( + :other, + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::StandInProcessingReason::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::StandInProcessingReason::TaggedSymbol + ] + ) + end + def self.values + end + end + end + end + + class NetworkIdentifiers < Increase::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Increase::CardPayment::Element::CardBalanceInquiry::NetworkIdentifiers, + Increase::Internal::AnyHash + ) + end + + # The randomly generated 6-character Authorization Identification Response code + # sent back to the acquirer in an approved response. + sig { returns(T.nilable(String)) } + attr_accessor :authorization_identification_response + + # A life-cycle identifier used across e.g., an authorization and a reversal. + # Expected to be unique per acquirer within a window of time. For some card + # networks the retrieval reference number includes the trace counter. + sig { returns(T.nilable(String)) } + attr_accessor :retrieval_reference_number + + # A counter used to verify an individual authorization. Expected to be unique per + # acquirer within a window of time. + sig { returns(T.nilable(String)) } + attr_accessor :trace_number + + # A globally unique transaction identifier provided by the card network, used + # across multiple life-cycle requests. + sig { returns(T.nilable(String)) } + attr_accessor :transaction_id + + # Network-specific identifiers for a specific request or transaction. + sig do + params( + authorization_identification_response: T.nilable(String), + retrieval_reference_number: T.nilable(String), + trace_number: T.nilable(String), + transaction_id: T.nilable(String) + ).returns(T.attached_class) + end + def self.new( + # The randomly generated 6-character Authorization Identification Response code + # sent back to the acquirer in an approved response. + authorization_identification_response:, + # A life-cycle identifier used across e.g., an authorization and a reversal. + # Expected to be unique per acquirer within a window of time. For some card + # networks the retrieval reference number includes the trace counter. + retrieval_reference_number:, + # A counter used to verify an individual authorization. Expected to be unique per + # acquirer within a window of time. + trace_number:, + # A globally unique transaction identifier provided by the card network, used + # across multiple life-cycle requests. + transaction_id: + ) + end + + sig do + override.returns( + { + authorization_identification_response: T.nilable(String), + retrieval_reference_number: T.nilable(String), + trace_number: T.nilable(String), + transaction_id: T.nilable(String) + } ) end - def self.values + def to_hash end end # A constant representing the object's type. For this resource it will always be - # `card_authorization`. + # `card_balance_inquiry`. module Type extend Increase::Internal::Type::Enum @@ -3126,21 +5354,21 @@ module Increase T.type_alias do T.all( Symbol, - Increase::CardPayment::Element::CardAuthorization::Type + Increase::CardPayment::Element::CardBalanceInquiry::Type ) end OrSymbol = T.type_alias { T.any(Symbol, String) } - CARD_AUTHORIZATION = + CARD_BALANCE_INQUIRY = T.let( - :card_authorization, - Increase::CardPayment::Element::CardAuthorization::Type::TaggedSymbol + :card_balance_inquiry, + Increase::CardPayment::Element::CardBalanceInquiry::Type::TaggedSymbol ) sig do override.returns( T::Array[ - Increase::CardPayment::Element::CardAuthorization::Type::TaggedSymbol + Increase::CardPayment::Element::CardBalanceInquiry::Type::TaggedSymbol ] ) end @@ -3152,7 +5380,7 @@ module Increase OrHash = T.type_alias do T.any( - Increase::CardPayment::Element::CardAuthorization::Verification, + Increase::CardPayment::Element::CardBalanceInquiry::Verification, Increase::Internal::AnyHash ) end @@ -3161,7 +5389,7 @@ module Increase # the back of the card. sig do returns( - Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode + Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardVerificationCode ) end attr_reader :card_verification_code @@ -3169,7 +5397,7 @@ module Increase sig do params( card_verification_code: - Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::OrHash + Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardVerificationCode::OrHash ).void end attr_writer :card_verification_code @@ -3178,7 +5406,7 @@ module Increase # we verified it against. sig do returns( - Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress + Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress ) end attr_reader :cardholder_address @@ -3186,7 +5414,7 @@ module Increase sig do params( cardholder_address: - Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::OrHash + Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress::OrHash ).void end attr_writer :cardholder_address @@ -3195,9 +5423,9 @@ module Increase sig do params( card_verification_code: - Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::OrHash, + Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardVerificationCode::OrHash, cardholder_address: - Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::OrHash + Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress::OrHash ).returns(T.attached_class) end def self.new( @@ -3214,9 +5442,9 @@ module Increase override.returns( { card_verification_code: - Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode, + Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardVerificationCode, cardholder_address: - Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress + Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress } ) end @@ -3227,7 +5455,7 @@ module Increase OrHash = T.type_alias do T.any( - Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode, + Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardVerificationCode, Increase::Internal::AnyHash ) end @@ -3235,7 +5463,7 @@ module Increase # The result of verifying the Card Verification Code. sig do returns( - Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::Result::TaggedSymbol + Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardVerificationCode::Result::TaggedSymbol ) end attr_accessor :result @@ -3245,7 +5473,7 @@ module Increase sig do params( result: - Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::Result::OrSymbol + Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardVerificationCode::Result::OrSymbol ).returns(T.attached_class) end def self.new( @@ -3258,7 +5486,7 @@ module Increase override.returns( { result: - Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::Result::TaggedSymbol + Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardVerificationCode::Result::TaggedSymbol } ) end @@ -3273,7 +5501,7 @@ module Increase T.type_alias do T.all( Symbol, - Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::Result + Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardVerificationCode::Result ) end OrSymbol = T.type_alias { T.any(Symbol, String) } @@ -3282,27 +5510,27 @@ module Increase NOT_CHECKED = T.let( :not_checked, - Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::Result::TaggedSymbol + Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardVerificationCode::Result::TaggedSymbol ) # The card verification code matched the one on file. MATCH = T.let( :match, - Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::Result::TaggedSymbol + Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardVerificationCode::Result::TaggedSymbol ) # The card verification code did not match the one on file. NO_MATCH = T.let( :no_match, - Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::Result::TaggedSymbol + Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardVerificationCode::Result::TaggedSymbol ) sig do override.returns( T::Array[ - Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::Result::TaggedSymbol + Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardVerificationCode::Result::TaggedSymbol ] ) end @@ -3315,7 +5543,7 @@ module Increase OrHash = T.type_alias do T.any( - Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress, + Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress, Increase::Internal::AnyHash ) end @@ -3340,7 +5568,7 @@ module Increase # The address verification result returned to the card network. sig do returns( - Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::Result::TaggedSymbol + Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress::Result::TaggedSymbol ) end attr_accessor :result @@ -3354,7 +5582,7 @@ module Increase provided_line1: T.nilable(String), provided_postal_code: T.nilable(String), result: - Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::Result::OrSymbol + Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress::Result::OrSymbol ).returns(T.attached_class) end def self.new( @@ -3380,7 +5608,7 @@ module Increase provided_line1: T.nilable(String), provided_postal_code: T.nilable(String), result: - Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::Result::TaggedSymbol + Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress::Result::TaggedSymbol } ) end @@ -3395,7 +5623,7 @@ module Increase T.type_alias do T.all( Symbol, - Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::Result + Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress::Result ) end OrSymbol = T.type_alias { T.any(Symbol, String) } @@ -3404,48 +5632,48 @@ module Increase NOT_CHECKED = T.let( :not_checked, - Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::Result::TaggedSymbol + Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress::Result::TaggedSymbol ) # Postal code matches, but the street address does not match or was not provided. POSTAL_CODE_MATCH_ADDRESS_NO_MATCH = T.let( :postal_code_match_address_no_match, - Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::Result::TaggedSymbol + Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress::Result::TaggedSymbol ) # Postal code does not match, but the street address matches or was not provided. POSTAL_CODE_NO_MATCH_ADDRESS_MATCH = T.let( :postal_code_no_match_address_match, - Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::Result::TaggedSymbol + Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress::Result::TaggedSymbol ) # Postal code and street address match. MATCH = T.let( :match, - Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::Result::TaggedSymbol + Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress::Result::TaggedSymbol ) # Postal code and street address do not match. NO_MATCH = T.let( :no_match, - Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::Result::TaggedSymbol + Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress::Result::TaggedSymbol ) # Postal code matches, but the street address was not verified. (deprecated) POSTAL_CODE_MATCH_ADDRESS_NOT_CHECKED = T.let( :postal_code_match_address_not_checked, - Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::Result::TaggedSymbol + Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress::Result::TaggedSymbol ) sig do override.returns( T::Array[ - Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::Result::TaggedSymbol + Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress::Result::TaggedSymbol ] ) end @@ -3456,210 +5684,6 @@ module Increase end end - class CardAuthorizationExpiration < Increase::Internal::Type::BaseModel - OrHash = - T.type_alias do - T.any( - Increase::CardPayment::Element::CardAuthorizationExpiration, - Increase::Internal::AnyHash - ) - end - - # The Card Authorization Expiration identifier. - sig { returns(String) } - attr_accessor :id - - # The identifier for the Card Authorization this reverses. - sig { returns(String) } - attr_accessor :card_authorization_id - - # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the reversal's - # currency. - sig do - returns( - Increase::CardPayment::Element::CardAuthorizationExpiration::Currency::TaggedSymbol - ) - end - attr_accessor :currency - - # The amount of this authorization expiration in the minor unit of the - # transaction's currency. For dollars, for example, this is cents. - sig { returns(Integer) } - attr_accessor :expired_amount - - # The card network used to process this card authorization. - sig do - returns( - Increase::CardPayment::Element::CardAuthorizationExpiration::Network::TaggedSymbol - ) - end - attr_accessor :network - - # A constant representing the object's type. For this resource it will always be - # `card_authorization_expiration`. - sig do - returns( - Increase::CardPayment::Element::CardAuthorizationExpiration::Type::TaggedSymbol - ) - end - attr_accessor :type - - # A Card Authorization Expiration object. This field will be present in the JSON - # response if and only if `category` is equal to `card_authorization_expiration`. - # Card Authorization Expirations are cancellations of authorizations that were - # never settled by the acquirer. - sig do - params( - id: String, - card_authorization_id: String, - currency: - Increase::CardPayment::Element::CardAuthorizationExpiration::Currency::OrSymbol, - expired_amount: Integer, - network: - Increase::CardPayment::Element::CardAuthorizationExpiration::Network::OrSymbol, - type: - Increase::CardPayment::Element::CardAuthorizationExpiration::Type::OrSymbol - ).returns(T.attached_class) - end - def self.new( - # The Card Authorization Expiration identifier. - id:, - # The identifier for the Card Authorization this reverses. - card_authorization_id:, - # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the reversal's - # currency. - currency:, - # The amount of this authorization expiration in the minor unit of the - # transaction's currency. For dollars, for example, this is cents. - expired_amount:, - # The card network used to process this card authorization. - network:, - # A constant representing the object's type. For this resource it will always be - # `card_authorization_expiration`. - type: - ) - end - - sig do - override.returns( - { - id: String, - card_authorization_id: String, - currency: - Increase::CardPayment::Element::CardAuthorizationExpiration::Currency::TaggedSymbol, - expired_amount: Integer, - network: - Increase::CardPayment::Element::CardAuthorizationExpiration::Network::TaggedSymbol, - type: - Increase::CardPayment::Element::CardAuthorizationExpiration::Type::TaggedSymbol - } - ) - end - def to_hash - end - - # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the reversal's - # currency. - module Currency - extend Increase::Internal::Type::Enum - - TaggedSymbol = - T.type_alias do - T.all( - Symbol, - Increase::CardPayment::Element::CardAuthorizationExpiration::Currency - ) - end - OrSymbol = T.type_alias { T.any(Symbol, String) } - - # US Dollar (USD) - USD = - T.let( - :USD, - Increase::CardPayment::Element::CardAuthorizationExpiration::Currency::TaggedSymbol - ) - - sig do - override.returns( - T::Array[ - Increase::CardPayment::Element::CardAuthorizationExpiration::Currency::TaggedSymbol - ] - ) - end - def self.values - end - end - - # The card network used to process this card authorization. - module Network - extend Increase::Internal::Type::Enum - - TaggedSymbol = - T.type_alias do - T.all( - Symbol, - Increase::CardPayment::Element::CardAuthorizationExpiration::Network - ) - end - OrSymbol = T.type_alias { T.any(Symbol, String) } - - # Visa - VISA = - T.let( - :visa, - Increase::CardPayment::Element::CardAuthorizationExpiration::Network::TaggedSymbol - ) - - # Pulse - PULSE = - T.let( - :pulse, - Increase::CardPayment::Element::CardAuthorizationExpiration::Network::TaggedSymbol - ) - - sig do - override.returns( - T::Array[ - Increase::CardPayment::Element::CardAuthorizationExpiration::Network::TaggedSymbol - ] - ) - end - def self.values - end - end - - # A constant representing the object's type. For this resource it will always be - # `card_authorization_expiration`. - module Type - extend Increase::Internal::Type::Enum - - TaggedSymbol = - T.type_alias do - T.all( - Symbol, - Increase::CardPayment::Element::CardAuthorizationExpiration::Type - ) - end - OrSymbol = T.type_alias { T.any(Symbol, String) } - - CARD_AUTHORIZATION_EXPIRATION = - T.let( - :card_authorization_expiration, - Increase::CardPayment::Element::CardAuthorizationExpiration::Type::TaggedSymbol - ) - - sig do - override.returns( - T::Array[ - Increase::CardPayment::Element::CardAuthorizationExpiration::Type::TaggedSymbol - ] - ) - end - def self.values - end - end - end - class CardDecline < Increase::Internal::Type::BaseModel OrHash = T.type_alias do @@ -17233,6 +19257,13 @@ module Increase Increase::CardPayment::Element::Category::TaggedSymbol ) + # Card Balance Inquiry: details will be under the `card_balance_inquiry` object. + CARD_BALANCE_INQUIRY = + T.let( + :card_balance_inquiry, + Increase::CardPayment::Element::Category::TaggedSymbol + ) + # Inbound Card Validation: details will be under the `card_validation` object. CARD_VALIDATION = T.let( diff --git a/sig/increase/models/card_payment.rbs b/sig/increase/models/card_payment.rbs index 7de90317..aac095de 100644 --- a/sig/increase/models/card_payment.rbs +++ b/sig/increase/models/card_payment.rbs @@ -61,6 +61,7 @@ module Increase card_authentication: Increase::CardPayment::Element::CardAuthentication?, card_authorization: Increase::CardPayment::Element::CardAuthorization?, card_authorization_expiration: Increase::CardPayment::Element::CardAuthorizationExpiration?, + card_balance_inquiry: Increase::CardPayment::Element::CardBalanceInquiry?, card_decline: Increase::CardPayment::Element::CardDecline?, card_financial: Increase::CardPayment::Element::CardFinancial?, card_fuel_confirmation: Increase::CardPayment::Element::CardFuelConfirmation?, @@ -81,6 +82,8 @@ module Increase attr_accessor card_authorization_expiration: Increase::CardPayment::Element::CardAuthorizationExpiration? + attr_accessor card_balance_inquiry: Increase::CardPayment::Element::CardBalanceInquiry? + attr_accessor card_decline: Increase::CardPayment::Element::CardDecline? attr_accessor card_financial: Increase::CardPayment::Element::CardFinancial? @@ -107,6 +110,7 @@ module Increase card_authentication: Increase::CardPayment::Element::CardAuthentication?, card_authorization: Increase::CardPayment::Element::CardAuthorization?, card_authorization_expiration: Increase::CardPayment::Element::CardAuthorizationExpiration?, + card_balance_inquiry: Increase::CardPayment::Element::CardBalanceInquiry?, card_decline: Increase::CardPayment::Element::CardDecline?, card_financial: Increase::CardPayment::Element::CardFinancial?, card_fuel_confirmation: Increase::CardPayment::Element::CardFuelConfirmation?, @@ -124,6 +128,7 @@ module Increase card_authentication: Increase::CardPayment::Element::CardAuthentication?, card_authorization: Increase::CardPayment::Element::CardAuthorization?, card_authorization_expiration: Increase::CardPayment::Element::CardAuthorizationExpiration?, + card_balance_inquiry: Increase::CardPayment::Element::CardBalanceInquiry?, card_decline: Increase::CardPayment::Element::CardDecline?, card_financial: Increase::CardPayment::Element::CardFinancial?, card_fuel_confirmation: Increase::CardPayment::Element::CardFuelConfirmation?, @@ -578,96 +583,912 @@ module Increase merchant_descriptor: String, merchant_postal_code: String?, merchant_state: String?, - network_details: Increase::CardPayment::Element::CardAuthorization::NetworkDetails, - network_identifiers: Increase::CardPayment::Element::CardAuthorization::NetworkIdentifiers, + network_details: Increase::CardPayment::Element::CardAuthorization::NetworkDetails, + network_identifiers: Increase::CardPayment::Element::CardAuthorization::NetworkIdentifiers, + network_risk_score: Integer?, + pending_transaction_id: String?, + physical_card_id: String?, + presentment_amount: Integer, + presentment_currency: String, + processing_category: Increase::Models::CardPayment::Element::CardAuthorization::processing_category, + real_time_decision_id: String?, + terminal_id: String?, + type: Increase::Models::CardPayment::Element::CardAuthorization::type_, + verification: Increase::CardPayment::Element::CardAuthorization::Verification + } + + type actioner = :user | :increase | :network + + module Actioner + extend Increase::Internal::Type::Enum + + # This object was actioned by the user through a real-time decision. + USER: :user + + # This object was actioned by Increase without user intervention. + INCREASE: :increase + + # This object was actioned by the network, through stand-in processing. + NETWORK: :network + + def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardAuthorization::actioner] + end + + type additional_amounts = + { + clinic: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Clinic?, + dental: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Dental?, + original: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Original?, + prescription: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Prescription?, + surcharge: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Surcharge?, + total_cumulative: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::TotalCumulative?, + total_healthcare: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::TotalHealthcare?, + transit: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Transit?, + unknown: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Unknown?, + vision: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Vision? + } + + class AdditionalAmounts < Increase::Internal::Type::BaseModel + attr_accessor clinic: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Clinic? + + attr_accessor dental: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Dental? + + attr_accessor original: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Original? + + attr_accessor prescription: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Prescription? + + attr_accessor surcharge: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Surcharge? + + attr_accessor total_cumulative: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::TotalCumulative? + + attr_accessor total_healthcare: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::TotalHealthcare? + + attr_accessor transit: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Transit? + + attr_accessor unknown: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Unknown? + + attr_accessor vision: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Vision? + + def initialize: ( + clinic: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Clinic?, + dental: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Dental?, + original: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Original?, + prescription: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Prescription?, + surcharge: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Surcharge?, + total_cumulative: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::TotalCumulative?, + total_healthcare: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::TotalHealthcare?, + transit: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Transit?, + unknown: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Unknown?, + vision: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Vision? + ) -> void + + def to_hash: -> { + clinic: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Clinic?, + dental: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Dental?, + original: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Original?, + prescription: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Prescription?, + surcharge: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Surcharge?, + total_cumulative: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::TotalCumulative?, + total_healthcare: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::TotalHealthcare?, + transit: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Transit?, + unknown: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Unknown?, + vision: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Vision? + } + + type clinic = { amount: Integer, currency: String } + + class Clinic < Increase::Internal::Type::BaseModel + attr_accessor amount: Integer + + attr_accessor currency: String + + def initialize: (amount: Integer, currency: String) -> void + + def to_hash: -> { amount: Integer, currency: String } + end + + type dental = { amount: Integer, currency: String } + + class Dental < Increase::Internal::Type::BaseModel + attr_accessor amount: Integer + + attr_accessor currency: String + + def initialize: (amount: Integer, currency: String) -> void + + def to_hash: -> { amount: Integer, currency: String } + end + + type original = { amount: Integer, currency: String } + + class Original < Increase::Internal::Type::BaseModel + attr_accessor amount: Integer + + attr_accessor currency: String + + def initialize: (amount: Integer, currency: String) -> void + + def to_hash: -> { amount: Integer, currency: String } + end + + type prescription = { amount: Integer, currency: String } + + class Prescription < Increase::Internal::Type::BaseModel + attr_accessor amount: Integer + + attr_accessor currency: String + + def initialize: (amount: Integer, currency: String) -> void + + def to_hash: -> { amount: Integer, currency: String } + end + + type surcharge = { amount: Integer, currency: String } + + class Surcharge < Increase::Internal::Type::BaseModel + attr_accessor amount: Integer + + attr_accessor currency: String + + def initialize: (amount: Integer, currency: String) -> void + + def to_hash: -> { amount: Integer, currency: String } + end + + type total_cumulative = { amount: Integer, currency: String } + + class TotalCumulative < Increase::Internal::Type::BaseModel + attr_accessor amount: Integer + + attr_accessor currency: String + + def initialize: (amount: Integer, currency: String) -> void + + def to_hash: -> { amount: Integer, currency: String } + end + + type total_healthcare = { amount: Integer, currency: String } + + class TotalHealthcare < Increase::Internal::Type::BaseModel + attr_accessor amount: Integer + + attr_accessor currency: String + + def initialize: (amount: Integer, currency: String) -> void + + def to_hash: -> { amount: Integer, currency: String } + end + + type transit = { amount: Integer, currency: String } + + class Transit < Increase::Internal::Type::BaseModel + attr_accessor amount: Integer + + attr_accessor currency: String + + def initialize: (amount: Integer, currency: String) -> void + + def to_hash: -> { amount: Integer, currency: String } + end + + type unknown = { amount: Integer, currency: String } + + class Unknown < Increase::Internal::Type::BaseModel + attr_accessor amount: Integer + + attr_accessor currency: String + + def initialize: (amount: Integer, currency: String) -> void + + def to_hash: -> { amount: Integer, currency: String } + end + + type vision = { amount: Integer, currency: String } + + class Vision < Increase::Internal::Type::BaseModel + attr_accessor amount: Integer + + attr_accessor currency: String + + def initialize: (amount: Integer, currency: String) -> void + + def to_hash: -> { amount: Integer, currency: String } + end + end + + type currency = :USD + + module Currency + extend Increase::Internal::Type::Enum + + # US Dollar (USD) + USD: :USD + + def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardAuthorization::currency] + end + + type direction = :settlement | :refund + + module Direction + extend Increase::Internal::Type::Enum + + # A regular card authorization where funds are debited from the cardholder. + SETTLEMENT: :settlement + + # A refund card authorization, sometimes referred to as a credit voucher authorization, where funds are credited to the cardholder. + REFUND: :refund + + def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardAuthorization::direction] + end + + type network_details = + { + category: Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::category, + pulse: Increase::CardPayment::Element::CardAuthorization::NetworkDetails::Pulse?, + visa: Increase::CardPayment::Element::CardAuthorization::NetworkDetails::Visa? + } + + class NetworkDetails < Increase::Internal::Type::BaseModel + attr_accessor category: Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::category + + attr_accessor pulse: Increase::CardPayment::Element::CardAuthorization::NetworkDetails::Pulse? + + attr_accessor visa: Increase::CardPayment::Element::CardAuthorization::NetworkDetails::Visa? + + def initialize: ( + category: Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::category, + pulse: Increase::CardPayment::Element::CardAuthorization::NetworkDetails::Pulse?, + visa: Increase::CardPayment::Element::CardAuthorization::NetworkDetails::Visa? + ) -> void + + def to_hash: -> { + category: Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::category, + pulse: Increase::CardPayment::Element::CardAuthorization::NetworkDetails::Pulse?, + visa: Increase::CardPayment::Element::CardAuthorization::NetworkDetails::Visa? + } + + type category = :visa | :pulse + + module Category + extend Increase::Internal::Type::Enum + + # Visa + VISA: :visa + + # Pulse + PULSE: :pulse + + def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::category] + end + + type pulse = { } + + class Pulse < Increase::Internal::Type::BaseModel + def initialize: -> void + + def to_hash: -> { } + end + + type visa = + { + electronic_commerce_indicator: Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::electronic_commerce_indicator?, + point_of_service_entry_mode: Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::point_of_service_entry_mode?, + stand_in_processing_reason: Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::stand_in_processing_reason? + } + + class Visa < Increase::Internal::Type::BaseModel + attr_accessor electronic_commerce_indicator: Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::electronic_commerce_indicator? + + attr_accessor point_of_service_entry_mode: Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::point_of_service_entry_mode? + + attr_accessor stand_in_processing_reason: Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::stand_in_processing_reason? + + def initialize: ( + electronic_commerce_indicator: Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::electronic_commerce_indicator?, + point_of_service_entry_mode: Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::point_of_service_entry_mode?, + stand_in_processing_reason: Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::stand_in_processing_reason? + ) -> void + + def to_hash: -> { + electronic_commerce_indicator: Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::electronic_commerce_indicator?, + point_of_service_entry_mode: Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::point_of_service_entry_mode?, + stand_in_processing_reason: Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::stand_in_processing_reason? + } + + type electronic_commerce_indicator = + :mail_phone_order + | :recurring + | :installment + | :unknown_mail_phone_order + | :secure_electronic_commerce + | :non_authenticated_security_transaction_at_3ds_capable_merchant + | :non_authenticated_security_transaction + | :non_secure_transaction + + module ElectronicCommerceIndicator + extend Increase::Internal::Type::Enum + + # Single transaction of a mail/phone order: Use to indicate that the transaction is a mail/phone order purchase, not a recurring transaction or installment payment. For domestic transactions in the US region, this value may also indicate one bill payment transaction in the card-present or card-absent environments. + MAIL_PHONE_ORDER: :mail_phone_order + + # Recurring transaction: Payment indicator used to indicate a recurring transaction that originates from an acquirer in the US region. + RECURRING: :recurring + + # Installment payment: Payment indicator used to indicate one purchase of goods or services that is billed to the account in multiple charges over a period of time agreed upon by the cardholder and merchant from transactions that originate from an acquirer in the US region. + INSTALLMENT: :installment + + # Unknown classification: other mail order: Use to indicate that the type of mail/telephone order is unknown. + UNKNOWN_MAIL_PHONE_ORDER: :unknown_mail_phone_order + + # Secure electronic commerce transaction: Use to indicate that the electronic commerce transaction has been authenticated using e.g., 3-D Secure + SECURE_ELECTRONIC_COMMERCE: :secure_electronic_commerce + + # Non-authenticated security transaction at a 3-D Secure-capable merchant, and merchant attempted to authenticate the cardholder using 3-D Secure: Use to identify an electronic commerce transaction where the merchant attempted to authenticate the cardholder using 3-D Secure, but was unable to complete the authentication because the issuer or cardholder does not participate in the 3-D Secure program. + NON_AUTHENTICATED_SECURITY_TRANSACTION_AT_3DS_CAPABLE_MERCHANT: :non_authenticated_security_transaction_at_3ds_capable_merchant + + # Non-authenticated security transaction: Use to identify an electronic commerce transaction that uses data encryption for security however, cardholder authentication is not performed using 3-D Secure. + NON_AUTHENTICATED_SECURITY_TRANSACTION: :non_authenticated_security_transaction + + # Non-secure transaction: Use to identify an electronic commerce transaction that has no data protection. + NON_SECURE_TRANSACTION: :non_secure_transaction + + def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::electronic_commerce_indicator] + end + + type point_of_service_entry_mode = + :unknown + | :manual + | :magnetic_stripe_no_cvv + | :optical_code + | :integrated_circuit_card + | :contactless + | :credential_on_file + | :magnetic_stripe + | :contactless_magnetic_stripe + | :integrated_circuit_card_no_cvv + + module PointOfServiceEntryMode + extend Increase::Internal::Type::Enum + + # Unknown + UNKNOWN: :unknown + + # Manual key entry + MANUAL: :manual + + # Magnetic stripe read, without card verification value + MAGNETIC_STRIPE_NO_CVV: :magnetic_stripe_no_cvv + + # Optical code + OPTICAL_CODE: :optical_code + + # Contact chip card + INTEGRATED_CIRCUIT_CARD: :integrated_circuit_card + + # Contactless read of chip card + CONTACTLESS: :contactless + + # Transaction initiated using a credential that has previously been stored on file + CREDENTIAL_ON_FILE: :credential_on_file + + # Magnetic stripe read + MAGNETIC_STRIPE: :magnetic_stripe + + # Contactless read of magnetic stripe data + CONTACTLESS_MAGNETIC_STRIPE: :contactless_magnetic_stripe + + # Contact chip card, without card verification value + INTEGRATED_CIRCUIT_CARD_NO_CVV: :integrated_circuit_card_no_cvv + + def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::point_of_service_entry_mode] + end + + type stand_in_processing_reason = + :issuer_error + | :invalid_physical_card + | :invalid_cardholder_authentication_verification_value + | :internal_visa_error + | :merchant_transaction_advisory_service_authentication_required + | :payment_fraud_disruption_acquirer_block + | :other + + module StandInProcessingReason + extend Increase::Internal::Type::Enum + + # Increase failed to process the authorization in a timely manner. + ISSUER_ERROR: :issuer_error + + # The physical card read had an invalid CVV, dCVV, or authorization request cryptogram. + INVALID_PHYSICAL_CARD: :invalid_physical_card + + # The 3DS cardholder authentication verification value was invalid. + INVALID_CARDHOLDER_AUTHENTICATION_VERIFICATION_VALUE: :invalid_cardholder_authentication_verification_value + + # An internal Visa error occurred. Visa uses this reason code for certain expected occurrences as well, such as Application Transaction Counter (ATC) replays. + INTERNAL_VISA_ERROR: :internal_visa_error + + # The merchant has enabled Visa's Transaction Advisory Service and requires further authentication to perform the transaction. In practice this is often utilized at fuel pumps to tell the cardholder to see the cashier. + MERCHANT_TRANSACTION_ADVISORY_SERVICE_AUTHENTICATION_REQUIRED: :merchant_transaction_advisory_service_authentication_required + + # The transaction was blocked by Visa's Payment Fraud Disruption service due to fraudulent Acquirer behavior, such as card testing. + PAYMENT_FRAUD_DISRUPTION_ACQUIRER_BLOCK: :payment_fraud_disruption_acquirer_block + + # An unspecific reason for stand-in processing. + OTHER: :other + + def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::stand_in_processing_reason] + end + end + end + + type network_identifiers = + { + authorization_identification_response: String?, + retrieval_reference_number: String?, + trace_number: String?, + transaction_id: String? + } + + class NetworkIdentifiers < Increase::Internal::Type::BaseModel + attr_accessor authorization_identification_response: String? + + attr_accessor retrieval_reference_number: String? + + attr_accessor trace_number: String? + + attr_accessor transaction_id: String? + + def initialize: ( + authorization_identification_response: String?, + retrieval_reference_number: String?, + trace_number: String?, + transaction_id: String? + ) -> void + + def to_hash: -> { + authorization_identification_response: String?, + retrieval_reference_number: String?, + trace_number: String?, + transaction_id: String? + } + end + + type processing_category = + :account_funding + | :automatic_fuel_dispenser + | :bill_payment + | :original_credit + | :purchase + | :quasi_cash + | :refund + | :cash_disbursement + | :balance_inquiry + | :unknown + + module ProcessingCategory + extend Increase::Internal::Type::Enum + + # Account funding transactions are transactions used to e.g., fund an account or transfer funds between accounts. + ACCOUNT_FUNDING: :account_funding + + # Automatic fuel dispenser authorizations occur when a card is used at a gas pump, prior to the actual transaction amount being known. They are followed by an advice message that updates the amount of the pending transaction. + AUTOMATIC_FUEL_DISPENSER: :automatic_fuel_dispenser + + # A transaction used to pay a bill. + BILL_PAYMENT: :bill_payment + + # Original credit transactions are used to send money to a cardholder. + ORIGINAL_CREDIT: :original_credit + + # A regular purchase. + PURCHASE: :purchase + + # Quasi-cash transactions represent purchases of items which may be convertible to cash. + QUASI_CASH: :quasi_cash + + # A refund card authorization, sometimes referred to as a credit voucher authorization, where funds are credited to the cardholder. + REFUND: :refund + + # Cash disbursement transactions are used to withdraw cash from an ATM or a point of sale. + CASH_DISBURSEMENT: :cash_disbursement + + # A balance inquiry transaction is used to check the balance of an account associated with a card. + BALANCE_INQUIRY: :balance_inquiry + + # The processing category is unknown. + UNKNOWN: :unknown + + def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardAuthorization::processing_category] + end + + type type_ = :card_authorization + + module Type + extend Increase::Internal::Type::Enum + + CARD_AUTHORIZATION: :card_authorization + + def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardAuthorization::type_] + end + + type verification = + { + card_verification_code: Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode, + cardholder_address: Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress + } + + class Verification < Increase::Internal::Type::BaseModel + attr_accessor card_verification_code: Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode + + attr_accessor cardholder_address: Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress + + def initialize: ( + card_verification_code: Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode, + cardholder_address: Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress + ) -> void + + def to_hash: -> { + card_verification_code: Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode, + cardholder_address: Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress + } + + type card_verification_code = + { + result: Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::result + } + + class CardVerificationCode < Increase::Internal::Type::BaseModel + attr_accessor result: Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::result + + def initialize: ( + result: Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::result + ) -> void + + def to_hash: -> { + result: Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::result + } + + type result = :not_checked | :match | :no_match + + module Result + extend Increase::Internal::Type::Enum + + # No card verification code was provided in the authorization request. + NOT_CHECKED: :not_checked + + # The card verification code matched the one on file. + MATCH: :match + + # The card verification code did not match the one on file. + NO_MATCH: :no_match + + def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::result] + end + end + + type cardholder_address = + { + :actual_line1 => String?, + actual_postal_code: String?, + :provided_line1 => String?, + provided_postal_code: String?, + result: Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::result + } + + class CardholderAddress < Increase::Internal::Type::BaseModel + attr_accessor actual_line1: String? + + attr_accessor actual_postal_code: String? + + attr_accessor provided_line1: String? + + attr_accessor provided_postal_code: String? + + attr_accessor result: Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::result + + def initialize: ( + actual_line1: String?, + actual_postal_code: String?, + provided_line1: String?, + provided_postal_code: String?, + result: Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::result + ) -> void + + def to_hash: -> { + :actual_line1 => String?, + actual_postal_code: String?, + :provided_line1 => String?, + provided_postal_code: String?, + result: Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::result + } + + type result = + :not_checked + | :postal_code_match_address_no_match + | :postal_code_no_match_address_match + | :match + | :no_match + | :postal_code_match_address_not_checked + + module Result + extend Increase::Internal::Type::Enum + + # No address information was provided in the authorization request. + NOT_CHECKED: :not_checked + + # Postal code matches, but the street address does not match or was not provided. + POSTAL_CODE_MATCH_ADDRESS_NO_MATCH: :postal_code_match_address_no_match + + # Postal code does not match, but the street address matches or was not provided. + POSTAL_CODE_NO_MATCH_ADDRESS_MATCH: :postal_code_no_match_address_match + + # Postal code and street address match. + MATCH: :match + + # Postal code and street address do not match. + NO_MATCH: :no_match + + # Postal code matches, but the street address was not verified. (deprecated) + POSTAL_CODE_MATCH_ADDRESS_NOT_CHECKED: :postal_code_match_address_not_checked + + def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::result] + end + end + end + end + + type card_authorization_expiration = + { + id: String, + card_authorization_id: String, + currency: Increase::Models::CardPayment::Element::CardAuthorizationExpiration::currency, + expired_amount: Integer, + network: Increase::Models::CardPayment::Element::CardAuthorizationExpiration::network, + type: Increase::Models::CardPayment::Element::CardAuthorizationExpiration::type_ + } + + class CardAuthorizationExpiration < Increase::Internal::Type::BaseModel + attr_accessor id: String + + attr_accessor card_authorization_id: String + + attr_accessor currency: Increase::Models::CardPayment::Element::CardAuthorizationExpiration::currency + + attr_accessor expired_amount: Integer + + attr_accessor network: Increase::Models::CardPayment::Element::CardAuthorizationExpiration::network + + attr_accessor type: Increase::Models::CardPayment::Element::CardAuthorizationExpiration::type_ + + def initialize: ( + id: String, + card_authorization_id: String, + currency: Increase::Models::CardPayment::Element::CardAuthorizationExpiration::currency, + expired_amount: Integer, + network: Increase::Models::CardPayment::Element::CardAuthorizationExpiration::network, + type: Increase::Models::CardPayment::Element::CardAuthorizationExpiration::type_ + ) -> void + + def to_hash: -> { + id: String, + card_authorization_id: String, + currency: Increase::Models::CardPayment::Element::CardAuthorizationExpiration::currency, + expired_amount: Integer, + network: Increase::Models::CardPayment::Element::CardAuthorizationExpiration::network, + type: Increase::Models::CardPayment::Element::CardAuthorizationExpiration::type_ + } + + type currency = :USD + + module Currency + extend Increase::Internal::Type::Enum + + # US Dollar (USD) + USD: :USD + + def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardAuthorizationExpiration::currency] + end + + type network = :visa | :pulse + + module Network + extend Increase::Internal::Type::Enum + + # Visa + VISA: :visa + + # Pulse + PULSE: :pulse + + def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardAuthorizationExpiration::network] + end + + type type_ = :card_authorization_expiration + + module Type + extend Increase::Internal::Type::Enum + + CARD_AUTHORIZATION_EXPIRATION: :card_authorization_expiration + + def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardAuthorizationExpiration::type_] + end + end + + type card_balance_inquiry = + { + id: String, + additional_amounts: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts, + balance: Integer, + card_payment_id: String, + currency: Increase::Models::CardPayment::Element::CardBalanceInquiry::currency, + digital_wallet_token_id: String?, + merchant_acceptor_id: String, + merchant_category_code: String, + merchant_city: String?, + merchant_country: String, + merchant_descriptor: String, + merchant_postal_code: String?, + merchant_state: String?, + network_details: Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails, + network_identifiers: Increase::CardPayment::Element::CardBalanceInquiry::NetworkIdentifiers, + network_risk_score: Integer?, + physical_card_id: String?, + real_time_decision_id: String?, + terminal_id: String?, + type: Increase::Models::CardPayment::Element::CardBalanceInquiry::type_, + verification: Increase::CardPayment::Element::CardBalanceInquiry::Verification + } + + class CardBalanceInquiry < Increase::Internal::Type::BaseModel + attr_accessor id: String + + attr_accessor additional_amounts: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts + + attr_accessor balance: Integer + + attr_accessor card_payment_id: String + + attr_accessor currency: Increase::Models::CardPayment::Element::CardBalanceInquiry::currency + + attr_accessor digital_wallet_token_id: String? + + attr_accessor merchant_acceptor_id: String + + attr_accessor merchant_category_code: String + + attr_accessor merchant_city: String? + + attr_accessor merchant_country: String + + attr_accessor merchant_descriptor: String + + attr_accessor merchant_postal_code: String? + + attr_accessor merchant_state: String? + + attr_accessor network_details: Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails + + attr_accessor network_identifiers: Increase::CardPayment::Element::CardBalanceInquiry::NetworkIdentifiers + + attr_accessor network_risk_score: Integer? + + attr_accessor physical_card_id: String? + + attr_accessor real_time_decision_id: String? + + attr_accessor terminal_id: String? + + attr_accessor type: Increase::Models::CardPayment::Element::CardBalanceInquiry::type_ + + attr_accessor verification: Increase::CardPayment::Element::CardBalanceInquiry::Verification + + def initialize: ( + id: String, + additional_amounts: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts, + balance: Integer, + card_payment_id: String, + currency: Increase::Models::CardPayment::Element::CardBalanceInquiry::currency, + digital_wallet_token_id: String?, + merchant_acceptor_id: String, + merchant_category_code: String, + merchant_city: String?, + merchant_country: String, + merchant_descriptor: String, + merchant_postal_code: String?, + merchant_state: String?, + network_details: Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails, + network_identifiers: Increase::CardPayment::Element::CardBalanceInquiry::NetworkIdentifiers, + network_risk_score: Integer?, + physical_card_id: String?, + real_time_decision_id: String?, + terminal_id: String?, + type: Increase::Models::CardPayment::Element::CardBalanceInquiry::type_, + verification: Increase::CardPayment::Element::CardBalanceInquiry::Verification + ) -> void + + def to_hash: -> { + id: String, + additional_amounts: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts, + balance: Integer, + card_payment_id: String, + currency: Increase::Models::CardPayment::Element::CardBalanceInquiry::currency, + digital_wallet_token_id: String?, + merchant_acceptor_id: String, + merchant_category_code: String, + merchant_city: String?, + merchant_country: String, + merchant_descriptor: String, + merchant_postal_code: String?, + merchant_state: String?, + network_details: Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails, + network_identifiers: Increase::CardPayment::Element::CardBalanceInquiry::NetworkIdentifiers, network_risk_score: Integer?, - pending_transaction_id: String?, physical_card_id: String?, - presentment_amount: Integer, - presentment_currency: String, - processing_category: Increase::Models::CardPayment::Element::CardAuthorization::processing_category, real_time_decision_id: String?, terminal_id: String?, - type: Increase::Models::CardPayment::Element::CardAuthorization::type_, - verification: Increase::CardPayment::Element::CardAuthorization::Verification + type: Increase::Models::CardPayment::Element::CardBalanceInquiry::type_, + verification: Increase::CardPayment::Element::CardBalanceInquiry::Verification } - type actioner = :user | :increase | :network - - module Actioner - extend Increase::Internal::Type::Enum - - # This object was actioned by the user through a real-time decision. - USER: :user - - # This object was actioned by Increase without user intervention. - INCREASE: :increase - - # This object was actioned by the network, through stand-in processing. - NETWORK: :network - - def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardAuthorization::actioner] - end - type additional_amounts = { - clinic: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Clinic?, - dental: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Dental?, - original: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Original?, - prescription: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Prescription?, - surcharge: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Surcharge?, - total_cumulative: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::TotalCumulative?, - total_healthcare: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::TotalHealthcare?, - transit: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Transit?, - unknown: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Unknown?, - vision: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Vision? + clinic: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Clinic?, + dental: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Dental?, + original: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Original?, + prescription: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Prescription?, + surcharge: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Surcharge?, + total_cumulative: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::TotalCumulative?, + total_healthcare: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::TotalHealthcare?, + transit: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Transit?, + unknown: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Unknown?, + vision: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Vision? } class AdditionalAmounts < Increase::Internal::Type::BaseModel - attr_accessor clinic: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Clinic? + attr_accessor clinic: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Clinic? - attr_accessor dental: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Dental? + attr_accessor dental: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Dental? - attr_accessor original: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Original? + attr_accessor original: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Original? - attr_accessor prescription: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Prescription? + attr_accessor prescription: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Prescription? - attr_accessor surcharge: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Surcharge? + attr_accessor surcharge: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Surcharge? - attr_accessor total_cumulative: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::TotalCumulative? + attr_accessor total_cumulative: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::TotalCumulative? - attr_accessor total_healthcare: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::TotalHealthcare? + attr_accessor total_healthcare: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::TotalHealthcare? - attr_accessor transit: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Transit? + attr_accessor transit: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Transit? - attr_accessor unknown: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Unknown? + attr_accessor unknown: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Unknown? - attr_accessor vision: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Vision? + attr_accessor vision: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Vision? def initialize: ( - clinic: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Clinic?, - dental: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Dental?, - original: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Original?, - prescription: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Prescription?, - surcharge: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Surcharge?, - total_cumulative: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::TotalCumulative?, - total_healthcare: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::TotalHealthcare?, - transit: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Transit?, - unknown: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Unknown?, - vision: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Vision? + clinic: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Clinic?, + dental: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Dental?, + original: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Original?, + prescription: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Prescription?, + surcharge: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Surcharge?, + total_cumulative: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::TotalCumulative?, + total_healthcare: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::TotalHealthcare?, + transit: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Transit?, + unknown: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Unknown?, + vision: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Vision? ) -> void def to_hash: -> { - clinic: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Clinic?, - dental: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Dental?, - original: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Original?, - prescription: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Prescription?, - surcharge: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Surcharge?, - total_cumulative: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::TotalCumulative?, - total_healthcare: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::TotalHealthcare?, - transit: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Transit?, - unknown: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Unknown?, - vision: Increase::CardPayment::Element::CardAuthorization::AdditionalAmounts::Vision? + clinic: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Clinic?, + dental: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Dental?, + original: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Original?, + prescription: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Prescription?, + surcharge: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Surcharge?, + total_cumulative: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::TotalCumulative?, + total_healthcare: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::TotalHealthcare?, + transit: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Transit?, + unknown: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Unknown?, + vision: Increase::CardPayment::Element::CardBalanceInquiry::AdditionalAmounts::Vision? } type clinic = { amount: Integer, currency: String } @@ -799,47 +1620,33 @@ module Increase # US Dollar (USD) USD: :USD - def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardAuthorization::currency] - end - - type direction = :settlement | :refund - - module Direction - extend Increase::Internal::Type::Enum - - # A regular card authorization where funds are debited from the cardholder. - SETTLEMENT: :settlement - - # A refund card authorization, sometimes referred to as a credit voucher authorization, where funds are credited to the cardholder. - REFUND: :refund - - def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardAuthorization::direction] + def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardBalanceInquiry::currency] end type network_details = { - category: Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::category, - pulse: Increase::CardPayment::Element::CardAuthorization::NetworkDetails::Pulse?, - visa: Increase::CardPayment::Element::CardAuthorization::NetworkDetails::Visa? + category: Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::category, + pulse: Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Pulse?, + visa: Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa? } class NetworkDetails < Increase::Internal::Type::BaseModel - attr_accessor category: Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::category + attr_accessor category: Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::category - attr_accessor pulse: Increase::CardPayment::Element::CardAuthorization::NetworkDetails::Pulse? + attr_accessor pulse: Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Pulse? - attr_accessor visa: Increase::CardPayment::Element::CardAuthorization::NetworkDetails::Visa? + attr_accessor visa: Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa? def initialize: ( - category: Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::category, - pulse: Increase::CardPayment::Element::CardAuthorization::NetworkDetails::Pulse?, - visa: Increase::CardPayment::Element::CardAuthorization::NetworkDetails::Visa? + category: Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::category, + pulse: Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Pulse?, + visa: Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa? ) -> void def to_hash: -> { - category: Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::category, - pulse: Increase::CardPayment::Element::CardAuthorization::NetworkDetails::Pulse?, - visa: Increase::CardPayment::Element::CardAuthorization::NetworkDetails::Visa? + category: Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::category, + pulse: Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Pulse?, + visa: Increase::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa? } type category = :visa | :pulse @@ -853,7 +1660,7 @@ module Increase # Pulse PULSE: :pulse - def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::category] + def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::category] end type pulse = { } @@ -866,28 +1673,28 @@ module Increase type visa = { - electronic_commerce_indicator: Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::electronic_commerce_indicator?, - point_of_service_entry_mode: Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::point_of_service_entry_mode?, - stand_in_processing_reason: Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::stand_in_processing_reason? + electronic_commerce_indicator: Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::electronic_commerce_indicator?, + point_of_service_entry_mode: Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::point_of_service_entry_mode?, + stand_in_processing_reason: Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::stand_in_processing_reason? } class Visa < Increase::Internal::Type::BaseModel - attr_accessor electronic_commerce_indicator: Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::electronic_commerce_indicator? + attr_accessor electronic_commerce_indicator: Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::electronic_commerce_indicator? - attr_accessor point_of_service_entry_mode: Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::point_of_service_entry_mode? + attr_accessor point_of_service_entry_mode: Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::point_of_service_entry_mode? - attr_accessor stand_in_processing_reason: Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::stand_in_processing_reason? + attr_accessor stand_in_processing_reason: Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::stand_in_processing_reason? def initialize: ( - electronic_commerce_indicator: Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::electronic_commerce_indicator?, - point_of_service_entry_mode: Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::point_of_service_entry_mode?, - stand_in_processing_reason: Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::stand_in_processing_reason? + electronic_commerce_indicator: Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::electronic_commerce_indicator?, + point_of_service_entry_mode: Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::point_of_service_entry_mode?, + stand_in_processing_reason: Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::stand_in_processing_reason? ) -> void def to_hash: -> { - electronic_commerce_indicator: Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::electronic_commerce_indicator?, - point_of_service_entry_mode: Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::point_of_service_entry_mode?, - stand_in_processing_reason: Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::stand_in_processing_reason? + electronic_commerce_indicator: Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::electronic_commerce_indicator?, + point_of_service_entry_mode: Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::point_of_service_entry_mode?, + stand_in_processing_reason: Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::stand_in_processing_reason? } type electronic_commerce_indicator = @@ -927,7 +1734,7 @@ module Increase # Non-secure transaction: Use to identify an electronic commerce transaction that has no data protection. NON_SECURE_TRANSACTION: :non_secure_transaction - def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::electronic_commerce_indicator] + def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::electronic_commerce_indicator] end type point_of_service_entry_mode = @@ -975,7 +1782,7 @@ module Increase # Contact chip card, without card verification value INTEGRATED_CIRCUIT_CARD_NO_CVV: :integrated_circuit_card_no_cvv - def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::point_of_service_entry_mode] + def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::point_of_service_entry_mode] end type stand_in_processing_reason = @@ -1011,7 +1818,7 @@ module Increase # An unspecific reason for stand-in processing. OTHER: :other - def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardAuthorization::NetworkDetails::Visa::stand_in_processing_reason] + def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardBalanceInquiry::NetworkDetails::Visa::stand_in_processing_reason] end end end @@ -1048,99 +1855,51 @@ module Increase } end - type processing_category = - :account_funding - | :automatic_fuel_dispenser - | :bill_payment - | :original_credit - | :purchase - | :quasi_cash - | :refund - | :cash_disbursement - | :balance_inquiry - | :unknown - - module ProcessingCategory - extend Increase::Internal::Type::Enum - - # Account funding transactions are transactions used to e.g., fund an account or transfer funds between accounts. - ACCOUNT_FUNDING: :account_funding - - # Automatic fuel dispenser authorizations occur when a card is used at a gas pump, prior to the actual transaction amount being known. They are followed by an advice message that updates the amount of the pending transaction. - AUTOMATIC_FUEL_DISPENSER: :automatic_fuel_dispenser - - # A transaction used to pay a bill. - BILL_PAYMENT: :bill_payment - - # Original credit transactions are used to send money to a cardholder. - ORIGINAL_CREDIT: :original_credit - - # A regular purchase. - PURCHASE: :purchase - - # Quasi-cash transactions represent purchases of items which may be convertible to cash. - QUASI_CASH: :quasi_cash - - # A refund card authorization, sometimes referred to as a credit voucher authorization, where funds are credited to the cardholder. - REFUND: :refund - - # Cash disbursement transactions are used to withdraw cash from an ATM or a point of sale. - CASH_DISBURSEMENT: :cash_disbursement - - # A balance inquiry transaction is used to check the balance of an account associated with a card. - BALANCE_INQUIRY: :balance_inquiry - - # The processing category is unknown. - UNKNOWN: :unknown - - def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardAuthorization::processing_category] - end - - type type_ = :card_authorization + type type_ = :card_balance_inquiry module Type extend Increase::Internal::Type::Enum - CARD_AUTHORIZATION: :card_authorization + CARD_BALANCE_INQUIRY: :card_balance_inquiry - def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardAuthorization::type_] + def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardBalanceInquiry::type_] end type verification = { - card_verification_code: Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode, - cardholder_address: Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress + card_verification_code: Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardVerificationCode, + cardholder_address: Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress } class Verification < Increase::Internal::Type::BaseModel - attr_accessor card_verification_code: Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode + attr_accessor card_verification_code: Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardVerificationCode - attr_accessor cardholder_address: Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress + attr_accessor cardholder_address: Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress def initialize: ( - card_verification_code: Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode, - cardholder_address: Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress + card_verification_code: Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardVerificationCode, + cardholder_address: Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress ) -> void def to_hash: -> { - card_verification_code: Increase::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode, - cardholder_address: Increase::CardPayment::Element::CardAuthorization::Verification::CardholderAddress + card_verification_code: Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardVerificationCode, + cardholder_address: Increase::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress } type card_verification_code = { - result: Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::result + result: Increase::Models::CardPayment::Element::CardBalanceInquiry::Verification::CardVerificationCode::result } class CardVerificationCode < Increase::Internal::Type::BaseModel - attr_accessor result: Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::result + attr_accessor result: Increase::Models::CardPayment::Element::CardBalanceInquiry::Verification::CardVerificationCode::result def initialize: ( - result: Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::result + result: Increase::Models::CardPayment::Element::CardBalanceInquiry::Verification::CardVerificationCode::result ) -> void def to_hash: -> { - result: Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::result + result: Increase::Models::CardPayment::Element::CardBalanceInquiry::Verification::CardVerificationCode::result } type result = :not_checked | :match | :no_match @@ -1157,7 +1916,7 @@ module Increase # The card verification code did not match the one on file. NO_MATCH: :no_match - def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardVerificationCode::result] + def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardBalanceInquiry::Verification::CardVerificationCode::result] end end @@ -1167,7 +1926,7 @@ module Increase actual_postal_code: String?, :provided_line1 => String?, provided_postal_code: String?, - result: Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::result + result: Increase::Models::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress::result } class CardholderAddress < Increase::Internal::Type::BaseModel @@ -1179,14 +1938,14 @@ module Increase attr_accessor provided_postal_code: String? - attr_accessor result: Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::result + attr_accessor result: Increase::Models::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress::result def initialize: ( actual_line1: String?, actual_postal_code: String?, provided_line1: String?, provided_postal_code: String?, - result: Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::result + result: Increase::Models::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress::result ) -> void def to_hash: -> { @@ -1194,7 +1953,7 @@ module Increase actual_postal_code: String?, :provided_line1 => String?, provided_postal_code: String?, - result: Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::result + result: Increase::Models::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress::result } type result = @@ -1226,89 +1985,12 @@ module Increase # Postal code matches, but the street address was not verified. (deprecated) POSTAL_CODE_MATCH_ADDRESS_NOT_CHECKED: :postal_code_match_address_not_checked - def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardAuthorization::Verification::CardholderAddress::result] + def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardBalanceInquiry::Verification::CardholderAddress::result] end end end end - type card_authorization_expiration = - { - id: String, - card_authorization_id: String, - currency: Increase::Models::CardPayment::Element::CardAuthorizationExpiration::currency, - expired_amount: Integer, - network: Increase::Models::CardPayment::Element::CardAuthorizationExpiration::network, - type: Increase::Models::CardPayment::Element::CardAuthorizationExpiration::type_ - } - - class CardAuthorizationExpiration < Increase::Internal::Type::BaseModel - attr_accessor id: String - - attr_accessor card_authorization_id: String - - attr_accessor currency: Increase::Models::CardPayment::Element::CardAuthorizationExpiration::currency - - attr_accessor expired_amount: Integer - - attr_accessor network: Increase::Models::CardPayment::Element::CardAuthorizationExpiration::network - - attr_accessor type: Increase::Models::CardPayment::Element::CardAuthorizationExpiration::type_ - - def initialize: ( - id: String, - card_authorization_id: String, - currency: Increase::Models::CardPayment::Element::CardAuthorizationExpiration::currency, - expired_amount: Integer, - network: Increase::Models::CardPayment::Element::CardAuthorizationExpiration::network, - type: Increase::Models::CardPayment::Element::CardAuthorizationExpiration::type_ - ) -> void - - def to_hash: -> { - id: String, - card_authorization_id: String, - currency: Increase::Models::CardPayment::Element::CardAuthorizationExpiration::currency, - expired_amount: Integer, - network: Increase::Models::CardPayment::Element::CardAuthorizationExpiration::network, - type: Increase::Models::CardPayment::Element::CardAuthorizationExpiration::type_ - } - - type currency = :USD - - module Currency - extend Increase::Internal::Type::Enum - - # US Dollar (USD) - USD: :USD - - def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardAuthorizationExpiration::currency] - end - - type network = :visa | :pulse - - module Network - extend Increase::Internal::Type::Enum - - # Visa - VISA: :visa - - # Pulse - PULSE: :pulse - - def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardAuthorizationExpiration::network] - end - - type type_ = :card_authorization_expiration - - module Type - extend Increase::Internal::Type::Enum - - CARD_AUTHORIZATION_EXPIRATION: :card_authorization_expiration - - def self?.values: -> ::Array[Increase::Models::CardPayment::Element::CardAuthorizationExpiration::type_] - end - end - type card_decline = { id: String, @@ -6399,6 +7081,7 @@ module Increase type category = :card_authorization | :card_authentication + | :card_balance_inquiry | :card_validation | :card_decline | :card_reversal @@ -6419,6 +7102,9 @@ module Increase # Card Authentication: details will be under the `card_authentication` object. CARD_AUTHENTICATION: :card_authentication + # Card Balance Inquiry: details will be under the `card_balance_inquiry` object. + CARD_BALANCE_INQUIRY: :card_balance_inquiry + # Inbound Card Validation: details will be under the `card_validation` object. CARD_VALIDATION: :card_validation From 9d5ba566b98c1b5b87c35667c2128f41674763d5 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Mon, 8 Dec 2025 23:54:57 +0000 Subject: [PATCH 2/2] release: 1.158.0 --- .release-please-manifest.json | 2 +- CHANGELOG.md | 8 ++++++++ Gemfile.lock | 2 +- README.md | 2 +- lib/increase/version.rb | 2 +- 5 files changed, 12 insertions(+), 4 deletions(-) diff --git a/.release-please-manifest.json b/.release-please-manifest.json index 4b0a1882..eb9e346d 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "1.157.0" + ".": "1.158.0" } \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index 1a3843f3..6f0bd978 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## 1.158.0 (2025-12-08) + +Full Changelog: [v1.157.0...v1.158.0](https://github.com/Increase/increase-ruby/compare/v1.157.0...v1.158.0) + +### Features + +* **api:** api update ([e98a96d](https://github.com/Increase/increase-ruby/commit/e98a96d9cc37a5b233740a0fe7c60f14de1dcbf7)) + ## 1.157.0 (2025-12-08) Full Changelog: [v1.156.0...v1.157.0](https://github.com/Increase/increase-ruby/compare/v1.156.0...v1.157.0) diff --git a/Gemfile.lock b/Gemfile.lock index f921ea8f..ed99c379 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -11,7 +11,7 @@ GIT PATH remote: . specs: - increase (1.157.0) + increase (1.158.0) connection_pool GEM diff --git a/README.md b/README.md index 9dedceb7..ff57c78c 100644 --- a/README.md +++ b/README.md @@ -15,7 +15,7 @@ To use this gem, install via Bundler by adding the following to your application ```ruby -gem "increase", "~> 1.157.0" +gem "increase", "~> 1.158.0" ``` diff --git a/lib/increase/version.rb b/lib/increase/version.rb index d7dd306b..3891a6c9 100644 --- a/lib/increase/version.rb +++ b/lib/increase/version.rb @@ -1,5 +1,5 @@ # frozen_string_literal: true module Increase - VERSION = "1.157.0" + VERSION = "1.158.0" end