# MCA UCC Leads Scraper (`bareezh_codes/mca-ucc-leads-scraper`) Actor

Find businesses that just took a merchant cash advance. Reads new UCC-1 filings in FL, CO, CT, OR, RI, AK and CA and keeps the ones filed by 137 known MCA funders. One lead per merchant: name, address, funders, filing dates, stacked flag.

- **URL**: https://apify.com/bareezh\_codes/mca-ucc-leads-scraper.md
- **Developed by:** [Salman Bareesh](https://apify.com/bareezh_codes) (community)
- **Categories:** Lead generation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

$100.00 / 1,000 merchant leads

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## MCA UCC Leads Scraper (FL, CO, CT, OR, RI, AK, CA)

Find businesses that **just took a merchant cash advance (MCA)**. When an MCA funder advances money,
it files a UCC-1 financing statement against the merchant with the state. This Actor reads the newest
UCC-1 filings in **Florida, Colorado, Connecticut, Oregon, Rhode Island, Alaska and California**, keeps the ones whose secured party is one of
**137 known MCA funders** (Bitty Advance, Fora Financial, Last Chance Funding, Lendini, Vitalcap,
Everest Business Funding, CAN Capital...), and returns one lead per merchant.

### Who uses it

- **MCA brokers and funders**: merchants who took an advance recently are the most likely to take a
  second position or renew.
- **Debt-relief and restructuring firms**: stacked merchants (2+ funders) are the classic MCA-relief prospect.
- **Lenders offering refinancing / consolidation**, and anyone tracking which funders are active where.

### Sources

| State | Source | Speed |
|---|---|---|
| FL | Florida Secured Transaction Registry daily public data files | seconds |
| CO | Colorado Secretary of State UCC open data (data.colorado.gov) | seconds |
| CT | Connecticut Secretary of State UCC lien filings open data (data.ct.gov), updated daily | seconds |
| OR | Oregon Secretary of State "UCC filings entered last month" open data (data.oregon.gov) | seconds, previous month only |
| RI | Rhode Island Department of State UCC search, one secured-party search per funder name | ~15 min, opt-in |
| AK | Alaska Recorder's Office UCC Central File, every financing statement per day | ~1 min per week, opt-in |
| CA | California Secretary of State bizfile UCC search, one search per funder name | ~17 min, opt-in |

All are official public registries. FL, CO and CT run by default. Add `"OR"` (use `daysBack` 60 or more: Oregon publishes only the previous calendar month, and it can lag), `"RI"` and `"AK"` as needed. For California turn on `includeCalifornia` (it runs a browser with 2 GB memory, about 18 minutes).

### Input

```json
{
  "states": ["FL", "CO", "CT"],
  "includeCalifornia": false,
  "daysBack": 7,
  "stackedOnly": false,
  "extraFunders": ["Some New Funder LLC"],
  "maxItems": 100
}
```

- `states`: which registries to search.
- `includeCalifornia`: also search California (browser, 2 GB memory, ~18 min).
- `daysBack`: filings made in the last N days (1-90).
- `stackedOnly`: only merchants with filings from 2+ funders in the window.
- `extraFunders`: extra funder names to match on top of the built-in list.
- `maxItems`: stop after this many leads (0 = no limit).

### Output

One item per merchant per state:

```json
{
  "merchantName": "LULP CONSTRUCTION LLC",
  "address": "1724 SW 12TH CT",
  "city": "FORT LAUDERDALE",
  "state": "FL",
  "zip": "33312",
  "filingState": "FL",
  "funders": ["Bitty Advance"],
  "mcaPositions": 1,
  "stacked": false,
  "latestFilingDate": "2026-09-28",
  "earliestFilingDate": "2026-09-28",
  "filingCount": 1,
  "filings": [
    {
      "filingNumber": "202603009646",
      "filingDate": "2026-09-28",
      "lapseDate": "2031-09-28",
      "status": "Filed",
      "securedParty": "BITTY ADVANCE 2, LLC",
      "funder": "Bitty Advance"
    }
  ],
  "scrapedAt": "2026-10-01T14:09:30+00:00"
}
```

Leads are grouped by state in the order of `states`; within a state, stacked merchants come first, then newest filings first.

### Pricing

$0.10 per lead (one dataset item = one merchant). Set a charge limit on the run and the Actor stops
when it is reached. Failed sources are never charged.

**Free Apify plan:** up to 10 leads per day (UTC). Paid Apify plans have no daily cap.

### FAQ

**Does it give the advance amount or the daily payment?** No. UCC filings never contain dollar
amounts. A lead means "this merchant gave this funder a lien on this date".

**Why is one state small?** It reflects how many MCA filings were made there. Use a longer `daysBack` for more volume.

**Why are some people missing?** Debtors filed as private individuals (not as a
business) are skipped. Rhode Island and Alaska do not flag the two, so a debtor is kept only when its
name looks like a business (LLC, INC, CORP, GROUP, ...); a business named like a person can be missed.
California's search does not separate them either, so sole proprietors ("JOHN SMITH D/B/A ...") can appear.
Alaska addresses keep the city inside `address` (the registry does not separate street and city).

**Contact details?** Not included. The registries publish name and business address (city and state
only in California). Enrich with your own tools.

### Limits

- Florida publishes each day's file 2-3 days later, so the newest days may not be there yet.
- California returns at most 100 results per search; the log warns if a funder hits that cap - use a
  shorter `daysBack`. The CA portal blocks an IP that searches too fast (HTTP 429), so searches are spaced 5 s apart; on a 429 the Actor switches browser and then proxy session, and logs any
  funder it still could not search.
- Matching is by funder name. A funder filing under a name that is not on the list is missed - add it
  with `extraFunders`. "First Data Merchant Services" (card-processor liens) is deliberately excluded.

### Compliance

The records are public; outreach is regulated. TCPA, state mini-TCPA, DNC rules and debt-relief
advertising rules still apply to anything you do with these leads.

# Actor input Schema

## `states` (type: `array`):

UCC registries to search. FL, CO and CT take seconds. OR publishes only the previous calendar month, and can lag, so use daysBack 60+ for it. RI (~15 min) and AK (a few minutes per week of filings) are slower and off by default. California is a separate switch below.

## `includeCalifornia` (type: `boolean`):

Also search California. It runs a browser (2 GB memory instead of 256 MB) and searches every funder name one by one, slowly because the portal rate-limits, so it takes about 18 minutes.

## `daysBack` (type: `integer`):

Only filings made in the last N days (1-90). Florida publishes each day's file 2-3 days later.

## `stackedOnly` (type: `boolean`):

Keep only merchants with filings from 2 or more MCA funders in the window.

## `extraFunders` (type: `array`):

Funder names to match on top of the built-in list of 137 MCA funders, e.g. a new funder you track. Matched as whole words against the secured party name.

## `maxItems` (type: `integer`):

Stop after this many leads. 0 = no limit.

## Actor input object example

```json
{
  "states": [
    "FL",
    "CO",
    "CT"
  ],
  "includeCalifornia": false,
  "daysBack": 7,
  "stackedOnly": false,
  "extraFunders": [],
  "maxItems": 25
}
```

# Actor output Schema

## `dataset` (type: `string`):

One item per merchant

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "states": [
        "FL",
        "CO",
        "CT"
    ],
    "daysBack": 7,
    "extraFunders": [],
    "maxItems": 25
};

// Run the Actor and wait for it to finish
const run = await client.actor("bareezh_codes/mca-ucc-leads-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "states": [
        "FL",
        "CO",
        "CT",
    ],
    "daysBack": 7,
    "extraFunders": [],
    "maxItems": 25,
}

# Run the Actor and wait for it to finish
run = client.actor("bareezh_codes/mca-ucc-leads-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "states": [
    "FL",
    "CO",
    "CT"
  ],
  "daysBack": 7,
  "extraFunders": [],
  "maxItems": 25
}' |
apify call bareezh_codes/mca-ucc-leads-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,bareezh_codes/mca-ucc-leads-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/Wr1fsB60s1icfjnOQ/builds/eGVVRJaAeGeK6gBjm/openapi.json
