Collections Agent

View as Markdown

The Collections Agent monitors your customer accounts for any events that would require you to do work, like a failed payment or an inbound email. Each time one lands, it gathers the context it needs and proposes the actions most likely to get you paid faster. That might mean replying to a customer, updating a billing contact, applying a transaction to an invoice, or scheduling a reminder to check back in.

The agent works at the customer level. Every invoice, email, payment, and past action for a customer sits together, and the agent reasons across all of it.

The Collections Agent also manages AP portal automation. For customers who only accept invoices through their own accounts payable portal, it submits the invoice and tracks the portal’s status on it.

How the agent works

  1. A trigger fires. Inbound email is the most common. Cash application events also count, such as a transaction being matched to an invoice, applied to one, or excluded, as does a scheduled agent reminder firing.
  2. The agent researches. It reads everything in Tabs about that customer: invoices, payment history, contacts, contracts, and the full email history.
  3. It proposes or executes work based on your permissions and preferences.

Each new trigger produces a fresh plan built on everything known at that moment. When several emails land on the same thread, each one re-plans with the full conversation in view, so the proposal in front of you always reflects the latest message rather than an early one. Anything already executed stays executed.

The agent also recognizes when you are the one emailing on a thread, based on your email domain. It treats you as a user rather than a customer, uses what you say and do as context for its plans, will not contradict something you have already told the customer, and will not repeat work you have already handled yourself.

Before you start

The Collections Agent needs a billing email it can send from and receive to. Set up an email group, or use an existing billing-specific domain, following Custom email domain setup.

Then add your unique Tabs address as a member of that group. Tabs gives you the address, and it looks like invoices+abc123@tabsplatform.com. Think of it as the agent having an address in your group, the way a teammate would.

With that in place, the agent can work any email arriving at the group, not only replies to an invoice or dunning reminder, as long as Tabs can tell which customer it belongs to.

How inbound email is matched to a customer

A reply to an email Tabs sent matches automatically: the thread already belongs to a customer.

Tabs reconciles every inbound email onto its thread by threading headers, and once a thread is tied to a customer that tie sticks. Later messages file under that customer even when nothing on them identifies it. For example, if you loop in an account manager on a thread and leave the billing@ group on: the agent still picks it up.

For new emails sent to your billing@ address, matching runs in order on the addresses in the headers:

  1. Exact contact match. The sender plus everyone on To and Cc, never Bcc, is checked against every contact on your customers, not only the primary billing contact. An address belonging to exactly one customer matches that customer.
  2. Domain match. Failing that, the sender’s domain is checked the same way. Free providers like gmail.com never match.
  3. Otherwise the email is dropped. An address or domain that is not unique across your customers does not count toward a match. When nothing unique is left, or two signals point at different customers, the email is recorded against your account but never reaches the agent.

Triaging agent work

Open Collections in the sidebar. The red number beside it is how many customers have agent work open and waiting on you, and it is the same figure as the blue Needs review tile at the top of the page. When it is zero, the agent has nothing for you and the badge disappears.

Two tiles sit next to it: Total overdue and Total outstanding, both across your whole book.

A customer row is added to the table once Tabs has sent one of their invoices, and stays from then on, even after every invoice is paid.

ColumnWhat it shows
CustomerCustomer name, linking through to the customer record
StatusWhere agent work on this customer stands
Collections Agent summaryThe agent’s own headline from its latest plan, the news on the account in one line
Oldest overdueDays overdue on that customer’s worst invoice
Total overdueOverdue amount across their open invoices
Total outstandingOutstanding amount across their open invoices

Status is one of three:

StatusMeaning
Needs reviewThe agent has proposed work and is waiting on your approval
No action neededNothing is waiting on you
Agent pausedThe agent is switched off for this customer

The table opens filtered to Needs review and sorted by most days overdue, so the most delinquent accounts awaiting a decision come first. You can sort on any of the three number columns, filter by status or by a minimum total overdue or outstanding, and search within the results.

Working a customer

Click any row to open the customer collections page for that account. You can also reach it from the Collections button on any sent invoice, or from Collections on the customer page.

The agent summary at the top explains the agent’s thinking in three parts: the trigger that woke it up, the key facts it thinks you need, and its recommendation. Alongside it, Outstanding invoices lists every open invoice for that customer.

Actions

Each trigger the agent responds to produces a plan, which is the set of actions it wants to take in response.

This tab shows the events that informed the plan, with the resulting actions listed beneath them. One action can sit under several events. A payment failure and an inbound email might together inform a single proposed email draft, and both are shown above it.

For each action you can edit its details, approve it, or reject it. Editing covers whatever the action carries: the body of a draft email, the PO number being written, the prompt on a scheduled reminder. Email drafts open in the context of their thread, so you can read the conversation, revise the copy, save it, then approve and send.

