Skip to content

Search & Queries

Find transactions, filter balances, and build reports using the Bkper query language — from the Search Assistant to saved queries and dynamic date variables.

Bkper Search uses a powerful query language for filtering transactions and balance values. This same language works across the Bkper web app, the Bkper Add-on for Google Sheets, Bkper Functions, and Google Apps Script — so a query that works in one place works everywhere.

Search results display matching transactions along with corresponding balance values (shown in charts). On the Bkper Add-on for Google Sheets, results can also be fetched as balance values and/or transactions.

Search Assistant

The Search Assistant guides you through building queries visually. Access it from the search bar at the top of any Book.

The Bkper search bar where the Search Assistant is accessed

Type the term you are looking for and the Search Assistant suggests matching options based on your Book’s Accounts, Groups, and transaction data.

The Search Assistant suggesting options as you type a search term

Picking absolute dates

Click the Date Picker in the Search Assistant to select fixed start and end dates.

The date picker for selecting absolute dates in the Search Assistant

You can also choose which date type to filter on:

Date type selector showing Transaction Date, Post Date, and Update Date options
  • Transaction Date — the first date column on a transaction.
  • Post Date — the last date column on a transaction.
  • Update Date — the date a transaction was last modified.

Press Search and the assembled query is added to the search bar and executed. The matching transactions appear in the list below.

Search results after running a query built with the Search Assistant

The Search Assistant is a great way to learn query syntax — the queries you build here work identically in Bkper Functions for Google Sheets and in the Bkper Add-on.

Using search directly

You can also type queries directly in the search field on the Transactions page and press Enter.

Bkper search field on the transactions page

Search operators

By account or group

OperatorDescriptionExample
account:Filter by accountaccount:Cash
from:Filter by origin (From) accountfrom:Cash
to:Filter by destination (To) accountto:Expenses
group:Filter by groupgroup:Expenses

By transaction status

OperatorExample
is:draftTransactions not yet posted
is:postedPosted transactions
is:trashedTrashed transactions
is:checkedChecked transactions
is:uncheckedUnchecked transactions

By user

OperatorDescriptionExample
createdBy:Filter by the user who recorded the transactioncreatedBy:arun
updatedBy:Filter by the user who last updated the transactionupdatedBy:arun

By account type

Use these keywords without a colon to filter by account type:

asset | liability | incoming | outgoing

By date

OperatorDescriptionExample
on:Transactions on a specific dateon:2024-01-01
after:Transactions after a dateafter:2023-12-31
before:Transactions before a datebefore:2025-01-01
after: before:Date range (between)after:2023-12-31 before:2025-01-01

By creation or modification date

OperatorDescriptionExample
using:createdAtSearch by creation dateafter:02/07/2025 before:02/10/2025 using:createdAt
using:updatedAtSearch by last modification dateusing:updatedAt after:$d-2

Date variables

Date variables create dynamic, relative date references — especially useful in Google Sheets reports that should always reflect recent data.

VariableDescriptionExample
$dRelative days$d-14 (14 days ago), $d+1 (tomorrow)
$mRelative months$m-3 (3 months ago), $m+1 (1 month ahead)
$yRelative years$y-1 (last year), $y+1 (next year)

Combine date ranges with variables to create rolling reports. For example, after:$d-14 before:$d+1 always returns the last 14 days of results.

Using date variables to define a dynamic date range in the search

The Date Variable annotation follows the pattern: ($y|$m|$d)(-|+)(1-999).

Date variable annotation syntax reference

By amount

OperatorDescriptionExample
amount:Exact amountamount:2000
amount>Greater thanamount>1000
amount<Less thanamount<1000

Logical operators

OperatorDescriptionExample
AND (default)Match all conditionsamount:2000 AND account:Expense
ORMatch either conditionaccount:'Revenue' OR account:'Other Income'
NOTExclude from resultsNOT "Bank Account"

Balance periodicity

Change how balance values are grouped in search results:

OperatorDescription
by:dBalance values per day
by:mBalance values per month
by:yBalance values per year

Examples

Combining AND, OR, and a date filter — Find salary payments from a specific account before a date:

account:'Brex Cash' ('Salary Pat' OR 'Salary Michael') before:01/01/2026
Bkper search results showing salary transactions from the Brex Cash account

Dynamic income search for the last 24 months — Show Revenue and Cost of Goods Sold over a rolling window:

group:'Revenue' OR group:'COGS' after:$m-24
Bkper search results showing Revenue and COGS groups with balance chart over 24 months

Saved queries

Saved queries reduce the effort of periodic reporting. Prepare your search conditions — including date variables for dynamic ranges — and save the query for later use. You can re-run it with a single click in the web app, or use it with auto-update in the Bkper Add-on for Google Sheets.

Saving a query

Open your Book and type the desired query in the search box. Then open the context menu (three-dot icon), select Save Query, give it a meaningful name, and confirm with OK.

Typing a query in the Bkper search box Selecting Save Query from the context menu Entering a descriptive name for the saved query

Accessing a saved query

From the Bkper web app

Your saved queries appear in the left sidebar of the Book. Click any saved query to instantly run it and view the updated results.

Saved queries listed in the left sidebar of a Bkper Book

From the Bkper Add-on for Google Sheets

Open a Google Sheet and launch the Bkper Add-on for Google Sheets. Select your Book, click Fetch, and choose your saved query from the list. The add-on pulls the matching data directly into your spreadsheet.

Using a saved query from the Bkper Add-on for Google Sheets to fetch data

Where queries work

The query language is universal across Bkper:

  • Web app — type queries in the search bar on the Transactions page
  • Search Assistant — build queries visually with guided suggestions
  • Bkper Functions — use queries as parameters in BKPER_BALANCES and BKPER_TRANSACTIONS
  • Bkper Add-on — fetch transactions and balances filtered by query
  • Google Apps Script — pass queries programmatically to the Bkper API

A query that works in one place works in all of them. This means you can prototype a query in the Search Assistant, then paste it into a Google Sheet for automated reporting.