Class BankAccount


  • public class BankAccount
    extends java.lang.Object
    BankAccount

    Describes a bank account linked to a Moov account.

    • Constructor Detail

      • BankAccount

        public BankAccount​(java.lang.String bankAccountID,
                           java.lang.String fingerprint,
                           BankAccountStatus status,
                           java.lang.String holderName,
                           BankAccountHolderType holderType,
                           java.lang.String bankName,
                           BankAccountType bankAccountType,
                           java.lang.String routingNumber,
                           java.lang.String lastFourAccountNumber,
                           java.time.OffsetDateTime updatedOn,
                           java.util.Optional<? extends BankAccountStatusReason> statusReason,
                           java.util.Optional<? extends BankAccountException> exceptionDetails,
                           java.util.Optional<? extends java.util.List<BasicPaymentMethod>> paymentMethods)
      • BankAccount

        public BankAccount​(java.lang.String bankAccountID,
                           java.lang.String fingerprint,
                           BankAccountStatus status,
                           java.lang.String holderName,
                           BankAccountHolderType holderType,
                           java.lang.String bankName,
                           BankAccountType bankAccountType,
                           java.lang.String routingNumber,
                           java.lang.String lastFourAccountNumber,
                           java.time.OffsetDateTime updatedOn)
    • Method Detail

      • bankAccountID

        public java.lang.String bankAccountID()
      • fingerprint

        public java.lang.String fingerprint()
        Once the bank account is linked, we don't reveal the full bank account number.

        The fingerprint acts as a way to identify whether two linked bank accounts are the same.

      • holderName

        public java.lang.String holderName()
      • bankName

        public java.lang.String bankName()
      • bankAccountType

        public BankAccountType bankAccountType()
        The bank account type.
      • routingNumber

        public java.lang.String routingNumber()
      • lastFourAccountNumber

        public java.lang.String lastFourAccountNumber()
      • updatedOn

        public java.time.OffsetDateTime updatedOn()
      • statusReason

        public java.util.Optional<BankAccountStatusReason> statusReason()
        The reason the bank account status changed to the current value.
      • exceptionDetails

        public java.util.Optional<BankAccountException> exceptionDetails()
        Reason for, and details related to, an `errored` or `verificationFailed` bank account status.
      • paymentMethods

        public java.util.Optional<java.util.List<BasicPaymentMethod>> paymentMethods()
        Includes any payment methods generated for a newly created bank account, removing the need to call the List Payment Methods endpoint following a successful Create BankAccount request.

        **NOTE: This field is only populated for Create BankAccount requests made with the `X-Wait-For` header.**

      • withBankAccountID

        public BankAccount withBankAccountID​(java.lang.String bankAccountID)
      • withFingerprint

        public BankAccount withFingerprint​(java.lang.String fingerprint)
        Once the bank account is linked, we don't reveal the full bank account number.

        The fingerprint acts as a way to identify whether two linked bank accounts are the same.

      • withHolderName

        public BankAccount withHolderName​(java.lang.String holderName)
      • withBankName

        public BankAccount withBankName​(java.lang.String bankName)
      • withRoutingNumber

        public BankAccount withRoutingNumber​(java.lang.String routingNumber)
      • withLastFourAccountNumber

        public BankAccount withLastFourAccountNumber​(java.lang.String lastFourAccountNumber)
      • withUpdatedOn

        public BankAccount withUpdatedOn​(java.time.OffsetDateTime updatedOn)
      • withStatusReason

        public BankAccount withStatusReason​(java.util.Optional<? extends BankAccountStatusReason> statusReason)
        The reason the bank account status changed to the current value.
      • withExceptionDetails

        public BankAccount withExceptionDetails​(BankAccountException exceptionDetails)
        Reason for, and details related to, an `errored` or `verificationFailed` bank account status.
      • withExceptionDetails

        public BankAccount withExceptionDetails​(java.util.Optional<? extends BankAccountException> exceptionDetails)
        Reason for, and details related to, an `errored` or `verificationFailed` bank account status.
      • withPaymentMethods

        public BankAccount withPaymentMethods​(java.util.List<BasicPaymentMethod> paymentMethods)
        Includes any payment methods generated for a newly created bank account, removing the need to call the List Payment Methods endpoint following a successful Create BankAccount request.

        **NOTE: This field is only populated for Create BankAccount requests made with the `X-Wait-For` header.**

      • withPaymentMethods

        public BankAccount withPaymentMethods​(java.util.Optional<? extends java.util.List<BasicPaymentMethod>> paymentMethods)
        Includes any payment methods generated for a newly created bank account, removing the need to call the List Payment Methods endpoint following a successful Create BankAccount request.

        **NOTE: This field is only populated for Create BankAccount requests made with the `X-Wait-For` header.**

      • equals

        public boolean equals​(java.lang.Object o)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object