ARKONE
Twenty upright marks on a dark ground, one for each stage of the engine, with mark 5 lit in amber and the stage name beneath.

How do you actually reach them without a credit bureau, so that the first message is one you can defend?

September 15, 2026 · 6 min read

S
Sobin George Thomas

$53,088 is the fine the FTC prints per violation for calling a US number on the registry. Every number gets its source and its basis beside it.

Look them up, then call the mobile. A licence to a database built for finding debtors. A junior broker with the owner name. A number by lunch. For a six-person brokerage the number sits in the CRM with nothing beside it to say where it came from.


By hand today

“I’ve walked into Commercial Real Estate brokerages where every single broker had a license to a credit bureau”

patrickrafferty, on Hacker News

He goes on: “with many of the junior brokers using it daily to look up real estate owners to call their mobile phones. Obviously TLO knows there’s no way a huge chunk of the CRE brokerage industry should be in their product on a daily basis if they were actually using a GLBA compliant use case… and they look the other way and find a way to monetize.” Same post, same URL.

That is the concession: nothing cheap does the honest version, and something expensive does the other in seconds. Type in the name and a mobile comes back, from a product sold, the practitioner says, for a purpose the brokers do not have. It lands in the CRM looking like a number the owner gave you at a viewing, and nobody can tell the two apart.

The honest lane is narrower, and wider than residential advice admits.


What it costs you each week

$53,088

The fine the FTC prints, per violation, for calling a US number that was on the registry. One number with no source beside it is one call you cannot explain.

Source: FTC Q&A for telemarketers on the Do Not Call provisions, inflation adjusted January 2025, read 14 September 2026

The licence is the visible cost, and no vendor prints it. The real cost is the call you cannot explain. The FTC’s page for telemarketers says a violation is “subject to a fine of up to $53,088”. That is one market’s figure. Every market asks its own version, and a record answers each.


The build

Open Claude Code. Ask for the basis. Every number carries where it came from and what permits the contact: published, given to you, or opted in. A number with no basis is held, never dialled. Beside each: its source, its date, the hours it may be contacted in.

Open Claude Code in the engine folder, beside people.csv from the last chapter and your CRM contacts exported as crm-export.csv. Then say what you want:

Read people.csv. For every person, find a way to reach them, stopping at
the first rung that holds: a number or address the business itself
publishes; then one this person gave us, in crm-export.csv with its
date; then a WhatsApp opt-in we hold, with the date and their words.
Record the rung, its source and its date. Never take a number from a
bought database, a credit bureau product or a scraped list, and never
guess one. Add two blank columns for a person to fill: registry_checked
and hours. Write reach.csv with a source and a basis on every row,
holding.csv for the rest, and report four counts: published, given,
opted in, none.

What comes back is a script, a run and four counts. reach.csv carries a rung, a page or message and a date on every row.

The hinge is the first rung. The FTC’s own page says the US registry exempts “Most phone calls to a business made with the intent to solicit sales from that business” (same URL as above). A consultant calling a company about its premises is doing something different from an agent calling a homeowner, and the company’s published number is the widest honest lane this reader has. The build does not decide what that sentence means for you. It writes the rung, dates registry_checked when a person runs whatever check your market asks for, and flags any row older than a month.

For WhatsApp the rung is Meta’s. The Business Messaging Policy reads: “You may only contact people on WhatsApp if: (a) they have given you their mobile phone number; and (b) you have received opt-in permission from the recipient confirming that they wish to receive subsequent messages or calls from you” (whatsappbusiness.com). An opt-in someone else collected is never written as yours. The free lane, a client on your own phone, is named once, as the warning: the Business Terms forbid applications that “interact with our Business Services without our prior written consent”.

One honest limit, which Claude Code will tell you about: it cannot rule on whether a basis is enough in your market. A reader in Dubai meets different questions from a reader in Texas: consent before a message on a social platform, the hour of the day, naming yourself and your purpose at the start. The build answers none. It records the consent, the source and the hours, and chapter 6 opens every message with your name and why you are writing.


What it feeds

The first message. The next stage writes one message per person, and its first line depends on the basis: published, given, or opted in. The number to read: contacts with a recorded source and a recorded basis, against contacts held.

The next stage writes fifty messages, and each opens on why the contact is permitted. A message to a published line reads differently from one to a number the owner gave you at a viewing. The basis column lets the writer choose without asking; the hours column tells the sender when not to.


What stays with a person

The refusal. Whether to contact at all. Whether a source permitted for a purpose you do not have is off the table. A person rules once, and the rule is written where the next run reads it.

The tool sorts people into published, given, opted in and none. It cannot tell whether a switchboard reaches the owner or a receptionist who never passes it on.

Nor can it make the refusal. Not opening the database in the quote above is the one job here no script does. A person rules on it once, writes the ruling into the file the tool reads, and the next run applies it.


The tools you already pay for

Nothing new to buy.

CRM gains four fields per person: the source, the basis, the date last checked, the hours.

Phone is the line you already call from. Nothing on holding.csv is dialled.

WhatsApp Business holds the opt-in, dated, before chapter 8 sends.


Every number with its source beside it, and the ones with none held back. Then the first message can be defended.

Ask: Of the numbers your team called last week, how many could you say where they came from?

This is stage 5 of twenty, after finding the person behind the holding company and before writing fifty messages that sound like you. The whole engine in order is the book, Building a real estate sales engine with Claude Code and Codex, end to end.

准备好开始对话了吗?

了解 ArkOne 如何构建治理体系与项目架构,实现可量化的 AI 回报。

预约探索性沟通