BankAccountToken constructor

const BankAccountToken({
  1. required String id,
  2. @Default("bank_account") String object,
  3. @JsonKey(name: "account_holder_name") String? accountHolderName,
  4. @JsonKey(name: "account_holder_type") BankAccountHolderType? accountHolderType,
  5. @JsonKey(name: "account_type") String? accountType,
  6. @JsonKey(name: "bank_name") String? bankName,
  7. String? country,
  8. String? currency,
  9. String? fingerprint,
  10. String? last4,
  11. @JsonKey(name: "routing_number") String? routingNumber,
  12. BankAccountStatus? status,
})

Implementation

const factory BankAccountToken({
  /// Unique identifier for the object.
  required String id,

  /// String representing the object’s type.
  /// Objects of the same type share the same value.
  /// Value is "bank_account".
  @Default("bank_account") String object,

  /// The name of the person or business that owns the bank account.
  @JsonKey(name: "account_holder_name") String? accountHolderName,

  /// The type of entity that holds the account.
  /// This can be either individual or company.
  @JsonKey(name: "account_holder_type")
  BankAccountHolderType? accountHolderType,

  /// The bank account type.
  /// This can only be checking or savings in most countries.
  /// In Japan, this can only be futsu or toza.
  @JsonKey(name: "account_type") String? accountType,

  /// Name of the bank associated with the routing number (e.g., WELLS FARGO).
  @JsonKey(name: "bank_name") String? bankName,

  /// Two-letter ISO code representing the country the bank account is
  /// located in.
  String? country,

  /// Three-letter ISO code for the currency paid out to the bank account.
  String? currency,

  /// Uniquely identifies this particular bank account.
  /// You can use this attribute to check whether two bank accounts are
  /// the same.
  String? fingerprint,

  /// The last four digits of the bank account number.
  String? last4,

  /// The routing transit number for the bank account.
  @JsonKey(name: "routing_number") String? routingNumber,

  /// For bank accounts, possible values are new, validated, verified,
  /// verification_failed, or errored.
  /// A bank account that hasn’t had any activity or validation performed
  /// is new.
  /// If Stripe can determine that the bank account exists,
  /// its status will be validated.
  /// Note that there often isn’t enough information to know
  /// (e.g., for smaller credit unions), and the validation is not always run.
  /// If customer bank account verification has succeeded, the bank account
  /// status will be verified. If the verification failed for any reason,
  /// such as microdeposit failure, the status will be verification_failed.
  /// If a transfer sent to this bank account fails, we’ll set the status to
  /// errored and will not continue to send transfers until the bank details
  /// are updated.
  ///
  /// For external accounts, possible values are new and errored.
  /// Validations aren’t run against external accounts because they’re
  /// only used for payouts. This means the other statuses don’t apply.
  /// If a transfer fails, the status is set to errored and transfers are
  /// stopped until account details are updated.
  BankAccountStatus? status,
}) = _BankAccountToken;