Skip to content

PaymentsComponents

Defined in: src/payments/types.gen.ts:181

headers: never

Defined in: src/payments/types.gen.ts:715


parameters: never

Defined in: src/payments/types.gen.ts:713


pathItems: never

Defined in: src/payments/types.gen.ts:716


requestBodies: never

Defined in: src/payments/types.gen.ts:714


responses: never

Defined in: src/payments/types.gen.ts:712


schemas: object

Defined in: src/payments/types.gen.ts:182

AccountClass: "BUSINESS" | "PERSONAL"

AccountType: "CHECKING" | "SAVING"

ACHDetailsRequest: object & object

account_class: "BUSINESS" | "PERSONAL"

account_number: string

account_type: "CHECKING" | "SAVING"

optional beneficiary_name?: string | null

routing_number: string

The routing number must follow proper format.

type: "ACH" | "DOMESTIC_WIRE" | "CHEQUE"

type: "ACH"

discriminator enum property added by openapi-typescript

ACHDetailsResponse: object & object

optional account_class?: "BUSINESS" | "PERSONAL" | null

account_number: string

optional account_type?: "CHECKING" | "SAVING" | null

payment_instrument_id: string

Payment Instrument ID that can be passed to the /transfers endpoint to trigger a transfer. The type of the payment instrument dictates the method.

routing_number: string

type: "ACH" | "DOMESTIC_WIRE" | "CHEQUE" | "INTERNATIONAL_WIRE"

type: "ACH"

discriminator enum property added by openapi-typescript

Address: object

Company business address (must be in the US; no PO box or virtual/forwarding addresses allowed).

optional city?: string | null

City, district, suburb, town, or village.

optional country?: string | null

Two-letter country code (ISO 3166-1 alpha-2).

optional line1?: string | null

Address line 1, no PO Box.

optional line2?: string | null

Address line 2 (e.g., apartment, suite, unit, or building).

optional phone_number?: string | null

Phone number.

optional postal_code?: string | null

ZIP or postal code.

optional state?: string | null

For US-addressed the 2-letter State abbreviation. For international-addresses the county, providence, or region.

ApprovalType: "MANUAL"

Specifies the approval type for the transaction. MANUAL requires a cash admin to approve the transaction before disbursing funds. When not set, the default policy will apply.

Balance: object

amount: object

amount: number

Format: int64

The amount of money, in the smallest denomination of the currency indicated by currency. For example, when currency is USD, amount is in cents.

700

currency: string | null

The type of currency, in ISO 4217 format.

USD
USD

as_of_date: string

Format: date

BankAccountDetailsResponse: Omit<object & object, "type"> & object & object & object

optional account_number?: string | null

Account number of a bank account (or IBAN code for international transfer). For incoming cheques, this field might be null.

optional beneficiary_bank?: { address?: { city?: string | null; country?: string | null; line1?: string | null; line2?: string | null; phone_number?: string | null; postal_code?: string | null; state?: string | null; } | null; name?: string | null; } | null

optional description?: string | null

Description of the transfer.

optional external_memo?: string | null

External Memo populated by the sender

optional fed_reference_number?: string | null

Fed reference number for incoming wires

optional routing_number?: string | null

Routing number of a bank account (or SWIFT/BIC code for international transfer). For incoming cheques, this field might be null.

type: "VENDOR" | "BOOK_TRANSFER" | "BANK_ACCOUNT"

type: "BANK_ACCOUNT"

discriminator enum property added by openapi-typescript

type: "BANK_ACCOUNT"

discriminator enum property added by openapi-typescript

BankConnection: object

optional available_balance?: { amount: { amount: number; currency: string | null; }; as_of_date: string; } | null

{ amount: { amount: number; currency: string | null; }; as_of_date: string; }

amount: object

amount: number

Format: int64

The amount of money, in the smallest denomination of the currency indicated by currency. For example, when currency is USD, amount is in cents.

700

currency: string | null

The type of currency, in ISO 4217 format.

USD
USD

as_of_date: string

Format: date


null

bank_details: object

name: string

The name of the bank

type: "CHECKING" | "SAVING"

optional brex_account_id?: string | null

Brex business account ID

optional current_balance?: { amount: { amount: number; currency: string | null; }; as_of_date: string; } | null

{ amount: { amount: number; currency: string | null; }; as_of_date: string; }

amount: object

amount: number

Format: int64

The amount of money, in the smallest denomination of the currency indicated by currency. For example, when currency is USD, amount is in cents.

700

currency: string | null

The type of currency, in ISO 4217 format.

