increase 1.117.0 → 1.118.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +8 -0
- data/README.md +1 -1
- data/lib/increase/models/card_payment.rb +1420 -237
- data/lib/increase/version.rb +1 -1
- data/rbi/increase/models/card_payment.rbi +2510 -250
- data/sig/increase/models/card_payment.rbs +1046 -248
- metadata +2 -2
| @@ -185,6 +185,22 @@ module Increase | |
| 185 185 | 
             
                    end
         | 
| 186 186 | 
             
                    attr_writer :card_decline
         | 
| 187 187 |  | 
| 188 | 
            +
                    # A Card Financial object. This field will be present in the JSON response if and
         | 
| 189 | 
            +
                    # only if `category` is equal to `card_financial`. Card Financials are temporary
         | 
| 190 | 
            +
                    # holds placed on a customers funds with the intent to later clear a transaction.
         | 
| 191 | 
            +
                    sig do
         | 
| 192 | 
            +
                      returns(T.nilable(Increase::CardPayment::Element::CardFinancial))
         | 
| 193 | 
            +
                    end
         | 
| 194 | 
            +
                    attr_reader :card_financial
         | 
| 195 | 
            +
             | 
| 196 | 
            +
                    sig do
         | 
| 197 | 
            +
                      params(
         | 
| 198 | 
            +
                        card_financial:
         | 
| 199 | 
            +
                          T.nilable(Increase::CardPayment::Element::CardFinancial::OrHash)
         | 
| 200 | 
            +
                      ).void
         | 
| 201 | 
            +
                    end
         | 
| 202 | 
            +
                    attr_writer :card_financial
         | 
| 203 | 
            +
             | 
| 188 204 | 
             
                    # A Card Fuel Confirmation object. This field will be present in the JSON response
         | 
| 189 205 | 
             
                    # if and only if `category` is equal to `card_fuel_confirmation`. Card Fuel
         | 
| 190 206 | 
             
                    # Confirmations update the amount of a Card Authorization after a fuel pump
         | 
| @@ -318,6 +334,8 @@ module Increase | |
| 318 334 | 
             
                          ),
         | 
| 319 335 | 
             
                        card_decline:
         | 
| 320 336 | 
             
                          T.nilable(Increase::CardPayment::Element::CardDecline::OrHash),
         | 
| 337 | 
            +
                        card_financial:
         | 
| 338 | 
            +
                          T.nilable(Increase::CardPayment::Element::CardFinancial::OrHash),
         | 
| 321 339 | 
             
                        card_fuel_confirmation:
         | 
| 322 340 | 
             
                          T.nilable(
         | 
| 323 341 | 
             
                            Increase::CardPayment::Element::CardFuelConfirmation::OrHash
         | 
| @@ -355,6 +373,10 @@ module Increase | |
| 355 373 | 
             
                      # A Card Decline object. This field will be present in the JSON response if and
         | 
| 356 374 | 
             
                      # only if `category` is equal to `card_decline`.
         | 
| 357 375 | 
             
                      card_decline:,
         | 
| 376 | 
            +
                      # A Card Financial object. This field will be present in the JSON response if and
         | 
| 377 | 
            +
                      # only if `category` is equal to `card_financial`. Card Financials are temporary
         | 
| 378 | 
            +
                      # holds placed on a customers funds with the intent to later clear a transaction.
         | 
| 379 | 
            +
                      card_financial:,
         | 
| 358 380 | 
             
                      # A Card Fuel Confirmation object. This field will be present in the JSON response
         | 
| 359 381 | 
             
                      # if and only if `category` is equal to `card_fuel_confirmation`. Card Fuel
         | 
| 360 382 | 
             
                      # Confirmations update the amount of a Card Authorization after a fuel pump
         | 
| @@ -410,6 +432,8 @@ module Increase | |
| 410 432 | 
             
                            ),
         | 
| 411 433 | 
             
                          card_decline:
         | 
| 412 434 | 
             
                            T.nilable(Increase::CardPayment::Element::CardDecline),
         | 
| 435 | 
            +
                          card_financial:
         | 
| 436 | 
            +
                            T.nilable(Increase::CardPayment::Element::CardFinancial),
         | 
| 413 437 | 
             
                          card_fuel_confirmation:
         | 
| 414 438 | 
             
                            T.nilable(Increase::CardPayment::Element::CardFuelConfirmation),
         | 
| 415 439 | 
             
                          card_increment:
         | 
| @@ -5480,7 +5504,2436 @@ module Increase | |
| 5480 5504 | 
             
                        end
         | 
| 5481 5505 | 
             
                      end
         | 
| 5482 5506 |  | 
| 5483 | 
            -
                      # The processing category describes the intent behind the authorization, such as
         | 
| 5507 | 
            +
                      # The processing category describes the intent behind the authorization, such as
         | 
| 5508 | 
            +
                      # whether it was used for bill payments or an automatic fuel dispenser.
         | 
| 5509 | 
            +
                      module ProcessingCategory
         | 
| 5510 | 
            +
                        extend Increase::Internal::Type::Enum
         | 
| 5511 | 
            +
             | 
| 5512 | 
            +
                        TaggedSymbol =
         | 
| 5513 | 
            +
                          T.type_alias do
         | 
| 5514 | 
            +
                            T.all(
         | 
| 5515 | 
            +
                              Symbol,
         | 
| 5516 | 
            +
                              Increase::CardPayment::Element::CardDecline::ProcessingCategory
         | 
| 5517 | 
            +
                            )
         | 
| 5518 | 
            +
                          end
         | 
| 5519 | 
            +
                        OrSymbol = T.type_alias { T.any(Symbol, String) }
         | 
| 5520 | 
            +
             | 
| 5521 | 
            +
                        # Account funding transactions are transactions used to e.g., fund an account or transfer funds between accounts.
         | 
| 5522 | 
            +
                        ACCOUNT_FUNDING =
         | 
| 5523 | 
            +
                          T.let(
         | 
| 5524 | 
            +
                            :account_funding,
         | 
| 5525 | 
            +
                            Increase::CardPayment::Element::CardDecline::ProcessingCategory::TaggedSymbol
         | 
| 5526 | 
            +
                          )
         | 
| 5527 | 
            +
             | 
| 5528 | 
            +
                        # 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.
         | 
| 5529 | 
            +
                        AUTOMATIC_FUEL_DISPENSER =
         | 
| 5530 | 
            +
                          T.let(
         | 
| 5531 | 
            +
                            :automatic_fuel_dispenser,
         | 
| 5532 | 
            +
                            Increase::CardPayment::Element::CardDecline::ProcessingCategory::TaggedSymbol
         | 
| 5533 | 
            +
                          )
         | 
| 5534 | 
            +
             | 
| 5535 | 
            +
                        # A transaction used to pay a bill.
         | 
| 5536 | 
            +
                        BILL_PAYMENT =
         | 
| 5537 | 
            +
                          T.let(
         | 
| 5538 | 
            +
                            :bill_payment,
         | 
| 5539 | 
            +
                            Increase::CardPayment::Element::CardDecline::ProcessingCategory::TaggedSymbol
         | 
| 5540 | 
            +
                          )
         | 
| 5541 | 
            +
             | 
| 5542 | 
            +
                        # Original credit transactions are used to send money to a cardholder.
         | 
| 5543 | 
            +
                        ORIGINAL_CREDIT =
         | 
| 5544 | 
            +
                          T.let(
         | 
| 5545 | 
            +
                            :original_credit,
         | 
| 5546 | 
            +
                            Increase::CardPayment::Element::CardDecline::ProcessingCategory::TaggedSymbol
         | 
| 5547 | 
            +
                          )
         | 
| 5548 | 
            +
             | 
| 5549 | 
            +
                        # A regular purchase.
         | 
| 5550 | 
            +
                        PURCHASE =
         | 
| 5551 | 
            +
                          T.let(
         | 
| 5552 | 
            +
                            :purchase,
         | 
| 5553 | 
            +
                            Increase::CardPayment::Element::CardDecline::ProcessingCategory::TaggedSymbol
         | 
| 5554 | 
            +
                          )
         | 
| 5555 | 
            +
             | 
| 5556 | 
            +
                        # Quasi-cash transactions represent purchases of items which may be convertible to cash.
         | 
| 5557 | 
            +
                        QUASI_CASH =
         | 
| 5558 | 
            +
                          T.let(
         | 
| 5559 | 
            +
                            :quasi_cash,
         | 
| 5560 | 
            +
                            Increase::CardPayment::Element::CardDecline::ProcessingCategory::TaggedSymbol
         | 
| 5561 | 
            +
                          )
         | 
| 5562 | 
            +
             | 
| 5563 | 
            +
                        # A refund card authorization, sometimes referred to as a credit voucher authorization, where funds are credited to the cardholder.
         | 
| 5564 | 
            +
                        REFUND =
         | 
| 5565 | 
            +
                          T.let(
         | 
| 5566 | 
            +
                            :refund,
         | 
| 5567 | 
            +
                            Increase::CardPayment::Element::CardDecline::ProcessingCategory::TaggedSymbol
         | 
| 5568 | 
            +
                          )
         | 
| 5569 | 
            +
             | 
| 5570 | 
            +
                        # Cash disbursement transactions are used to withdraw cash from an ATM or a point of sale.
         | 
| 5571 | 
            +
                        CASH_DISBURSEMENT =
         | 
| 5572 | 
            +
                          T.let(
         | 
| 5573 | 
            +
                            :cash_disbursement,
         | 
| 5574 | 
            +
                            Increase::CardPayment::Element::CardDecline::ProcessingCategory::TaggedSymbol
         | 
| 5575 | 
            +
                          )
         | 
| 5576 | 
            +
             | 
| 5577 | 
            +
                        # The processing category is unknown.
         | 
| 5578 | 
            +
                        UNKNOWN =
         | 
| 5579 | 
            +
                          T.let(
         | 
| 5580 | 
            +
                            :unknown,
         | 
| 5581 | 
            +
                            Increase::CardPayment::Element::CardDecline::ProcessingCategory::TaggedSymbol
         | 
| 5582 | 
            +
                          )
         | 
| 5583 | 
            +
             | 
| 5584 | 
            +
                        sig do
         | 
| 5585 | 
            +
                          override.returns(
         | 
| 5586 | 
            +
                            T::Array[
         | 
| 5587 | 
            +
                              Increase::CardPayment::Element::CardDecline::ProcessingCategory::TaggedSymbol
         | 
| 5588 | 
            +
                            ]
         | 
| 5589 | 
            +
                          )
         | 
| 5590 | 
            +
                        end
         | 
| 5591 | 
            +
                        def self.values
         | 
| 5592 | 
            +
                        end
         | 
| 5593 | 
            +
                      end
         | 
| 5594 | 
            +
             | 
| 5595 | 
            +
                      # This is present if a specific decline reason was given in the real-time
         | 
| 5596 | 
            +
                      # decision.
         | 
| 5597 | 
            +
                      module RealTimeDecisionReason
         | 
| 5598 | 
            +
                        extend Increase::Internal::Type::Enum
         | 
| 5599 | 
            +
             | 
| 5600 | 
            +
                        TaggedSymbol =
         | 
| 5601 | 
            +
                          T.type_alias do
         | 
| 5602 | 
            +
                            T.all(
         | 
| 5603 | 
            +
                              Symbol,
         | 
| 5604 | 
            +
                              Increase::CardPayment::Element::CardDecline::RealTimeDecisionReason
         | 
| 5605 | 
            +
                            )
         | 
| 5606 | 
            +
                          end
         | 
| 5607 | 
            +
                        OrSymbol = T.type_alias { T.any(Symbol, String) }
         | 
| 5608 | 
            +
             | 
| 5609 | 
            +
                        # The cardholder does not have sufficient funds to cover the transaction. The merchant may attempt to process the transaction again.
         | 
| 5610 | 
            +
                        INSUFFICIENT_FUNDS =
         | 
| 5611 | 
            +
                          T.let(
         | 
| 5612 | 
            +
                            :insufficient_funds,
         | 
| 5613 | 
            +
                            Increase::CardPayment::Element::CardDecline::RealTimeDecisionReason::TaggedSymbol
         | 
| 5614 | 
            +
                          )
         | 
| 5615 | 
            +
             | 
| 5616 | 
            +
                        # This type of transaction is not allowed for this card. This transaction should not be retried.
         | 
| 5617 | 
            +
                        TRANSACTION_NEVER_ALLOWED =
         | 
| 5618 | 
            +
                          T.let(
         | 
| 5619 | 
            +
                            :transaction_never_allowed,
         | 
| 5620 | 
            +
                            Increase::CardPayment::Element::CardDecline::RealTimeDecisionReason::TaggedSymbol
         | 
| 5621 | 
            +
                          )
         | 
| 5622 | 
            +
             | 
| 5623 | 
            +
                        # The transaction amount exceeds the cardholder's approval limit. The merchant may attempt to process the transaction again.
         | 
| 5624 | 
            +
                        EXCEEDS_APPROVAL_LIMIT =
         | 
| 5625 | 
            +
                          T.let(
         | 
| 5626 | 
            +
                            :exceeds_approval_limit,
         | 
| 5627 | 
            +
                            Increase::CardPayment::Element::CardDecline::RealTimeDecisionReason::TaggedSymbol
         | 
| 5628 | 
            +
                          )
         | 
| 5629 | 
            +
             | 
| 5630 | 
            +
                        # The card has been temporarily disabled or not yet activated. The merchant may attempt to process the transaction again.
         | 
| 5631 | 
            +
                        CARD_TEMPORARILY_DISABLED =
         | 
| 5632 | 
            +
                          T.let(
         | 
| 5633 | 
            +
                            :card_temporarily_disabled,
         | 
| 5634 | 
            +
                            Increase::CardPayment::Element::CardDecline::RealTimeDecisionReason::TaggedSymbol
         | 
| 5635 | 
            +
                          )
         | 
| 5636 | 
            +
             | 
| 5637 | 
            +
                        # The transaction is suspected to be fraudulent. The merchant may attempt to process the transaction again.
         | 
| 5638 | 
            +
                        SUSPECTED_FRAUD =
         | 
| 5639 | 
            +
                          T.let(
         | 
| 5640 | 
            +
                            :suspected_fraud,
         | 
| 5641 | 
            +
                            Increase::CardPayment::Element::CardDecline::RealTimeDecisionReason::TaggedSymbol
         | 
| 5642 | 
            +
                          )
         | 
| 5643 | 
            +
             | 
| 5644 | 
            +
                        # The transaction was declined for another reason. The merchant may attempt to process the transaction again. This should be used sparingly.
         | 
| 5645 | 
            +
                        OTHER =
         | 
| 5646 | 
            +
                          T.let(
         | 
| 5647 | 
            +
                            :other,
         | 
| 5648 | 
            +
                            Increase::CardPayment::Element::CardDecline::RealTimeDecisionReason::TaggedSymbol
         | 
| 5649 | 
            +
                          )
         | 
| 5650 | 
            +
             | 
| 5651 | 
            +
                        sig do
         | 
| 5652 | 
            +
                          override.returns(
         | 
| 5653 | 
            +
                            T::Array[
         | 
| 5654 | 
            +
                              Increase::CardPayment::Element::CardDecline::RealTimeDecisionReason::TaggedSymbol
         | 
| 5655 | 
            +
                            ]
         | 
| 5656 | 
            +
                          )
         | 
| 5657 | 
            +
                        end
         | 
| 5658 | 
            +
                        def self.values
         | 
| 5659 | 
            +
                        end
         | 
| 5660 | 
            +
                      end
         | 
| 5661 | 
            +
             | 
| 5662 | 
            +
                      # Why the transaction was declined.
         | 
| 5663 | 
            +
                      module Reason
         | 
| 5664 | 
            +
                        extend Increase::Internal::Type::Enum
         | 
| 5665 | 
            +
             | 
| 5666 | 
            +
                        TaggedSymbol =
         | 
| 5667 | 
            +
                          T.type_alias do
         | 
| 5668 | 
            +
                            T.all(
         | 
| 5669 | 
            +
                              Symbol,
         | 
| 5670 | 
            +
                              Increase::CardPayment::Element::CardDecline::Reason
         | 
| 5671 | 
            +
                            )
         | 
| 5672 | 
            +
                          end
         | 
| 5673 | 
            +
                        OrSymbol = T.type_alias { T.any(Symbol, String) }
         | 
| 5674 | 
            +
             | 
| 5675 | 
            +
                        # The account has been closed.
         | 
| 5676 | 
            +
                        ACCOUNT_CLOSED =
         | 
| 5677 | 
            +
                          T.let(
         | 
| 5678 | 
            +
                            :account_closed,
         | 
| 5679 | 
            +
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5680 | 
            +
                          )
         | 
| 5681 | 
            +
             | 
| 5682 | 
            +
                        # The Card was not active.
         | 
| 5683 | 
            +
                        CARD_NOT_ACTIVE =
         | 
| 5684 | 
            +
                          T.let(
         | 
| 5685 | 
            +
                            :card_not_active,
         | 
| 5686 | 
            +
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5687 | 
            +
                          )
         | 
| 5688 | 
            +
             | 
| 5689 | 
            +
                        # The Card has been canceled.
         | 
| 5690 | 
            +
                        CARD_CANCELED =
         | 
| 5691 | 
            +
                          T.let(
         | 
| 5692 | 
            +
                            :card_canceled,
         | 
| 5693 | 
            +
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5694 | 
            +
                          )
         | 
| 5695 | 
            +
             | 
| 5696 | 
            +
                        # The Physical Card was not active.
         | 
| 5697 | 
            +
                        PHYSICAL_CARD_NOT_ACTIVE =
         | 
| 5698 | 
            +
                          T.let(
         | 
| 5699 | 
            +
                            :physical_card_not_active,
         | 
| 5700 | 
            +
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5701 | 
            +
                          )
         | 
| 5702 | 
            +
             | 
| 5703 | 
            +
                        # The account's entity was not active.
         | 
| 5704 | 
            +
                        ENTITY_NOT_ACTIVE =
         | 
| 5705 | 
            +
                          T.let(
         | 
| 5706 | 
            +
                            :entity_not_active,
         | 
| 5707 | 
            +
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5708 | 
            +
                          )
         | 
| 5709 | 
            +
             | 
| 5710 | 
            +
                        # The account was inactive.
         | 
| 5711 | 
            +
                        GROUP_LOCKED =
         | 
| 5712 | 
            +
                          T.let(
         | 
| 5713 | 
            +
                            :group_locked,
         | 
| 5714 | 
            +
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5715 | 
            +
                          )
         | 
| 5716 | 
            +
             | 
| 5717 | 
            +
                        # The Card's Account did not have a sufficient available balance.
         | 
| 5718 | 
            +
                        INSUFFICIENT_FUNDS =
         | 
| 5719 | 
            +
                          T.let(
         | 
| 5720 | 
            +
                            :insufficient_funds,
         | 
| 5721 | 
            +
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5722 | 
            +
                          )
         | 
| 5723 | 
            +
             | 
| 5724 | 
            +
                        # The given CVV2 did not match the card's value.
         | 
| 5725 | 
            +
                        CVV2_MISMATCH =
         | 
| 5726 | 
            +
                          T.let(
         | 
| 5727 | 
            +
                            :cvv2_mismatch,
         | 
| 5728 | 
            +
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5729 | 
            +
                          )
         | 
| 5730 | 
            +
             | 
| 5731 | 
            +
                        # The given PIN did not match the card's value.
         | 
| 5732 | 
            +
                        PIN_MISMATCH =
         | 
| 5733 | 
            +
                          T.let(
         | 
| 5734 | 
            +
                            :pin_mismatch,
         | 
| 5735 | 
            +
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5736 | 
            +
                          )
         | 
| 5737 | 
            +
             | 
| 5738 | 
            +
                        # The given expiration date did not match the card's value. Only applies when a CVV2 is present.
         | 
| 5739 | 
            +
                        CARD_EXPIRATION_MISMATCH =
         | 
| 5740 | 
            +
                          T.let(
         | 
| 5741 | 
            +
                            :card_expiration_mismatch,
         | 
| 5742 | 
            +
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5743 | 
            +
                          )
         | 
| 5744 | 
            +
             | 
| 5745 | 
            +
                        # The attempted card transaction is not allowed per Increase's terms.
         | 
| 5746 | 
            +
                        TRANSACTION_NOT_ALLOWED =
         | 
| 5747 | 
            +
                          T.let(
         | 
| 5748 | 
            +
                            :transaction_not_allowed,
         | 
| 5749 | 
            +
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5750 | 
            +
                          )
         | 
| 5751 | 
            +
             | 
| 5752 | 
            +
                        # The transaction was blocked by a Limit.
         | 
| 5753 | 
            +
                        BREACHES_LIMIT =
         | 
| 5754 | 
            +
                          T.let(
         | 
| 5755 | 
            +
                            :breaches_limit,
         | 
| 5756 | 
            +
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5757 | 
            +
                          )
         | 
| 5758 | 
            +
             | 
| 5759 | 
            +
                        # Your application declined the transaction via webhook.
         | 
| 5760 | 
            +
                        WEBHOOK_DECLINED =
         | 
| 5761 | 
            +
                          T.let(
         | 
| 5762 | 
            +
                            :webhook_declined,
         | 
| 5763 | 
            +
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5764 | 
            +
                          )
         | 
| 5765 | 
            +
             | 
| 5766 | 
            +
                        # Your application webhook did not respond without the required timeout.
         | 
| 5767 | 
            +
                        WEBHOOK_TIMED_OUT =
         | 
| 5768 | 
            +
                          T.let(
         | 
| 5769 | 
            +
                            :webhook_timed_out,
         | 
| 5770 | 
            +
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5771 | 
            +
                          )
         | 
| 5772 | 
            +
             | 
| 5773 | 
            +
                        # Declined by stand-in processing.
         | 
| 5774 | 
            +
                        DECLINED_BY_STAND_IN_PROCESSING =
         | 
| 5775 | 
            +
                          T.let(
         | 
| 5776 | 
            +
                            :declined_by_stand_in_processing,
         | 
| 5777 | 
            +
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5778 | 
            +
                          )
         | 
| 5779 | 
            +
             | 
| 5780 | 
            +
                        # The card read had an invalid CVV, dCVV, or authorization request cryptogram.
         | 
| 5781 | 
            +
                        INVALID_PHYSICAL_CARD =
         | 
| 5782 | 
            +
                          T.let(
         | 
| 5783 | 
            +
                            :invalid_physical_card,
         | 
| 5784 | 
            +
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5785 | 
            +
                          )
         | 
| 5786 | 
            +
             | 
| 5787 | 
            +
                        # The original card authorization for this incremental authorization does not exist.
         | 
| 5788 | 
            +
                        MISSING_ORIGINAL_AUTHORIZATION =
         | 
| 5789 | 
            +
                          T.let(
         | 
| 5790 | 
            +
                            :missing_original_authorization,
         | 
| 5791 | 
            +
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5792 | 
            +
                          )
         | 
| 5793 | 
            +
             | 
| 5794 | 
            +
                        # The transaction was declined because the 3DS authentication failed.
         | 
| 5795 | 
            +
                        FAILED_3DS_AUTHENTICATION =
         | 
| 5796 | 
            +
                          T.let(
         | 
| 5797 | 
            +
                            :failed_3ds_authentication,
         | 
| 5798 | 
            +
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5799 | 
            +
                          )
         | 
| 5800 | 
            +
             | 
| 5801 | 
            +
                        # The transaction was suspected to be used by a card tester to test for valid card numbers.
         | 
| 5802 | 
            +
                        SUSPECTED_CARD_TESTING =
         | 
| 5803 | 
            +
                          T.let(
         | 
| 5804 | 
            +
                            :suspected_card_testing,
         | 
| 5805 | 
            +
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5806 | 
            +
                          )
         | 
| 5807 | 
            +
             | 
| 5808 | 
            +
                        # The transaction was suspected to be fraudulent. Please reach out to support@increase.com for more information.
         | 
| 5809 | 
            +
                        SUSPECTED_FRAUD =
         | 
| 5810 | 
            +
                          T.let(
         | 
| 5811 | 
            +
                            :suspected_fraud,
         | 
| 5812 | 
            +
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5813 | 
            +
                          )
         | 
| 5814 | 
            +
             | 
| 5815 | 
            +
                        sig do
         | 
| 5816 | 
            +
                          override.returns(
         | 
| 5817 | 
            +
                            T::Array[
         | 
| 5818 | 
            +
                              Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5819 | 
            +
                            ]
         | 
| 5820 | 
            +
                          )
         | 
| 5821 | 
            +
                        end
         | 
| 5822 | 
            +
                        def self.values
         | 
| 5823 | 
            +
                        end
         | 
| 5824 | 
            +
                      end
         | 
| 5825 | 
            +
             | 
| 5826 | 
            +
                      class Verification < Increase::Internal::Type::BaseModel
         | 
| 5827 | 
            +
                        OrHash =
         | 
| 5828 | 
            +
                          T.type_alias do
         | 