Activity

The full history of the account in chronological order, newest first: inbound and outbound emails interleaved with collections events.

Click any email to read the thread. Emails Tabs sent also carry delivery data per recipient (delivered, opened, clicked, and bounced), and any attachments appear as pills you can open. When a draft is awaiting review, the activity log marks the email it belongs to, and you can approve and send it from there.

Scheduled

One of the actions the agent can take is Schedule a reminder, which works much like a reminder on your phone. You might set one for a week out to check back on something; the agent does the same thing, writing itself a note about what to look at and when.

This tab lists every reminder currently pending on the customer and the date each one fires. When it fires, the agent reads the note it left itself, looks at the account as it stands that day, and plans from there. A customer saying the wire goes out on the 15th is the common case: the agent schedules itself to check on the 15th rather than leaving the invoice to go quiet.

Additional controls

Send reminder opens a drafting drawer, prefilled with the customer’s primary billing contact on To and the CC billing contacts on Cc. Attach invoice PDFs, contracts, or additional documents added in billing settings before sending.

Add a note saves free-text context on the customer, and it is how anything that happened off the platform gets into Tabs: what was agreed on a call, what your AE heard, a decision made in Slack. Notes write to the same place as the Notes tab on the customer page, so they show in both. That serves two audiences at once. Anyone working collections sees the full picture without chasing it down, and the agent reads notes as context on every later run.

More actions holds the two ways to stop automated outreach. They are independent controls and stop different things.

ControlWhat it stopsWhat keeps running
Turn off dunning remindersThe dunning schedule stops emailing this customer until you turn it back onThe agent keeps monitoring the account, planning, and proposing work
Pause collections agentThe agent stops entirely. Confirming also deletes this customer’s scheduled reminders and every action waiting for review, and that cannot be undoneDunning reminders keep going out unless you turn them off as well

Paused customers show an Agent paused status on the Collections table.

What actions the agent can take

ActionWhat it does
Send emailComposes and sends a reply, with attachments
Mark invoice as pendingRecords that payment is on the way, with date, method, and notes
Update PO numberWrites or clears the PO number on an invoice
Update customer informationUpdates customer name, billing and shipping addresses, primary billing contact, and CC billing contacts
Schedule agent reminderQueues a prompt for the agent to act on at a future date
Apply a transactionApplies a matched incoming transaction to an invoice

Attachments. The agent can attach the invoice PDF, any contract tied to the invoices in question, and any document you have configured under Invoice documents in billing settings, such as a W-9. It selects documents by their title, so name them for what they are. Call your W-9 “W9”. A vague or misleading title means the agent cannot reliably find the right file.

Scheduled agent reminders let the agent defer work. When the reminder fires, the agent reads the prompt it wrote for itself, re-examines the account as it stands that day, and plans again. This is how promises to pay get tracked. A customer says the wire goes out on the 15th, and the agent schedules itself to check on the 15th.

Applying a transaction depends on cash application. The Tabs cash application engine has to propose the match first; the agent can only apply a transaction that has already been matched to one of that customer’s invoices. It never sources a match itself.

Permissions

Every action asks for your approval by default. In Collections Agent settings you can change any action to:

  • Always allow, meaning the agent performs it without asking
  • Never allow, meaning the agent cannot use it and will not propose it

Auto-execution is decided for the whole plan rather than action by action. A plan only runs on its own when every action inside it is set to Always allow.

For example, a customer emails asking you to update their PO number. That request produces a plan holding one action, Update PO number. With that action set to Always allow, the plan runs without you.

Now suppose the same email also mentions a wire they already sent, and Tabs has matched that transaction to the invoice. The plan now holds two actions: Update PO number and Apply a transaction. If applying transactions still requires approval, nothing in that plan auto-executes, including the PO update, because one action in the plan is waiting on you.

You can still approve the actions individually.

Exceptions

Always allow and Never allow apply to an action every time, whatever the situation. An exception is narrower: a rule written in plain language that lets the agent execute an action on its own in the cases you name, while everything outside those cases still comes to you.

Exceptions can turn on facts about the account rather than the action alone. The agent looks up what it needs to judge the rule, such as the invoice amount, the balance, how old it is, or the contract terms, before deciding whether the exception applies. Anything a rule does not clearly cover waits for your approval.

Exceptions are configured by Tabs, not in your settings. Once you have worked with the agent and found a case you are happy for it to handle alone, tell your CSM what that case is. Our team tests the exception against your account and adds it to your instance.

Email tone

Also in Collections Agent settings, email tone is free-text instruction for how the agent should write. Whatever you put there is loaded into context whenever it drafts an email, so you can set your voice once instead of editing every message.