USD
USD

as_of_date: string

Format: date


null

id: string

last_four: string

BankDetails: object

name: string

The name of the bank

type: "CHECKING" | "SAVING"

BankType: "CHECKING" | "SAVING"

BeneficiaryBank: object

optional address?: { city?: string | null; country?: string | null; line1?: string | null; line2?: string | null; phone_number?: string | null; postal_code?: string | null; state?: string | null; } | null

{ city?: string | null; country?: string | null; line1?: string | null; line2?: string | null; phone_number?: string | null; postal_code?: string | null; state?: string | null; }

optional city?: string | null

City, district, suburb, town, or village.

optional country?: string | null

Two-letter country code (ISO 3166-1 alpha-2).

optional line1?: string | null

Address line 1, no PO Box.

optional line2?: string | null

Address line 2 (e.g., apartment, suite, unit, or building).

optional phone_number?: string | null

Phone number.

optional postal_code?: string | null

ZIP or postal code.

optional state?: string | null

For US-addressed the 2-letter State abbreviation. For international-addresses the county, providence, or region.


null

optional name?: string | null

BookTransferDetails: object & object

recipient: object

id: string

type: "ACCOUNT_ID" | "PAYMENT_INSTRUMENT_ID"

type: "VENDOR" | "BOOK_TRANSFER"

type: "BOOK_TRANSFER"

discriminator enum property added by openapi-typescript

BookTransferDetailsResponse: Omit<object & object, "type"> & object & object & object

deposit_account_id: string

This feature is currently limited to certain customers, please reach out if you are interested

type: "VENDOR" | "BOOK_TRANSFER" | "BANK_ACCOUNT"

type: "BOOK_TRANSFER"

discriminator enum property added by openapi-typescript

type: "BOOK_TRANSFER"

discriminator enum property added by openapi-typescript

BrexCashAccountDetails: object & object

id: string

ID of the Brex Business account: Can be found from the /accounts endpoint where instrument type is CASH.

type: "BREX_CASH"

type: "BREX_CASH"

discriminator enum property added by openapi-typescript

BrexCashAccountDetailsResponse: object & object

id: string

ID of the Brex Business account.

type: "BREX_CASH"

type: "BREX_CASH"

discriminator enum property added by openapi-typescript

BrexCashDetails: object & object

id: string

ID of the Brex business account: Can be found from the List business accounts endpoint

type: "BREX_CASH"

type: "BREX_CASH"

discriminator enum property added by openapi-typescript

ChequeDetailsRequest: object & object

optional beneficiary_name?: string | null

mailing_address: object

optional city?: string | null

City, district, suburb, town, or village.

optional country?: string | null

Two-letter country code (ISO 3166-1 alpha-2).

optional line1?: string | null

Address line 1, no PO Box.

optional line2?: string | null

Address line 2 (e.g., apartment, suite, unit, or building).

optional phone_number?: string | null

Phone number.

optional postal_code?: string | null

ZIP or postal code.

optional state?: string | null

For US-addressed the 2-letter State abbreviation. For international-addresses the county, providence, or region.

recipient_name: string

type: "ACH" | "DOMESTIC_WIRE" | "CHEQUE"

type: "CHEQUE"

discriminator enum property added by openapi-typescript

ChequeDetailsResponse: object & object

mailing_address: object

optional city?: string | null

City, district, suburb, town, or village.

optional country?: string | null

Two-letter country code (ISO 3166-1 alpha-2).

optional line1?: string | null

Address line 1, no PO Box.

optional line2?: string | null

Address line 2 (e.g., apartment, suite, unit, or building).

optional phone_number?: string | null

Phone number.

optional postal_code?: string | null

ZIP or postal code.

optional state?: string | null

For US-addressed the 2-letter State abbreviation. For international-addresses the county, providence, or region.

payment_instrument_id: string

Payment Instrument ID that can be passed to the /transfers endpoint to trigger a transfer. The type of the payment instrument dictates the method.

recipient_name: string

type: "ACH" | "DOMESTIC_WIRE" | "CHEQUE" | "INTERNATIONAL_WIRE"

type: "CHEQUE"

discriminator enum property added by openapi-typescript

CounterParty: object & object | object & object

Counterparty Details for the transfer

CounterPartyBankDetails: object & object

id: string

The financial account id: Can be found from the List linked accounts endpoint

type: "BANK"

type: "BANK"

discriminator enum property added by openapi-typescript

CounterPartyIncomingTransfer: object & object

id: string

The financial account id: Can be found from the List linked accounts endpoint

type: "BANK"