| 5829 | 
            +
                            T.any(
         | 
| 5830 | 
            +
                              Increase::CardPayment::Element::CardDecline::Verification,
         | 
| 5831 | 
            +
                              Increase::Internal::AnyHash
         | 
| 5832 | 
            +
                            )
         | 
| 5833 | 
            +
                          end
         | 
| 5834 | 
            +
             | 
| 5835 | 
            +
                        # Fields related to verification of the Card Verification Code, a 3-digit code on
         | 
| 5836 | 
            +
                        # the back of the card.
         | 
| 5837 | 
            +
                        sig do
         | 
| 5838 | 
            +
                          returns(
         | 
| 5839 | 
            +
                            Increase::CardPayment::Element::CardDecline::Verification::CardVerificationCode
         | 
| 5840 | 
            +
                          )
         | 
| 5841 | 
            +
                        end
         | 
| 5842 | 
            +
                        attr_reader :card_verification_code
         | 
| 5843 | 
            +
             | 
| 5844 | 
            +
                        sig do
         | 
| 5845 | 
            +
                          params(
         | 
| 5846 | 
            +
                            card_verification_code:
         | 
| 5847 | 
            +
                              Increase::CardPayment::Element::CardDecline::Verification::CardVerificationCode::OrHash
         | 
| 5848 | 
            +
                          ).void
         | 
| 5849 | 
            +
                        end
         | 
| 5850 | 
            +
                        attr_writer :card_verification_code
         | 
| 5851 | 
            +
             | 
| 5852 | 
            +
                        # Cardholder address provided in the authorization request and the address on file
         | 
| 5853 | 
            +
                        # we verified it against.
         | 
| 5854 | 
            +
                        sig do
         | 
| 5855 | 
            +
                          returns(
         | 
| 5856 | 
            +
                            Increase::CardPayment::Element::CardDecline::Verification::CardholderAddress
         | 
| 5857 | 
            +
                          )
         | 
| 5858 | 
            +
                        end
         | 
| 5859 | 
            +
                        attr_reader :cardholder_address
         | 
| 5860 | 
            +
             | 
| 5861 | 
            +
                        sig do
         | 
| 5862 | 
            +
                          params(
         | 
| 5863 | 
            +
                            cardholder_address:
         | 
| 5864 | 
            +
                              Increase::CardPayment::Element::CardDecline::Verification::CardholderAddress::OrHash
         | 
| 5865 | 
            +
                          ).void
         | 
| 5866 | 
            +
                        end
         | 
| 5867 | 
            +
                        attr_writer :cardholder_address
         | 
| 5868 | 
            +
             | 
| 5869 | 
            +
                        # Fields related to verification of cardholder-provided values.
         | 
| 5870 | 
            +
                        sig do
         | 
| 5871 | 
            +
                          params(
         | 
| 5872 | 
            +
                            card_verification_code:
         | 
| 5873 | 
            +
                              Increase::CardPayment::Element::CardDecline::Verification::CardVerificationCode::OrHash,
         | 
| 5874 | 
            +
                            cardholder_address:
         | 
| 5875 | 
            +
                              Increase::CardPayment::Element::CardDecline::Verification::CardholderAddress::OrHash
         | 
| 5876 | 
            +
                          ).returns(T.attached_class)
         | 
| 5877 | 
            +
                        end
         | 
| 5878 | 
            +
                        def self.new(
         | 
| 5879 | 
            +
                          # Fields related to verification of the Card Verification Code, a 3-digit code on
         | 
| 5880 | 
            +
                          # the back of the card.
         | 
| 5881 | 
            +
                          card_verification_code:,
         | 
| 5882 | 
            +
                          # Cardholder address provided in the authorization request and the address on file
         | 
| 5883 | 
            +
                          # we verified it against.
         | 
| 5884 | 
            +
                          cardholder_address:
         | 
| 5885 | 
            +
                        )
         | 
| 5886 | 
            +
                        end
         | 
| 5887 | 
            +
             | 
| 5888 | 
            +
                        sig do
         | 
| 5889 | 
            +
                          override.returns(
         | 
| 5890 | 
            +
                            {
         | 
| 5891 | 
            +
                              card_verification_code:
         | 
| 5892 | 
            +
                                Increase::CardPayment::Element::CardDecline::Verification::CardVerificationCode,
         | 
| 5893 | 
            +
                              cardholder_address:
         | 
| 5894 | 
            +
                                Increase::CardPayment::Element::CardDecline::Verification::CardholderAddress
         | 
| 5895 | 
            +
                            }
         | 
| 5896 | 
            +
                          )
         | 
| 5897 | 
            +
                        end
         | 
| 5898 | 
            +
                        def to_hash
         | 
| 5899 | 
            +
                        end
         | 
| 5900 | 
            +
             | 
| 5901 | 
            +
                        class CardVerificationCode < Increase::Internal::Type::BaseModel
         | 
| 5902 | 
            +
                          OrHash =
         | 
| 5903 | 
            +
                            T.type_alias do
         | 
| 5904 | 
            +
                              T.any(
         | 
| 5905 | 
            +
                                Increase::CardPayment::Element::CardDecline::Verification::CardVerificationCode,
         | 
| 5906 | 
            +
                                Increase::Internal::AnyHash
         | 
| 5907 | 
            +
                              )
         | 
| 5908 | 
            +
                            end
         | 
| 5909 | 
            +
             | 
| 5910 | 
            +
                          # The result of verifying the Card Verification Code.
         | 
| 5911 | 
            +
                          sig do
         | 
| 5912 | 
            +
                            returns(
         | 
| 5913 | 
            +
                              Increase::CardPayment::Element::CardDecline::Verification::CardVerificationCode::Result::TaggedSymbol
         | 
| 5914 | 
            +
                            )
         | 
| 5915 | 
            +
                          end
         | 
| 5916 | 
            +
                          attr_accessor :result
         | 
| 5917 | 
            +
             | 
| 5918 | 
            +
                          # Fields related to verification of the Card Verification Code, a 3-digit code on
         | 
| 5919 | 
            +
                          # the back of the card.
         | 
| 5920 | 
            +
                          sig do
         | 
| 5921 | 
            +
                            params(
         | 
| 5922 | 
            +
                              result:
         | 
| 5923 | 
            +
                                Increase::CardPayment::Element::CardDecline::Verification::CardVerificationCode::Result::OrSymbol
         | 
| 5924 | 
            +
                            ).returns(T.attached_class)
         | 
| 5925 | 
            +
                          end
         | 
| 5926 | 
            +
                          def self.new(
         | 
| 5927 | 
            +
                            # The result of verifying the Card Verification Code.
         | 
| 5928 | 
            +
                            result:
         | 
| 5929 | 
            +
                          )
         | 
| 5930 | 
            +
                          end
         | 
| 5931 | 
            +
             | 
| 5932 | 
            +
                          sig do
         | 
| 5933 | 
            +
                            override.returns(
         | 
| 5934 | 
            +
                              {
         | 
| 5935 | 
            +
                                result:
         | 
| 5936 | 
            +
                                  Increase::CardPayment::Element::CardDecline::Verification::CardVerificationCode::Result::TaggedSymbol
         | 
| 5937 | 
            +
                              }
         | 
| 5938 | 
            +
                            )
         | 
| 5939 | 
            +
                          end
         | 
| 5940 | 
            +
                          def to_hash
         | 
| 5941 | 
            +
                          end
         | 
| 5942 | 
            +
             | 
| 5943 | 
            +
                          # The result of verifying the Card Verification Code.
         | 
| 5944 | 
            +
                          module Result
         | 
| 5945 | 
            +
                            extend Increase::Internal::Type::Enum
         | 
| 5946 | 
            +
             | 
| 5947 | 
            +
                            TaggedSymbol =
         | 
| 5948 | 
            +
                              T.type_alias do
         | 
| 5949 | 
            +
                                T.all(
         | 
| 5950 | 
            +
                                  Symbol,
         | 
| 5951 | 
            +
                                  Increase::CardPayment::Element::CardDecline::Verification::CardVerificationCode::Result
         | 
| 5952 | 
            +
                                )
         | 
| 5953 | 
            +
                              end
         | 
| 5954 | 
            +
                            OrSymbol = T.type_alias { T.any(Symbol, String) }
         | 
| 5955 | 
            +
             | 
| 5956 | 
            +
                            # No card verification code was provided in the authorization request.
         | 
| 5957 | 
            +
                            NOT_CHECKED =
         | 
| 5958 | 
            +
                              T.let(
         | 
| 5959 | 
            +
                                :not_checked,
         | 
| 5960 | 
            +
                                Increase::CardPayment::Element::CardDecline::Verification::CardVerificationCode::Result::TaggedSymbol
         | 
| 5961 | 
            +
                              )
         | 
| 5962 | 
            +
             | 
| 5963 | 
            +
                            # The card verification code matched the one on file.
         | 
| 5964 | 
            +
                            MATCH =
         | 
| 5965 | 
            +
                              T.let(
         | 
| 5966 | 
            +
                                :match,
         | 
| 5967 | 
            +
                                Increase::CardPayment::Element::CardDecline::Verification::CardVerificationCode::Result::TaggedSymbol
         | 
| 5968 | 
            +
                              )
         | 
| 5969 | 
            +
             | 
| 5970 | 
            +
                            # The card verification code did not match the one on file.
         | 
| 5971 | 
            +
                            NO_MATCH =
         | 
| 5972 | 
            +
                              T.let(
         | 
| 5973 | 
            +
                                :no_match,
         | 
| 5974 | 
            +
                                Increase::CardPayment::Element::CardDecline::Verification::CardVerificationCode::Result::TaggedSymbol
         | 
| 5975 | 
            +
                              )
         | 
| 5976 | 
            +
             | 
| 5977 | 
            +
                            sig do
         | 
| 5978 | 
            +
                              override.returns(
         | 
| 5979 | 
            +
                                T::Array[
         | 
| 5980 | 
            +
                                  Increase::CardPayment::Element::CardDecline::Verification::CardVerificationCode::Result::TaggedSymbol
         | 
| 5981 | 
            +
                                ]
         | 
| 5982 | 
            +
                              )
         | 
| 5983 | 
            +
                            end
         | 
| 5984 | 
            +
                            def self.values
         | 
| 5985 | 
            +
                            end
         | 
| 5986 | 
            +
                          end
         | 
| 5987 | 
            +
                        end
         | 
| 5988 | 
            +
             | 
| 5989 | 
            +
                        class CardholderAddress < Increase::Internal::Type::BaseModel
         | 
| 5990 | 
            +
                          OrHash =
         | 
| 5991 | 
            +
                            T.type_alias do
         | 
| 5992 | 
            +
                              T.any(
         | 
| 5993 | 
            +
                                Increase::CardPayment::Element::CardDecline::Verification::CardholderAddress,
         | 
| 5994 | 
            +
                                Increase::Internal::AnyHash
         | 
| 5995 | 
            +
                              )
         | 
| 5996 | 
            +
                            end
         | 
| 5997 | 
            +
             | 
| 5998 | 
            +
                          # Line 1 of the address on file for the cardholder.
         | 
| 5999 | 
            +
                          sig { returns(T.nilable(String)) }
         | 
| 6000 | 
            +
                          attr_accessor :actual_line1
         | 
| 6001 | 
            +
             | 
| 6002 | 
            +
                          # The postal code of the address on file for the cardholder.
         | 
| 6003 | 
            +
                          sig { returns(T.nilable(String)) }
         | 
| 6004 | 
            +
                          attr_accessor :actual_postal_code
         | 
| 6005 | 
            +
             | 
| 6006 | 
            +
                          # The cardholder address line 1 provided for verification in the authorization
         | 
| 6007 | 
            +
                          # request.
         | 
| 6008 | 
            +
                          sig { returns(T.nilable(String)) }
         | 
| 6009 | 
            +
                          attr_accessor :provided_line1
         | 
| 6010 | 
            +
             | 
| 6011 | 
            +
                          # The postal code provided for verification in the authorization request.
         | 
| 6012 | 
            +
                          sig { returns(T.nilable(String)) }
         | 
| 6013 | 
            +
                          attr_accessor :provided_postal_code
         | 
| 6014 | 
            +
             | 
| 6015 | 
            +
                          # The address verification result returned to the card network.
         | 
| 6016 | 
            +
                          sig do
         | 
| 6017 | 
            +
                            returns(
         | 
| 6018 | 
            +
                              Increase::CardPayment::Element::CardDecline::Verification::CardholderAddress::Result::TaggedSymbol
         | 
| 6019 | 
            +
                            )
         | 
| 6020 | 
            +
                          end
         | 
| 6021 | 
            +
                          attr_accessor :result
         | 
| 6022 | 
            +
             | 
| 6023 | 
            +
                          # Cardholder address provided in the authorization request and the address on file
         | 
| 6024 | 
            +
                          # we verified it against.
         | 
| 6025 | 
            +
                          sig do
         | 
| 6026 | 
            +
                            params(
         | 
| 6027 | 
            +
                              actual_line1: T.nilable(String),
         | 
| 6028 | 
            +
                              actual_postal_code: T.nilable(String),
         | 
| 6029 | 
            +
                              provided_line1: T.nilable(String),
         | 
| 6030 | 
            +
                              provided_postal_code: T.nilable(String),
         | 
| 6031 | 
            +
                              result:
         | 
| 6032 | 
            +
                                Increase::CardPayment::Element::CardDecline::Verification::CardholderAddress::Result::OrSymbol
         | 
| 6033 | 
            +
                            ).returns(T.attached_class)
         | 
| 6034 | 
            +
                          end
         | 
| 6035 | 
            +
                          def self.new(
         | 
| 6036 | 
            +
                            # Line 1 of the address on file for the cardholder.
         | 
| 6037 | 
            +
                            actual_line1:,
         | 
| 6038 | 
            +
                            # The postal code of the address on file for the cardholder.
         | 
| 6039 | 
            +
                            actual_postal_code:,
         | 
| 6040 | 
            +
                            # The cardholder address line 1 provided for verification in the authorization
         | 
| 6041 | 
            +
                            # request.
         | 
| 6042 | 
            +
                            provided_line1:,
         | 
| 6043 | 
            +
                            # The postal code provided for verification in the authorization request.
         | 
| 6044 | 
            +
                            provided_postal_code:,
         | 
| 6045 | 
            +
                            # The address verification result returned to the card network.
         | 
| 6046 | 
            +
                            result:
         | 
| 6047 | 
            +
                          )
         | 
| 6048 | 
            +
                          end
         | 
| 6049 | 
            +
             | 
| 6050 | 
            +
                          sig do
         | 
| 6051 | 
            +
                            override.returns(
         | 
| 6052 | 
            +
                              {
         | 
| 6053 | 
            +
                                actual_line1: T.nilable(String),
         | 
| 6054 | 
            +
                                actual_postal_code: T.nilable(String),
         | 
| 6055 | 
            +
                                provided_line1: T.nilable(String),
         | 
| 6056 | 
            +
                                provided_postal_code: T.nilable(String),
         | 
| 6057 | 
            +
                                result:
         | 
| 6058 | 
            +
                                  Increase::CardPayment::Element::CardDecline::Verification::CardholderAddress::Result::TaggedSymbol
         | 
| 6059 | 
            +
                              }
         | 
| 6060 | 
            +
                            )
         | 
| 6061 | 
            +
                          end
         | 
| 6062 | 
            +
                          def to_hash
         | 
| 6063 | 
            +
                          end
         | 
| 6064 | 
            +
             | 
| 6065 | 
            +
                          # The address verification result returned to the card network.
         | 
| 6066 | 
            +
                          module Result
         | 
| 6067 | 
            +
                            extend Increase::Internal::Type::Enum
         | 
| 6068 | 
            +
             | 
| 6069 | 
            +
                            TaggedSymbol =
         | 
| 6070 | 
            +
                              T.type_alias do
         | 
| 6071 | 
            +
                                T.all(
         | 
| 6072 | 
            +
                                  Symbol,
         | 
| 6073 | 
            +
                                  Increase::CardPayment::Element::CardDecline::Verification::CardholderAddress::Result
         | 
| 6074 | 
            +
                                )
         | 
| 6075 | 
            +
                              end
         | 
| 6076 | 
            +
                            OrSymbol = T.type_alias { T.any(Symbol, String) }
         | 
| 6077 | 
            +
             | 
| 6078 | 
            +
                            # No address information was provided in the authorization request.
         | 
| 6079 | 
            +
                            NOT_CHECKED =
         | 
| 6080 | 
            +
                              T.let(
         | 
| 6081 | 
            +
                                :not_checked,
         | 
| 6082 | 
            +
                                Increase::CardPayment::Element::CardDecline::Verification::CardholderAddress::Result::TaggedSymbol
         | 
| 6083 | 
            +
                              )
         | 
| 6084 | 
            +
             | 
| 6085 | 
            +
                            # Postal code matches, but the street address does not match or was not provided.
         | 
| 6086 | 
            +
                            POSTAL_CODE_MATCH_ADDRESS_NO_MATCH =
         | 
| 6087 | 
            +
                              T.let(
         | 
| 6088 | 
            +
                                :postal_code_match_address_no_match,
         | 
| 6089 | 
            +
                                Increase::CardPayment::Element::CardDecline::Verification::CardholderAddress::Result::TaggedSymbol
         | 
| 6090 | 
            +
                              )
         | 
| 6091 | 
            +
             | 
| 6092 | 
            +
                            # Postal code does not match, but the street address matches or was not provided.
         | 
| 6093 | 
            +
                            POSTAL_CODE_NO_MATCH_ADDRESS_MATCH =
         | 
| 6094 | 
            +
                              T.let(
         | 
| 6095 | 
            +
                                :postal_code_no_match_address_match,
         | 
| 6096 | 
            +
                                Increase::CardPayment::Element::CardDecline::Verification::CardholderAddress::Result::TaggedSymbol
         | 
| 6097 | 
            +
                              )
         | 
| 6098 | 
            +
             | 
| 6099 | 
            +
                            # Postal code and street address match.
         | 
| 6100 | 
            +
                            MATCH =
         | 
| 6101 | 
            +
                              T.let(
         | 
| 6102 | 
            +
                                :match,
         | 
| 6103 | 
            +
                                Increase::CardPayment::Element::CardDecline::Verification::CardholderAddress::Result::TaggedSymbol
         | 
| 6104 | 
            +
                              )
         | 
| 6105 | 
            +
             | 
| 6106 | 
            +
                            # Postal code and street address do not match.
         | 
| 6107 | 
            +
                            NO_MATCH =
         | 
| 6108 | 
            +
                              T.let(
         | 
| 6109 | 
            +
                                :no_match,
         | 
| 6110 | 
            +
                                Increase::CardPayment::Element::CardDecline::Verification::CardholderAddress::Result::TaggedSymbol
         | 
| 6111 | 
            +
                              )
         | 
| 6112 | 
            +
             | 
| 6113 | 
            +
                            # Postal code matches, but the street address was not verified. (deprecated)
         | 
| 6114 | 
            +
                            POSTAL_CODE_MATCH_ADDRESS_NOT_CHECKED =
         | 
| 6115 | 
            +
                              T.let(
         | 
| 6116 | 
            +
                                :postal_code_match_address_not_checked,
         | 
| 6117 | 
            +
                                Increase::CardPayment::Element::CardDecline::Verification::CardholderAddress::Result::TaggedSymbol
         | 
| 6118 | 
            +
                              )
         | 
| 6119 | 
            +
             | 
| 6120 | 
            +
                            sig do
         | 
| 6121 | 
            +
                              override.returns(
         | 
| 6122 | 
            +
                                T::Array[
         | 
| 6123 | 
            +
                                  Increase::CardPayment::Element::CardDecline::Verification::CardholderAddress::Result::TaggedSymbol
         | 
| 6124 | 
            +
                                ]
         | 
| 6125 | 
            +
                              )
         | 
| 6126 | 
            +
                            end
         | 
| 6127 | 
            +
                            def self.values
         | 
| 6128 | 
            +
                            end
         | 
| 6129 | 
            +
                          end
         | 
| 6130 | 
            +
                        end
         | 
| 6131 | 
            +
                      end
         | 
| 6132 | 
            +
                    end
         | 
| 6133 | 
            +
             | 
| 6134 | 
            +
                    class CardFinancial < Increase::Internal::Type::BaseModel
         | 
| 6135 | 
            +
                      OrHash =
         | 
| 6136 | 
            +
                        T.type_alias do
         | 
| 6137 | 
            +
                          T.any(
         | 
| 6138 | 
            +
                            Increase::CardPayment::Element::CardFinancial,
         | 
| 6139 | 
            +
                            Increase::Internal::AnyHash
         | 
| 6140 | 
            +
                          )
         | 
| 6141 | 
            +
                        end
         | 
| 6142 | 
            +
             | 
| 6143 | 
            +
                      # The Card Financial identifier.
         | 
| 6144 | 
            +
                      sig { returns(String) }
         | 
| 6145 | 
            +
                      attr_accessor :id
         | 
| 6146 | 
            +
             | 
| 6147 | 
            +
                      # Whether this financial was approved by Increase, the card network through
         | 
| 6148 | 
            +
                      # stand-in processing, or the user through a real-time decision.
         | 
| 6149 | 
            +
                      sig do
         | 
| 6150 | 
            +
                        returns(
         | 
| 6151 | 
            +
                          Increase::CardPayment::Element::CardFinancial::Actioner::TaggedSymbol
         | 
| 6152 | 
            +
                        )
         | 
| 6153 | 
            +
                      end
         | 
| 6154 | 
            +
                      attr_accessor :actioner
         | 
| 6155 | 
            +
             | 
| 6156 | 
            +
                      # Additional amounts associated with the card authorization, such as ATM
         | 
| 6157 | 
            +
                      # surcharges fees. These are usually a subset of the `amount` field and are used
         | 
| 6158 | 
            +
                      # to provide more detailed information about the transaction.
         | 
| 6159 | 
            +
                      sig do
         | 
| 6160 | 
            +
                        returns(
         | 
| 6161 | 
            +
                          Increase::CardPayment::Element::CardFinancial::AdditionalAmounts
         | 
| 6162 | 
            +
                        )
         | 
| 6163 | 
            +
                      end
         | 
| 6164 | 
            +
                      attr_reader :additional_amounts
         | 
| 6165 | 
            +
             | 
| 6166 | 
            +
                      sig do
         | 
| 6167 | 
            +
                        params(
         | 
| 6168 | 
            +
                          additional_amounts:
         | 
| 6169 | 
            +
                            Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::OrHash
         | 
| 6170 | 
            +
                        ).void
         | 
| 6171 | 
            +
                      end
         | 
| 6172 | 
            +
                      attr_writer :additional_amounts
         | 
| 6173 | 
            +
             | 
| 6174 | 
            +
                      # The pending amount in the minor unit of the transaction's currency. For dollars,
         | 
| 6175 | 
            +
                      # for example, this is cents.
         | 
| 6176 | 
            +
                      sig { returns(Integer) }
         | 
| 6177 | 
            +
                      attr_accessor :amount
         | 
| 6178 | 
            +
             | 
| 6179 | 
            +
                      # The ID of the Card Payment this transaction belongs to.
         | 
| 6180 | 
            +
                      sig { returns(String) }
         | 
| 6181 | 
            +
                      attr_accessor :card_payment_id
         | 
| 6182 | 
            +
             | 
| 6183 | 
            +
                      # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the
         | 
| 6184 | 
            +
                      # transaction's currency.
         | 
| 6185 | 
            +
                      sig do
         | 
| 6186 | 
            +
                        returns(
         | 
| 6187 | 
            +
                          Increase::CardPayment::Element::CardFinancial::Currency::TaggedSymbol
         | 
| 6188 | 
            +
                        )
         | 
| 6189 | 
            +
                      end
         | 
| 6190 | 
            +
                      attr_accessor :currency
         | 
| 6191 | 
            +
             | 
| 6192 | 
            +
                      # If the authorization was made via a Digital Wallet Token (such as an Apple Pay
         | 
| 6193 | 
            +
                      # purchase), the identifier of the token that was used.
         | 
| 6194 | 
            +
                      sig { returns(T.nilable(String)) }
         | 
| 6195 | 
            +
                      attr_accessor :digital_wallet_token_id
         | 
| 6196 | 
            +
             | 
| 6197 | 
            +
                      # The direction describes the direction the funds will move, either from the
         | 
| 6198 | 
            +
                      # cardholder to the merchant or from the merchant to the cardholder.
         | 
| 6199 | 
            +
                      sig do
         | 
| 6200 | 
            +
                        returns(
         | 
| 6201 | 
            +
                          Increase::CardPayment::Element::CardFinancial::Direction::TaggedSymbol
         | 
| 6202 | 
            +
                        )
         | 
| 6203 | 
            +
                      end
         | 
| 6204 | 
            +
                      attr_accessor :direction
         | 
| 6205 | 
            +
             | 
| 6206 | 
            +
                      # The merchant identifier (commonly abbreviated as MID) of the merchant the card
         | 
| 6207 | 
            +
                      # is transacting with.
         | 
| 6208 | 
            +
                      sig { returns(String) }
         | 
