DEV Community

Crawler Bros
Crawler Bros

Posted on

How to Automate California Unclaimed Property Searches

The California State Controller's Office (SCO) currently holds over $8 billion in unclaimed property. This pool of uncashed checks, dormant bank accounts, abandoned wages, and unclaimed securities spans millions of individuals and businesses.

For estate attorneys, corporate accounting teams, and professional asset recovery specialists, manually checking California's database one name at a time through a web portal creates an operational bottleneck. When conducting skip tracing, probate research, or corporate accounts receivable recovery at scale, teams need structured, programmatic access to these public records.

The California Unclaimed Property Scraper (ca-unclaimed-property-scraper) automates this process by querying the SCO's weekly public data files without requiring logins or API keys.

What is the California Unclaimed Property Scraper?

The California Unclaimed Property Scraper is an Apify actor that searches and extracts records from the official database maintained by the California State Controller's Office.

The tool processes the state's weekly public data files and returns deduplicated records containing full financial details, reporting business information, and owner contact histories.

Three Search Modes

The actor operates in three distinct modes:

  • search: Look up records by an owner's full or partial name (case-insensitive substring match).
  • browse: Filter and discover unclaimed property without specifying an owner name (ideal for business audits or geographic research).
  • byId: Look up a single property directly using its exact propertyId, returning all associated co-owner rows for that record.

Key Input Parameters for Targeted Asset Discovery

Instead of parsing entire multi-gigabyte data dumps manually, the actor lets you apply fine-grained filtering parameters directly to your search:

  • valueRange: The SCO publishes its records across four separate dollar-value files. You can scan specific buckets—500plus, 100to500, 10to100, under10—or choose all. For high-value asset recovery, using 500plus provides the fastest scan times.
  • minCashBalance and maxCashBalance: Set precise lower and upper numerical thresholds to filter records by their current dollar balance.
  • holderName: Filter by the company or entity that reported the property. This enables corporate recovery teams to see everything a specific bank, insurance company, or vendor reported to the state.
  • ownerCity and ownerZip: Constrain searches by geographic markers, such as matching a specific city name or a 5-digit ZIP code / ZIP prefix (e.g., 94105 or 941).
  • propertyCategory and propertyTypeContains: Target specific top-level NAUPA property categories (such as accounts, checks, or securities) or run keyword filters.
  • sortBy: Rank extracted items by cashDesc, cashAsc, ownerNameAsc, or ownerNameDesc, keeping up to the defined maxItems cap.

Primary Use Cases for Unclaimed Property Data

1. Estate and Probate Research

Locating assets belonging to a deceased relative often involves tracking down forgotten accounts. Using mode: "search" alongside ownerCity allows probate researchers to pinpoint unclaimed property, identify co-owners via numberOfOwners, and note the original reported balances.

2. Corporate Accounts Receivable (AR) Recovery

Businesses frequently have vendor refunds, utility deposits, or old payroll disbursements remitted to the state. Accounting departments can run mode: "browse" combined with holderName to audit what specific entities have surrendered under company names, or search their own organization's past operating names.

3. Professional Skip Tracing & Asset Recovery

Asset recovery locators identifying property to claim on behalf of owners can use sortBy: "cashDesc" and valueRange: "500plus" to surface high-value properties, complete with the reporting entity details (holderName, holderAddress) and the state's internal propertyId.

What Data Fields Does the Actor Return?

Every extracted record includes structured fields with empty values omitted. Key output points include:

  • Identifiers: propertyId, cusip (for stocks and bonds), and recordType.
  • Financial metrics: currentCashBalance, cashReported, sharesReported, and securityName.
  • Owner details: ownerName, ownerAddress, ownerCity, ownerState, ownerZip, ownerCountry, and numberOfOwners.
  • Holder details: holderName, holderAddress, holderCity, holderState, and holderZip.
  • Claim status: pendingClaims and paidClaims.
  • Metadata: valueRangeBucket, sourceFile, sourceUrl, and scrapedAt.

Step-by-Step: How to Run a Search

  1. Navigate to the ca-unclaimed-property-scraper on the Apify platform.
  2. Select your mode. Use search if you have an owner name, browse if you are filtering by holder or property type, or byId for a single property lookup.
  3. Define your target parameters. For example, set ownerName to the target individual/entity, select valueRange: "500plus", and set minCashBalance: 1000.
  4. Set maxItems to cap the number of returned results.
  5. Click Start. Once the run completes, export your structured dataset in JSON, CSV, or Excel format.

Once target properties are identified, claims can be officially filed directly through California's official claim portal using the returned propertyId and owner details.


Ready to try it yourself? Run *California Unclaimed Property Scraper** on the Apify Store -- no setup required.*

Top comments (0)