type: "BANK"

discriminator enum property added by openapi-typescript

Counterparty Details for the transfer

CounterPartyIncomingTransferType: "BANK"

CounterPartyResponse: object & object

optional account_number?: string | null

Account number of a bank account (or IBAN code for international transfer).

id: string

Vendor ID returned from /vendors endpoint

payment_instrument_id: string

optional routing_number?: string | null

Routing number of a bank account (or SWIFT/BIC code for international transfer).

type: "VENDOR" | "BOOK_TRANSFER" | "BANK_ACCOUNT"

type: "VENDOR"

discriminator enum property added by openapi-typescript

Counterparty Details for the transfer - Currently only supports vendors that are returned in the response from the /vendors endpoint BOOK_TRANSFER is a limited feature. Please reach out if you are interested.

CounterPartyResponseType: "VENDOR" | "BOOK_TRANSFER" | "BANK_ACCOUNT"

CounterPartyType: "VENDOR" | "BOOK_TRANSFER"

CreateIncomingTransferRequest: object

amount: object

CreateIncomingTransferRequest.amount.amount
Section titled “CreateIncomingTransferRequest.amount.amount”

amount: number

Format: int64

The amount of money, in the smallest denomination of the currency indicated by currency. For example, when currency is USD, amount is in cents.

700
CreateIncomingTransferRequest.amount.currency
Section titled “CreateIncomingTransferRequest.amount.currency”

currency: string | null

The type of currency, in ISO 4217 format.

USD
USD
CreateIncomingTransferRequest.counterparty
Section titled “CreateIncomingTransferRequest.counterparty”

counterparty: object & object

id: string

The financial account id: Can be found from the List linked accounts endpoint

type: "BANK"

type: "BANK"

discriminator enum property added by openapi-typescript

description: string

Description of the transfer for internal use. Not exposed externally.

CreateIncomingTransferRequest.receiving_account
Section titled “CreateIncomingTransferRequest.receiving_account”

receiving_account: object & object

id: string

ID of the Brex business account: Can be found from the List business accounts endpoint

type: "BREX_CASH"

type: "BREX_CASH"

discriminator enum property added by openapi-typescript

CreateTransferRequest: object

amount: object

amount: number

Format: int64

The amount of money, in the smallest denomination of the currency indicated by currency. For example, when currency is USD, amount is in cents.

700

currency: string | null

The type of currency, in ISO 4217 format.

USD
USD

optional approval_type?: "MANUAL" | null

counterparty: object & object | object & object

description: string

Description of the transfer for internal use. Not exposed externally.

external_memo: string

External memo for the transfer. Payment Instructions for Wires and the Entry Description for ACH payments. Must be at most 90 characters for ACH and WIRE transactions and at most 40 characters for CHEQUES

optional is_ppro_enabled?: boolean

When set to true, add Principal Protection (PPRO) to the transaction. PPRO means Brex will cover any fees charged by intemediary or receiving banks. PPRO charges will be billed separately in a monthly statement. PPRO is only available for international wire transactions.

originating_account: Omit<object & object, "type">

CreateVendorRequest: object

company_name: string

Name for vendor. The name must be unique.

optional email?: string | null

Format: email

Email for vendor.

optional payment_accounts?: object[] | null

Payment accounts associated with the vendor.

optional phone?: string | null

Phone number for vendor.

DomesticWireDetailsRequest: object & object

account_number: string

address: object

optional city?: string | null

City, district, suburb, town, or village.

optional country?: string | null

Two-letter country code (ISO 3166-1 alpha-2).

optional line1?: string | null

Address line 1, no PO Box.

optional line2?: string | null

Address line 2 (e.g., apartment, suite, unit, or building).

optional phone_number?: string | null

Phone number.

optional postal_code?: string | null

ZIP or postal code.

optional state?: string | null

For US-addressed the 2-letter State abbreviation. For international-addresses the county, providence, or region.

optional beneficiary_name?: string | null

routing_number: string

The routing number must follow proper format.

type: "ACH" | "DOMESTIC_WIRE" | "CHEQUE"

type: "DOMESTIC_WIRE"

discriminator enum property added by openapi-typescript

DomesticWireDetailsResponse: object & object

account_number: string

address: object

optional city?: string | null

City, district, suburb, town, or village.

optional country?: string | null

Two-letter country code (ISO 3166-1 alpha-2).

optional line1?: string | null

Address line 1, no PO Box.

optional line2?: string | null

Address line 2 (e.g., apartment, suite, unit, or building).

optional phone_number?: string | null

Phone number.