| 6209 | 
            +
                      attr_accessor :merchant_acceptor_id
         | 
| 6210 | 
            +
             | 
| 6211 | 
            +
                      # The Merchant Category Code (commonly abbreviated as MCC) of the merchant the
         | 
| 6212 | 
            +
                      # card is transacting with.
         | 
| 6213 | 
            +
                      sig { returns(String) }
         | 
| 6214 | 
            +
                      attr_accessor :merchant_category_code
         | 
| 6215 | 
            +
             | 
| 6216 | 
            +
                      # The city the merchant resides in.
         | 
| 6217 | 
            +
                      sig { returns(T.nilable(String)) }
         | 
| 6218 | 
            +
                      attr_accessor :merchant_city
         | 
| 6219 | 
            +
             | 
| 6220 | 
            +
                      # The country the merchant resides in.
         | 
| 6221 | 
            +
                      sig { returns(String) }
         | 
| 6222 | 
            +
                      attr_accessor :merchant_country
         | 
| 6223 | 
            +
             | 
| 6224 | 
            +
                      # The merchant descriptor of the merchant the card is transacting with.
         | 
| 6225 | 
            +
                      sig { returns(String) }
         | 
| 6226 | 
            +
                      attr_accessor :merchant_descriptor
         | 
| 6227 | 
            +
             | 
| 6228 | 
            +
                      # The merchant's postal code. For US merchants this is either a 5-digit or 9-digit
         | 
| 6229 | 
            +
                      # ZIP code, where the first 5 and last 4 are separated by a dash.
         | 
| 6230 | 
            +
                      sig { returns(T.nilable(String)) }
         | 
| 6231 | 
            +
                      attr_accessor :merchant_postal_code
         | 
| 6232 | 
            +
             | 
| 6233 | 
            +
                      # The state the merchant resides in.
         | 
| 6234 | 
            +
                      sig { returns(T.nilable(String)) }
         | 
| 6235 | 
            +
                      attr_accessor :merchant_state
         | 
| 6236 | 
            +
             | 
| 6237 | 
            +
                      # Fields specific to the `network`.
         | 
| 6238 | 
            +
                      sig do
         | 
| 6239 | 
            +
                        returns(
         | 
| 6240 | 
            +
                          Increase::CardPayment::Element::CardFinancial::NetworkDetails
         | 
| 6241 | 
            +
                        )
         | 
| 6242 | 
            +
                      end
         | 
| 6243 | 
            +
                      attr_reader :network_details
         | 
| 6244 | 
            +
             | 
| 6245 | 
            +
                      sig do
         | 
| 6246 | 
            +
                        params(
         | 
| 6247 | 
            +
                          network_details:
         | 
| 6248 | 
            +
                            Increase::CardPayment::Element::CardFinancial::NetworkDetails::OrHash
         | 
| 6249 | 
            +
                        ).void
         | 
| 6250 | 
            +
                      end
         | 
| 6251 | 
            +
                      attr_writer :network_details
         | 
| 6252 | 
            +
             | 
| 6253 | 
            +
                      # Network-specific identifiers for a specific request or transaction.
         | 
| 6254 | 
            +
                      sig do
         | 
| 6255 | 
            +
                        returns(
         | 
| 6256 | 
            +
                          Increase::CardPayment::Element::CardFinancial::NetworkIdentifiers
         | 
| 6257 | 
            +
                        )
         | 
| 6258 | 
            +
                      end
         | 
| 6259 | 
            +
                      attr_reader :network_identifiers
         | 
| 6260 | 
            +
             | 
| 6261 | 
            +
                      sig do
         | 
| 6262 | 
            +
                        params(
         | 
| 6263 | 
            +
                          network_identifiers:
         | 
| 6264 | 
            +
                            Increase::CardPayment::Element::CardFinancial::NetworkIdentifiers::OrHash
         | 
| 6265 | 
            +
                        ).void
         | 
| 6266 | 
            +
                      end
         | 
| 6267 | 
            +
                      attr_writer :network_identifiers
         | 
| 6268 | 
            +
             | 
| 6269 | 
            +
                      # The risk score generated by the card network. For Visa this is the Visa Advanced
         | 
| 6270 | 
            +
                      # Authorization risk score, from 0 to 99, where 99 is the riskiest. For Pulse the
         | 
| 6271 | 
            +
                      # score is from 0 to 999, where 999 is the riskiest.
         | 
| 6272 | 
            +
                      sig { returns(T.nilable(Integer)) }
         | 
| 6273 | 
            +
                      attr_accessor :network_risk_score
         | 
| 6274 | 
            +
             | 
| 6275 | 
            +
                      # If the authorization was made in-person with a physical card, the Physical Card
         | 
| 6276 | 
            +
                      # that was used.
         | 
| 6277 | 
            +
                      sig { returns(T.nilable(String)) }
         | 
| 6278 | 
            +
                      attr_accessor :physical_card_id
         | 
| 6279 | 
            +
             | 
| 6280 | 
            +
                      # The pending amount in the minor unit of the transaction's presentment currency.
         | 
| 6281 | 
            +
                      sig { returns(Integer) }
         | 
| 6282 | 
            +
                      attr_accessor :presentment_amount
         | 
| 6283 | 
            +
             | 
| 6284 | 
            +
                      # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the
         | 
| 6285 | 
            +
                      # transaction's presentment currency.
         | 
| 6286 | 
            +
                      sig { returns(String) }
         | 
| 6287 | 
            +
                      attr_accessor :presentment_currency
         | 
| 6288 | 
            +
             | 
| 6289 | 
            +
                      # The processing category describes the intent behind the financial, such as
         | 
| 6290 | 
            +
                      # whether it was used for bill payments or an automatic fuel dispenser.
         | 
| 6291 | 
            +
                      sig do
         | 
| 6292 | 
            +
                        returns(
         | 
| 6293 | 
            +
                          Increase::CardPayment::Element::CardFinancial::ProcessingCategory::TaggedSymbol
         | 
| 6294 | 
            +
                        )
         | 
| 6295 | 
            +
                      end
         | 
| 6296 | 
            +
                      attr_accessor :processing_category
         | 
| 6297 | 
            +
             | 
| 6298 | 
            +
                      # The identifier of the Real-Time Decision sent to approve or decline this
         | 
| 6299 | 
            +
                      # transaction.
         | 
| 6300 | 
            +
                      sig { returns(T.nilable(String)) }
         | 
| 6301 | 
            +
                      attr_accessor :real_time_decision_id
         | 
| 6302 | 
            +
             | 
| 6303 | 
            +
                      # The terminal identifier (commonly abbreviated as TID) of the terminal the card
         | 
| 6304 | 
            +
                      # is transacting with.
         | 
| 6305 | 
            +
                      sig { returns(T.nilable(String)) }
         | 
| 6306 | 
            +
                      attr_accessor :terminal_id
         | 
| 6307 | 
            +
             | 
| 6308 | 
            +
                      # The identifier of the Transaction associated with this Transaction.
         | 
| 6309 | 
            +
                      sig { returns(String) }
         | 
| 6310 | 
            +
                      attr_accessor :transaction_id
         | 
| 6311 | 
            +
             | 
| 6312 | 
            +
                      # A constant representing the object's type. For this resource it will always be
         | 
| 6313 | 
            +
                      # `card_financial`.
         | 
| 6314 | 
            +
                      sig do
         | 
| 6315 | 
            +
                        returns(
         | 
| 6316 | 
            +
                          Increase::CardPayment::Element::CardFinancial::Type::TaggedSymbol
         | 
| 6317 | 
            +
                        )
         | 
| 6318 | 
            +
                      end
         | 
| 6319 | 
            +
                      attr_accessor :type
         | 
| 6320 | 
            +
             | 
| 6321 | 
            +
                      # Fields related to verification of cardholder-provided values.
         | 
| 6322 | 
            +
                      sig do
         | 
| 6323 | 
            +
                        returns(Increase::CardPayment::Element::CardFinancial::Verification)
         | 
| 6324 | 
            +
                      end
         | 
| 6325 | 
            +
                      attr_reader :verification
         | 
| 6326 | 
            +
             | 
| 6327 | 
            +
                      sig do
         | 
| 6328 | 
            +
                        params(
         | 
| 6329 | 
            +
                          verification:
         | 
| 6330 | 
            +
                            Increase::CardPayment::Element::CardFinancial::Verification::OrHash
         | 
| 6331 | 
            +
                        ).void
         | 
| 6332 | 
            +
                      end
         | 
| 6333 | 
            +
                      attr_writer :verification
         | 
| 6334 | 
            +
             | 
| 6335 | 
            +
                      # A Card Financial object. This field will be present in the JSON response if and
         | 
| 6336 | 
            +
                      # only if `category` is equal to `card_financial`. Card Financials are temporary
         | 
| 6337 | 
            +
                      # holds placed on a customers funds with the intent to later clear a transaction.
         | 
| 6338 | 
            +
                      sig do
         | 
| 6339 | 
            +
                        params(
         | 
| 6340 | 
            +
                          id: String,
         | 
| 6341 | 
            +
                          actioner:
         | 
| 6342 | 
            +
                            Increase::CardPayment::Element::CardFinancial::Actioner::OrSymbol,
         | 
| 6343 | 
            +
                          additional_amounts:
         | 
| 6344 | 
            +
                            Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::OrHash,
         | 
| 6345 | 
            +
                          amount: Integer,
         | 
| 6346 | 
            +
                          card_payment_id: String,
         | 
| 6347 | 
            +
                          currency:
         | 
| 6348 | 
            +
                            Increase::CardPayment::Element::CardFinancial::Currency::OrSymbol,
         | 
| 6349 | 
            +
                          digital_wallet_token_id: T.nilable(String),
         | 
| 6350 | 
            +
                          direction:
         | 
| 6351 | 
            +
                            Increase::CardPayment::Element::CardFinancial::Direction::OrSymbol,
         | 
| 6352 | 
            +
                          merchant_acceptor_id: String,
         | 
| 6353 | 
            +
                          merchant_category_code: String,
         | 
| 6354 | 
            +
                          merchant_city: T.nilable(String),
         | 
| 6355 | 
            +
                          merchant_country: String,
         | 
| 6356 | 
            +
                          merchant_descriptor: String,
         | 
| 6357 | 
            +
                          merchant_postal_code: T.nilable(String),
         | 
| 6358 | 
            +
                          merchant_state: T.nilable(String),
         | 
| 6359 | 
            +
                          network_details:
         | 
| 6360 | 
            +
                            Increase::CardPayment::Element::CardFinancial::NetworkDetails::OrHash,
         | 
| 6361 | 
            +
                          network_identifiers:
         | 
| 6362 | 
            +
                            Increase::CardPayment::Element::CardFinancial::NetworkIdentifiers::OrHash,
         | 
| 6363 | 
            +
                          network_risk_score: T.nilable(Integer),
         | 
| 6364 | 
            +
                          physical_card_id: T.nilable(String),
         | 
| 6365 | 
            +
                          presentment_amount: Integer,
         | 
| 6366 | 
            +
                          presentment_currency: String,
         | 
| 6367 | 
            +
                          processing_category:
         | 
| 6368 | 
            +
                            Increase::CardPayment::Element::CardFinancial::ProcessingCategory::OrSymbol,
         | 
| 6369 | 
            +
                          real_time_decision_id: T.nilable(String),
         | 
| 6370 | 
            +
                          terminal_id: T.nilable(String),
         | 
| 6371 | 
            +
                          transaction_id: String,
         | 
| 6372 | 
            +
                          type:
         | 
| 6373 | 
            +
                            Increase::CardPayment::Element::CardFinancial::Type::OrSymbol,
         | 
| 6374 | 
            +
                          verification:
         | 
| 6375 | 
            +
                            Increase::CardPayment::Element::CardFinancial::Verification::OrHash
         | 
| 6376 | 
            +
                        ).returns(T.attached_class)
         | 
| 6377 | 
            +
                      end
         | 
| 6378 | 
            +
                      def self.new(
         | 
| 6379 | 
            +
                        # The Card Financial identifier.
         | 
| 6380 | 
            +
                        id:,
         | 
| 6381 | 
            +
                        # Whether this financial was approved by Increase, the card network through
         | 
| 6382 | 
            +
                        # stand-in processing, or the user through a real-time decision.
         | 
| 6383 | 
            +
                        actioner:,
         | 
| 6384 | 
            +
                        # Additional amounts associated with the card authorization, such as ATM
         | 
| 6385 | 
            +
                        # surcharges fees. These are usually a subset of the `amount` field and are used
         | 
| 6386 | 
            +
                        # to provide more detailed information about the transaction.
         | 
| 6387 | 
            +
                        additional_amounts:,
         | 
| 6388 | 
            +
                        # The pending amount in the minor unit of the transaction's currency. For dollars,
         | 
| 6389 | 
            +
                        # for example, this is cents.
         | 
| 6390 | 
            +
                        amount:,
         | 
| 6391 | 
            +
                        # The ID of the Card Payment this transaction belongs to.
         | 
| 6392 | 
            +
                        card_payment_id:,
         | 
| 6393 | 
            +
                        # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the
         | 
| 6394 | 
            +
                        # transaction's currency.
         | 
| 6395 | 
            +
                        currency:,
         | 
| 6396 | 
            +
                        # If the authorization was made via a Digital Wallet Token (such as an Apple Pay
         | 
| 6397 | 
            +
                        # purchase), the identifier of the token that was used.
         | 
| 6398 | 
            +
                        digital_wallet_token_id:,
         | 
| 6399 | 
            +
                        # The direction describes the direction the funds will move, either from the
         | 
| 6400 | 
            +
                        # cardholder to the merchant or from the merchant to the cardholder.
         | 
| 6401 | 
            +
                        direction:,
         | 
| 6402 | 
            +
                        # The merchant identifier (commonly abbreviated as MID) of the merchant the card
         | 
| 6403 | 
            +
                        # is transacting with.
         | 
| 6404 | 
            +
                        merchant_acceptor_id:,
         | 
| 6405 | 
            +
                        # The Merchant Category Code (commonly abbreviated as MCC) of the merchant the
         | 
| 6406 | 
            +
                        # card is transacting with.
         | 
| 6407 | 
            +
                        merchant_category_code:,
         | 
| 6408 | 
            +
                        # The city the merchant resides in.
         | 
| 6409 | 
            +
                        merchant_city:,
         | 
| 6410 | 
            +
                        # The country the merchant resides in.
         | 
| 6411 | 
            +
                        merchant_country:,
         | 
| 6412 | 
            +
                        # The merchant descriptor of the merchant the card is transacting with.
         | 
| 6413 | 
            +
                        merchant_descriptor:,
         | 
| 6414 | 
            +
                        # The merchant's postal code. For US merchants this is either a 5-digit or 9-digit
         | 
| 6415 | 
            +
                        # ZIP code, where the first 5 and last 4 are separated by a dash.
         | 
| 6416 | 
            +
                        merchant_postal_code:,
         | 
| 6417 | 
            +
                        # The state the merchant resides in.
         | 
| 6418 | 
            +
                        merchant_state:,
         | 
| 6419 | 
            +
                        # Fields specific to the `network`.
         | 
| 6420 | 
            +
                        network_details:,
         | 
| 6421 | 
            +
                        # Network-specific identifiers for a specific request or transaction.
         | 
| 6422 | 
            +
                        network_identifiers:,
         | 
| 6423 | 
            +
                        # The risk score generated by the card network. For Visa this is the Visa Advanced
         | 
| 6424 | 
            +
                        # Authorization risk score, from 0 to 99, where 99 is the riskiest. For Pulse the
         | 
| 6425 | 
            +
                        # score is from 0 to 999, where 999 is the riskiest.
         | 
| 6426 | 
            +
                        network_risk_score:,
         | 
| 6427 | 
            +
                        # If the authorization was made in-person with a physical card, the Physical Card
         | 
| 6428 | 
            +
                        # that was used.
         | 
| 6429 | 
            +
                        physical_card_id:,
         | 
| 6430 | 
            +
                        # The pending amount in the minor unit of the transaction's presentment currency.
         | 
| 6431 | 
            +
                        presentment_amount:,
         | 
| 6432 | 
            +
                        # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the
         | 
| 6433 | 
            +
                        # transaction's presentment currency.
         | 
| 6434 | 
            +
                        presentment_currency:,
         | 
| 6435 | 
            +
                        # The processing category describes the intent behind the financial, such as
         | 
| 6436 | 
            +
                        # whether it was used for bill payments or an automatic fuel dispenser.
         | 
| 6437 | 
            +
                        processing_category:,
         | 
| 6438 | 
            +
                        # The identifier of the Real-Time Decision sent to approve or decline this
         | 
| 6439 | 
            +
                        # transaction.
         | 
| 6440 | 
            +
                        real_time_decision_id:,
         | 
| 6441 | 
            +
                        # The terminal identifier (commonly abbreviated as TID) of the terminal the card
         | 
| 6442 | 
            +
                        # is transacting with.
         | 
| 6443 | 
            +
                        terminal_id:,
         | 
| 6444 | 
            +
                        # The identifier of the Transaction associated with this Transaction.
         | 
| 6445 | 
            +
                        transaction_id:,
         | 
| 6446 | 
            +
                        # A constant representing the object's type. For this resource it will always be
         | 
| 6447 | 
            +
                        # `card_financial`.
         | 
| 6448 | 
            +
                        type:,
         | 
| 6449 | 
            +
                        # Fields related to verification of cardholder-provided values.
         | 
| 6450 | 
            +
                        verification:
         | 
| 6451 | 
            +
                      )
         | 
| 6452 | 
            +
                      end
         | 
| 6453 | 
            +
             | 
| 6454 | 
            +
                      sig do
         | 
| 6455 | 
            +
                        override.returns(
         | 
| 6456 | 
            +
                          {
         | 
| 6457 | 
            +
                            id: String,
         | 
| 6458 | 
            +
                            actioner:
         | 
| 6459 | 
            +
                              Increase::CardPayment::Element::CardFinancial::Actioner::TaggedSymbol,
         | 
| 6460 | 
            +
                            additional_amounts:
         | 
| 6461 | 
            +
                              Increase::CardPayment::Element::CardFinancial::AdditionalAmounts,
         | 
| 6462 | 
            +
                            amount: Integer,
         | 
| 6463 | 
            +
                            card_payment_id: String,
         | 
| 6464 | 
            +
                            currency:
         | 
| 6465 | 
            +
                              Increase::CardPayment::Element::CardFinancial::Currency::TaggedSymbol,
         | 
| 6466 | 
            +
                            digital_wallet_token_id: T.nilable(String),
         | 
| 6467 | 
            +
                            direction:
         | 
| 6468 | 
            +
                              Increase::CardPayment::Element::CardFinancial::Direction::TaggedSymbol,
         | 
| 6469 | 
            +
                            merchant_acceptor_id: String,
         | 
| 6470 | 
            +
                            merchant_category_code: String,
         | 
| 6471 | 
            +
                            merchant_city: T.nilable(String),
         | 
| 6472 | 
            +
                            merchant_country: String,
         | 
| 6473 | 
            +
                            merchant_descriptor: String,
         | 
| 6474 | 
            +
                            merchant_postal_code: T.nilable(String),
         | 
| 6475 | 
            +
                            merchant_state: T.nilable(String),
         | 
| 6476 | 
            +
                            network_details:
         | 
| 6477 | 
            +
                              Increase::CardPayment::Element::CardFinancial::NetworkDetails,
         | 
| 6478 | 
            +
                            network_identifiers:
         | 
| 6479 | 
            +
                              Increase::CardPayment::Element::CardFinancial::NetworkIdentifiers,
         | 
| 6480 | 
            +
                            network_risk_score: T.nilable(Integer),
         | 
| 6481 | 
            +
                            physical_card_id: T.nilable(String),
         | 
| 6482 | 
            +
                            presentment_amount: Integer,
         | 
| 6483 | 
            +
                            presentment_currency: String,
         | 
| 6484 | 
            +
                            processing_category:
         | 
| 6485 | 
            +
                              Increase::CardPayment::Element::CardFinancial::ProcessingCategory::TaggedSymbol,
         | 
| 6486 | 
            +
                            real_time_decision_id: T.nilable(String),
         | 
| 6487 | 
            +
                            terminal_id: T.nilable(String),
         | 
| 6488 | 
            +
                            transaction_id: String,
         | 
| 6489 | 
            +
                            type:
         | 
| 6490 | 
            +
                              Increase::CardPayment::Element::CardFinancial::Type::TaggedSymbol,
         | 
| 6491 | 
            +
                            verification:
         | 
| 6492 | 
            +
                              Increase::CardPayment::Element::CardFinancial::Verification
         | 
| 6493 | 
            +
                          }
         | 
| 6494 | 
            +
                        )
         | 
| 6495 | 
            +
                      end
         | 
| 6496 | 
            +
                      def to_hash
         | 
| 6497 | 
            +
                      end
         | 
| 6498 | 
            +
             | 
| 6499 | 
            +
                      # Whether this financial was approved by Increase, the card network through
         | 
| 6500 | 
            +
                      # stand-in processing, or the user through a real-time decision.
         | 
| 6501 | 
            +
                      module Actioner
         | 
| 6502 | 
            +
                        extend Increase::Internal::Type::Enum
         | 
| 6503 | 
            +
             | 
| 6504 | 
            +
                        TaggedSymbol =
         | 
| 6505 | 
            +
                          T.type_alias do
         | 
| 6506 | 
            +
                            T.all(
         | 
| 6507 | 
            +
                              Symbol,
         | 
| 6508 | 
            +
                              Increase::CardPayment::Element::CardFinancial::Actioner
         | 
| 6509 | 
            +
                            )
         | 
| 6510 | 
            +
                          end
         | 
| 6511 | 
            +
                        OrSymbol = T.type_alias { T.any(Symbol, String) }
         | 
| 6512 | 
            +
             | 
| 6513 | 
            +
                        # This object was actioned by the user through a real-time decision.
         | 
| 6514 | 
            +
                        USER =
         | 
| 6515 | 
            +
                          T.let(
         | 
| 6516 | 
            +
                            :user,
         | 
| 6517 | 
            +
                            Increase::CardPayment::Element::CardFinancial::Actioner::TaggedSymbol
         | 
| 6518 | 
            +
                          )
         | 
| 6519 | 
            +
             | 
| 6520 | 
            +
                        # This object was actioned by Increase without user intervention.
         | 
| 6521 | 
            +
                        INCREASE =
         | 
| 6522 | 
            +
                          T.let(
         | 
| 6523 | 
            +
                            :increase,
         | 
| 6524 | 
            +
                            Increase::CardPayment::Element::CardFinancial::Actioner::TaggedSymbol
         | 
| 6525 | 
            +
                          )
         | 
| 6526 | 
            +
             | 
| 6527 | 
            +
                        # This object was actioned by the network, through stand-in processing.
         | 
| 6528 | 
            +
                        NETWORK =
         | 
| 6529 | 
            +
                          T.let(
         | 
| 6530 | 
            +
                            :network,
         | 
| 6531 | 
            +
                            Increase::CardPayment::Element::CardFinancial::Actioner::TaggedSymbol
         | 
| 6532 | 
            +
                          )
         | 
| 6533 | 
            +
             | 
| 6534 | 
            +
                        sig do
         | 
| 6535 | 
            +
                          override.returns(
         | 
| 6536 | 
            +
                            T::Array[
         | 
| 6537 | 
            +
                              Increase::CardPayment::Element::CardFinancial::Actioner::TaggedSymbol
         | 
| 6538 | 
            +
                            ]
         | 
| 6539 | 
            +
                          )
         | 
| 6540 | 
            +
                        end
         | 
| 6541 | 
            +
                        def self.values
         | 
| 6542 | 
            +
                        end
         | 
| 6543 | 
            +
                      end
         | 
| 6544 | 
            +
             | 
| 6545 | 
            +
                      class AdditionalAmounts < Increase::Internal::Type::BaseModel
         | 
| 6546 | 
            +
                        OrHash =
         | 
| 6547 | 
            +
                          T.type_alias do
         | 
| 6548 | 
            +
                            T.any(
         | 
| 6549 | 
            +
                              Increase::CardPayment::Element::CardFinancial::AdditionalAmounts,
         | 
| 6550 | 
            +
                              Increase::Internal::AnyHash
         | 
| 6551 | 
            +
                            )
         | 
| 6552 | 
            +
                          end
         | 
| 6553 | 
            +
             | 
| 6554 | 
            +
                        # The part of this transaction amount that was for clinic-related services.
         | 
| 6555 | 
            +
                        sig do
         | 
| 6556 | 
            +
                          returns(
         | 
| 6557 | 
            +
                            T.nilable(
         | 
| 6558 | 
            +
                              Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Clinic
         | 
| 6559 | 
            +
                            )
         | 
| 6560 | 
            +
                          )
         | 
| 6561 | 
            +
                        end
         | 
| 6562 | 
            +
                        attr_reader :clinic
         | 
| 6563 | 
            +
             | 
| 6564 | 
            +
                        sig do
         | 
