Executive Summary: Most monitoring implementations fail in the same order. Coverage is turned on across the whole portfolio, alert volume arrives, triage is designed under pressure, and within two months the queue is unread. The sequence below inverts that: start narrow, measure what arrives, build suppression before routing, and widen last. It costs more patience and considerably less rework.
What has to be decided before any integration work?
Four decisions, and none of them are technical. Making them first is what separates an implementation from an experiment.
Which borrowers are in scope initially. Not the portfolio. A subset large enough to be representative and small enough to read every alert. The largest secured exposures with meaningful remaining term is the usual choice, because that is where consequence concentrates.
What interval each tier gets. For secured lending this is a legal question rather than a preference. If a debtor's name changes so a filed financing statement becomes seriously misleading, the filing perfects collateral acquired "before, or within four months after" the change and stops perfecting later acquisitions unless an amendment is filed inside that window.[1] The clock runs from the change, not from your discovery of it,[2] so any interval must be comfortably shorter than four months to be acted on in time.
Who owns an alert once it arrives. A named role, not a shared queue. Queues absorb urgency.
What happens on payoff. Monitoring should stop when exposure ends. Deciding this upfront avoids paying to check records for closed accounts, which is the most common silent waste in these programmes.
Write these down before writing code. Each of them changes the implementation, and discovering them afterwards means rework in the routing layer rather than the integration layer.
How do you build the borrower list?
From the servicing system, using fields that already exist.
You need, per borrower, the exact legal entity name as filed with the state, the state of formation, and ideally the state file number. That last field is the most reliable join key across systems because it originates with the state rather than with any vendor or internal process.
Two data-quality problems surface here and both are worth fixing before enrollment rather than after:
• The name on the loan file is often not the name on the state record. Trading names, abbreviations, and dropped suffixes are common. Since the governing name for a financing statement is the one on the state's formation record,[3] a mismatch here is worth resolving on its own merits.
• State of formation is frequently confused with state of operation. Entity status is governed by the state of formation. A borrower operating in three states and formed in Delaware is a Delaware record for status purposes.
Resolve both by running a verification pass over the list before enrolling anything. The point-in-time search is the same endpoint the monitoring reads:
curl -X GET "https://apigateway.cobaltintelligence.com/v1/search?searchQuery=Acme%20Holdings%20LLC&state=TX" \
-H "x-api-key: YOUR_API_KEY"
Anything that fails to resolve cleanly at this stage will not monitor cleanly either, and finding out now costs one pass rather than an ongoing stream of unexplained non-alerts.
Expect this pass to be more informative than it sounds. Most lenders running it for the first time find a meaningful share of records that do not resolve on the first attempt, and the reasons cluster: entity names captured from an application rather than from the state, borrowers who reinstated under a slightly different name, businesses whose formation state was recorded as their operating state, and entities that have since been administratively dissolved without anyone noticing. That last category is the one worth pausing on, because it means the portfolio already contains status problems that predate the monitoring programme.
Treat those as findings rather than as data cleanup. A borrower whose entity status is already adverse before monitoring is switched on is not a reconciliation exercise; it is a credit item that happens to have been discovered during an implementation. Route them to the same person who will own alerts later, both because they need handling and because it exercises the response path before there is any volume behind it.
Keep a record of which borrowers failed to match and why. That list is the baseline for measuring coverage as the rollout widens, and it prevents the most misleading outcome in this whole exercise: a borrower that silently never monitors, producing no alerts, and reading as stable for exactly that reason.
What does the first month look like?
Log everything. Route nothing. This is the step that gets skipped and the one that makes the rest work.
Run detection across the initial subset with no alerting at all for a full cycle and simply record what arrives. The output is the base rate for your portfolio: how many address changes, how many registered agent updates, how many status changes, how many of each resolve to nothing. Those numbers vary by portfolio composition far more than most teams expect, and every subsequent design decision depends on them.
What you are looking for specifically:
• The registered agent mass-update pattern. Commercial agents represent thousands of entities, and when one relocates it updates the registered office across its entire book. In Texas the agent itself may file that change.[4] The fingerprint is many unrelated borrowers converging on one new address in a narrow window.
• Formatting deltas. "Street" to "St," an added suite number, a ZIP+4 replacing a five-digit ZIP. These register as changes in a naive comparison and are not changes.
• The genuine rate of status movement. Usually much lower than expected, which is reassuring and also the reason the top tier can be routed to a person.
• Any borrower generating repeated noise. Often a data-quality problem in your own list rather than borrower behaviour.
A monitoring programme's first deliverable is not an alert. It is a measurement of how much of what it detects is worth telling anyone about.
How should severity and suppression be configured?
Suppression first, then routing. Doing it in the other order means calibrating a routing layer against volume you are about to remove.
Business Monitoring classifies detected changes by severity across the record's field categories, which supplies the raw tiering rather than requiring you to derive it from field diffs.[5] Your work is mapping that onto your own policy.
A workable configuration:
• Suppress agent mass-events at the portfolio level. This is the single largest volume reduction available, and it is a pattern in your data rather than a property of any single record, so it has to be implemented on your side.
• Normalize before comparing. Formatting differences should never reach a queue.
• Route status and name changes to a person, same day. These carry the clocks. Name changes in particular are under-triaged because they read as administrative and carry the four-month window.
• Put officer, address and agent changes on a review cycle. Days rather than hours, with an expectation the queue reaches zero.
• Log everything else to borrower history. Queryable, not ticketed. Its value is context when something else fires.
• Escalate on combinations. Three low-severity changes in one window is a restructuring pattern, not three pieces of noise.
Our guide to alert triage covers the severity model in more depth, and our guide to monitoring cadence covers how to set the interval per tier.[6]
Want to walk through a monitoring rollout against your own portfolio? Book a demo.
How do alerts reach the people who act on them?
Through your existing systems, not a new inbox. An alert that lands somewhere nobody already works is an alert that gets read late.
The integration shape depends on whether you already run asynchronous infrastructure. Cobalt's API supports both polling with a `retryId` and a `callbackUrl` for results delivered on completion, which is the same pattern used for long-running live lookups. Our guide to async webhook architecture for Secretary of State lookups covers that plumbing in detail, and it is not worth restating here.
What matters at the routing layer:
• Map to your internal risk taxonomy immediately. Do all downstream routing against your own categories rather than vendor field names. This makes any future vendor change a mapping exercise instead of a rewrite.
• Attach exposure at alert time. A status change on a $2 million secured facility and one on a $15,000 balance approaching maturity should not look identical in a queue.
• Preserve the dated record. Capture what the state's record said at the moment of the check, because reinstatement can retroactively re-characterize the period you acted in, and Florida's statute preserves the rights of a party who acted in reliance on a dissolution before learning of the reinstatement.[7]
• Make history queryable. The first question after a Critical alert is always what else has moved recently.
What does this cost as the rollout widens?
Monitoring budgets get approved on estimates and then drift, usually because the cost model was never written down as a formula. It is a simple one.
Each completed check costs 1 credit from the same shared pool as the rest of the API suite.[5] So annual cost is borrowers multiplied by checks per year, summed across tiers. A tier of 80 borrowers at monthly is 960 checks a year. A tier of 500 at quarterly is 2,000. A tier of 250 at annual is 250. That total is knowable before committing and it does not surprise anyone later.
Two properties of that model are worth planning around.
Cost scales with frequency, not with alert volume. A quiet portfolio and a noisy one cost the same to monitor at the same cadence, because you pay for checks rather than for findings. That is helpful for budgeting and it means suppression rules save analyst time rather than credits.
The expensive resource is review, not data. Shortening an interval multiplies credits linearly and multiplies alerts much less than linearly, since most checks find nothing. The constraint that actually binds a widening rollout is how many alerts a team can act on, which is why suppression quality determines how far coverage can extend before the programme stalls.
The staged rollout interacts with this usefully. Costs during the pilot are small because the population is small, so the first month of logging is cheap even at a short interval. That argues for piloting at a shorter cadence than you intend to run in production, because it produces more observations of real behaviour for very little money and gives a better base rate to calibrate against.
One efficiency worth building in from the start rather than retrofitting: deactivate monitoring at payoff. Paying to check records for closed accounts is invisible in a monthly credit total and compounds steadily as a portfolio turns over. A rule tied to the servicing system's status field costs almost nothing to implement at rollout and is tedious to reconstruct later.
What should be verified before widening coverage?
Four checks, each answerable from the first month's data.
Is the top tier accurate? High false-positive rates in the highest severity tier destroy credibility faster than anything else, and credibility is what makes the tier work when something real arrives.
Is the review queue reaching zero? If the middle tier is not being cleared, it is too broad and items belong in the log instead.
What is the time from state filing to lender action? Not time to alert. The state's effective date is in the record, so measure against it. This is the number to hold against the four-month window, and a one-day detection latency followed by a three-week queue delay is a three-week programme.
Does anyone act differently because of an alert? If the answer is no, widening coverage produces more unread items rather than more safety.
Only after those four look right should coverage extend to the rest of the portfolio. Coverage is the easy part and the part most teams do first, which is why so many programmes end up monitoring everything and reading nothing.
What does this system not do?
Stating the boundaries keeps the implementation honest, because a rollout built on an inflated view of the tooling will have gaps exactly where it claims coverage.
• Scope is the Secretary of State record only. No OFAC or other watchlist screening, no UCC filings, no court dockets, no professional licenses. Sanctions re-screening remains a customer-side workflow on a customer-side schedule, and it is not closed by any monitoring configuration described here.
• It cannot surface an unfiled event. Ownership transfers are the clearest case: Texas states there is "no filing requirement with the secretary of state when there is an ownership change" for corporations or LLCs.[8] No interval detects what is never filed.
• It reports change, not cause. Whether a status move reflects a forgotten filing or genuine distress is a phone call.
• State coverage for monitoring is not yet published. Confirm the states you actually lend in rather than assuming parity with point-in-time lookup.
• It does not clear your queue. Detection without triage costs money and delivers nothing.
For what the alerts mean once they arrive, our guides to entity status transitions and the administrative dissolution reinstatement window cover the consequences the whole system exists to catch in time.[9] Reinstatement clocks vary sharply by state, from a hard five-year cap in Georgia to no outer limit in Florida.[10]












.png)