optional postal_code?: string | null

ZIP or postal code.

optional state?: string | null

For US-addressed the 2-letter State abbreviation. For international-addresses the county, providence, or region.

payment_instrument_id: string

Payment Instrument ID that can be passed to the /transfers endpoint to trigger a transfer. The type of the payment instrument dictates the method.

routing_number: string

type: "ACH" | "DOMESTIC_WIRE" | "CHEQUE" | "INTERNATIONAL_WIRE"

type: "DOMESTIC_WIRE"

discriminator enum property added by openapi-typescript

InternationalWireDetailsResponse: object & object

address: object

optional city?: string | null

City, district, suburb, town, or village.

optional country?: string | null

Two-letter country code (ISO 3166-1 alpha-2).

optional line1?: string | null

Address line 1, no PO Box.

optional line2?: string | null

Address line 2 (e.g., apartment, suite, unit, or building).

optional phone_number?: string | null

Phone number.

optional postal_code?: string | null

ZIP or postal code.

optional state?: string | null

For US-addressed the 2-letter State abbreviation. For international-addresses the county, providence, or region.

optional beneficiary_bank_name?: string | null

Name of counterparty’s bank

iban: string

Counterparty’s international bank account number

payment_instrument_id: string

Payment Instrument ID that can be passed to the /transfers endpoint to trigger a transfer. The type of the payment instrument dictates the method.

swift_code: string

Counterparty’s SWIFT code

type: "ACH" | "DOMESTIC_WIRE" | "CHEQUE" | "INTERNATIONAL_WIRE"

type: "INTERNATIONAL_WIRE"

discriminator enum property added by openapi-typescript

Money: object

Money fields can be signed or unsigned. Fields are signed (an unsigned value will be interpreted as positive). The amount of money will be represented in the smallest denomination of the currency indicated. For example, USD 7.00 will be represented in cents with an amount of 700.

amount: number

Format: int64

The amount of money, in the smallest denomination of the currency indicated by currency. For example, when currency is USD, amount is in cents.

700

currency: string | null

The type of currency, in ISO 4217 format.

USD
USD

OriginatingAccount: object & object

id: string

ID of the Brex Business account: Can be found from the /accounts endpoint where instrument type is CASH.

type: "BREX_CASH"

type: "BREX_CASH"

discriminator enum property added by openapi-typescript

Originating account details for the transfer

OriginatingAccountResponse: object & object

id: string

ID of the Brex Business account.

type: "BREX_CASH"

type: "BREX_CASH"

discriminator enum property added by openapi-typescript

Originating account details for the transfer

OriginatingAccountResponseType: "BREX_CASH"

OriginatingAccountType: "BREX_CASH"

Page_BankConnection_: object

items: object[]

optional next_cursor?: string | null

Page_Transfer_: object

items: object[]

optional next_cursor?: string | null

Page_VendorResponse_: object

items: object[]

optional next_cursor?: string | null

PaymentAccountDetails: object & object | object & object | object & object

Payment Instruments associated with the vendor. Each vendor can only have one payment account per payment instrument type. For instance, a vendor may have associated details for each of ACH, DOMESTIC_WIRE, and CHEQUE, but they cannot have 2 entries for ACH. If you modify a vendor’s existing payment instrument type with new details, it will overwrite any previous data.

PaymentAccountDetailsResponse: object & object | object & object | object & object | object & object

PaymentAccountRequest: object

details: object & object | object & object | object & object

PaymentAccountResponse: object

details: object & object | object & object | object & object | object & object

PaymentDetailsTypeRequest: "ACH" | "DOMESTIC_WIRE" | "CHEQUE"

PaymentDetailsTypeResponse: "ACH" | "DOMESTIC_WIRE" | "CHEQUE" | "INTERNATIONAL_WIRE"

PaymentType: "ACH" | "DOMESTIC_WIRE" | "CHEQUE" | "INTERNATIONAL_WIRE" | "BOOK_TRANSFER" | "STABLECOIN"

ReceivingAccount: object & object

id: string

ID of the Brex business account: Can be found from the List business accounts endpoint

type: "BREX_CASH"

type: "BREX_CASH"

discriminator enum property added by openapi-typescript

Receiving account details for the transfer

ReceivingAccountType: "BREX_CASH"

Recipient: object

id: string

type: "ACCOUNT_ID" | "PAYMENT_INSTRUMENT_ID"

RecipientType: "ACCOUNT_ID" | "PAYMENT_INSTRUMENT_ID"