| 6565 | 
            +
                          params(
         | 
| 6566 | 
            +
                            clinic:
         | 
| 6567 | 
            +
                              T.nilable(
         | 
| 6568 | 
            +
                                Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Clinic::OrHash
         | 
| 6569 | 
            +
                              )
         | 
| 6570 | 
            +
                          ).void
         | 
| 6571 | 
            +
                        end
         | 
| 6572 | 
            +
                        attr_writer :clinic
         | 
| 6573 | 
            +
             | 
| 6574 | 
            +
                        # The part of this transaction amount that was for dental-related services.
         | 
| 6575 | 
            +
                        sig do
         | 
| 6576 | 
            +
                          returns(
         | 
| 6577 | 
            +
                            T.nilable(
         | 
| 6578 | 
            +
                              Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Dental
         | 
| 6579 | 
            +
                            )
         | 
| 6580 | 
            +
                          )
         | 
| 6581 | 
            +
                        end
         | 
| 6582 | 
            +
                        attr_reader :dental
         | 
| 6583 | 
            +
             | 
| 6584 | 
            +
                        sig do
         | 
| 6585 | 
            +
                          params(
         | 
| 6586 | 
            +
                            dental:
         | 
| 6587 | 
            +
                              T.nilable(
         | 
| 6588 | 
            +
                                Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Dental::OrHash
         | 
| 6589 | 
            +
                              )
         | 
| 6590 | 
            +
                          ).void
         | 
| 6591 | 
            +
                        end
         | 
| 6592 | 
            +
                        attr_writer :dental
         | 
| 6593 | 
            +
             | 
| 6594 | 
            +
                        # The original pre-authorized amount.
         | 
| 6595 | 
            +
                        sig do
         | 
| 6596 | 
            +
                          returns(
         | 
| 6597 | 
            +
                            T.nilable(
         | 
| 6598 | 
            +
                              Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Original
         | 
| 6599 | 
            +
                            )
         | 
| 6600 | 
            +
                          )
         | 
| 6601 | 
            +
                        end
         | 
| 6602 | 
            +
                        attr_reader :original
         | 
| 6603 | 
            +
             | 
| 6604 | 
            +
                        sig do
         | 
| 6605 | 
            +
                          params(
         | 
| 6606 | 
            +
                            original:
         | 
| 6607 | 
            +
                              T.nilable(
         | 
| 6608 | 
            +
                                Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Original::OrHash
         | 
| 6609 | 
            +
                              )
         | 
| 6610 | 
            +
                          ).void
         | 
| 6611 | 
            +
                        end
         | 
| 6612 | 
            +
                        attr_writer :original
         | 
| 6613 | 
            +
             | 
| 6614 | 
            +
                        # The part of this transaction amount that was for healthcare prescriptions.
         | 
| 6615 | 
            +
                        sig do
         | 
| 6616 | 
            +
                          returns(
         | 
| 6617 | 
            +
                            T.nilable(
         | 
| 6618 | 
            +
                              Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Prescription
         | 
| 6619 | 
            +
                            )
         | 
| 6620 | 
            +
                          )
         | 
| 6621 | 
            +
                        end
         | 
| 6622 | 
            +
                        attr_reader :prescription
         | 
| 6623 | 
            +
             | 
| 6624 | 
            +
                        sig do
         | 
| 6625 | 
            +
                          params(
         | 
| 6626 | 
            +
                            prescription:
         | 
| 6627 | 
            +
                              T.nilable(
         | 
| 6628 | 
            +
                                Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Prescription::OrHash
         | 
| 6629 | 
            +
                              )
         | 
| 6630 | 
            +
                          ).void
         | 
| 6631 | 
            +
                        end
         | 
| 6632 | 
            +
                        attr_writer :prescription
         | 
| 6633 | 
            +
             | 
| 6634 | 
            +
                        # The surcharge amount charged for this transaction by the merchant.
         | 
| 6635 | 
            +
                        sig do
         | 
| 6636 | 
            +
                          returns(
         | 
| 6637 | 
            +
                            T.nilable(
         | 
| 6638 | 
            +
                              Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Surcharge
         | 
| 6639 | 
            +
                            )
         | 
| 6640 | 
            +
                          )
         | 
| 6641 | 
            +
                        end
         | 
| 6642 | 
            +
                        attr_reader :surcharge
         | 
| 6643 | 
            +
             | 
| 6644 | 
            +
                        sig do
         | 
| 6645 | 
            +
                          params(
         | 
| 6646 | 
            +
                            surcharge:
         | 
| 6647 | 
            +
                              T.nilable(
         | 
| 6648 | 
            +
                                Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Surcharge::OrHash
         | 
| 6649 | 
            +
                              )
         | 
| 6650 | 
            +
                          ).void
         | 
| 6651 | 
            +
                        end
         | 
| 6652 | 
            +
                        attr_writer :surcharge
         | 
| 6653 | 
            +
             | 
| 6654 | 
            +
                        # The total amount of a series of incremental authorizations, optionally provided.
         | 
| 6655 | 
            +
                        sig do
         | 
| 6656 | 
            +
                          returns(
         | 
| 6657 | 
            +
                            T.nilable(
         | 
| 6658 | 
            +
                              Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::TotalCumulative
         | 
| 6659 | 
            +
                            )
         | 
| 6660 | 
            +
                          )
         | 
| 6661 | 
            +
                        end
         | 
| 6662 | 
            +
                        attr_reader :total_cumulative
         | 
| 6663 | 
            +
             | 
| 6664 | 
            +
                        sig do
         | 
| 6665 | 
            +
                          params(
         | 
| 6666 | 
            +
                            total_cumulative:
         | 
| 6667 | 
            +
                              T.nilable(
         | 
| 6668 | 
            +
                                Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::TotalCumulative::OrHash
         | 
| 6669 | 
            +
                              )
         | 
| 6670 | 
            +
                          ).void
         | 
| 6671 | 
            +
                        end
         | 
| 6672 | 
            +
                        attr_writer :total_cumulative
         | 
| 6673 | 
            +
             | 
| 6674 | 
            +
                        # The total amount of healthcare-related additional amounts.
         | 
| 6675 | 
            +
                        sig do
         | 
| 6676 | 
            +
                          returns(
         | 
| 6677 | 
            +
                            T.nilable(
         | 
| 6678 | 
            +
                              Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::TotalHealthcare
         | 
| 6679 | 
            +
                            )
         | 
| 6680 | 
            +
                          )
         | 
| 6681 | 
            +
                        end
         | 
| 6682 | 
            +
                        attr_reader :total_healthcare
         | 
| 6683 | 
            +
             | 
| 6684 | 
            +
                        sig do
         | 
| 6685 | 
            +
                          params(
         | 
| 6686 | 
            +
                            total_healthcare:
         | 
| 6687 | 
            +
                              T.nilable(
         | 
| 6688 | 
            +
                                Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::TotalHealthcare::OrHash
         | 
| 6689 | 
            +
                              )
         | 
| 6690 | 
            +
                          ).void
         | 
| 6691 | 
            +
                        end
         | 
| 6692 | 
            +
                        attr_writer :total_healthcare
         | 
| 6693 | 
            +
             | 
| 6694 | 
            +
                        # The part of this transaction amount that was for transit-related services.
         | 
| 6695 | 
            +
                        sig do
         | 
| 6696 | 
            +
                          returns(
         | 
| 6697 | 
            +
                            T.nilable(
         | 
| 6698 | 
            +
                              Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Transit
         | 
| 6699 | 
            +
                            )
         | 
| 6700 | 
            +
                          )
         | 
| 6701 | 
            +
                        end
         | 
| 6702 | 
            +
                        attr_reader :transit
         | 
| 6703 | 
            +
             | 
| 6704 | 
            +
                        sig do
         | 
| 6705 | 
            +
                          params(
         | 
| 6706 | 
            +
                            transit:
         | 
| 6707 | 
            +
                              T.nilable(
         | 
| 6708 | 
            +
                                Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Transit::OrHash
         | 
| 6709 | 
            +
                              )
         | 
| 6710 | 
            +
                          ).void
         | 
| 6711 | 
            +
                        end
         | 
| 6712 | 
            +
                        attr_writer :transit
         | 
| 6713 | 
            +
             | 
| 6714 | 
            +
                        # An unknown additional amount.
         | 
| 6715 | 
            +
                        sig do
         | 
| 6716 | 
            +
                          returns(
         | 
| 6717 | 
            +
                            T.nilable(
         | 
| 6718 | 
            +
                              Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Unknown
         | 
| 6719 | 
            +
                            )
         | 
| 6720 | 
            +
                          )
         | 
| 6721 | 
            +
                        end
         | 
| 6722 | 
            +
                        attr_reader :unknown
         | 
| 6723 | 
            +
             | 
| 6724 | 
            +
                        sig do
         | 
| 6725 | 
            +
                          params(
         | 
| 6726 | 
            +
                            unknown:
         | 
| 6727 | 
            +
                              T.nilable(
         | 
| 6728 | 
            +
                                Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Unknown::OrHash
         | 
| 6729 | 
            +
                              )
         | 
| 6730 | 
            +
                          ).void
         | 
| 6731 | 
            +
                        end
         | 
| 6732 | 
            +
                        attr_writer :unknown
         | 
| 6733 | 
            +
             | 
| 6734 | 
            +
                        # The part of this transaction amount that was for vision-related services.
         | 
| 6735 | 
            +
                        sig do
         | 
| 6736 | 
            +
                          returns(
         | 
| 6737 | 
            +
                            T.nilable(
         | 
| 6738 | 
            +
                              Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Vision
         | 
| 6739 | 
            +
                            )
         | 
| 6740 | 
            +
                          )
         | 
| 6741 | 
            +
                        end
         | 
| 6742 | 
            +
                        attr_reader :vision
         | 
| 6743 | 
            +
             | 
| 6744 | 
            +
                        sig do
         | 
| 6745 | 
            +
                          params(
         | 
| 6746 | 
            +
                            vision:
         | 
| 6747 | 
            +
                              T.nilable(
         | 
| 6748 | 
            +
                                Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Vision::OrHash
         | 
| 6749 | 
            +
                              )
         | 
| 6750 | 
            +
                          ).void
         | 
| 6751 | 
            +
                        end
         | 
| 6752 | 
            +
                        attr_writer :vision
         | 
| 6753 | 
            +
             | 
| 6754 | 
            +
                        # Additional amounts associated with the card authorization, such as ATM
         | 
| 6755 | 
            +
                        # surcharges fees. These are usually a subset of the `amount` field and are used
         | 
| 6756 | 
            +
                        # to provide more detailed information about the transaction.
         | 
| 6757 | 
            +
                        sig do
         | 
| 6758 | 
            +
                          params(
         | 
| 6759 | 
            +
                            clinic:
         | 
| 6760 | 
            +
                              T.nilable(
         | 
| 6761 | 
            +
                                Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Clinic::OrHash
         | 
| 6762 | 
            +
                              ),
         | 
| 6763 | 
            +
                            dental:
         | 
| 6764 | 
            +
                              T.nilable(
         | 
| 6765 | 
            +
                                Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Dental::OrHash
         | 
| 6766 | 
            +
                              ),
         | 
| 6767 | 
            +
                            original:
         | 
| 6768 | 
            +
                              T.nilable(
         | 
| 6769 | 
            +
                                Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Original::OrHash
         | 
| 6770 | 
            +
                              ),
         | 
| 6771 | 
            +
                            prescription:
         | 
| 6772 | 
            +
                              T.nilable(
         | 
| 6773 | 
            +
                                Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Prescription::OrHash
         | 
| 6774 | 
            +
                              ),
         | 
| 6775 | 
            +
                            surcharge:
         | 
| 6776 | 
            +
                              T.nilable(
         | 
| 6777 | 
            +
                                Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Surcharge::OrHash
         | 
| 6778 | 
            +
                              ),
         | 
| 6779 | 
            +
                            total_cumulative:
         | 
| 6780 | 
            +
                              T.nilable(
         | 
| 6781 | 
            +
                                Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::TotalCumulative::OrHash
         | 
| 6782 | 
            +
                              ),
         | 
| 6783 | 
            +
                            total_healthcare:
         | 
| 6784 | 
            +
                              T.nilable(
         | 
| 6785 | 
            +
                                Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::TotalHealthcare::OrHash
         | 
| 6786 | 
            +
                              ),
         | 
| 6787 | 
            +
                            transit:
         | 
| 6788 | 
            +
                              T.nilable(
         | 
| 6789 | 
            +
                                Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Transit::OrHash
         | 
| 6790 | 
            +
                              ),
         | 
| 6791 | 
            +
                            unknown:
         | 
| 6792 | 
            +
                              T.nilable(
         | 
| 6793 | 
            +
                                Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Unknown::OrHash
         | 
| 6794 | 
            +
                              ),
         | 
| 6795 | 
            +
                            vision:
         | 
| 6796 | 
            +
                              T.nilable(
         | 
| 6797 | 
            +
                                Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Vision::OrHash
         | 
| 6798 | 
            +
                              )
         | 
| 6799 | 
            +
                          ).returns(T.attached_class)
         | 
| 6800 | 
            +
                        end
         | 
| 6801 | 
            +
                        def self.new(
         | 
| 6802 | 
            +
                          # The part of this transaction amount that was for clinic-related services.
         | 
| 6803 | 
            +
                          clinic:,
         | 
| 6804 | 
            +
                          # The part of this transaction amount that was for dental-related services.
         | 
| 6805 | 
            +
                          dental:,
         | 
| 6806 | 
            +
                          # The original pre-authorized amount.
         | 
| 6807 | 
            +
                          original:,
         | 
| 6808 | 
            +
                          # The part of this transaction amount that was for healthcare prescriptions.
         | 
| 6809 | 
            +
                          prescription:,
         | 
| 6810 | 
            +
                          # The surcharge amount charged for this transaction by the merchant.
         | 
| 6811 | 
            +
                          surcharge:,
         | 
| 6812 | 
            +
                          # The total amount of a series of incremental authorizations, optionally provided.
         | 
| 6813 | 
            +
                          total_cumulative:,
         | 
| 6814 | 
            +
                          # The total amount of healthcare-related additional amounts.
         | 
| 6815 | 
            +
                          total_healthcare:,
         | 
| 6816 | 
            +
                          # The part of this transaction amount that was for transit-related services.
         | 
| 6817 | 
            +
                          transit:,
         | 
| 6818 | 
            +
                          # An unknown additional amount.
         | 
| 6819 | 
            +
                          unknown:,
         | 
| 6820 | 
            +
                          # The part of this transaction amount that was for vision-related services.
         | 
| 6821 | 
            +
                          vision:
         | 
| 6822 | 
            +
                        )
         | 
| 6823 | 
            +
                        end
         | 
| 6824 | 
            +
             | 
| 6825 | 
            +
                        sig do
         | 
| 6826 | 
            +
                          override.returns(
         | 
| 6827 | 
            +
                            {
         | 
| 6828 | 
            +
                              clinic:
         | 
| 6829 | 
            +
                                T.nilable(
         | 
| 6830 | 
            +
                                  Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Clinic
         | 
| 6831 | 
            +
                                ),
         | 
| 6832 | 
            +
                              dental:
         | 
| 6833 | 
            +
                                T.nilable(
         | 
| 6834 | 
            +
                                  Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Dental
         | 
| 6835 | 
            +
                                ),
         | 
| 6836 | 
            +
                              original:
         | 
| 6837 | 
            +
                                T.nilable(
         | 
| 6838 | 
            +
                                  Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Original
         | 
| 6839 | 
            +
                                ),
         | 
| 6840 | 
            +
                              prescription:
         | 
| 6841 | 
            +
                                T.nilable(
         | 
| 6842 | 
            +
                                  Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Prescription
         | 
| 6843 | 
            +
                                ),
         | 
| 6844 | 
            +
                              surcharge:
         | 
| 6845 | 
            +
                                T.nilable(
         | 
| 6846 | 
            +
                                  Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Surcharge
         | 
| 6847 | 
            +
                                ),
         | 
| 6848 | 
            +
                              total_cumulative:
         | 
| 6849 | 
            +
                                T.nilable(
         | 
| 6850 | 
            +
                                  Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::TotalCumulative
         | 
| 6851 | 
            +
                                ),
         | 
| 6852 | 
            +
                              total_healthcare:
         | 
| 6853 | 
            +
                                T.nilable(
         | 
| 6854 | 
            +
                                  Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::TotalHealthcare
         | 
| 6855 | 
            +
                                ),
         | 
| 6856 | 
            +
                              transit:
         | 
| 6857 | 
            +
                                T.nilable(
         | 
| 6858 | 
            +
                                  Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Transit
         | 
| 6859 | 
            +
                                ),
         | 
| 6860 | 
            +
                              unknown:
         | 
| 6861 | 
            +
                                T.nilable(
         | 
| 6862 | 
            +
                                  Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Unknown
         | 
| 6863 | 
            +
                                ),
         | 
| 6864 | 
            +
                              vision:
         | 
| 6865 | 
            +
                                T.nilable(
         | 
| 6866 | 
            +
                                  Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Vision
         | 
| 6867 | 
            +
                                )
         | 
| 6868 | 
            +
                            }
         | 
| 6869 | 
            +
                          )
         | 
| 6870 | 
            +
                        end
         | 
| 6871 | 
            +
                        def to_hash
         | 
| 6872 | 
            +
                        end
         | 
| 6873 | 
            +
             | 
| 6874 | 
            +
                        class Clinic < Increase::Internal::Type::BaseModel
         | 
| 6875 | 
            +
                          OrHash =
         | 
| 6876 | 
            +
                            T.type_alias do
         | 
| 6877 | 
            +
                              T.any(
         | 
| 6878 | 
            +
                                Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Clinic,
         | 
| 6879 | 
            +
                                Increase::Internal::AnyHash
         | 
| 6880 | 
            +
                              )
         | 
| 6881 | 
            +
                            end
         | 
| 6882 | 
            +
             | 
| 6883 | 
            +
                          # The amount in minor units of the `currency` field. The amount is positive if it
         | 
| 6884 | 
            +
                          # is added to the amount (such as an ATM surcharge fee) and negative if it is
         | 
| 6885 | 
            +
                          # subtracted from the amount (such as a discount).
         | 
| 6886 | 
            +
                          sig { returns(Integer) }
         | 
| 6887 | 
            +
                          attr_accessor :amount
         | 
| 6888 | 
            +
             | 
| 6889 | 
            +
                          # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
         | 
| 6890 | 
            +
                          # amount's currency.
         | 
| 6891 | 
            +
                          sig { returns(String) }
         | 
| 6892 | 
            +
                          attr_accessor :currency
         | 
| 6893 | 
            +
             | 
| 6894 | 
            +
                          # The part of this transaction amount that was for clinic-related services.
         | 
| 6895 | 
            +
                          sig do
         | 
| 6896 | 
            +
                            params(amount: Integer, currency: String).returns(
         | 
| 6897 | 
            +
                              T.attached_class
         | 
| 6898 | 
            +
                            )
         | 
| 6899 | 
            +
                          end
         | 
| 6900 | 
            +
                          def self.new(
         | 
| 6901 | 
            +
                            # The amount in minor units of the `currency` field. The amount is positive if it
         | 
| 6902 | 
            +
                            # is added to the amount (such as an ATM surcharge fee) and negative if it is
         | 
| 6903 | 
            +
                            # subtracted from the amount (such as a discount).
         | 
| 6904 | 
            +
                            amount:,
         | 
| 6905 | 
            +
                            # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
         | 
| 6906 | 
            +
                            # amount's currency.
         | 
| 6907 | 
            +
                            currency:
         | 
| 6908 | 
            +
                          )
         | 
| 6909 | 
            +
                          end
         | 
| 6910 | 
            +
             | 
| 6911 | 
            +
                          sig { override.returns({ amount: Integer, currency: String }) }
         | 
| 6912 | 
            +
                          def to_hash
         | 
| 6913 | 
            +
                          end
         | 
| 6914 | 
            +
                        end
         | 
| 6915 | 
            +
             | 
| 6916 | 
            +
                        class Dental < Increase::Internal::Type::BaseModel
         | 
| 6917 | 
            +
                          OrHash =
         | 
| 6918 | 
            +
                            T.type_alias do
         | 
| 6919 | 
            +
                              T.any(
         | 
| 6920 | 
            +
                                Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Dental,
         | 
| 6921 | 
            +
                                Increase::Internal::AnyHash
         | 
| 6922 | 
            +
                              )
         | 
| 6923 | 
            +
                            end
         | 
| 6924 | 
            +
             | 
| 6925 | 
            +
                          # The amount in minor units of the `currency` field. The amount is positive if it
         | 
| 6926 | 
            +
                          # is added to the amount (such as an ATM surcharge fee) and negative if it is
         | 
| 6927 | 
            +
                          # subtracted from the amount (such as a discount).
         | 
| 6928 | 
            +
                          sig { returns(Integer) }
         | 
| 6929 | 
            +
                          attr_accessor :amount
         | 
| 6930 | 
            +
             | 
| 6931 | 
            +
                          # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
         | 
| 6932 | 
            +
                          # amount's currency.
         | 
| 6933 | 
            +
                          sig { returns(String) }
         | 
| 6934 | 
            +
                          attr_accessor :currency
         | 
| 6935 | 
            +
             | 
| 6936 | 
            +
                          # The part of this transaction amount that was for dental-related services.
         | 
| 6937 | 
            +
                          sig do
         | 
| 6938 | 
            +
                            params(amount: Integer, currency: String).returns(
         | 
| 6939 | 
            +
                              T.attached_class
         | 
| 6940 | 
            +
                            )
         | 
| 6941 | 
            +
                          end
         | 
| 6942 | 
            +
                          def self.new(
         | 
| 6943 | 
            +
                            # The amount in minor units of the `currency` field. The amount is positive if it
         | 
| 6944 | 
            +
                            # is added to the amount (such as an ATM surcharge fee) and negative if it is
         | 
| 6945 | 
            +
                            # subtracted from the amount (such as a discount).
         | 
| 6946 | 
            +
                            amount:,
         | 
| 6947 | 
            +
                            # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
         | 
| 6948 | 
            +
                            # amount's currency.
         | 
| 6949 | 
            +
                            currency:
         | 
| 6950 | 
            +
                          )
         | 
| 6951 | 
            +
                          end
         | 
| 6952 | 
            +
             | 
| 6953 | 
            +
                          sig { override.returns({ amount: Integer, currency: String }) }
         | 
| 6954 | 
            +
                          def to_hash
         | 
| 6955 | 
            +
                          end
         | 
| 6956 | 
            +
                        end
         | 
| 6957 | 
            +
             | 
| 6958 | 
            +
                        class Original < Increase::Internal::Type::BaseModel
         | 
| 6959 | 
            +
                          OrHash =
         | 
| 6960 | 
            +
                            T.type_alias do
         | 
| 6961 | 
            +
                              T.any(
         | 
| 6962 | 
            +
                                Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Original,
         | 
| 6963 | 
            +
                                Increase::Internal::AnyHash
         | 
| 6964 | 
            +
                              )
         | 
| 6965 | 
            +
                            end
         | 
| 6966 | 
            +
             | 
| 6967 | 
            +
                          # The amount in minor units of the `currency` field. The amount is positive if it
         | 
| 6968 | 
            +
                          # is added to the amount (such as an ATM surcharge fee) and negative if it is
         | 
| 6969 | 
            +
                          # subtracted from the amount (such as a discount).
         | 
| 6970 | 
            +
                          sig { returns(Integer) }
         | 
| 6971 | 
            +
                          attr_accessor :amount
         | 
| 6972 | 
            +
             | 
| 6973 | 
            +
                          # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
         | 
| 6974 | 
            +
                          # amount's currency.
         | 
| 6975 | 
            +
                          sig { returns(String) }
         | 
| 6976 | 
            +
                          attr_accessor :currency
         | 
| 6977 | 
            +
             | 
| 6978 | 
            +
                          # The original pre-authorized amount.
         | 
| 6979 | 
            +
                          sig do
         | 
| 6980 | 
            +
                            params(amount: Integer, currency: String).returns(
         | 
| 6981 | 
            +
                              T.attached_class
         | 
| 6982 | 
            +
                            )
         | 
| 6983 | 
            +
                          end
         | 
| 6984 | 
            +
                          def self.new(
         | 
| 6985 | 
            +
                            # The amount in minor units of the `currency` field. The amount is positive if it
         | 
| 6986 | 
            +
                            # is added to the amount (such as an ATM surcharge fee) and negative if it is
         | 
| 6987 | 
            +
                            # subtracted from the amount (such as a discount).
         | 
| 6988 | 
            +
                            amount:,
         | 
| 6989 | 
            +
                            # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
         | 
| 6990 | 
            +
                            # amount's currency.
         | 
| 6991 | 
            +
                            currency:
         | 
| 6992 | 
            +
                          )
         | 
| 6993 | 
            +
                          end
         | 
| 6994 | 
            +
             | 
| 6995 | 
            +
                          sig { override.returns({ amount: Integer, currency: String }) }
         | 
| 6996 | 
            +
                          def to_hash
         | 
| 6997 | 
            +
                          end
         | 
