---
title: "List source accounts (bank, card, and other transaction feeds)"
method: GET
path: "/books/source-accounts"
tags: ["Books"]
---

# List source accounts (bank, card, and other transaction feeds)

`GET /books/source-accounts`

## Request

- Base URL: `https://api.mercury.com/api/v1`
- URL: `https://api.mercury.com/api/v1/books/source-accounts`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/mercurytechnologies/apis/mercury-api/docs/books/source-accounts/get.ts> (a function with typed inputs; its response is checked against the schema)

Returns every source account of a Books instance. A source account is a bank account, credit card, or other feed whose transactions Books imports into the general ledger. Call this first to find the source account whose transactions you want to list or categorize. Each source account has: `id`, to pass as `sourceAccountId` to `GET /books/transactions` (getBooksTransactions) and `GET /books/transaction/{transactionId}` (getBooksTransaction). It is not a ledger ID. `name`, its display name. `ledgerId`, the general ledger (GL) account its transactions post to. `debitCredit`, the side a positive transaction amount posts to: `debit` for an asset such as a bank account, `credit` for a liability such as a credit card. `businessPersonal`, `business` or `personal`. `origin`, where it comes from: `mercury` (a Mercury account), `plaid` (an external account linked through Plaid), `rutterCommerce` (a commerce platform connection), or `manual` (transactions added by hand).

## Query parameters

- `booksId` string, uuid: The Books instance to act on. Must be the token organization's own instance, which it defaults to.

## Response `200`

- GetBooksAPISourceAccountsResponse: Response containing every source account of a Books instance.
  - `sourceAccounts` BooksAPISourceAccount[], required: The Books instance's source accounts
    - `businessPersonal` 'business' | 'personal', required: Whether the source account holds business or personal transactions.
    - `debitCredit` 'debit' | 'credit', required: The source account's natural side: `debit` for an asset such as a bank account, `credit` for a liability such as a credit card. A positive transaction amount is posted on this side, increasing the source account's ledger balance.
    - `id` string, base58 (max length 22), required: The unique identifier of the source account: the `sourceAccountId` to pass when listing or fetching its transactions. It is not a ledger ID.
    - `ledgerId` string, base58 (max length 22), required: The identifier of the ledger (general ledger account) the source account's transactions post to.
    - `name` string, required: The display name of the source account.
    - `origin` 'mercury' | 'plaid' | 'rutterCommerce' | 'manual', required: How the source account came to exist in Books.

## Other responses

- `400`: Invalid `booksId`

## Changes

- **2026-11-03** `95c77a617769`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/mercurytechnologies/apis/mercury-api/changes/books/source-accounts/get.md)

---

[API](https://skmtc.dev/mercurytechnologies/apis/mercury-api.md) - [All operations](https://skmtc.dev/mercurytechnologies/apis/mercury-api/llms.txt) - [OpenAPI document](https://skmtc.dev/mercurytechnologies/apis/mercury-api/revisions/95c77a617769?raw)