Specifies the type of the recipient. ACCOUNT_ID is the ID of a Brex Business account. PAYMENT_INSTRUMENT_ID is the ID of Payment Instrument of the receiving Brex account.

Transfer: object

amount: object

amount: number

Format: int64

The amount of money, in the smallest denomination of the currency indicated by currency. For example, when currency is USD, amount is in cents.

700

currency: string | null

The type of currency, in ISO 4217 format.

USD
USD

optional cancellation_reason?: "USER_CANCELLED" | "INSUFFICIENT_FUNDS" | "APPROVAL_DENIED" | "BLOCKED_BY_POSITIVE_PAY" | null

optional counterparty?: Omit<object & object, "type"> | null

optional created_at?: string | null

Format: date

Date of transfer creation

optional creator_user_id?: string | null

User ID of the transfer initiator

optional description?: string | null

Description of the transfer

optional display_name?: string | null

Human readable name for the transaction

optional estimated_delivery_date?: string | null

Format: date

Estimated delivery date for transfer

optional external_memo?: string | null

External memo for the transfer. Payment Instructions for Wires and the Entry Description for ACH payments. Must be at most 90 characters for ACH and WIRE transactions and at most 40 characters for CHEQUES

id: string

Unique ID associated with the transfer

optional is_ppro_enabled?: boolean | null

If Principal Protection (PPRO) is enabled

originating_account: object & object

id: string

ID of the Brex Business account.

type: "BREX_CASH"

type: "BREX_CASH"

discriminator enum property added by openapi-typescript

payment_type: "ACH" | "DOMESTIC_WIRE" | "CHEQUE" | "INTERNATIONAL_WIRE" | "BOOK_TRANSFER" | "STABLECOIN"

optional process_date?: string | null

Format: date

Transaction processing date

status: "PROCESSING" | "SCHEDULED" | "PENDING_APPROVAL" | "FAILED" | "PROCESSED"

TransferCancellationReason: "USER_CANCELLED" | "INSUFFICIENT_FUNDS" | "APPROVAL_DENIED" | "BLOCKED_BY_POSITIVE_PAY"

USER_CANCELLED: The transfer was canceled. INSUFFICIENT_FUNDS: The transfer could not be sent due to insufficient funds. APPROVAL_DENIED: The transfer was not sent because it was denied. BLOCKED_BY_POSITIVE_PAY: The transfer was blocked because of the ACH debit settings.

TransferStatus: "PROCESSING" | "SCHEDULED" | "PENDING_APPROVAL" | "FAILED" | "PROCESSED"

PROCESSING: We have started to process the sending or receiving of this transaction. SCHEDULED: The transaction is scheduled to enter the PROCESSING status. PENDING_APPROVAL: The transaction requires approval before it can enter the SCHEDULED or PROCESSING status. FAILED: A grouping of multiple terminal states that prevented the transaction from completing. This includes a a user-cancellation, approval being denied, insufficient funds, failed verifications, etc. PROCESSED: The money movement has been fully completed, which could mean money sent has arrived.

UpdateVendorRequest: object

optional beneficiary_name?: string | null

Name for the Beneficiary

optional company_name?: string | null

Name for vendor

optional email?: string | null

Format: email

Email for vendor

optional payment_accounts?: object[] | null

To update payment instruments, we require the entire payload for each payment instrument that is being updated.

optional phone?: string | null

Phone number for vendor

VendorDetails: object & object

payment_instrument_id: string

ID of the vendor’s payment instrument: this will dictate the payment method and the counterparty of the transaction. The payment instrument ID is returned from the /vendors response and the type of the instrument will dictate the payment method. eg. Passing an instrument ID of type ACH will trigger an ACH payment to the associated vendor. Since a payment instrument can be updated while retaining the same payment_instrument_id, please make sure to double check the details.

type: "VENDOR" | "BOOK_TRANSFER"

type: "VENDOR"

discriminator enum property added by openapi-typescript

VendorDetailsResponse: object & object

optional account_number?: string | null

Account number of a bank account (or IBAN code for international transfer).

id: string

Vendor ID returned from /vendors endpoint

payment_instrument_id: string

optional routing_number?: string | null

Routing number of a bank account (or SWIFT/BIC code for international transfer).

type: "VENDOR" | "BOOK_TRANSFER" | "BANK_ACCOUNT"

type: "VENDOR"

discriminator enum property added by openapi-typescript

VendorResponse: object

optional company_name?: string | null

optional email?: string | null

id: string

Vendor ID: Can be passed to /transfers endpoint to specify counterparty.

optional payment_accounts?: object[] | null

optional phone?: string | null