| 6998 | 
            +
                        end
         | 
| 6999 | 
            +
             | 
| 7000 | 
            +
                        class Prescription < Increase::Internal::Type::BaseModel
         | 
| 7001 | 
            +
                          OrHash =
         | 
| 7002 | 
            +
                            T.type_alias do
         | 
| 7003 | 
            +
                              T.any(
         | 
| 7004 | 
            +
                                Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Prescription,
         | 
| 7005 | 
            +
                                Increase::Internal::AnyHash
         | 
| 7006 | 
            +
                              )
         | 
| 7007 | 
            +
                            end
         | 
| 7008 | 
            +
             | 
| 7009 | 
            +
                          # The amount in minor units of the `currency` field. The amount is positive if it
         | 
| 7010 | 
            +
                          # is added to the amount (such as an ATM surcharge fee) and negative if it is
         | 
| 7011 | 
            +
                          # subtracted from the amount (such as a discount).
         | 
| 7012 | 
            +
                          sig { returns(Integer) }
         | 
| 7013 | 
            +
                          attr_accessor :amount
         | 
| 7014 | 
            +
             | 
| 7015 | 
            +
                          # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
         | 
| 7016 | 
            +
                          # amount's currency.
         | 
| 7017 | 
            +
                          sig { returns(String) }
         | 
| 7018 | 
            +
                          attr_accessor :currency
         | 
| 7019 | 
            +
             | 
| 7020 | 
            +
                          # The part of this transaction amount that was for healthcare prescriptions.
         | 
| 7021 | 
            +
                          sig do
         | 
| 7022 | 
            +
                            params(amount: Integer, currency: String).returns(
         | 
| 7023 | 
            +
                              T.attached_class
         | 
| 7024 | 
            +
                            )
         | 
| 7025 | 
            +
                          end
         | 
| 7026 | 
            +
                          def self.new(
         | 
| 7027 | 
            +
                            # The amount in minor units of the `currency` field. The amount is positive if it
         | 
| 7028 | 
            +
                            # is added to the amount (such as an ATM surcharge fee) and negative if it is
         | 
| 7029 | 
            +
                            # subtracted from the amount (such as a discount).
         | 
| 7030 | 
            +
                            amount:,
         | 
| 7031 | 
            +
                            # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
         | 
| 7032 | 
            +
                            # amount's currency.
         | 
| 7033 | 
            +
                            currency:
         | 
| 7034 | 
            +
                          )
         | 
| 7035 | 
            +
                          end
         | 
| 7036 | 
            +
             | 
| 7037 | 
            +
                          sig { override.returns({ amount: Integer, currency: String }) }
         | 
| 7038 | 
            +
                          def to_hash
         | 
| 7039 | 
            +
                          end
         | 
| 7040 | 
            +
                        end
         | 
| 7041 | 
            +
             | 
| 7042 | 
            +
                        class Surcharge < Increase::Internal::Type::BaseModel
         | 
| 7043 | 
            +
                          OrHash =
         | 
| 7044 | 
            +
                            T.type_alias do
         | 
| 7045 | 
            +
                              T.any(
         | 
| 7046 | 
            +
                                Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Surcharge,
         | 
| 7047 | 
            +
                                Increase::Internal::AnyHash
         | 
| 7048 | 
            +
                              )
         | 
| 7049 | 
            +
                            end
         | 
| 7050 | 
            +
             | 
| 7051 | 
            +
                          # The amount in minor units of the `currency` field. The amount is positive if it
         | 
| 7052 | 
            +
                          # is added to the amount (such as an ATM surcharge fee) and negative if it is
         | 
| 7053 | 
            +
                          # subtracted from the amount (such as a discount).
         | 
| 7054 | 
            +
                          sig { returns(Integer) }
         | 
| 7055 | 
            +
                          attr_accessor :amount
         | 
| 7056 | 
            +
             | 
| 7057 | 
            +
                          # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
         | 
| 7058 | 
            +
                          # amount's currency.
         | 
| 7059 | 
            +
                          sig { returns(String) }
         | 
| 7060 | 
            +
                          attr_accessor :currency
         | 
| 7061 | 
            +
             | 
| 7062 | 
            +
                          # The surcharge amount charged for this transaction by the merchant.
         | 
| 7063 | 
            +
                          sig do
         | 
| 7064 | 
            +
                            params(amount: Integer, currency: String).returns(
         | 
| 7065 | 
            +
                              T.attached_class
         | 
| 7066 | 
            +
                            )
         | 
| 7067 | 
            +
                          end
         | 
| 7068 | 
            +
                          def self.new(
         | 
| 7069 | 
            +
                            # The amount in minor units of the `currency` field. The amount is positive if it
         | 
| 7070 | 
            +
                            # is added to the amount (such as an ATM surcharge fee) and negative if it is
         | 
| 7071 | 
            +
                            # subtracted from the amount (such as a discount).
         | 
| 7072 | 
            +
                            amount:,
         | 
| 7073 | 
            +
                            # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
         | 
| 7074 | 
            +
                            # amount's currency.
         | 
| 7075 | 
            +
                            currency:
         | 
| 7076 | 
            +
                          )
         | 
| 7077 | 
            +
                          end
         | 
| 7078 | 
            +
             | 
| 7079 | 
            +
                          sig { override.returns({ amount: Integer, currency: String }) }
         | 
| 7080 | 
            +
                          def to_hash
         | 
| 7081 | 
            +
                          end
         | 
| 7082 | 
            +
                        end
         | 
| 7083 | 
            +
             | 
| 7084 | 
            +
                        class TotalCumulative < Increase::Internal::Type::BaseModel
         | 
| 7085 | 
            +
                          OrHash =
         | 
| 7086 | 
            +
                            T.type_alias do
         | 
| 7087 | 
            +
                              T.any(
         | 
| 7088 | 
            +
                                Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::TotalCumulative,
         | 
| 7089 | 
            +
                                Increase::Internal::AnyHash
         | 
| 7090 | 
            +
                              )
         | 
| 7091 | 
            +
                            end
         | 
| 7092 | 
            +
             | 
| 7093 | 
            +
                          # The amount in minor units of the `currency` field. The amount is positive if it
         | 
| 7094 | 
            +
                          # is added to the amount (such as an ATM surcharge fee) and negative if it is
         | 
| 7095 | 
            +
                          # subtracted from the amount (such as a discount).
         | 
| 7096 | 
            +
                          sig { returns(Integer) }
         | 
| 7097 | 
            +
                          attr_accessor :amount
         | 
| 7098 | 
            +
             | 
| 7099 | 
            +
                          # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
         | 
| 7100 | 
            +
                          # amount's currency.
         | 
| 7101 | 
            +
                          sig { returns(String) }
         | 
| 7102 | 
            +
                          attr_accessor :currency
         | 
| 7103 | 
            +
             | 
| 7104 | 
            +
                          # The total amount of a series of incremental authorizations, optionally provided.
         | 
| 7105 | 
            +
                          sig do
         | 
| 7106 | 
            +
                            params(amount: Integer, currency: String).returns(
         | 
| 7107 | 
            +
                              T.attached_class
         | 
| 7108 | 
            +
                            )
         | 
| 7109 | 
            +
                          end
         | 
| 7110 | 
            +
                          def self.new(
         | 
| 7111 | 
            +
                            # The amount in minor units of the `currency` field. The amount is positive if it
         | 
| 7112 | 
            +
                            # is added to the amount (such as an ATM surcharge fee) and negative if it is
         | 
| 7113 | 
            +
                            # subtracted from the amount (such as a discount).
         | 
| 7114 | 
            +
                            amount:,
         | 
| 7115 | 
            +
                            # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
         | 
| 7116 | 
            +
                            # amount's currency.
         | 
| 7117 | 
            +
                            currency:
         | 
| 7118 | 
            +
                          )
         | 
| 7119 | 
            +
                          end
         | 
| 7120 | 
            +
             | 
| 7121 | 
            +
                          sig { override.returns({ amount: Integer, currency: String }) }
         | 
| 7122 | 
            +
                          def to_hash
         | 
| 7123 | 
            +
                          end
         | 
| 7124 | 
            +
                        end
         | 
| 7125 | 
            +
             | 
| 7126 | 
            +
                        class TotalHealthcare < Increase::Internal::Type::BaseModel
         | 
| 7127 | 
            +
                          OrHash =
         | 
| 7128 | 
            +
                            T.type_alias do
         | 
| 7129 | 
            +
                              T.any(
         | 
| 7130 | 
            +
                                Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::TotalHealthcare,
         | 
| 7131 | 
            +
                                Increase::Internal::AnyHash
         | 
| 7132 | 
            +
                              )
         | 
| 7133 | 
            +
                            end
         | 
| 7134 | 
            +
             | 
| 7135 | 
            +
                          # The amount in minor units of the `currency` field. The amount is positive if it
         | 
| 7136 | 
            +
                          # is added to the amount (such as an ATM surcharge fee) and negative if it is
         | 
| 7137 | 
            +
                          # subtracted from the amount (such as a discount).
         | 
| 7138 | 
            +
                          sig { returns(Integer) }
         | 
| 7139 | 
            +
                          attr_accessor :amount
         | 
| 7140 | 
            +
             | 
| 7141 | 
            +
                          # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
         | 
| 7142 | 
            +
                          # amount's currency.
         | 
| 7143 | 
            +
                          sig { returns(String) }
         | 
| 7144 | 
            +
                          attr_accessor :currency
         | 
| 7145 | 
            +
             | 
| 7146 | 
            +
                          # The total amount of healthcare-related additional amounts.
         | 
| 7147 | 
            +
                          sig do
         | 
| 7148 | 
            +
                            params(amount: Integer, currency: String).returns(
         | 
| 7149 | 
            +
                              T.attached_class
         | 
| 7150 | 
            +
                            )
         | 
| 7151 | 
            +
                          end
         | 
| 7152 | 
            +
                          def self.new(
         | 
| 7153 | 
            +
                            # The amount in minor units of the `currency` field. The amount is positive if it
         | 
| 7154 | 
            +
                            # is added to the amount (such as an ATM surcharge fee) and negative if it is
         | 
| 7155 | 
            +
                            # subtracted from the amount (such as a discount).
         | 
| 7156 | 
            +
                            amount:,
         | 
| 7157 | 
            +
                            # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
         | 
| 7158 | 
            +
                            # amount's currency.
         | 
| 7159 | 
            +
                            currency:
         | 
| 7160 | 
            +
                          )
         | 
| 7161 | 
            +
                          end
         | 
| 7162 | 
            +
             | 
| 7163 | 
            +
                          sig { override.returns({ amount: Integer, currency: String }) }
         | 
| 7164 | 
            +
                          def to_hash
         | 
| 7165 | 
            +
                          end
         | 
| 7166 | 
            +
                        end
         | 
| 7167 | 
            +
             | 
| 7168 | 
            +
                        class Transit < Increase::Internal::Type::BaseModel
         | 
| 7169 | 
            +
                          OrHash =
         | 
| 7170 | 
            +
                            T.type_alias do
         | 
| 7171 | 
            +
                              T.any(
         | 
| 7172 | 
            +
                                Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Transit,
         | 
| 7173 | 
            +
                                Increase::Internal::AnyHash
         | 
| 7174 | 
            +
                              )
         | 
| 7175 | 
            +
                            end
         | 
| 7176 | 
            +
             | 
| 7177 | 
            +
                          # The amount in minor units of the `currency` field. The amount is positive if it
         | 
| 7178 | 
            +
                          # is added to the amount (such as an ATM surcharge fee) and negative if it is
         | 
| 7179 | 
            +
                          # subtracted from the amount (such as a discount).
         | 
| 7180 | 
            +
                          sig { returns(Integer) }
         | 
| 7181 | 
            +
                          attr_accessor :amount
         | 
| 7182 | 
            +
             | 
| 7183 | 
            +
                          # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
         | 
| 7184 | 
            +
                          # amount's currency.
         | 
| 7185 | 
            +
                          sig { returns(String) }
         | 
| 7186 | 
            +
                          attr_accessor :currency
         | 
| 7187 | 
            +
             | 
| 7188 | 
            +
                          # The part of this transaction amount that was for transit-related services.
         | 
| 7189 | 
            +
                          sig do
         | 
| 7190 | 
            +
                            params(amount: Integer, currency: String).returns(
         | 
| 7191 | 
            +
                              T.attached_class
         | 
| 7192 | 
            +
                            )
         | 
| 7193 | 
            +
                          end
         | 
| 7194 | 
            +
                          def self.new(
         | 
| 7195 | 
            +
                            # The amount in minor units of the `currency` field. The amount is positive if it
         | 
| 7196 | 
            +
                            # is added to the amount (such as an ATM surcharge fee) and negative if it is
         | 
| 7197 | 
            +
                            # subtracted from the amount (such as a discount).
         | 
| 7198 | 
            +
                            amount:,
         | 
| 7199 | 
            +
                            # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
         | 
| 7200 | 
            +
                            # amount's currency.
         | 
| 7201 | 
            +
                            currency:
         | 
| 7202 | 
            +
                          )
         | 
| 7203 | 
            +
                          end
         | 
| 7204 | 
            +
             | 
| 7205 | 
            +
                          sig { override.returns({ amount: Integer, currency: String }) }
         | 
| 7206 | 
            +
                          def to_hash
         | 
| 7207 | 
            +
                          end
         | 
| 7208 | 
            +
                        end
         | 
| 7209 | 
            +
             | 
| 7210 | 
            +
                        class Unknown < Increase::Internal::Type::BaseModel
         | 
| 7211 | 
            +
                          OrHash =
         | 
| 7212 | 
            +
                            T.type_alias do
         | 
| 7213 | 
            +
                              T.any(
         | 
| 7214 | 
            +
                                Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Unknown,
         | 
| 7215 | 
            +
                                Increase::Internal::AnyHash
         | 
| 7216 | 
            +
                              )
         | 
| 7217 | 
            +
                            end
         | 
| 7218 | 
            +
             | 
| 7219 | 
            +
                          # The amount in minor units of the `currency` field. The amount is positive if it
         | 
| 7220 | 
            +
                          # is added to the amount (such as an ATM surcharge fee) and negative if it is
         | 
| 7221 | 
            +
                          # subtracted from the amount (such as a discount).
         | 
| 7222 | 
            +
                          sig { returns(Integer) }
         | 
| 7223 | 
            +
                          attr_accessor :amount
         | 
| 7224 | 
            +
             | 
| 7225 | 
            +
                          # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
         | 
| 7226 | 
            +
                          # amount's currency.
         | 
| 7227 | 
            +
                          sig { returns(String) }
         | 
| 7228 | 
            +
                          attr_accessor :currency
         | 
| 7229 | 
            +
             | 
| 7230 | 
            +
                          # An unknown additional amount.
         | 
| 7231 | 
            +
                          sig do
         | 
| 7232 | 
            +
                            params(amount: Integer, currency: String).returns(
         | 
| 7233 | 
            +
                              T.attached_class
         | 
| 7234 | 
            +
                            )
         | 
| 7235 | 
            +
                          end
         | 
| 7236 | 
            +
                          def self.new(
         | 
| 7237 | 
            +
                            # The amount in minor units of the `currency` field. The amount is positive if it
         | 
| 7238 | 
            +
                            # is added to the amount (such as an ATM surcharge fee) and negative if it is
         | 
| 7239 | 
            +
                            # subtracted from the amount (such as a discount).
         | 
| 7240 | 
            +
                            amount:,
         | 
| 7241 | 
            +
                            # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
         | 
| 7242 | 
            +
                            # amount's currency.
         | 
| 7243 | 
            +
                            currency:
         | 
| 7244 | 
            +
                          )
         | 
| 7245 | 
            +
                          end
         | 
| 7246 | 
            +
             | 
| 7247 | 
            +
                          sig { override.returns({ amount: Integer, currency: String }) }
         | 
| 7248 | 
            +
                          def to_hash
         | 
| 7249 | 
            +
                          end
         | 
| 7250 | 
            +
                        end
         | 
| 7251 | 
            +
             | 
| 7252 | 
            +
                        class Vision < Increase::Internal::Type::BaseModel
         | 
| 7253 | 
            +
                          OrHash =
         | 
| 7254 | 
            +
                            T.type_alias do
         | 
| 7255 | 
            +
                              T.any(
         | 
| 7256 | 
            +
                                Increase::CardPayment::Element::CardFinancial::AdditionalAmounts::Vision,
         | 
| 7257 | 
            +
                                Increase::Internal::AnyHash
         | 
| 7258 | 
            +
                              )
         | 
| 7259 | 
            +
                            end
         | 
| 7260 | 
            +
             | 
| 7261 | 
            +
                          # The amount in minor units of the `currency` field. The amount is positive if it
         | 
| 7262 | 
            +
                          # is added to the amount (such as an ATM surcharge fee) and negative if it is
         | 
| 7263 | 
            +
                          # subtracted from the amount (such as a discount).
         | 
| 7264 | 
            +
                          sig { returns(Integer) }
         | 
| 7265 | 
            +
                          attr_accessor :amount
         | 
| 7266 | 
            +
             | 
| 7267 | 
            +
                          # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
         | 
| 7268 | 
            +
                          # amount's currency.
         | 
| 7269 | 
            +
                          sig { returns(String) }
         | 
| 7270 | 
            +
                          attr_accessor :currency
         | 
| 7271 | 
            +
             | 
| 7272 | 
            +
                          # The part of this transaction amount that was for vision-related services.
         | 
| 7273 | 
            +
                          sig do
         | 
| 7274 | 
            +
                            params(amount: Integer, currency: String).returns(
         | 
| 7275 | 
            +
                              T.attached_class
         | 
| 7276 | 
            +
                            )
         | 
| 7277 | 
            +
                          end
         | 
| 7278 | 
            +
                          def self.new(
         | 
| 7279 | 
            +
                            # The amount in minor units of the `currency` field. The amount is positive if it
         | 
| 7280 | 
            +
                            # is added to the amount (such as an ATM surcharge fee) and negative if it is
         | 
| 7281 | 
            +
                            # subtracted from the amount (such as a discount).
         | 
| 7282 | 
            +
                            amount:,
         | 
| 7283 | 
            +
                            # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
         | 
| 7284 | 
            +
                            # amount's currency.
         | 
| 7285 | 
            +
                            currency:
         | 
| 7286 | 
            +
                          )
         | 
| 7287 | 
            +
                          end
         | 
| 7288 | 
            +
             | 
| 7289 | 
            +
                          sig { override.returns({ amount: Integer, currency: String }) }
         | 
| 7290 | 
            +
                          def to_hash
         | 
| 7291 | 
            +
                          end
         | 
| 7292 | 
            +
                        end
         | 
| 7293 | 
            +
                      end
         | 
| 7294 | 
            +
             | 
| 7295 | 
            +
                      # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the
         | 
| 7296 | 
            +
                      # transaction's currency.
         | 
| 7297 | 
            +
                      module Currency
         | 
| 7298 | 
            +
                        extend Increase::Internal::Type::Enum
         | 
| 7299 | 
            +
             | 
| 7300 | 
            +
                        TaggedSymbol =
         | 
| 7301 | 
            +
                          T.type_alias do
         | 
| 7302 | 
            +
                            T.all(
         | 
| 7303 | 
            +
                              Symbol,
         | 
| 7304 | 
            +
                              Increase::CardPayment::Element::CardFinancial::Currency
         | 
| 7305 | 
            +
                            )
         | 
| 7306 | 
            +
                          end
         | 
| 7307 | 
            +
                        OrSymbol = T.type_alias { T.any(Symbol, String) }
         | 
| 7308 | 
            +
             | 
| 7309 | 
            +
                        # Canadian Dollar (CAD)
         | 
| 7310 | 
            +
                        CAD =
         | 
| 7311 | 
            +
                          T.let(
         | 
| 7312 | 
            +
                            :CAD,
         | 
| 7313 | 
            +
                            Increase::CardPayment::Element::CardFinancial::Currency::TaggedSymbol
         | 
| 7314 | 
            +
                          )
         | 
| 7315 | 
            +
             | 
| 7316 | 
            +
                        # Swiss Franc (CHF)
         | 
| 7317 | 
            +
                        CHF =
         | 
| 7318 | 
            +
                          T.let(
         | 
| 7319 | 
            +
                            :CHF,
         | 
| 7320 | 
            +
                            Increase::CardPayment::Element::CardFinancial::Currency::TaggedSymbol
         | 
| 7321 | 
            +
                          )
         | 
| 7322 | 
            +
             | 
| 7323 | 
            +
                        # Euro (EUR)
         | 
| 7324 | 
            +
                        EUR =
         | 
| 7325 | 
            +
                          T.let(
         | 
| 7326 | 
            +
                            :EUR,
         | 
| 7327 | 
            +
                            Increase::CardPayment::Element::CardFinancial::Currency::TaggedSymbol
         | 
| 7328 | 
            +
                          )
         | 
| 7329 | 
            +
             | 
| 7330 | 
            +
                        # British Pound (GBP)
         | 
| 7331 | 
            +
                        GBP =
         | 
| 7332 | 
            +
                          T.let(
         | 
| 7333 | 
            +
                            :GBP,
         | 
| 7334 | 
            +
                            Increase::CardPayment::Element::CardFinancial::Currency::TaggedSymbol
         | 
| 7335 | 
            +
                          )
         | 
| 7336 | 
            +
             | 
| 7337 | 
            +
                        # Japanese Yen (JPY)
         | 
| 7338 | 
            +
                        JPY =
         | 
| 7339 | 
            +
                          T.let(
         | 
| 7340 | 
            +
                            :JPY,
         | 
| 7341 | 
            +
                            Increase::CardPayment::Element::CardFinancial::Currency::TaggedSymbol
         | 
| 7342 | 
            +
                          )
         | 
| 7343 | 
            +
             | 
| 7344 | 
            +
                        # US Dollar (USD)
         | 
| 7345 | 
            +
                        USD =
         | 
| 7346 | 
            +
                          T.let(
         | 
| 7347 | 
            +
                            :USD,
         | 
| 7348 | 
            +
                            Increase::CardPayment::Element::CardFinancial::Currency::TaggedSymbol
         | 
| 7349 | 
            +
                          )
         | 
| 7350 | 
            +
             | 
| 7351 | 
            +
                        sig do
         | 
| 7352 | 
            +
                          override.returns(
         | 
| 7353 | 
            +
                            T::Array[
         | 
| 7354 | 
            +
                              Increase::CardPayment::Element::CardFinancial::Currency::TaggedSymbol
         | 
| 7355 | 
            +
                            ]
         | 
| 7356 | 
            +
                          )
         | 
| 7357 | 
            +
                        end
         | 
| 7358 | 
            +
                        def self.values
         | 
| 7359 | 
            +
                        end
         | 
| 7360 | 
            +
                      end
         | 
| 7361 | 
            +
             | 
| 7362 | 
            +
                      # The direction describes the direction the funds will move, either from the
         | 
| 7363 | 
            +
                      # cardholder to the merchant or from the merchant to the cardholder.
         | 
| 7364 | 
            +
                      module Direction
         | 
| 7365 | 
            +
                        extend Increase::Internal::Type::Enum
         | 
| 7366 | 
            +
             | 
| 7367 | 
            +
                        TaggedSymbol =
         | 
| 7368 | 
            +
                          T.type_alias do
         | 
| 7369 | 
            +
                            T.all(
         | 
| 7370 | 
            +
                              Symbol,
         | 
| 7371 | 
            +
                              Increase::CardPayment::Element::CardFinancial::Direction
         | 
| 7372 | 
            +
                            )
         | 
| 7373 | 
            +
                          end
         | 
| 7374 | 
            +
                        OrSymbol = T.type_alias { T.any(Symbol, String) }
         | 
| 7375 | 
            +
             | 
| 7376 | 
            +
                        # A regular card authorization where funds are debited from the cardholder.
         | 
| 7377 | 
            +
                        SETTLEMENT =
         | 
| 7378 | 
            +
                          T.let(
         | 
| 7379 | 
            +
                            :settlement,
         | 
| 7380 | 
            +
                            Increase::CardPayment::Element::CardFinancial::Direction::TaggedSymbol
         | 
| 7381 | 
            +
                          )
         | 
| 7382 | 
            +
             | 
| 7383 | 
            +
                        # A refund card authorization, sometimes referred to as a credit voucher authorization, where funds are credited to the cardholder.
         | 
| 7384 | 
            +
                        REFUND =
         | 
| 7385 | 
            +
                          T.let(
         | 
| 7386 | 
            +
                            :refund,
         | 
| 7387 | 
            +
                            Increase::CardPayment::Element::CardFinancial::Direction::TaggedSymbol
         | 
| 7388 | 
            +
                          )
         | 
| 7389 | 
            +
             | 
| 7390 | 
            +
                        sig do
         | 
| 7391 | 
            +
                          override.returns(
         | 
| 7392 | 
            +
                            T::Array[
         | 
| 7393 | 
            +
                              Increase::CardPayment::Element::CardFinancial::Direction::TaggedSymbol
         | 
| 7394 | 
            +
                            ]
         | 
| 7395 | 
            +
                          )
         | 
