GET
/
v1
/
businesses
/
{businessId}
/
bank-transactions
List bank transactions
curl --request GET \
  --url https://sandbox.layerfi.com/v1/businesses/{businessId}/bank-transactions \
  --header 'Authorization: Bearer <token>'
[
  {
    "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "business_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "source": "UNIT",
    "source_transaction_id": "g4DlKyjXqGH3Kp5XlaWMtwLRrE4Z9AiE8B4Ko",
    "source_account_id": "Aaoy8G7VXZHVeqNoL1GvcmkPdqpLRWi9NArdG",
    "imported_at": "2023-11-07T05:31:56Z",
    "date": "2023-11-07T05:31:56Z",
    "direction": "CREDIT",
    "amount": 123,
    "counterparty_name": "WeWork",
    "description": "WeWork monthly rent payment",
    "account_name": "Plaid Checking",
    "categorizationStatus": "PENDING",
    "category": {
      "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "stable_name": "RENT",
      "category": "RENT",
      "display_name": "Rent"
    },
    "categorization_method": "SMS",
    "projected_income_category": "REVENUE",
    "suggested_matches": [
      {
        "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "matchType": "TRANSFER",
        "details": {
          "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
          "amount": 123,
          "date": "2023-11-07T05:31:56Z",
          "description": "Transfer from SavingsAccount to CheckingAccount"
        }
      }
    ],
    "match": {
      "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "match_type": "TRANSFER",
      "bank_transaction": {
        "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "business_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "source": "UNIT",
        "source_transaction_id": "g4DlKyjXqGH3Kp5XlaWMtwLRrE4Z9AiE8B4Ko",
        "source_account_id": "Aaoy8G7VXZHVeqNoL1GvcmkPdqpLRWi9NArdG",
        "imported_at": "2023-11-07T05:31:56Z",
        "date": "2023-11-07T05:31:56Z",
        "direction": "CREDIT",
        "amount": 123,
        "counterparty_name": "WeWork",
        "description": "WeWork monthly rent payment",
        "account_name": "Plaid Checking",
        "categorizationStatus": "PENDING",
        "memo": "<string>",
        "metadata": {
          "custom_field": "value",
          "any valid json": "below 10kb",
          "nested": {
            "meaning of life": 42,
            "array": []
          }
        },
        "reference_number": "<string>"
      },
      "details": {
        "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "amount": 123,
        "date": "2023-11-07T05:31:56Z",
        "description": "Transfer from SavingsAccount to CheckingAccount"
      }
    },
    "transaction_tags": [
      {
        "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "key": "ExampleTagKey",
        "value": "ExampleTagValue",
        "dimension_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "definition_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "created_at": "2023-11-07T05:31:56Z",
        "updated_at": "2023-11-07T05:31:56Z",
        "deleted_at": "2023-11-07T05:31:56Z"
      }
    ],
    "memo": "<string>",
    "metadata": {
      "custom_field": "value",
      "any valid json": "below 10kb",
      "nested": {
        "meaning of life": 42,
        "array": []
      }
    },
    "reference_number": "<string>"
  }
]

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Headers

Content-Type
string

Content-Type must be set to application/json

Path Parameters

businessId
string
required

The UUID of the business to fetch bank transactions for

Query Parameters

reference_numbers
string

Comma-separated list of reference numbers to filter transactions. Only transactions with reference numbers matching any value in this list will be returned.

start_date
string<date-time>

The start date of the transaction range to fetch.

end_date
string<date-time>

The end date of the transaction range to fetch.

direction
enum<string>

The direction of the transaction to fetch.

Available options:
INFLOW,
OUTFLOW
categorization_status
enum<string>

The categorization status of the transaction to fetch.

Available options:
CATEGORIZED,
UNCATEGORIZED,
PENDING,
MATCHED
amount_min
integer

The minimum amount of the transaction to fetch.

amount_max
integer

The maximum amount of the transaction to fetch.

description_filter
string

Substring to search for in description transactions. Only exact matches will be returned.

description_filter_regex
string

Regex to search for in description transactions. Regex will be parsed exactly as given and an error will be returned if the regex is invalid.

external_account_ids
string

Comma-separated list of external account (e.g. Plaid account) IDs. This will filter for bank transactions within the provided list of accounts.

memo
string

Filter transactions by exact memo match.

memo_contains
string

Filter transactions where memo contains this substring.

customer_id
string<uuid>

UUID of the customer to filter transactions by.

customer_external_id
string

External ID of the customer to filter transactions by.

vendor_id
string<uuid>

UUID of the vendor to filter transactions by.

vendor_external_id
string

External ID of the vendor to filter transactions by.

is_matched
boolean

Filter transactions by whether they are matched (true) or not matched (false).

category
string

Filter transactions by category identifier or stable name.

categorized
boolean

Filter transactions by whether they are categorized (true) or not categorized (false).

merchant_name_filter
string

Substring to search for in merchant name. Only exact matches will be returned.

merchant_name_filter_regex
string

Regex to search for in merchant name. Regex will be parsed exactly as given and an error will be returned if the regex is invalid.

Response

id
string<uuid>

Unique identifier of the bank transaction

business_id
string<uuid>

Unique identifier of the business the bank transaction is associated with

source
enum<string>

Source of the transaction.

Available options:
UNIT,
PLAID,
API,
STRIPE,
CUSTOM
source_transaction_id
string

External transaction ID from the source platform (e.g, Plaid transaction ID)

Example:

"g4DlKyjXqGH3Kp5XlaWMtwLRrE4Z9AiE8B4Ko"

source_account_id
string

External account ID from the source platform (e.g, Plaid account ID)

Example:

"Aaoy8G7VXZHVeqNoL1GvcmkPdqpLRWi9NArdG"

imported_at
string<date-time>

Timestamp when the transaction was imported

date
string<date-time>

Date of the transaction

direction
enum<string>

Direction of the transaction.

Available options:
CREDIT,
DEBIT
amount
integer

Transaction amount in cents

counterparty_name
string | null

Name of the transaction counterparty

Example:

"WeWork"

description
string | null

Description of the transaction.

Example:

"WeWork monthly rent payment"

account_name
string | null

Name of the bank account

Example:

"Plaid Checking"

categorizationStatus
enum<string>

The status of the transaction’s categorization in Layer’s systems.

Available options:
PENDING,
READY_FOR_INPUT,
CATEGORIZED,
SPLIT,
LAYER_REVIEW,
JOURNALING,
MATCHED
category
object

The category assigned to the transaction. Only populated for transactions that have a finalized category.

categorization_method
enum<string>

The method used to classify the transaction.

Available options:
SMS,
API,
LAYER_AUTO,
LAYER_MANUAL
projected_income_category
enum<string>
Available options:
REVENUE,
EXPENSE,
EXCLUDE
suggested_matches
object[]
match
object
transaction_tags
object[]
memo
string | null

Memo for any text you would like to associate with the bank transaction (for example, to display to end users).

metadata
object

Arbitrary custom metadata in JSON format with a size limit of 10KB

Example:
{
"custom_field": "value",
"any valid json": "below 10kb",
"nested": { "meaning of life": 42, "array": [] }
}
reference_number
string | null

Any (typically user-visible) identifier you would like to associate with the bank transaction. Can be used to filter when listing bank transactions.