stripe
Version:
Stripe API wrapper
214 lines (213 loc) • 7.27 kB
TypeScript
import { Address } from '../shared.js';
export interface FundingInstructions {
/**
* String representing the object's type. Objects of the same type share the same value.
*/
object: 'funding_instructions';
bank_transfer: FundingInstructions.BankTransfer;
/**
* Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
*/
currency: string;
/**
* The `funding_type` of the returned instructions
*/
funding_type: 'bank_transfer';
/**
* If the object exists in live mode, the value is `true`. If the object exists in test mode, the value is `false`.
*/
livemode: boolean;
}
export declare namespace FundingInstructions {
interface BankTransfer {
/**
* The country of the bank account to fund
*/
country: string;
/**
* A list of financial addresses that can be used to fund a particular balance
*/
financial_addresses: Array<BankTransfer.FinancialAddress>;
/**
* The bank_transfer type
*/
type: BankTransfer.Type;
}
namespace BankTransfer {
interface FinancialAddress {
/**
* ABA Records contain U.S. bank account details per the ABA format.
*/
aba?: FinancialAddress.Aba;
/**
* Iban Records contain E.U. bank account details per the SEPA format.
*/
iban?: FinancialAddress.Iban;
/**
* Sort Code Records contain U.K. bank account details per the sort code format.
*/
sort_code?: FinancialAddress.SortCode;
/**
* SPEI Records contain Mexico bank account details per the SPEI format.
*/
spei?: FinancialAddress.Spei;
/**
* The payment networks supported by this FinancialAddress
*/
supported_networks?: Array<FinancialAddress.SupportedNetwork>;
/**
* SWIFT Records contain U.S. bank account details per the SWIFT format.
*/
swift?: FinancialAddress.Swift;
/**
* The type of financial address
*/
type: FinancialAddress.Type;
/**
* Zengin Records contain Japan bank account details per the Zengin format.
*/
zengin?: FinancialAddress.Zengin;
}
type Type = 'eu_bank_transfer' | 'jp_bank_transfer';
namespace FinancialAddress {
interface Aba {
account_holder_address: Address;
/**
* The account holder name
*/
account_holder_name: string;
/**
* The ABA account number
*/
account_number: string;
/**
* The account type
*/
account_type: string;
bank_address: Address;
/**
* The bank name
*/
bank_name: string;
/**
* The ABA routing number
*/
routing_number: string;
}
interface Iban {
account_holder_address: Address;
/**
* The name of the person or business that owns the bank account
*/
account_holder_name: string;
bank_address: Address;
/**
* The BIC/SWIFT code of the account.
*/
bic: string;
/**
* Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
*/
country: string;
/**
* The IBAN of the account.
*/
iban: string;
}
interface SortCode {
account_holder_address: Address;
/**
* The name of the person or business that owns the bank account
*/
account_holder_name: string;
/**
* The account number
*/
account_number: string;
bank_address: Address;
/**
* The six-digit sort code
*/
sort_code: string;
}
interface Spei {
account_holder_address: Address;
/**
* The account holder name
*/
account_holder_name: string;
bank_address: Address;
/**
* The three-digit bank code
*/
bank_code: string;
/**
* The short banking institution name
*/
bank_name: string;
/**
* The CLABE number
*/
clabe: string;
}
type SupportedNetwork = 'ach' | 'bacs' | 'domestic_wire_us' | 'fps' | 'sepa' | 'spei' | 'swift' | 'zengin';
interface Swift {
account_holder_address: Address;
/**
* The account holder name
*/
account_holder_name: string;
/**
* The account number
*/
account_number: string;
/**
* The account type
*/
account_type: string;
bank_address: Address;
/**
* The bank name
*/
bank_name: string;
/**
* The SWIFT code
*/
swift_code: string;
}
type Type = 'aba' | 'iban' | 'sort_code' | 'spei' | 'swift' | 'zengin';
interface Zengin {
account_holder_address: Address;
/**
* The account holder name
*/
account_holder_name: string | null;
/**
* The account number
*/
account_number: string | null;
/**
* The bank account type. In Japan, this can only be `futsu` or `toza`.
*/
account_type: string | null;
bank_address: Address;
/**
* The bank code of the account
*/
bank_code: string | null;
/**
* The bank name of the account
*/
bank_name: string | null;
/**
* The branch code of the account
*/
branch_code: string | null;
/**
* The branch name of the account
*/
branch_name: string | null;
}
}
}
}