| 7396 | 
            +
                        end
         | 
| 7397 | 
            +
                        def self.values
         | 
| 7398 | 
            +
                        end
         | 
| 7399 | 
            +
                      end
         | 
| 7400 | 
            +
             | 
| 7401 | 
            +
                      class NetworkDetails < Increase::Internal::Type::BaseModel
         | 
| 7402 | 
            +
                        OrHash =
         | 
| 7403 | 
            +
                          T.type_alias do
         | 
| 7404 | 
            +
                            T.any(
         | 
| 7405 | 
            +
                              Increase::CardPayment::Element::CardFinancial::NetworkDetails,
         | 
| 7406 | 
            +
                              Increase::Internal::AnyHash
         | 
| 7407 | 
            +
                            )
         | 
| 7408 | 
            +
                          end
         | 
| 7409 | 
            +
             | 
| 7410 | 
            +
                        # The payment network used to process this card authorization.
         | 
| 7411 | 
            +
                        sig do
         | 
| 7412 | 
            +
                          returns(
         | 
| 7413 | 
            +
                            Increase::CardPayment::Element::CardFinancial::NetworkDetails::Category::TaggedSymbol
         | 
| 7414 | 
            +
                          )
         | 
| 7415 | 
            +
                        end
         | 
| 7416 | 
            +
                        attr_accessor :category
         | 
| 7417 | 
            +
             | 
| 7418 | 
            +
                        # Fields specific to the `pulse` network.
         | 
| 7419 | 
            +
                        sig { returns(T.nilable(T.anything)) }
         | 
| 7420 | 
            +
                        attr_accessor :pulse
         | 
| 7421 | 
            +
             | 
| 7422 | 
            +
                        # Fields specific to the `visa` network.
         | 
| 7423 | 
            +
                        sig do
         | 
| 7424 | 
            +
                          returns(
         | 
| 7425 | 
            +
                            T.nilable(
         | 
| 7426 | 
            +
                              Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa
         | 
| 7427 | 
            +
                            )
         | 
| 7428 | 
            +
                          )
         | 
| 7429 | 
            +
                        end
         | 
| 7430 | 
            +
                        attr_reader :visa
         | 
| 7431 | 
            +
             | 
| 7432 | 
            +
                        sig do
         | 
| 7433 | 
            +
                          params(
         | 
| 7434 | 
            +
                            visa:
         | 
| 7435 | 
            +
                              T.nilable(
         | 
| 7436 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::OrHash
         | 
| 7437 | 
            +
                              )
         | 
| 7438 | 
            +
                          ).void
         | 
| 7439 | 
            +
                        end
         | 
| 7440 | 
            +
                        attr_writer :visa
         | 
| 7441 | 
            +
             | 
| 7442 | 
            +
                        # Fields specific to the `network`.
         | 
| 7443 | 
            +
                        sig do
         | 
| 7444 | 
            +
                          params(
         | 
| 7445 | 
            +
                            category:
         | 
| 7446 | 
            +
                              Increase::CardPayment::Element::CardFinancial::NetworkDetails::Category::OrSymbol,
         | 
| 7447 | 
            +
                            pulse: T.nilable(T.anything),
         | 
| 7448 | 
            +
                            visa:
         | 
| 7449 | 
            +
                              T.nilable(
         | 
| 7450 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::OrHash
         | 
| 7451 | 
            +
                              )
         | 
| 7452 | 
            +
                          ).returns(T.attached_class)
         | 
| 7453 | 
            +
                        end
         | 
| 7454 | 
            +
                        def self.new(
         | 
| 7455 | 
            +
                          # The payment network used to process this card authorization.
         | 
| 7456 | 
            +
                          category:,
         | 
| 7457 | 
            +
                          # Fields specific to the `pulse` network.
         | 
| 7458 | 
            +
                          pulse:,
         | 
| 7459 | 
            +
                          # Fields specific to the `visa` network.
         | 
| 7460 | 
            +
                          visa:
         | 
| 7461 | 
            +
                        )
         | 
| 7462 | 
            +
                        end
         | 
| 7463 | 
            +
             | 
| 7464 | 
            +
                        sig do
         | 
| 7465 | 
            +
                          override.returns(
         | 
| 7466 | 
            +
                            {
         | 
| 7467 | 
            +
                              category:
         | 
| 7468 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Category::TaggedSymbol,
         | 
| 7469 | 
            +
                              pulse: T.nilable(T.anything),
         | 
| 7470 | 
            +
                              visa:
         | 
| 7471 | 
            +
                                T.nilable(
         | 
| 7472 | 
            +
                                  Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa
         | 
| 7473 | 
            +
                                )
         | 
| 7474 | 
            +
                            }
         | 
| 7475 | 
            +
                          )
         | 
| 7476 | 
            +
                        end
         | 
| 7477 | 
            +
                        def to_hash
         | 
| 7478 | 
            +
                        end
         | 
| 7479 | 
            +
             | 
| 7480 | 
            +
                        # The payment network used to process this card authorization.
         | 
| 7481 | 
            +
                        module Category
         | 
| 7482 | 
            +
                          extend Increase::Internal::Type::Enum
         | 
| 7483 | 
            +
             | 
| 7484 | 
            +
                          TaggedSymbol =
         | 
| 7485 | 
            +
                            T.type_alias do
         | 
| 7486 | 
            +
                              T.all(
         | 
| 7487 | 
            +
                                Symbol,
         | 
| 7488 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Category
         | 
| 7489 | 
            +
                              )
         | 
| 7490 | 
            +
                            end
         | 
| 7491 | 
            +
                          OrSymbol = T.type_alias { T.any(Symbol, String) }
         | 
| 7492 | 
            +
             | 
| 7493 | 
            +
                          # Visa
         | 
| 7494 | 
            +
                          VISA =
         | 
| 7495 | 
            +
                            T.let(
         | 
| 7496 | 
            +
                              :visa,
         | 
| 7497 | 
            +
                              Increase::CardPayment::Element::CardFinancial::NetworkDetails::Category::TaggedSymbol
         | 
| 7498 | 
            +
                            )
         | 
| 7499 | 
            +
             | 
| 7500 | 
            +
                          # Pulse
         | 
| 7501 | 
            +
                          PULSE =
         | 
| 7502 | 
            +
                            T.let(
         | 
| 7503 | 
            +
                              :pulse,
         | 
| 7504 | 
            +
                              Increase::CardPayment::Element::CardFinancial::NetworkDetails::Category::TaggedSymbol
         | 
| 7505 | 
            +
                            )
         | 
| 7506 | 
            +
             | 
| 7507 | 
            +
                          sig do
         | 
| 7508 | 
            +
                            override.returns(
         | 
| 7509 | 
            +
                              T::Array[
         | 
| 7510 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Category::TaggedSymbol
         | 
| 7511 | 
            +
                              ]
         | 
| 7512 | 
            +
                            )
         | 
| 7513 | 
            +
                          end
         | 
| 7514 | 
            +
                          def self.values
         | 
| 7515 | 
            +
                          end
         | 
| 7516 | 
            +
                        end
         | 
| 7517 | 
            +
             | 
| 7518 | 
            +
                        class Visa < Increase::Internal::Type::BaseModel
         | 
| 7519 | 
            +
                          OrHash =
         | 
| 7520 | 
            +
                            T.type_alias do
         | 
| 7521 | 
            +
                              T.any(
         | 
| 7522 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa,
         | 
| 7523 | 
            +
                                Increase::Internal::AnyHash
         | 
| 7524 | 
            +
                              )
         | 
| 7525 | 
            +
                            end
         | 
| 7526 | 
            +
             | 
| 7527 | 
            +
                          # For electronic commerce transactions, this identifies the level of security used
         | 
| 7528 | 
            +
                          # in obtaining the customer's payment credential. For mail or telephone order
         | 
| 7529 | 
            +
                          # transactions, identifies the type of mail or telephone order.
         | 
| 7530 | 
            +
                          sig do
         | 
| 7531 | 
            +
                            returns(
         | 
| 7532 | 
            +
                              T.nilable(
         | 
| 7533 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::ElectronicCommerceIndicator::TaggedSymbol
         | 
| 7534 | 
            +
                              )
         | 
| 7535 | 
            +
                            )
         | 
| 7536 | 
            +
                          end
         | 
| 7537 | 
            +
                          attr_accessor :electronic_commerce_indicator
         | 
| 7538 | 
            +
             | 
| 7539 | 
            +
                          # The method used to enter the cardholder's primary account number and card
         | 
| 7540 | 
            +
                          # expiration date.
         | 
| 7541 | 
            +
                          sig do
         | 
| 7542 | 
            +
                            returns(
         | 
| 7543 | 
            +
                              T.nilable(
         | 
| 7544 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::PointOfServiceEntryMode::TaggedSymbol
         | 
| 7545 | 
            +
                              )
         | 
| 7546 | 
            +
                            )
         | 
| 7547 | 
            +
                          end
         | 
| 7548 | 
            +
                          attr_accessor :point_of_service_entry_mode
         | 
| 7549 | 
            +
             | 
| 7550 | 
            +
                          # Only present when `actioner: network`. Describes why a card authorization was
         | 
| 7551 | 
            +
                          # approved or declined by Visa through stand-in processing.
         | 
| 7552 | 
            +
                          sig do
         | 
| 7553 | 
            +
                            returns(
         | 
| 7554 | 
            +
                              T.nilable(
         | 
| 7555 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::StandInProcessingReason::TaggedSymbol
         | 
| 7556 | 
            +
                              )
         | 
| 7557 | 
            +
                            )
         | 
| 7558 | 
            +
                          end
         | 
| 7559 | 
            +
                          attr_accessor :stand_in_processing_reason
         | 
| 7560 | 
            +
             | 
| 7561 | 
            +
                          # Fields specific to the `visa` network.
         | 
| 7562 | 
            +
                          sig do
         | 
| 7563 | 
            +
                            params(
         | 
| 7564 | 
            +
                              electronic_commerce_indicator:
         | 
| 7565 | 
            +
                                T.nilable(
         | 
| 7566 | 
            +
                                  Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::ElectronicCommerceIndicator::OrSymbol
         | 
| 7567 | 
            +
                                ),
         | 
| 7568 | 
            +
                              point_of_service_entry_mode:
         | 
| 7569 | 
            +
                                T.nilable(
         | 
| 7570 | 
            +
                                  Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::PointOfServiceEntryMode::OrSymbol
         | 
| 7571 | 
            +
                                ),
         | 
| 7572 | 
            +
                              stand_in_processing_reason:
         | 
| 7573 | 
            +
                                T.nilable(
         | 
| 7574 | 
            +
                                  Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::StandInProcessingReason::OrSymbol
         | 
| 7575 | 
            +
                                )
         | 
| 7576 | 
            +
                            ).returns(T.attached_class)
         | 
| 7577 | 
            +
                          end
         | 
| 7578 | 
            +
                          def self.new(
         | 
| 7579 | 
            +
                            # For electronic commerce transactions, this identifies the level of security used
         | 
| 7580 | 
            +
                            # in obtaining the customer's payment credential. For mail or telephone order
         | 
| 7581 | 
            +
                            # transactions, identifies the type of mail or telephone order.
         | 
| 7582 | 
            +
                            electronic_commerce_indicator:,
         | 
| 7583 | 
            +
                            # The method used to enter the cardholder's primary account number and card
         | 
| 7584 | 
            +
                            # expiration date.
         | 
| 7585 | 
            +
                            point_of_service_entry_mode:,
         | 
| 7586 | 
            +
                            # Only present when `actioner: network`. Describes why a card authorization was
         | 
| 7587 | 
            +
                            # approved or declined by Visa through stand-in processing.
         | 
| 7588 | 
            +
                            stand_in_processing_reason:
         | 
| 7589 | 
            +
                          )
         | 
| 7590 | 
            +
                          end
         | 
| 7591 | 
            +
             | 
| 7592 | 
            +
                          sig do
         | 
| 7593 | 
            +
                            override.returns(
         | 
| 7594 | 
            +
                              {
         | 
| 7595 | 
            +
                                electronic_commerce_indicator:
         | 
| 7596 | 
            +
                                  T.nilable(
         | 
| 7597 | 
            +
                                    Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::ElectronicCommerceIndicator::TaggedSymbol
         | 
| 7598 | 
            +
                                  ),
         | 
| 7599 | 
            +
                                point_of_service_entry_mode:
         | 
| 7600 | 
            +
                                  T.nilable(
         | 
| 7601 | 
            +
                                    Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::PointOfServiceEntryMode::TaggedSymbol
         | 
| 7602 | 
            +
                                  ),
         | 
| 7603 | 
            +
                                stand_in_processing_reason:
         | 
| 7604 | 
            +
                                  T.nilable(
         | 
| 7605 | 
            +
                                    Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::StandInProcessingReason::TaggedSymbol
         | 
| 7606 | 
            +
                                  )
         | 
| 7607 | 
            +
                              }
         | 
| 7608 | 
            +
                            )
         | 
| 7609 | 
            +
                          end
         | 
| 7610 | 
            +
                          def to_hash
         | 
| 7611 | 
            +
                          end
         | 
| 7612 | 
            +
             | 
| 7613 | 
            +
                          # For electronic commerce transactions, this identifies the level of security used
         | 
| 7614 | 
            +
                          # in obtaining the customer's payment credential. For mail or telephone order
         | 
| 7615 | 
            +
                          # transactions, identifies the type of mail or telephone order.
         | 
| 7616 | 
            +
                          module ElectronicCommerceIndicator
         | 
| 7617 | 
            +
                            extend Increase::Internal::Type::Enum
         | 
| 7618 | 
            +
             | 
| 7619 | 
            +
                            TaggedSymbol =
         | 
| 7620 | 
            +
                              T.type_alias do
         | 
| 7621 | 
            +
                                T.all(
         | 
| 7622 | 
            +
                                  Symbol,
         | 
| 7623 | 
            +
                                  Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::ElectronicCommerceIndicator
         | 
| 7624 | 
            +
                                )
         | 
| 7625 | 
            +
                              end
         | 
| 7626 | 
            +
                            OrSymbol = T.type_alias { T.any(Symbol, String) }
         | 
| 7627 | 
            +
             | 
| 7628 | 
            +
                            # 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.
         | 
| 7629 | 
            +
                            MAIL_PHONE_ORDER =
         | 
| 7630 | 
            +
                              T.let(
         | 
| 7631 | 
            +
                                :mail_phone_order,
         | 
| 7632 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::ElectronicCommerceIndicator::TaggedSymbol
         | 
| 7633 | 
            +
                              )
         | 
| 7634 | 
            +
             | 
| 7635 | 
            +
                            # Recurring transaction: Payment indicator used to indicate a recurring transaction that originates from an acquirer in the US region.
         | 
| 7636 | 
            +
                            RECURRING =
         | 
| 7637 | 
            +
                              T.let(
         | 
| 7638 | 
            +
                                :recurring,
         | 
| 7639 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::ElectronicCommerceIndicator::TaggedSymbol
         | 
| 7640 | 
            +
                              )
         | 
| 7641 | 
            +
             | 
| 7642 | 
            +
                            # 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.
         | 
| 7643 | 
            +
                            INSTALLMENT =
         | 
| 7644 | 
            +
                              T.let(
         | 
| 7645 | 
            +
                                :installment,
         | 
| 7646 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::ElectronicCommerceIndicator::TaggedSymbol
         | 
| 7647 | 
            +
                              )
         | 
| 7648 | 
            +
             | 
| 7649 | 
            +
                            # Unknown classification: other mail order: Use to indicate that the type of mail/telephone order is unknown.
         | 
| 7650 | 
            +
                            UNKNOWN_MAIL_PHONE_ORDER =
         | 
| 7651 | 
            +
                              T.let(
         | 
| 7652 | 
            +
                                :unknown_mail_phone_order,
         | 
| 7653 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::ElectronicCommerceIndicator::TaggedSymbol
         | 
| 7654 | 
            +
                              )
         | 
| 7655 | 
            +
             | 
| 7656 | 
            +
                            # Secure electronic commerce transaction: Use to indicate that the electronic commerce transaction has been authenticated using e.g., 3-D Secure
         | 
| 7657 | 
            +
                            SECURE_ELECTRONIC_COMMERCE =
         | 
| 7658 | 
            +
                              T.let(
         | 
| 7659 | 
            +
                                :secure_electronic_commerce,
         | 
| 7660 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::ElectronicCommerceIndicator::TaggedSymbol
         | 
| 7661 | 
            +
                              )
         | 
| 7662 | 
            +
             | 
| 7663 | 
            +
                            # 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.
         | 
| 7664 | 
            +
                            NON_AUTHENTICATED_SECURITY_TRANSACTION_AT_3DS_CAPABLE_MERCHANT =
         | 
| 7665 | 
            +
                              T.let(
         | 
| 7666 | 
            +
                                :non_authenticated_security_transaction_at_3ds_capable_merchant,
         | 
| 7667 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::ElectronicCommerceIndicator::TaggedSymbol
         | 
| 7668 | 
            +
                              )
         | 
| 7669 | 
            +
             | 
| 7670 | 
            +
                            # 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.
         | 
| 7671 | 
            +
                            NON_AUTHENTICATED_SECURITY_TRANSACTION =
         | 
| 7672 | 
            +
                              T.let(
         | 
| 7673 | 
            +
                                :non_authenticated_security_transaction,
         | 
| 7674 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::ElectronicCommerceIndicator::TaggedSymbol
         | 
| 7675 | 
            +
                              )
         | 
| 7676 | 
            +
             | 
| 7677 | 
            +
                            # Non-secure transaction: Use to identify an electronic commerce transaction that has no data protection.
         | 
| 7678 | 
            +
                            NON_SECURE_TRANSACTION =
         | 
| 7679 | 
            +
                              T.let(
         | 
| 7680 | 
            +
                                :non_secure_transaction,
         | 
| 7681 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::ElectronicCommerceIndicator::TaggedSymbol
         | 
| 7682 | 
            +
                              )
         | 
| 7683 | 
            +
             | 
| 7684 | 
            +
                            sig do
         | 
| 7685 | 
            +
                              override.returns(
         | 
| 7686 | 
            +
                                T::Array[
         | 
| 7687 | 
            +
                                  Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::ElectronicCommerceIndicator::TaggedSymbol
         | 
| 7688 | 
            +
                                ]
         | 
| 7689 | 
            +
                              )
         | 
| 7690 | 
            +
                            end
         | 
| 7691 | 
            +
                            def self.values
         | 
| 7692 | 
            +
                            end
         | 
| 7693 | 
            +
                          end
         | 
| 7694 | 
            +
             | 
| 7695 | 
            +
                          # The method used to enter the cardholder's primary account number and card
         | 
| 7696 | 
            +
                          # expiration date.
         | 
| 7697 | 
            +
                          module PointOfServiceEntryMode
         | 
| 7698 | 
            +
                            extend Increase::Internal::Type::Enum
         | 
| 7699 | 
            +
             | 
| 7700 | 
            +
                            TaggedSymbol =
         | 
| 7701 | 
            +
                              T.type_alias do
         | 
| 7702 | 
            +
                                T.all(
         | 
| 7703 | 
            +
                                  Symbol,
         | 
| 7704 | 
            +
                                  Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::PointOfServiceEntryMode
         | 
| 7705 | 
            +
                                )
         | 
| 7706 | 
            +
                              end
         | 
| 7707 | 
            +
                            OrSymbol = T.type_alias { T.any(Symbol, String) }
         | 
| 7708 | 
            +
             | 
| 7709 | 
            +
                            # Unknown
         | 
| 7710 | 
            +
                            UNKNOWN =
         | 
| 7711 | 
            +
                              T.let(
         | 
| 7712 | 
            +
                                :unknown,
         | 
| 7713 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::PointOfServiceEntryMode::TaggedSymbol
         | 
| 7714 | 
            +
                              )
         | 
| 7715 | 
            +
             | 
| 7716 | 
            +
                            # Manual key entry
         | 
| 7717 | 
            +
                            MANUAL =
         | 
| 7718 | 
            +
                              T.let(
         | 
| 7719 | 
            +
                                :manual,
         | 
| 7720 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::PointOfServiceEntryMode::TaggedSymbol
         | 
| 7721 | 
            +
                              )
         | 
| 7722 | 
            +
             | 
| 7723 | 
            +
                            # Magnetic stripe read, without card verification value
         | 
| 7724 | 
            +
                            MAGNETIC_STRIPE_NO_CVV =
         | 
| 7725 | 
            +
                              T.let(
         | 
| 7726 | 
            +
                                :magnetic_stripe_no_cvv,
         | 
| 7727 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::PointOfServiceEntryMode::TaggedSymbol
         | 
| 7728 | 
            +
                              )
         | 
| 7729 | 
            +
             | 
| 7730 | 
            +
                            # Optical code
         | 
| 7731 | 
            +
                            OPTICAL_CODE =
         | 
| 7732 | 
            +
                              T.let(
         | 
| 7733 | 
            +
                                :optical_code,
         | 
| 7734 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::PointOfServiceEntryMode::TaggedSymbol
         | 
| 7735 | 
            +
                              )
         | 
| 7736 | 
            +
             | 
| 7737 | 
            +
                            # Contact chip card
         | 
| 7738 | 
            +
                            INTEGRATED_CIRCUIT_CARD =
         | 
| 7739 | 
            +
                              T.let(
         | 
| 7740 | 
            +
                                :integrated_circuit_card,
         | 
| 7741 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::PointOfServiceEntryMode::TaggedSymbol
         | 
| 7742 | 
            +
                              )
         | 
| 7743 | 
            +
             | 
| 7744 | 
            +
                            # Contactless read of chip card
         | 
| 7745 | 
            +
                            CONTACTLESS =
         | 
| 7746 | 
            +
                              T.let(
         | 
| 7747 | 
            +
                                :contactless,
         | 
| 7748 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::PointOfServiceEntryMode::TaggedSymbol
         | 
| 7749 | 
            +
                              )
         | 
| 7750 | 
            +
             | 
| 7751 | 
            +
                            # Transaction initiated using a credential that has previously been stored on file
         | 
| 7752 | 
            +
                            CREDENTIAL_ON_FILE =
         | 
| 7753 | 
            +
                              T.let(
         | 
| 7754 | 
            +
                                :credential_on_file,
         | 
| 7755 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::PointOfServiceEntryMode::TaggedSymbol
         | 
| 7756 | 
            +
                              )
         | 
| 7757 | 
            +
             | 
| 7758 | 
            +
                            # Magnetic stripe read
         | 
| 7759 | 
            +
                            MAGNETIC_STRIPE =
         | 
| 7760 | 
            +
                              T.let(
         | 
| 7761 | 
            +
                                :magnetic_stripe,
         | 
| 7762 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::PointOfServiceEntryMode::TaggedSymbol
         | 
| 7763 | 
            +
                              )
         | 
| 7764 | 
            +
             | 
| 7765 | 
            +
                            # Contactless read of magnetic stripe data
         | 
| 7766 | 
            +
                            CONTACTLESS_MAGNETIC_STRIPE =
         | 
| 7767 | 
            +
                              T.let(
         | 
| 7768 | 
            +
                                :contactless_magnetic_stripe,
         | 
| 7769 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::PointOfServiceEntryMode::TaggedSymbol
         | 
| 7770 | 
            +
                              )
         | 
| 7771 | 
            +
             | 
| 7772 | 
            +
                            # Contact chip card, without card verification value
         | 
| 7773 | 
            +
                            INTEGRATED_CIRCUIT_CARD_NO_CVV =
         | 
| 7774 | 
            +
                              T.let(
         | 
| 7775 | 
            +
                                :integrated_circuit_card_no_cvv,
         | 
| 7776 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::PointOfServiceEntryMode::TaggedSymbol
         | 
| 7777 | 
            +
                              )
         | 
| 7778 | 
            +
             | 
| 7779 | 
            +
                            sig do
         | 
| 7780 | 
            +
                              override.returns(
         | 
| 7781 | 
            +
                                T::Array[
         | 
| 7782 | 
            +
                                  Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::PointOfServiceEntryMode::TaggedSymbol
         | 
| 7783 | 
            +
                                ]
         | 
| 7784 | 
            +
                              )
         | 
| 7785 | 
            +
                            end
         | 
| 7786 | 
            +
                            def self.values
         | 
| 7787 | 
            +
                            end
         | 
| 7788 | 
            +
                          end
         | 
| 7789 | 
            +
             | 
| 7790 | 
            +
                          # Only present when `actioner: network`. Describes why a card authorization was
         | 
| 7791 | 
            +
                          # approved or declined by Visa through stand-in processing.
         | 
| 7792 | 
            +
                          module StandInProcessingReason
         | 
| 7793 | 
            +
                            extend Increase::Internal::Type::Enum
         | 
| 7794 | 
            +
             | 
| 7795 | 
            +
                            TaggedSymbol =
         | 
| 7796 | 
            +
                              T.type_alias do
         | 
