Texas Taxable Entity Search — Comptroller Franchise Tax Status
Pricing
from $1.45 / 1,000 texas taxable entity search — comptroller franchise tax statuses
Texas Taxable Entity Search — Comptroller Franchise Tax Status
Search Texas taxable-entity records from the Texas Comptroller by name, taxpayer number, or SOS file number. Get standing, SOS status, agent, address, and officer records. Run with search inputs; an Apify account is required. Pricing: $0.0015 per dataset item and $0.00005 per Actor Start on Free.
Pricing
from $1.45 / 1,000 texas taxable entity search — comptroller franchise tax statuses
Rating
0.0
(0)
Developer
Vitalii Bondarev
Maintained by CommunityActor stats
0
Bookmarked
23
Total users
15
Monthly active users
2 hours ago
Last modified
Categories
Security
Limited permissionsShare
Texas Comptroller Taxable Entity Search
Extract official Texas taxable-entity records from the Texas Comptroller’s public franchise-tax account-status registry by entity name, taxpayer number, or Texas SOS file number. No buyer key or login is needed; use an Apify account.
- Verify a Texas company’s standing before doing business with it.
- Find a registered agent and office address for service-of-process workflows.
- Confirm officers, directors, or general partners for compliance and lead generation.
- Search exact Comptroller taxpayer numbers, Federal EINs, or SOS file numbers.
- Use Apify Proxy with the
RESIDENTIALgroup in the US without your own proxy credentials.
What you get
The Actor searches the Texas Comptroller’s public registry at mycpa.cpa.state.tx.us. One dataset record represents one matched entity. Unless stated otherwise, detail fields are empty when details are disabled, the detail request fails, or the source does not provide them; officers is [] and officer_count is 0.
| Field | Type | Source | Description |
|---|---|---|---|
search_query | string | Input | Non-blank input value that produced the record |
search_type | string | Input | name, taxpayerId, or fileNumber |
taxpayer_id | string | Search + detail | Comptroller Taxpayer Number; detail takes precedence |
fei_number | string | Detail | Federal EIN |
name | string | Search + detail | Official taxable-entity name; detail takes precedence |
dba_name | string | Detail | Doing-business-as name |
mailing_address | string | Detail | Full mailing address on one line |
mailing_address_zip | string | Search + detail fallback | Mailing ZIP from the search row, with detail ZIP as fallback |
right_to_transact_tx | string | Detail | ACTIVE means good standing; another value signals a forfeited or ended right to transact |
state_of_formation | string | Detail | Formation jurisdiction |
sos_registration_status | string | Detail | Texas Secretary of State registration status |
effective_sos_registration_date | string | Detail | Effective SOS registration date |
sos_file_number | string | Detail | Texas SOS file number |
registered_agent_name | string | Detail | Registered agent on file |
registered_office_address | string | Detail | Registered agent’s office address |
officers | array | Detail | Objects with name, title, active_year, address, city, state, zip, and source |
officer_count | integer | Detail | Number of officer, director, or general-partner records |
report_year | string | Detail | Year of the most recent Public Information Report |
last_updated | string | Detail | Comptroller refresh timestamp |
detail_url | string | Derived | Direct entity account-status page; empty without a taxpayer ID |
parse_confidence | string | Derived | Never empty for a delivered record: low when name or taxpayer ID is missing, high when detail and a registered agent are present, otherwise medium |
Note:
officerscan contain a person’s full name and full street address, city, state, and ZIP from the Public Information Report. For an individual serving in their own capacity, the address can be a home or personal mailing address.registered_agent_namecan also contain a natural person’s name paired with a registered office address.
Sample output
The sample is shortened to one officer and omits fei_number, dba_name, state_of_formation, effective_sos_registration_date, sos_file_number, report_year, and last_updated.
{"search_query": "Whataburger Restaurants LLC","search_type": "name","taxpayer_id": "32029266908","name": "WHATABURGER RESTAURANTS LLC","mailing_address": "300 CONCORD PLAZA DR, SAN ANTONIO TX 78216-6903","mailing_address_zip": "78216","right_to_transact_tx": "ACTIVE","sos_registration_status": "ACTIVE","registered_agent_name": "CORPORATION SERVICE COMPANY DBA CSC - LAWYERS INCO","registered_office_address": "211 E. 7TH STREET SUITE 620, AUSTIN TX 78701","officers": [{"name":"DEBRA STROUD","title":"PRESIDENT","active_year":"2026","address":"300 CONCORD PLAZA DRIVE","city":"SAN ANTONIO","state":"","zip":"78216","source":"SOS"}],"officer_count": 3,"detail_url": "https://comptroller.texas.gov/taxes/franchise/account-status/search/32029266908","parse_confidence": "high"}
Pricing
Pricing uses the apify-actor-start and apify-default-dataset-item events.
| Plan | apify-actor-start | apify-default-dataset-item |
|---|---|---|
| Free | $0.00005 per event | $0.0015 per event |
| Silver | $0.000049 per event | $0.00147 per event |
| Bronze | $0.0000495 per event | $0.001485 per event |
| Gold | $0.0000485 per event | $0.001455 per event |
| Platinum | $0.0000485 per event | $0.001455 per event |
| Diamond | $0.0000485 per event | $0.001455 per event |
The apify-actor-start event is charged once per GB of run memory, with a minimum of one event. The dataset-item event covers one scraped result with all fields.
The entity-record event has no price shown to buyers.
On the Free plan, 1,000 dataset-item events cost $1.50 on the Free plan, or $1.50005 on the Free plan with one Actor Start event ($0.00005 on the Free plan). On the Free plan, 10,000 events cost $15.00 on the Free plan, or $15.00005 on the Free plan with one Actor Start event.
On the Free plan, the $5 monthly credit on the Free plan covers 3,333 dataset-item events plus one Actor Start event.
You pay only for the listed events. This Actor does not use the Pay per event + usage option, so compute, proxy traffic, and storage are not billed separately.
How to use
- Choose
searchNamesfor substring entity-name searches, or use exact taxpayer or SOS file numbers. - Enter at least one non-empty search array.
- Keep
fetchDetailsset totruefor addresses, standing, SOS status, agents, and officers. - Set
maxResultsPerSearchandmaxItemsto control returned records. - Run with the default Apify Proxy configuration or the equivalent US
RESIDENTIALconfiguration. - Download the dataset and inspect
right_to_transact_tx,sos_registration_status,registered_agent_name, andparse_confidence. - Repeat the run through Apify Schedules; monthly is a starting point for a registry workflow.
{"searchNames": ["Whataburger Restaurants LLC", "H-E-B, LP"],"maxResultsPerSearch": 3,"fetchDetails": true,"maxItems": 3,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"],"apifyProxyCountry": "US"}}
Export the dataset as JSON or CSV, or read it through the Apify dataset API.
Input parameters
| Parameter | What it does | Default |
|---|---|---|
searchNames | Separate substring searches for entity names | None. The Console form prefills ["Whataburger Restaurants LLC"]. |
searchTaxpayerIds | Exact 11-digit Comptroller Taxpayer Numbers or 9-digit Federal EINs | None |
searchFileNumbers | Exact Texas SOS file numbers with 6–10 digits | None |
maxResultsPerSearch | Caps each name search at 1–200; number searches return at most one match | 20 |
fetchDetails | Fetches address, status, agent, and officer data; false returns search-summary fields and makes one fewer request per entity | true |
maxItems | Overall cap; 0 removes it, bounded by the per-search cap; accepted range 0–20000 | 100 |
proxyConfiguration | Uses Apify Proxy with RESIDENTIAL and US when unset; custom proxyUrls are honored | When unset: Apify Proxy, RESIDENTIAL, US |
| disableUsageStats | Set to true to turn off the run summary described in Usage statistics | not set |
At least one search array must contain a non-blank value, or the run fails. disableUsageStats is set in the JSON input.
Limits and edge cases
| Condition | What you see | What to do |
|---|---|---|
| All three search arrays are empty or blank | The run fails with No searchNames, searchTaxpayerIds, or searchFileNumbers provided — nothing to search. | Supply a value |
| A name is too broad | The registry answers HTTP 413, the term is skipped, and a warning is logged | Narrow the name |
| Zero records; every search matched nothing or was too broad | Succeeded with an empty dataset; status says No records were delivered. and ends Nothing was charged. | Check spelling, narrow the name, or use an exact number |
| Zero records; a search is unreachable or rows are unreadable | The run fails and the status says Nothing was charged. | Check the source response or try again later |
| Some records are delivered | Succeeded; status counts delivered, unreachable, too-broad, no-match, and records without detail fields, ending Only delivered records were charged. | Review the records and status |
| Rows reach the dataset in batches | Rows are pushed and charged in batches of 20; a remainder is pushed after searches finish. If aborted, timed out, or crashed, the current unpushed batch of up to 19 is not saved | Use the batches remaining in the dataset |
| A cap is reached | The Actor stops at maxItems; a name search stops at maxResultsPerSearch | Adjust the cap or narrow the name |
| No detail fields | Detail fields are empty when fetchDetails is false or the request fails; search-row fields are still delivered | Set fetchDetails to true |
| A search cannot be reached | Up to three attempts use 2 s and 4 s pauses. With Apify Proxy and no custom proxyUrls, the third attempt is direct; with no proxy configuration or custom URLs, all attempts use the proxy | Try again later or review proxy settings |
| No officer records are on file | officers is [] and officer_count is 0, even when agent and standing fields are populated | Use the available standing and agent fields |
FAQ
How much does it cost to scrape the Texas Comptroller registry?
On the Free plan, apify-default-dataset-item costs $0.0015 on the Free plan and apify-actor-start costs $0.00005 on the Free plan. 1,000 dataset-item events cost $1.50 on the Free plan, or $1.50005 on the Free plan with one Actor Start event.
Why did my entity-name search return no records?
A genuine miss returns no records. An overly broad name returns HTTP 413 and is skipped; narrow the name or use an exact number.
Why is my record missing detail fields?
Detail fields require fetchDetails: true and a successful detail request. Search-row fields such as the entity name, taxpayer ID, and mailing ZIP remain available after a detail failure.
What should I do if a run is not working?
See Limits and edge cases for the relevant run status and next step.
Is this public data legal or allowed to use?
The Actor accesses the Texas Comptroller’s public franchise-tax account-status registry and officer records disclosed in Public Information Reports. Public availability does not decide whether a use is legal or allowed; source terms and applicable law depend on the buyer’s use case, especially when using officer addresses.
Related actors
- B2B Leads List Builder — Maps + Email + Phone Enrichment — related B2B lead-list and enrichment workflow.
- Better Business Bureau Scraper — BBB Directory — related public business-directory data source.
- Allabolag Company Registry Scraper — Swedish Business Data — related company-registry data for Sweden.
Usage statistics
This Actor creates a small, content-free summary at the end of each run, used only to monitor reliability and improve this Actor. No input values, credentials or scraped data are sent.
A copy of the exact record for your run is saved as USAGE_STATS in your own Apify key-value store.
To opt out, set disableUsageStats to true in the input. Nothing is sent then.