Review every Brex card and close the ones nobody uses
One screen showing every company card, who holds it, and when it was last used, so dormant cards and cards held by people who left get closed.
I want an access review app for our company cards, so dormant and orphaned Brex cards stop quietly sitting open. This is a surface my team opens for a periodic review pass, not an automation that runs on a schedule. The point is that a reviewer works down a list of cards, decides what to do with each one, and has that decision stick, so the next review starts where the last one finished.
The main view is a table of every company card. Each row shows the card name and its last four digits, the person who holds it, their department, the card status, the monthly limit and the date of the most recent transaction on that card. Build the list with Brex List cards, and use Brex Get card for the full spend controls when a row is opened. Resolve the cardholder with Brex List users and the department name with Brex List departments. Pull the person level monthly cap with Brex Get user card limit, which also returns how much of that limit is still available. Work out the last transaction date with Brex List primary card transactions: page back far enough to cover at least the last one hundred and twenty days, group the settled transactions by card, and take the newest one for each. A card with nothing in that window should read as no spend on record rather than showing an empty cell.
The HR side comes from BambooHR. Load Get Employee Directory and match directory entries to Brex users on work email, lower cased and trimmed on both sides. For each matched person, call BambooHR Get Employee to read employment status, termination date, department and supervisor email. A cardholder whose BambooHR record shows them as terminated or otherwise no longer active is the highest risk case in the whole table. Please bake in that a Brex user with no matching BambooHR record at all gets its own flagged for follow up status and is never silently treated as active, because that gap is usually a contractor, a shared card or a stale email address rather than a clean bill of health.
Sort the table so risk floats to the top. Cards belonging to departed people pin above everything else, then cards with no BambooHR match, then cards with no spend in ninety days, then everything else. Give the reviewer quick filters for cards with no spend in the last ninety days, cards whose holder is no longer active in BambooHR, cards with no HR match, and cards already handled in this pass, plus a search box for cardholder name or email and a filter by department.
Opening a row shows the card detail with its recent transactions, the holder's HR record and the available actions. Locking is the default and the most prominent action, because Brex Lock card is reversible, and the app should also offer Brex Unlock card to undo it. Terminating uses Brex Terminate card and is permanent, so put it behind a secondary destructive button that requires the reviewer to type the cardholder name or the card's last four digits to confirm, with copy that says plainly that termination cannot be undone. Never display or fetch full card numbers anywhere in this app. An access review does not need the PAN.
A reviewer can also trim exposure instead of closing anything. Brex Update card changes that one card's name and spend controls, while Brex Set user card limit changes the person's overall monthly cap across their cards. Make it obvious in the UI which of the two a given control is about to change, since they have very different blast radiuses.
From the same row the reviewer can message the holder's manager. Take the supervisor email off the BambooHR record, find the matching Slack account with Slack List Users by comparing profile email, open the direct message with Slack Open a Conversation and send it with Slack Send a Message. Pre-fill the text with the card, the holder, how long it has been idle and what the reviewer is proposing, and let the reviewer edit it before sending. Messages go out as the signed in reviewer, so the manager gets a note from a colleague rather than from a bot.
Every decision is recorded in the app: which card, what was done (locked, unlocked, terminated, limit reduced, manager messaged, or deliberately left as is), a short note, who made the call and when. Show that history on the row and use it to drive a reviewed or not reviewed state, so a pass can be picked up half way through and the following review starts from where this one ended. Put a summary strip across the top with how many cards are open, how many are flagged, and how many have been reviewed in the current pass.
Cache the Brex and BambooHR reads for the session behind a manual refresh button. Pulling every card, user and transaction is the slow part, and a reviewer will be working the same list for a while.
What does this prompt do?
- Lists every company card in one table with the holder, their team, the card status, the monthly limit and the date it was last used.
- Cross-checks each cardholder against your HR directory and pins cards belonging to people who have left to the very top of the list.
- Flags cards with no spend in the last ninety days, and cards with no matching HR record, so nothing gets waved through by accident.
- Lets a reviewer lock, close or shrink a card and message the holder's manager, then records who decided what so the next review picks up where the last one stopped.
What do I need to use this?
- A Brex account with permission to view and manage company cards
- A BambooHR account with access to the employee directory
- Work email addresses that roughly match between Brex and BambooHR, since that is how people are matched
- A Slack workspace, only if you want to message managers from inside the app
How can I customize it?
- Change the dormancy window. Ninety days is the default, but thirty or one hundred and eighty work just as well.
- Pick the default action. Locking is the safest first move, though you can lead with reducing the limit if your team prefers a softer step.
- Edit the note that goes to managers, or skip Slack entirely and keep the whole review inside the app.
FAQs
Does this show full card numbers?
What is the difference between locking a card and closing it?
What happens if a cardholder is not in BambooHR at all?
Will it change anything in Brex on its own?
Do we have to connect Slack?
Related templates
Search creators for free, shortlist the best with your team, and spend an audit credit only when you decide someone is worth a closer look.
One screen showing invited, completed, and shortlisted counts for every open role, plus the stalled invites that have quietly gone nowhere.
Open one board each morning to see which of your facilities, suppliers and shipping lanes are sitting near trouble in the news right now.
Pick creators from your saved list and see their best and worst Instagram posts side by side, so your brief is built on what actually lands.
One screen where your hiring team watches every unscored candidate, reads the transcript alongside each answer, and scores and shortlists on the spot.
Managers keep one board open through a new hire's first month, with a three week reading path built from your own Guru cards and ticked off as it lands.
Stop paying for cards nobody is using.
Run a full card access review in one sitting, with every decision recorded and waiting for the next one.