| 7797 | 
            +
                                T.all(
         | 
| 7798 | 
            +
                                  Symbol,
         | 
| 7799 | 
            +
                                  Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::StandInProcessingReason
         | 
| 7800 | 
            +
                                )
         | 
| 7801 | 
            +
                              end
         | 
| 7802 | 
            +
                            OrSymbol = T.type_alias { T.any(Symbol, String) }
         | 
| 7803 | 
            +
             | 
| 7804 | 
            +
                            # Increase failed to process the authorization in a timely manner.
         | 
| 7805 | 
            +
                            ISSUER_ERROR =
         | 
| 7806 | 
            +
                              T.let(
         | 
| 7807 | 
            +
                                :issuer_error,
         | 
| 7808 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::StandInProcessingReason::TaggedSymbol
         | 
| 7809 | 
            +
                              )
         | 
| 7810 | 
            +
             | 
| 7811 | 
            +
                            # The physical card read had an invalid CVV, dCVV, or authorization request cryptogram.
         | 
| 7812 | 
            +
                            INVALID_PHYSICAL_CARD =
         | 
| 7813 | 
            +
                              T.let(
         | 
| 7814 | 
            +
                                :invalid_physical_card,
         | 
| 7815 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::StandInProcessingReason::TaggedSymbol
         | 
| 7816 | 
            +
                              )
         | 
| 7817 | 
            +
             | 
| 7818 | 
            +
                            # The 3DS cardholder authentication verification value was invalid.
         | 
| 7819 | 
            +
                            INVALID_CARDHOLDER_AUTHENTICATION_VERIFICATION_VALUE =
         | 
| 7820 | 
            +
                              T.let(
         | 
| 7821 | 
            +
                                :invalid_cardholder_authentication_verification_value,
         | 
| 7822 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::StandInProcessingReason::TaggedSymbol
         | 
| 7823 | 
            +
                              )
         | 
| 7824 | 
            +
             | 
| 7825 | 
            +
                            # An internal Visa error occurred. Visa uses this reason code for certain expected occurrences as well, such as Application Transaction Counter (ATC) replays.
         | 
| 7826 | 
            +
                            INTERNAL_VISA_ERROR =
         | 
| 7827 | 
            +
                              T.let(
         | 
| 7828 | 
            +
                                :internal_visa_error,
         | 
| 7829 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::StandInProcessingReason::TaggedSymbol
         | 
| 7830 | 
            +
                              )
         | 
| 7831 | 
            +
             | 
| 7832 | 
            +
                            # 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.
         | 
| 7833 | 
            +
                            MERCHANT_TRANSACTION_ADVISORY_SERVICE_AUTHENTICATION_REQUIRED =
         | 
| 7834 | 
            +
                              T.let(
         | 
| 7835 | 
            +
                                :merchant_transaction_advisory_service_authentication_required,
         | 
| 7836 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::StandInProcessingReason::TaggedSymbol
         | 
| 7837 | 
            +
                              )
         | 
| 7838 | 
            +
             | 
| 7839 | 
            +
                            # The transaction was blocked by Visa's Payment Fraud Disruption service due to fraudulent Acquirer behavior, such as card testing.
         | 
| 7840 | 
            +
                            PAYMENT_FRAUD_DISRUPTION_ACQUIRER_BLOCK =
         | 
| 7841 | 
            +
                              T.let(
         | 
| 7842 | 
            +
                                :payment_fraud_disruption_acquirer_block,
         | 
| 7843 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::StandInProcessingReason::TaggedSymbol
         | 
| 7844 | 
            +
                              )
         | 
| 7845 | 
            +
             | 
| 7846 | 
            +
                            # An unspecific reason for stand-in processing.
         | 
| 7847 | 
            +
                            OTHER =
         | 
| 7848 | 
            +
                              T.let(
         | 
| 7849 | 
            +
                                :other,
         | 
| 7850 | 
            +
                                Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::StandInProcessingReason::TaggedSymbol
         | 
| 7851 | 
            +
                              )
         | 
| 7852 | 
            +
             | 
| 7853 | 
            +
                            sig do
         | 
| 7854 | 
            +
                              override.returns(
         | 
| 7855 | 
            +
                                T::Array[
         | 
| 7856 | 
            +
                                  Increase::CardPayment::Element::CardFinancial::NetworkDetails::Visa::StandInProcessingReason::TaggedSymbol
         | 
| 7857 | 
            +
                                ]
         | 
| 7858 | 
            +
                              )
         | 
| 7859 | 
            +
                            end
         | 
| 7860 | 
            +
                            def self.values
         | 
| 7861 | 
            +
                            end
         | 
| 7862 | 
            +
                          end
         | 
| 7863 | 
            +
                        end
         | 
| 7864 | 
            +
                      end
         | 
| 7865 | 
            +
             | 
| 7866 | 
            +
                      class NetworkIdentifiers < Increase::Internal::Type::BaseModel
         | 
| 7867 | 
            +
                        OrHash =
         | 
| 7868 | 
            +
                          T.type_alias do
         | 
| 7869 | 
            +
                            T.any(
         | 
| 7870 | 
            +
                              Increase::CardPayment::Element::CardFinancial::NetworkIdentifiers,
         | 
| 7871 | 
            +
                              Increase::Internal::AnyHash
         | 
| 7872 | 
            +
                            )
         | 
| 7873 | 
            +
                          end
         | 
| 7874 | 
            +
             | 
| 7875 | 
            +
                        # The randomly generated 6-character Authorization Identification Response code
         | 
| 7876 | 
            +
                        # sent back to the acquirer in an approved response.
         | 
| 7877 | 
            +
                        sig { returns(T.nilable(String)) }
         | 
| 7878 | 
            +
                        attr_accessor :authorization_identification_response
         | 
| 7879 | 
            +
             | 
| 7880 | 
            +
                        # A life-cycle identifier used across e.g., an authorization and a reversal.
         | 
| 7881 | 
            +
                        # Expected to be unique per acquirer within a window of time. For some card
         | 
| 7882 | 
            +
                        # networks the retrieval reference number includes the trace counter.
         | 
| 7883 | 
            +
                        sig { returns(T.nilable(String)) }
         | 
| 7884 | 
            +
                        attr_accessor :retrieval_reference_number
         | 
| 7885 | 
            +
             | 
| 7886 | 
            +
                        # A counter used to verify an individual authorization. Expected to be unique per
         | 
| 7887 | 
            +
                        # acquirer within a window of time.
         | 
| 7888 | 
            +
                        sig { returns(T.nilable(String)) }
         | 
| 7889 | 
            +
                        attr_accessor :trace_number
         | 
| 7890 | 
            +
             | 
| 7891 | 
            +
                        # A globally unique transaction identifier provided by the card network, used
         | 
| 7892 | 
            +
                        # across multiple life-cycle requests.
         | 
| 7893 | 
            +
                        sig { returns(T.nilable(String)) }
         | 
| 7894 | 
            +
                        attr_accessor :transaction_id
         | 
| 7895 | 
            +
             | 
| 7896 | 
            +
                        # Network-specific identifiers for a specific request or transaction.
         | 
| 7897 | 
            +
                        sig do
         | 
| 7898 | 
            +
                          params(
         | 
| 7899 | 
            +
                            authorization_identification_response: T.nilable(String),
         | 
| 7900 | 
            +
                            retrieval_reference_number: T.nilable(String),
         | 
| 7901 | 
            +
                            trace_number: T.nilable(String),
         | 
| 7902 | 
            +
                            transaction_id: T.nilable(String)
         | 
| 7903 | 
            +
                          ).returns(T.attached_class)
         | 
| 7904 | 
            +
                        end
         | 
| 7905 | 
            +
                        def self.new(
         | 
| 7906 | 
            +
                          # The randomly generated 6-character Authorization Identification Response code
         | 
| 7907 | 
            +
                          # sent back to the acquirer in an approved response.
         | 
| 7908 | 
            +
                          authorization_identification_response:,
         | 
| 7909 | 
            +
                          # A life-cycle identifier used across e.g., an authorization and a reversal.
         | 
| 7910 | 
            +
                          # Expected to be unique per acquirer within a window of time. For some card
         | 
| 7911 | 
            +
                          # networks the retrieval reference number includes the trace counter.
         | 
| 7912 | 
            +
                          retrieval_reference_number:,
         | 
| 7913 | 
            +
                          # A counter used to verify an individual authorization. Expected to be unique per
         | 
| 7914 | 
            +
                          # acquirer within a window of time.
         | 
| 7915 | 
            +
                          trace_number:,
         | 
| 7916 | 
            +
                          # A globally unique transaction identifier provided by the card network, used
         | 
| 7917 | 
            +
                          # across multiple life-cycle requests.
         | 
| 7918 | 
            +
                          transaction_id:
         | 
| 7919 | 
            +
                        )
         | 
| 7920 | 
            +
                        end
         | 
| 7921 | 
            +
             | 
| 7922 | 
            +
                        sig do
         | 
| 7923 | 
            +
                          override.returns(
         | 
| 7924 | 
            +
                            {
         | 
| 7925 | 
            +
                              authorization_identification_response: T.nilable(String),
         | 
| 7926 | 
            +
                              retrieval_reference_number: T.nilable(String),
         | 
| 7927 | 
            +
                              trace_number: T.nilable(String),
         | 
| 7928 | 
            +
                              transaction_id: T.nilable(String)
         | 
| 7929 | 
            +
                            }
         | 
| 7930 | 
            +
                          )
         | 
| 7931 | 
            +
                        end
         | 
| 7932 | 
            +
                        def to_hash
         | 
| 7933 | 
            +
                        end
         | 
| 7934 | 
            +
                      end
         | 
| 7935 | 
            +
             | 
| 7936 | 
            +
                      # The processing category describes the intent behind the financial, such as
         | 
| 5484 7937 | 
             
                      # whether it was used for bill payments or an automatic fuel dispenser.
         | 
| 5485 7938 | 
             
                      module ProcessingCategory
         | 
| 5486 7939 | 
             
                        extend Increase::Internal::Type::Enum
         | 
| @@ -5489,7 +7942,7 @@ module Increase | |
| 5489 7942 | 
             
                          T.type_alias do
         | 
| 5490 7943 | 
             
                            T.all(
         | 
| 5491 7944 | 
             
                              Symbol,
         | 
| 5492 | 
            -
                              Increase::CardPayment::Element:: | 
| 7945 | 
            +
                              Increase::CardPayment::Element::CardFinancial::ProcessingCategory
         | 
| 5493 7946 | 
             
                            )
         | 
| 5494 7947 | 
             
                          end
         | 
| 5495 7948 | 
             
                        OrSymbol = T.type_alias { T.any(Symbol, String) }
         | 
| @@ -5498,136 +7951,69 @@ module Increase | |
| 5498 7951 | 
             
                        ACCOUNT_FUNDING =
         | 
| 5499 7952 | 
             
                          T.let(
         | 
| 5500 7953 | 
             
                            :account_funding,
         | 
| 5501 | 
            -
                            Increase::CardPayment::Element:: | 
| 7954 | 
            +
                            Increase::CardPayment::Element::CardFinancial::ProcessingCategory::TaggedSymbol
         | 
| 5502 7955 | 
             
                          )
         | 
| 5503 7956 |  | 
| 5504 7957 | 
             
                        # 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.
         | 
| 5505 7958 | 
             
                        AUTOMATIC_FUEL_DISPENSER =
         | 
| 5506 7959 | 
             
                          T.let(
         | 
| 5507 7960 | 
             
                            :automatic_fuel_dispenser,
         | 
| 5508 | 
            -
                            Increase::CardPayment::Element:: | 
| 7961 | 
            +
                            Increase::CardPayment::Element::CardFinancial::ProcessingCategory::TaggedSymbol
         | 
| 5509 7962 | 
             
                          )
         | 
| 5510 7963 |  | 
| 5511 7964 | 
             
                        # A transaction used to pay a bill.
         | 
| 5512 7965 | 
             
                        BILL_PAYMENT =
         | 
| 5513 7966 | 
             
                          T.let(
         | 
| 5514 7967 | 
             
                            :bill_payment,
         | 
| 5515 | 
            -
                            Increase::CardPayment::Element:: | 
| 7968 | 
            +
                            Increase::CardPayment::Element::CardFinancial::ProcessingCategory::TaggedSymbol
         | 
| 5516 7969 | 
             
                          )
         | 
| 5517 7970 |  | 
| 5518 7971 | 
             
                        # Original credit transactions are used to send money to a cardholder.
         | 
| 5519 7972 | 
             
                        ORIGINAL_CREDIT =
         | 
| 5520 7973 | 
             
                          T.let(
         | 
| 5521 7974 | 
             
                            :original_credit,
         | 
| 5522 | 
            -
                            Increase::CardPayment::Element:: | 
| 7975 | 
            +
                            Increase::CardPayment::Element::CardFinancial::ProcessingCategory::TaggedSymbol
         | 
| 5523 7976 | 
             
                          )
         | 
| 5524 7977 |  | 
| 5525 7978 | 
             
                        # A regular purchase.
         | 
| 5526 7979 | 
             
                        PURCHASE =
         | 
| 5527 7980 | 
             
                          T.let(
         | 
| 5528 7981 | 
             
                            :purchase,
         | 
| 5529 | 
            -
                            Increase::CardPayment::Element:: | 
| 7982 | 
            +
                            Increase::CardPayment::Element::CardFinancial::ProcessingCategory::TaggedSymbol
         | 
| 5530 7983 | 
             
                          )
         | 
| 5531 7984 |  | 
| 5532 7985 | 
             
                        # Quasi-cash transactions represent purchases of items which may be convertible to cash.
         | 
| 5533 7986 | 
             
                        QUASI_CASH =
         | 
| 5534 7987 | 
             
                          T.let(
         | 
| 5535 7988 | 
             
                            :quasi_cash,
         | 
| 5536 | 
            -
                            Increase::CardPayment::Element:: | 
| 7989 | 
            +
                            Increase::CardPayment::Element::CardFinancial::ProcessingCategory::TaggedSymbol
         | 
| 5537 7990 | 
             
                          )
         | 
| 5538 7991 |  | 
| 5539 7992 | 
             
                        # A refund card authorization, sometimes referred to as a credit voucher authorization, where funds are credited to the cardholder.
         | 
| 5540 7993 | 
             
                        REFUND =
         | 
| 5541 7994 | 
             
                          T.let(
         | 
| 5542 7995 | 
             
                            :refund,
         | 
| 5543 | 
            -
                            Increase::CardPayment::Element:: | 
| 7996 | 
            +
                            Increase::CardPayment::Element::CardFinancial::ProcessingCategory::TaggedSymbol
         | 
| 5544 7997 | 
             
                          )
         | 
| 5545 7998 |  | 
| 5546 7999 | 
             
                        # Cash disbursement transactions are used to withdraw cash from an ATM or a point of sale.
         | 
| 5547 8000 | 
             
                        CASH_DISBURSEMENT =
         | 
| 5548 8001 | 
             
                          T.let(
         | 
| 5549 8002 | 
             
                            :cash_disbursement,
         | 
| 5550 | 
            -
                            Increase::CardPayment::Element:: | 
| 8003 | 
            +
                            Increase::CardPayment::Element::CardFinancial::ProcessingCategory::TaggedSymbol
         | 
| 5551 8004 | 
             
                          )
         | 
| 5552 8005 |  | 
| 5553 8006 | 
             
                        # The processing category is unknown.
         | 
| 5554 8007 | 
             
                        UNKNOWN =
         | 
| 5555 8008 | 
             
                          T.let(
         | 
| 5556 8009 | 
             
                            :unknown,
         | 
| 5557 | 
            -
                            Increase::CardPayment::Element:: | 
| 5558 | 
            -
                          )
         | 
| 5559 | 
            -
             | 
| 5560 | 
            -
                        sig do
         | 
| 5561 | 
            -
                          override.returns(
         | 
| 5562 | 
            -
                            T::Array[
         | 
| 5563 | 
            -
                              Increase::CardPayment::Element::CardDecline::ProcessingCategory::TaggedSymbol
         | 
| 5564 | 
            -
                            ]
         | 
| 5565 | 
            -
                          )
         | 
| 5566 | 
            -
                        end
         | 
| 5567 | 
            -
                        def self.values
         | 
| 5568 | 
            -
                        end
         | 
| 5569 | 
            -
                      end
         | 
| 5570 | 
            -
             | 
| 5571 | 
            -
                      # This is present if a specific decline reason was given in the real-time
         | 
| 5572 | 
            -
                      # decision.
         | 
| 5573 | 
            -
                      module RealTimeDecisionReason
         | 
| 5574 | 
            -
                        extend Increase::Internal::Type::Enum
         | 
| 5575 | 
            -
             | 
| 5576 | 
            -
                        TaggedSymbol =
         | 
| 5577 | 
            -
                          T.type_alias do
         | 
| 5578 | 
            -
                            T.all(
         | 
| 5579 | 
            -
                              Symbol,
         | 
| 5580 | 
            -
                              Increase::CardPayment::Element::CardDecline::RealTimeDecisionReason
         | 
| 5581 | 
            -
                            )
         | 
| 5582 | 
            -
                          end
         | 
| 5583 | 
            -
                        OrSymbol = T.type_alias { T.any(Symbol, String) }
         | 
| 5584 | 
            -
             | 
| 5585 | 
            -
                        # The cardholder does not have sufficient funds to cover the transaction. The merchant may attempt to process the transaction again.
         | 
| 5586 | 
            -
                        INSUFFICIENT_FUNDS =
         | 
| 5587 | 
            -
                          T.let(
         | 
| 5588 | 
            -
                            :insufficient_funds,
         | 
| 5589 | 
            -
                            Increase::CardPayment::Element::CardDecline::RealTimeDecisionReason::TaggedSymbol
         | 
| 5590 | 
            -
                          )
         | 
| 5591 | 
            -
             | 
| 5592 | 
            -
                        # This type of transaction is not allowed for this card. This transaction should not be retried.
         | 
| 5593 | 
            -
                        TRANSACTION_NEVER_ALLOWED =
         | 
| 5594 | 
            -
                          T.let(
         | 
| 5595 | 
            -
                            :transaction_never_allowed,
         | 
| 5596 | 
            -
                            Increase::CardPayment::Element::CardDecline::RealTimeDecisionReason::TaggedSymbol
         | 
| 5597 | 
            -
                          )
         | 
| 5598 | 
            -
             | 
| 5599 | 
            -
                        # The transaction amount exceeds the cardholder's approval limit. The merchant may attempt to process the transaction again.
         | 
| 5600 | 
            -
                        EXCEEDS_APPROVAL_LIMIT =
         | 
| 5601 | 
            -
                          T.let(
         | 
| 5602 | 
            -
                            :exceeds_approval_limit,
         | 
| 5603 | 
            -
                            Increase::CardPayment::Element::CardDecline::RealTimeDecisionReason::TaggedSymbol
         | 
| 5604 | 
            -
                          )
         | 
| 5605 | 
            -
             | 
| 5606 | 
            -
                        # The card has been temporarily disabled or not yet activated. The merchant may attempt to process the transaction again.
         | 
| 5607 | 
            -
                        CARD_TEMPORARILY_DISABLED =
         | 
| 5608 | 
            -
                          T.let(
         | 
| 5609 | 
            -
                            :card_temporarily_disabled,
         | 
| 5610 | 
            -
                            Increase::CardPayment::Element::CardDecline::RealTimeDecisionReason::TaggedSymbol
         | 
| 5611 | 
            -
                          )
         | 
| 5612 | 
            -
             | 
| 5613 | 
            -
                        # The transaction is suspected to be fraudulent. The merchant may attempt to process the transaction again.
         | 
| 5614 | 
            -
                        SUSPECTED_FRAUD =
         | 
| 5615 | 
            -
                          T.let(
         | 
| 5616 | 
            -
                            :suspected_fraud,
         | 
| 5617 | 
            -
                            Increase::CardPayment::Element::CardDecline::RealTimeDecisionReason::TaggedSymbol
         | 
| 5618 | 
            -
                          )
         | 
| 5619 | 
            -
             | 
| 5620 | 
            -
                        # The transaction was declined for another reason. The merchant may attempt to process the transaction again. This should be used sparingly.
         | 
| 5621 | 
            -
                        OTHER =
         | 
| 5622 | 
            -
                          T.let(
         | 
| 5623 | 
            -
                            :other,
         | 
| 5624 | 
            -
                            Increase::CardPayment::Element::CardDecline::RealTimeDecisionReason::TaggedSymbol
         | 
| 8010 | 
            +
                            Increase::CardPayment::Element::CardFinancial::ProcessingCategory::TaggedSymbol
         | 
| 5625 8011 | 
             
                          )
         | 
| 5626 8012 |  | 
| 5627 8013 | 
             
                        sig do
         | 
| 5628 8014 | 
             
                          override.returns(
         | 
| 5629 8015 | 
             
                            T::Array[
         | 
| 5630 | 
            -
                              Increase::CardPayment::Element:: | 
| 8016 | 
            +
                              Increase::CardPayment::Element::CardFinancial::ProcessingCategory::TaggedSymbol
         | 
| 5631 8017 | 
             
                            ]
         | 
| 5632 8018 | 
             
                          )
         | 
| 5633 8019 | 
             
                        end
         | 
| @@ -5635,163 +8021,30 @@ module Increase | |
| 5635 8021 | 
             
                        end
         | 
| 5636 8022 | 
             
                      end
         | 
| 5637 8023 |  | 
| 5638 | 
            -
                      #  | 
| 5639 | 
            -
                       | 
| 8024 | 
            +
                      # A constant representing the object's type. For this resource it will always be
         | 
| 8025 | 
            +
                      # `card_financial`.
         | 
| 8026 | 
            +
                      module Type
         | 
| 5640 8027 | 
             
                        extend Increase::Internal::Type::Enum
         | 
| 5641 8028 |  | 
| 5642 8029 | 
             
                        TaggedSymbol =
         | 
| 5643 8030 | 
             
                          T.type_alias do
         | 
| 5644 8031 | 
             
                            T.all(
         | 
| 5645 8032 | 
             
                              Symbol,
         | 
| 5646 | 
            -
                              Increase::CardPayment::Element:: | 
| 8033 | 
            +
                              Increase::CardPayment::Element::CardFinancial::Type
         | 
| 5647 8034 | 
             
                            )
         | 
| 5648 8035 | 
             
                          end
         | 
| 5649 8036 | 
             
                        OrSymbol = T.type_alias { T.any(Symbol, String) }
         | 
| 5650 8037 |  | 
| 5651 | 
            -
                         | 
| 5652 | 
            -
                        ACCOUNT_CLOSED =
         | 
| 5653 | 
            -
                          T.let(
         | 
| 5654 | 
            -
                            :account_closed,
         | 
| 5655 | 
            -
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5656 | 
            -
                          )
         | 
| 5657 | 
            -
             | 
| 5658 | 
            -
                        # The Card was not active.
         | 
| 5659 | 
            -
                        CARD_NOT_ACTIVE =
         | 
| 5660 | 
            -
                          T.let(
         | 
| 5661 | 
            -
                            :card_not_active,
         | 
| 5662 | 
            -
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5663 | 
            -
                          )
         | 
| 5664 | 
            -
             | 
| 5665 | 
            -
                        # The Card has been canceled.
         | 
| 5666 | 
            -
                        CARD_CANCELED =
         | 
| 5667 | 
            -
                          T.let(
         | 
| 5668 | 
            -
                            :card_canceled,
         | 
| 5669 | 
            -
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5670 | 
            -
                          )
         | 
| 5671 | 
            -
             | 
| 5672 | 
            -
                        # The Physical Card was not active.
         | 
| 5673 | 
            -
                        PHYSICAL_CARD_NOT_ACTIVE =
         | 
| 5674 | 
            -
                          T.let(
         | 
| 5675 | 
            -
                            :physical_card_not_active,
         | 
| 5676 | 
            -
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5677 | 
            -
                          )
         | 
| 5678 | 
            -
             | 
| 5679 | 
            -
                        # The account's entity was not active.
         | 
| 5680 | 
            -
                        ENTITY_NOT_ACTIVE =
         | 
| 5681 | 
            -
                          T.let(
         | 
| 5682 | 
            -
                            :entity_not_active,
         | 
| 5683 | 
            -
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5684 | 
            -
                          )
         | 
| 5685 | 
            -
             | 
| 5686 | 
            -
                        # The account was inactive.
         | 
| 5687 | 
            -
                        GROUP_LOCKED =
         | 
| 5688 | 
            -
                          T.let(
         | 
| 5689 | 
            -
                            :group_locked,
         | 
| 5690 | 
            -
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5691 | 
            -
                          )
         | 
| 5692 | 
            -
             | 
| 5693 | 
            -
                        # The Card's Account did not have a sufficient available balance.
         | 
| 5694 | 
            -
                        INSUFFICIENT_FUNDS =
         | 
| 5695 | 
            -
                          T.let(
         | 
| 5696 | 
            -
                            :insufficient_funds,
         | 
| 5697 | 
            -
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5698 | 
            -
                          )
         | 
| 5699 | 
            -
             | 
