The topbar search is the fastest way to get to anything in Trips. If you know a piece of a name, a trip title, an invoice number, a phone number, or even a Stripe payment ID, you can find the record in two keystrokes.
How to open it
Press Cmd-K on macOS or Ctrl-K on Windows / Linux from anywhere in Trips. The topbar search input gets focus and any existing text is selected so you can start typing immediately. You can also click into the input directly — there's a ⌘K badge on the right side of the field as a hint.
The placeholder reads Search trips, forms, contacts, phone… That's a hint, not a limit — the search covers more than those four. See the next section.
What it searches
Results are split into five buckets, and they appear in this order in the dropdown when there are hits:
Trips
Local search on the trip's name and its public ID. Recent and upcoming trips surface first.
Invoices
Matches the invoice number and title. Also matches Stripe IDs — paste a pi_, ch_, re_, or cs_ ID and it jumps straight to the invoice that owns that payment, refund, charge, or checkout session.
Forms
Matches the form name and public ID. Skips deleted forms.
Reports
Searches the report catalog — name and keywords. Type commission, funnel, or leaderboard to jump to the matching report page.
Contacts
Searches Core (the platform-wide identity store) on first name, middle name, last name, the full concatenated name, email, and phone. Only contacts that have been added to your Trips agency surface in results — Core may know about more people, but if they're not in your Trips contact list you won't see them here.
How contact matching works
Contacts are the bucket agents lean on most, so it's worth knowing exactly what matches. The search hits any of these columns on the Core contact record:
First name — partial match, anywhere in the field.
Middle name — same.
Last name — same.
Full name — first + middle + last concatenated, so
"Mary Jane"finds Mary Jane Smith even though her first and last names are stored separately.Email — partial match, so
"gmail"or just a username fragment works.Phone — partial match on the stored phone string.
Each contact result row shows the contact's photo (or a colored initials badge if they haven't uploaded one), their name on the top line, and their email · phone on the subline — both if you have them, just one if that's all you have, or the contact's company name if neither is on file.
Keyboard navigation
Once the dropdown is open, you don't need the mouse:
↓ / ↑ — move the highlight through results. It walks every visible bucket in order, so you can step from a trip into invoices into contacts without lifting your hand.
Enter — activate the highlighted result. Trips open the trip detail page; invoices open the invoice editor on the trip that owns it; forms open the form editor; reports navigate to the report page; contacts open the contact drawer.
Esc — closes the dropdown and clears the highlight. Your query stays in the field so you can refine it.
Clicking a contact — drawer-in-place vs navigate
Contact results behave differently depending on what page you're on when you click them:
On /contacts
The contact drawer slides in over the current page in view mode. The contacts list stays right where it was — no navigation, no scroll loss. This is the fastest path when you're doing batch work on the contacts index.
Anywhere else
Trips navigates to /contacts?open=<id>. The contacts index reads the open parameter on load and auto-opens the drawer for that contact, so you end up in the same place — just one page transition away.
Troubleshooting
I know this client exists but they don't appear in search results — why?
Most often the contact lives in your Core account but hasn't been added to Trips yet. The global search only surfaces contacts that exist in your Trips contact list. Open Contacts from the sidebar, click + New contact, and search for them — if Core already has them they'll deduplicate automatically.
Cmd-K isn't doing anything when I press it.
Two things to check. First, make sure your cursor isn't inside a code editor or other field that's capturing the shortcut for itself — click somewhere neutral on the page first. Second, on Windows / Linux the binding is Ctrl-K, not Cmd-K. If both fail, refresh the page — the keyboard handler is registered on page load and a stale tab can lose it.
I pasted a phone number and got nothing. The contact is definitely there.
Phone matching is literal against the stored value. Try just the last four digits, or the area code, or strip the punctuation off your search. Whatever fragment you search needs to appear character-for-character in the stored phone string.
Can I search inside trip notes, messages, or invoice line items?
Not from the topbar — global search is intentionally scoped to top-level entities (trip name, invoice number / title, form name, contact identity, report catalog). Deep content search lives inside each feature: trip messages have their own filter, the contacts index has a richer search that hits more fields, and trip notes are searched from within the trip's Notes tab.