| 5700 | 
            -
                        # The given CVV2 did not match the card's value.
         | 
| 5701 | 
            -
                        CVV2_MISMATCH =
         | 
| 5702 | 
            -
                          T.let(
         | 
| 5703 | 
            -
                            :cvv2_mismatch,
         | 
| 5704 | 
            -
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5705 | 
            -
                          )
         | 
| 5706 | 
            -
             | 
| 5707 | 
            -
                        # The given PIN did not match the card's value.
         | 
| 5708 | 
            -
                        PIN_MISMATCH =
         | 
| 5709 | 
            -
                          T.let(
         | 
| 5710 | 
            -
                            :pin_mismatch,
         | 
| 5711 | 
            -
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5712 | 
            -
                          )
         | 
| 5713 | 
            -
             | 
| 5714 | 
            -
                        # The given expiration date did not match the card's value. Only applies when a CVV2 is present.
         | 
| 5715 | 
            -
                        CARD_EXPIRATION_MISMATCH =
         | 
| 5716 | 
            -
                          T.let(
         | 
| 5717 | 
            -
                            :card_expiration_mismatch,
         | 
| 5718 | 
            -
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5719 | 
            -
                          )
         | 
| 5720 | 
            -
             | 
| 5721 | 
            -
                        # The attempted card transaction is not allowed per Increase's terms.
         | 
| 5722 | 
            -
                        TRANSACTION_NOT_ALLOWED =
         | 
| 5723 | 
            -
                          T.let(
         | 
| 5724 | 
            -
                            :transaction_not_allowed,
         | 
| 5725 | 
            -
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5726 | 
            -
                          )
         | 
| 5727 | 
            -
             | 
| 5728 | 
            -
                        # The transaction was blocked by a Limit.
         | 
| 5729 | 
            -
                        BREACHES_LIMIT =
         | 
| 5730 | 
            -
                          T.let(
         | 
| 5731 | 
            -
                            :breaches_limit,
         | 
| 5732 | 
            -
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5733 | 
            -
                          )
         | 
| 5734 | 
            -
             | 
| 5735 | 
            -
                        # Your application declined the transaction via webhook.
         | 
| 5736 | 
            -
                        WEBHOOK_DECLINED =
         | 
| 5737 | 
            -
                          T.let(
         | 
| 5738 | 
            -
                            :webhook_declined,
         | 
| 5739 | 
            -
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5740 | 
            -
                          )
         | 
| 5741 | 
            -
             | 
| 5742 | 
            -
                        # Your application webhook did not respond without the required timeout.
         | 
| 5743 | 
            -
                        WEBHOOK_TIMED_OUT =
         | 
| 5744 | 
            -
                          T.let(
         | 
| 5745 | 
            -
                            :webhook_timed_out,
         | 
| 5746 | 
            -
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5747 | 
            -
                          )
         | 
| 5748 | 
            -
             | 
| 5749 | 
            -
                        # Declined by stand-in processing.
         | 
| 5750 | 
            -
                        DECLINED_BY_STAND_IN_PROCESSING =
         | 
| 5751 | 
            -
                          T.let(
         | 
| 5752 | 
            -
                            :declined_by_stand_in_processing,
         | 
| 5753 | 
            -
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5754 | 
            -
                          )
         | 
| 5755 | 
            -
             | 
| 5756 | 
            -
                        # The card read had an invalid CVV, dCVV, or authorization request cryptogram.
         | 
| 5757 | 
            -
                        INVALID_PHYSICAL_CARD =
         | 
| 5758 | 
            -
                          T.let(
         | 
| 5759 | 
            -
                            :invalid_physical_card,
         | 
| 5760 | 
            -
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5761 | 
            -
                          )
         | 
| 5762 | 
            -
             | 
| 5763 | 
            -
                        # The original card authorization for this incremental authorization does not exist.
         | 
| 5764 | 
            -
                        MISSING_ORIGINAL_AUTHORIZATION =
         | 
| 5765 | 
            -
                          T.let(
         | 
| 5766 | 
            -
                            :missing_original_authorization,
         | 
| 5767 | 
            -
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5768 | 
            -
                          )
         | 
| 5769 | 
            -
             | 
| 5770 | 
            -
                        # The transaction was declined because the 3DS authentication failed.
         | 
| 5771 | 
            -
                        FAILED_3DS_AUTHENTICATION =
         | 
| 5772 | 
            -
                          T.let(
         | 
| 5773 | 
            -
                            :failed_3ds_authentication,
         | 
| 5774 | 
            -
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5775 | 
            -
                          )
         | 
| 5776 | 
            -
             | 
| 5777 | 
            -
                        # The transaction was suspected to be used by a card tester to test for valid card numbers.
         | 
| 5778 | 
            -
                        SUSPECTED_CARD_TESTING =
         | 
| 5779 | 
            -
                          T.let(
         | 
| 5780 | 
            -
                            :suspected_card_testing,
         | 
| 5781 | 
            -
                            Increase::CardPayment::Element::CardDecline::Reason::TaggedSymbol
         | 
| 5782 | 
            -
                          )
         | 
| 5783 | 
            -
             | 
| 5784 | 
            -
                        # The transaction was suspected to be fraudulent. Please reach out to support@increase.com for more information.
         | 
| 5785 | 
            -
                        SUSPECTED_FRAUD =
         | 
| 8038 | 
            +
                        CARD_FINANCIAL =
         | 
| 5786 8039 | 
             
                          T.let(
         | 
| 5787 | 
            -
                            : | 
| 5788 | 
            -
                            Increase::CardPayment::Element:: | 
| 8040 | 
            +
                            :card_financial,
         | 
| 8041 | 
            +
                            Increase::CardPayment::Element::CardFinancial::Type::TaggedSymbol
         | 
| 5789 8042 | 
             
                          )
         | 
| 5790 8043 |  | 
| 5791 8044 | 
             
                        sig do
         | 
| 5792 8045 | 
             
                          override.returns(
         | 
| 5793 8046 | 
             
                            T::Array[
         | 
| 5794 | 
            -
                              Increase::CardPayment::Element:: | 
| 8047 | 
            +
                              Increase::CardPayment::Element::CardFinancial::Type::TaggedSymbol
         | 
| 5795 8048 | 
             
                            ]
         | 
| 5796 8049 | 
             
                          )
         | 
| 5797 8050 | 
             
                        end
         | 
| @@ -5803,7 +8056,7 @@ module Increase | |
| 5803 8056 | 
             
                        OrHash =
         | 
| 5804 8057 | 
             
                          T.type_alias do
         | 
| 5805 8058 | 
             
                            T.any(
         | 
| 5806 | 
            -
                              Increase::CardPayment::Element:: | 
| 8059 | 
            +
                              Increase::CardPayment::Element::CardFinancial::Verification,
         | 
| 5807 8060 | 
             
                              Increase::Internal::AnyHash
         | 
| 5808 8061 | 
             
                            )
         | 
| 5809 8062 | 
             
                          end
         | 
| @@ -5812,7 +8065,7 @@ module Increase | |
| 5812 8065 | 
             
                        # the back of the card.
         | 
| 5813 8066 | 
             
                        sig do
         | 
| 5814 8067 | 
             
                          returns(
         | 
| 5815 | 
            -
                            Increase::CardPayment::Element:: | 
| 8068 | 
            +
                            Increase::CardPayment::Element::CardFinancial::Verification::CardVerificationCode
         | 
| 5816 8069 | 
             
                          )
         | 
| 5817 8070 | 
             
                        end
         | 
| 5818 8071 | 
             
                        attr_reader :card_verification_code
         | 
| @@ -5820,7 +8073,7 @@ module Increase | |
| 5820 8073 | 
             
                        sig do
         | 
| 5821 8074 | 
             
                          params(
         | 
| 5822 8075 | 
             
                            card_verification_code:
         | 
| 5823 | 
            -
                              Increase::CardPayment::Element:: | 
| 8076 | 
            +
                              Increase::CardPayment::Element::CardFinancial::Verification::CardVerificationCode::OrHash
         | 
| 5824 8077 | 
             
                          ).void
         | 
| 5825 8078 | 
             
                        end
         | 
| 5826 8079 | 
             
                        attr_writer :card_verification_code
         | 
| @@ -5829,7 +8082,7 @@ module Increase | |
| 5829 8082 | 
             
                        # we verified it against.
         | 
| 5830 8083 | 
             
                        sig do
         | 
| 5831 8084 | 
             
                          returns(
         | 
| 5832 | 
            -
                            Increase::CardPayment::Element:: | 
| 8085 | 
            +
                            Increase::CardPayment::Element::CardFinancial::Verification::CardholderAddress
         | 
| 5833 8086 | 
             
                          )
         | 
| 5834 8087 | 
             
                        end
         | 
| 5835 8088 | 
             
                        attr_reader :cardholder_address
         | 
| @@ -5837,7 +8090,7 @@ module Increase | |
| 5837 8090 | 
             
                        sig do
         | 
| 5838 8091 | 
             
                          params(
         | 
| 5839 8092 | 
             
                            cardholder_address:
         | 
| 5840 | 
            -
                              Increase::CardPayment::Element:: | 
| 8093 | 
            +
                              Increase::CardPayment::Element::CardFinancial::Verification::CardholderAddress::OrHash
         | 
| 5841 8094 | 
             
                          ).void
         | 
| 5842 8095 | 
             
                        end
         | 
| 5843 8096 | 
             
                        attr_writer :cardholder_address
         | 
| @@ -5846,9 +8099,9 @@ module Increase | |
| 5846 8099 | 
             
                        sig do
         | 
| 5847 8100 | 
             
                          params(
         | 
| 5848 8101 | 
             
                            card_verification_code:
         | 
| 5849 | 
            -
                              Increase::CardPayment::Element:: | 
| 8102 | 
            +
                              Increase::CardPayment::Element::CardFinancial::Verification::CardVerificationCode::OrHash,
         | 
| 5850 8103 | 
             
                            cardholder_address:
         | 
| 5851 | 
            -
                              Increase::CardPayment::Element:: | 
| 8104 | 
            +
                              Increase::CardPayment::Element::CardFinancial::Verification::CardholderAddress::OrHash
         | 
| 5852 8105 | 
             
                          ).returns(T.attached_class)
         | 
| 5853 8106 | 
             
                        end
         | 
| 5854 8107 | 
             
                        def self.new(
         | 
| @@ -5865,9 +8118,9 @@ module Increase | |
| 5865 8118 | 
             
                          override.returns(
         | 
| 5866 8119 | 
             
                            {
         | 
| 5867 8120 | 
             
                              card_verification_code:
         | 
| 5868 | 
            -
                                Increase::CardPayment::Element:: | 
| 8121 | 
            +
                                Increase::CardPayment::Element::CardFinancial::Verification::CardVerificationCode,
         | 
| 5869 8122 | 
             
                              cardholder_address:
         | 
| 5870 | 
            -
                                Increase::CardPayment::Element:: | 
| 8123 | 
            +
                                Increase::CardPayment::Element::CardFinancial::Verification::CardholderAddress
         | 
| 5871 8124 | 
             
                            }
         | 
| 5872 8125 | 
             
                          )
         | 
| 5873 8126 | 
             
                        end
         | 
| @@ -5878,7 +8131,7 @@ module Increase | |
| 5878 8131 | 
             
                          OrHash =
         | 
| 5879 8132 | 
             
                            T.type_alias do
         | 
| 5880 8133 | 
             
                              T.any(
         | 
| 5881 | 
            -
                                Increase::CardPayment::Element:: | 
| 8134 | 
            +
                                Increase::CardPayment::Element::CardFinancial::Verification::CardVerificationCode,
         | 
| 5882 8135 | 
             
                                Increase::Internal::AnyHash
         | 
| 5883 8136 | 
             
                              )
         | 
| 5884 8137 | 
             
                            end
         | 
| @@ -5886,7 +8139,7 @@ module Increase | |
| 5886 8139 | 
             
                          # The result of verifying the Card Verification Code.
         | 
| 5887 8140 | 
             
                          sig do
         | 
| 5888 8141 | 
             
                            returns(
         | 
| 5889 | 
            -
                              Increase::CardPayment::Element:: | 
| 8142 | 
            +
                              Increase::CardPayment::Element::CardFinancial::Verification::CardVerificationCode::Result::TaggedSymbol
         | 
| 5890 8143 | 
             
                            )
         | 
| 5891 8144 | 
             
                          end
         | 
| 5892 8145 | 
             
                          attr_accessor :result
         | 
| @@ -5896,7 +8149,7 @@ module Increase | |
| 5896 8149 | 
             
                          sig do
         | 
| 5897 8150 | 
             
                            params(
         | 
| 5898 8151 | 
             
                              result:
         | 
| 5899 | 
            -
                                Increase::CardPayment::Element:: | 
| 8152 | 
            +
                                Increase::CardPayment::Element::CardFinancial::Verification::CardVerificationCode::Result::OrSymbol
         | 
| 5900 8153 | 
             
                            ).returns(T.attached_class)
         | 
| 5901 8154 | 
             
                          end
         | 
| 5902 8155 | 
             
                          def self.new(
         | 
| @@ -5909,7 +8162,7 @@ module Increase | |
| 5909 8162 | 
             
                            override.returns(
         | 
| 5910 8163 | 
             
                              {
         | 
| 5911 8164 | 
             
                                result:
         | 
| 5912 | 
            -
                                  Increase::CardPayment::Element:: | 
| 8165 | 
            +
                                  Increase::CardPayment::Element::CardFinancial::Verification::CardVerificationCode::Result::TaggedSymbol
         | 
| 5913 8166 | 
             
                              }
         | 
| 5914 8167 | 
             
                            )
         | 
| 5915 8168 | 
             
                          end
         | 
| @@ -5924,7 +8177,7 @@ module Increase | |
| 5924 8177 | 
             
                              T.type_alias do
         | 
| 5925 8178 | 
             
                                T.all(
         | 
| 5926 8179 | 
             
                                  Symbol,
         | 
| 5927 | 
            -
                                  Increase::CardPayment::Element:: | 
| 8180 | 
            +
                                  Increase::CardPayment::Element::CardFinancial::Verification::CardVerificationCode::Result
         | 
| 5928 8181 | 
             
                                )
         | 
| 5929 8182 | 
             
                              end
         | 
| 5930 8183 | 
             
                            OrSymbol = T.type_alias { T.any(Symbol, String) }
         | 
| @@ -5933,27 +8186,27 @@ module Increase | |
| 5933 8186 | 
             
                            NOT_CHECKED =
         | 
| 5934 8187 | 
             
                              T.let(
         | 
| 5935 8188 | 
             
                                :not_checked,
         | 
| 5936 | 
            -
                                Increase::CardPayment::Element:: | 
| 8189 | 
            +
                                Increase::CardPayment::Element::CardFinancial::Verification::CardVerificationCode::Result::TaggedSymbol
         | 
| 5937 8190 | 
             
                              )
         | 
| 5938 8191 |  | 
| 5939 8192 | 
             
                            # The card verification code matched the one on file.
         | 
| 5940 8193 | 
             
                            MATCH =
         | 
| 5941 8194 | 
             
                              T.let(
         | 
| 5942 8195 | 
             
                                :match,
         | 
| 5943 | 
            -
                                Increase::CardPayment::Element:: | 
| 8196 | 
            +
                                Increase::CardPayment::Element::CardFinancial::Verification::CardVerificationCode::Result::TaggedSymbol
         | 
| 5944 8197 | 
             
                              )
         | 
| 5945 8198 |  | 
| 5946 8199 | 
             
                            # The card verification code did not match the one on file.
         | 
| 5947 8200 | 
             
                            NO_MATCH =
         | 
| 5948 8201 | 
             
                              T.let(
         | 
| 5949 8202 | 
             
                                :no_match,
         | 
| 5950 | 
            -
                                Increase::CardPayment::Element:: | 
| 8203 | 
            +
                                Increase::CardPayment::Element::CardFinancial::Verification::CardVerificationCode::Result::TaggedSymbol
         | 
| 5951 8204 | 
             
                              )
         | 
| 5952 8205 |  | 
| 5953 8206 | 
             
                            sig do
         | 
| 5954 8207 | 
             
                              override.returns(
         | 
| 5955 8208 | 
             
                                T::Array[
         | 
| 5956 | 
            -
                                  Increase::CardPayment::Element:: | 
| 8209 | 
            +
                                  Increase::CardPayment::Element::CardFinancial::Verification::CardVerificationCode::Result::TaggedSymbol
         | 
| 5957 8210 | 
             
                                ]
         | 
| 5958 8211 | 
             
                              )
         | 
| 5959 8212 | 
             
                            end
         | 
| @@ -5966,7 +8219,7 @@ module Increase | |
| 5966 8219 | 
             
                          OrHash =
         | 
| 5967 8220 | 
             
                            T.type_alias do
         | 
| 5968 8221 | 
             
                              T.any(
         | 
| 5969 | 
            -
                                Increase::CardPayment::Element:: | 
| 8222 | 
            +
                                Increase::CardPayment::Element::CardFinancial::Verification::CardholderAddress,
         | 
| 5970 8223 | 
             
                                Increase::Internal::AnyHash
         | 
| 5971 8224 | 
             
                              )
         | 
| 5972 8225 | 
             
                            end
         | 
| @@ -5991,7 +8244,7 @@ module Increase | |
| 5991 8244 | 
             
                          # The address verification result returned to the card network.
         | 
| 5992 8245 | 
             
                          sig do
         | 
| 5993 8246 | 
             
                            returns(
         | 
| 5994 | 
            -
                              Increase::CardPayment::Element:: | 
| 8247 | 
            +
                              Increase::CardPayment::Element::CardFinancial::Verification::CardholderAddress::Result::TaggedSymbol
         | 
| 5995 8248 | 
             
                            )
         | 
| 5996 8249 | 
             
                          end
         | 
| 5997 8250 | 
             
                          attr_accessor :result
         | 
| @@ -6005,7 +8258,7 @@ module Increase | |
| 6005 8258 | 
             
                              provided_line1: T.nilable(String),
         | 
| 6006 8259 | 
             
                              provided_postal_code: T.nilable(String),
         | 
| 6007 8260 | 
             
                              result:
         | 
| 6008 | 
            -
                                Increase::CardPayment::Element:: | 
| 8261 | 
            +
                                Increase::CardPayment::Element::CardFinancial::Verification::CardholderAddress::Result::OrSymbol
         | 
| 6009 8262 | 
             
                            ).returns(T.attached_class)
         | 
| 6010 8263 | 
             
                          end
         | 
| 6011 8264 | 
             
                          def self.new(
         | 
| @@ -6031,7 +8284,7 @@ module Increase | |
| 6031 8284 | 
             
                                provided_line1: T.nilable(String),
         | 
| 6032 8285 | 
             
                                provided_postal_code: T.nilable(String),
         | 
| 6033 8286 | 
             
                                result:
         | 
| 6034 | 
            -
                                  Increase::CardPayment::Element:: | 
| 8287 | 
            +
                                  Increase::CardPayment::Element::CardFinancial::Verification::CardholderAddress::Result::TaggedSymbol
         | 
| 6035 8288 | 
             
                              }
         | 
| 6036 8289 | 
             
                            )
         | 
| 6037 8290 | 
             
                          end
         | 
| @@ -6046,7 +8299,7 @@ module Increase | |
| 6046 8299 | 
             
                              T.type_alias do
         | 
| 6047 8300 | 
             
                                T.all(
         | 
| 6048 8301 | 
             
                                  Symbol,
         | 
| 6049 | 
            -
                                  Increase::CardPayment::Element:: | 
| 8302 | 
            +
                                  Increase::CardPayment::Element::CardFinancial::Verification::CardholderAddress::Result
         | 
| 6050 8303 | 
             
                                )
         | 
| 6051 8304 | 
             
                              end
         | 
| 6052 8305 | 
             
                            OrSymbol = T.type_alias { T.any(Symbol, String) }
         | 
| @@ -6055,48 +8308,48 @@ module Increase | |
| 6055 8308 | 
             
                            NOT_CHECKED =
         | 
| 6056 8309 | 
             
                              T.let(
         | 
| 6057 8310 | 
             
                                :not_checked,
         | 
| 6058 | 
            -
                                Increase::CardPayment::Element:: | 
| 8311 | 
            +
                                Increase::CardPayment::Element::CardFinancial::Verification::CardholderAddress::Result::TaggedSymbol
         | 
| 6059 8312 | 
             
                              )
         | 
| 6060 8313 |  | 
| 6061 8314 | 
             
                            # Postal code matches, but the street address does not match or was not provided.
         | 
| 6062 8315 | 
             
                            POSTAL_CODE_MATCH_ADDRESS_NO_MATCH =
         | 
| 6063 8316 | 
             
                              T.let(
         | 
| 6064 8317 | 
             
                                :postal_code_match_address_no_match,
         | 
| 6065 | 
            -
                                Increase::CardPayment::Element:: | 
| 8318 | 
            +
                                Increase::CardPayment::Element::CardFinancial::Verification::CardholderAddress::Result::TaggedSymbol
         | 
| 6066 8319 | 
             
                              )
         | 
| 6067 8320 |  | 
| 6068 8321 | 
             
                            # Postal code does not match, but the street address matches or was not provided.
         | 
| 6069 8322 | 
             
                            POSTAL_CODE_NO_MATCH_ADDRESS_MATCH =
         | 
| 6070 8323 | 
             
                              T.let(
         | 
| 6071 8324 | 
             
                                :postal_code_no_match_address_match,
         | 
| 6072 | 
            -
                                Increase::CardPayment::Element:: | 
| 8325 | 
            +
                                Increase::CardPayment::Element::CardFinancial::Verification::CardholderAddress::Result::TaggedSymbol
         | 
| 6073 8326 | 
             
                              )
         | 
| 6074 8327 |  | 
| 6075 8328 | 
             
                            # Postal code and street address match.
         | 
| 6076 8329 | 
             
                            MATCH =
         | 
| 6077 8330 | 
             
                              T.let(
         | 
| 6078 8331 | 
             
                                :match,
         | 
| 6079 | 
            -
                                Increase::CardPayment::Element:: | 
| 8332 | 
            +
                                Increase::CardPayment::Element::CardFinancial::Verification::CardholderAddress::Result::TaggedSymbol
         | 
| 6080 8333 | 
             
                              )
         | 
| 6081 8334 |  | 
| 6082 8335 | 
             
                            # Postal code and street address do not match.
         | 
| 6083 8336 | 
             
                            NO_MATCH =
         | 
| 6084 8337 | 
             
                              T.let(
         | 
| 6085 8338 | 
             
                                :no_match,
         | 
| 6086 | 
            -
                                Increase::CardPayment::Element:: | 
| 8339 | 
            +
                                Increase::CardPayment::Element::CardFinancial::Verification::CardholderAddress::Result::TaggedSymbol
         | 
| 6087 8340 | 
             
                              )
         | 
| 6088 8341 |  | 
| 6089 8342 | 
             
                            # Postal code matches, but the street address was not verified. (deprecated)
         | 
| 6090 8343 | 
             
                            POSTAL_CODE_MATCH_ADDRESS_NOT_CHECKED =
         | 
| 6091 8344 | 
             
                              T.let(
         | 
| 6092 8345 | 
             
                                :postal_code_match_address_not_checked,
         | 
| 6093 | 
            -
                                Increase::CardPayment::Element:: | 
| 8346 | 
            +
                                Increase::CardPayment::Element::CardFinancial::Verification::CardholderAddress::Result::TaggedSymbol
         | 
| 6094 8347 | 
             
                              )
         | 
| 6095 8348 |  | 
| 6096 8349 | 
             
                            sig do
         | 
| 6097 8350 | 
             
                              override.returns(
         | 
| 6098 8351 | 
             
                                T::Array[
         | 
| 6099 | 
            -
                                  Increase::CardPayment::Element:: | 
| 8352 | 
            +
                                  Increase::CardPayment::Element::CardFinancial::Verification::CardholderAddress::Result::TaggedSymbol
         | 
| 6100 8353 | 
             
                                ]
         | 
| 6101 8354 | 
             
                              )
         | 
| 6102 8355 | 
             
                            end
         | 
| @@ -15334,6 +17587,13 @@ module Increase | |
| 15334 17587 | 
             
                          Increase::CardPayment::Element::Category::TaggedSymbol
         | 
| 15335 17588 | 
             
                        )
         | 
| 15336 17589 |  | 
| 17590 | 
            +
                      # Card Financial: details will be under the `card_financial` object.
         | 
| 17591 | 
            +
                      CARD_FINANCIAL =
         | 
| 17592 | 
            +
                        T.let(
         | 
| 17593 | 
            +
                          :card_financial,
         | 
| 17594 | 
            +
                          Increase::CardPayment::Element::Category::TaggedSymbol
         | 
| 17595 | 
            +
                        )
         | 
| 17596 | 
            +
             | 
| 15337 17597 | 
             
                      # Unknown card payment element.
         | 
| 15338 17598 | 
             
                      OTHER =
         | 
| 15339 17599 | 
             
                        T.let(
         |