Australian ABN Register Scraper avatar

Australian ABN Register Scraper

Pricing

Pay per event + usage

Go to Apify Store
Australian ABN Register Scraper

Australian ABN Register Scraper

Look up supplied ABNs and export official Australian Business Register entity, status, GST, location, and name records.

Pricing

Pay per event + usage

Rating

0.0

(0)

Developer

Stas Persiianenko

Stas Persiianenko

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

8 days ago

Last modified

Categories

Share

Look up supplied Australian Business Numbers and export normalized records from the official Australian Business Register (ABR).

The Australian ABN company register output includes entity identity, registration status, entity type, GST status, public state/postcode, current business names, historical trading names, and source dates.

Use it for repeatable supplier checks, KYB enrichment, CRM cleanup, and auditable ABN verification without manually copying register pages.

What does Australian ABN Register Scraper do?

The Actor accepts one or more ABNs.

It validates each 11-digit number with the official ABN checksum before making a request.

For every matching register entry, it saves one typed dataset row.

Each row links back to the canonical ABR detail page.

The Actor reads public server-rendered pages directly.

It does not require an ABR API GUID, login, browser, or proxy.

Who is it for?

Procurement teams can verify supplier identity and GST registration before onboarding.

KYB and compliance teams can add official ABR attributes to a review record.

Finance teams can check supplied ABNs before invoice or vendor-data cleanup.

Data engineers can turn a list of ABNs into stable JSON, CSV, Excel, or API output.

Operations teams can schedule the same input and compare exported snapshots downstream.

Why use this ABN lookup workflow?

  • Bulk input instead of one manual lookup at a time
  • ABN checksum validation before network requests
  • One normalized record per matched ABN
  • Official source URLs on every row
  • Current business names and legacy trading-name records
  • Deterministic limits and duplicate removal
  • Direct HTTP extraction with a 256 MB memory profile
  • Transient retries without hiding permanent failures

What data can you extract?

FieldMeaning
abnNormalized 11-digit ABN
formattedAbnRegister-formatted ABN
entityNameRegistered entity name
abnStatusCurrent ABN status
abnStatusFromDate from which that status applies
entityTypePublic entity classification
entityTypeUrlABR explanation for the entity type
gstStatusCurrent GST registration status
gstStatusFromDate from which GST status applies
mainBusinessLocationPublic state and postcode shown by ABR
businessNamesCurrent business-name records and start dates
tradingNamesHistorical trading-name records retained by ABR
abnLastUpdatedABR record update date
recordExtractedABR extraction date
sourceUrlCanonical ABR detail URL
scrapedAtActor retrieval timestamp

Unavailable source fields are returned as null or an empty array.

How to run an Australian ABN lookup

  1. Open the Actor input page.
  2. Add one or more ABNs to Australian Business Numbers.
  3. Keep spaces or hyphens if they help readability.
  4. Set Maximum records to bound the run.
  5. Click Start.
  6. Open the Dataset tab when the run finishes.
  7. Export JSON, CSV, Excel, XML, or RSS as needed.

A useful first input is:

{
"abns": [
"51 824 753 556",
"88 000 014 675"
],
"maxItems": 2
}

Input parameters

abns

Required array of Australian Business Numbers.

Each value must contain exactly 11 digits after spaces and hyphens are removed.

Every value must pass the ABN checksum.

Duplicate normalized ABNs are processed once.

The maximum input size is 1,000 ABNs.

maxItems

Optional maximum number of unique supplied ABNs to process.

The default is 100.

The accepted range is 1 to 1,000.

The Actor stops scheduling work after this limit.

Output example

The following shape reflects current Actor output; names are shortened here for readability.

{
"abn": "51824753556",
"formattedAbn": "51 824 753 556",
"entityName": "AUSTRALIAN TAXATION OFFICE",
"abnStatus": "Active",
"abnStatusFrom": "01 Nov 1999",
"entityType": "Commonwealth Government Entity",
"entityTypeUrl": "https://abr.business.gov.au/Help/EntityTypeDescription?Id=00053",
"gstStatus": "Registered",
"gstStatusFrom": "01 Jul 2000",
"mainBusinessLocation": "NSW 2640",
"businessNames": [],
"tradingNames": [
{
"name": "AUSTRALIAN TAXATION OFFICE",
"fromDate": "09 Mar 2000",
"sourceUrl": null
}
],
"abnLastUpdated": "07 Mar 2023",
"recordExtracted": "14 Aug 2026",
"sourceUrl": "https://abr.business.gov.au/ABN/View?abn=51824753556",
"scrapedAt": "2026-08-13T14:37:15.922Z"
}

How much does it cost to look up Australian ABN records?

Pay-per-event billing has two parts:

  • $0.01 once when a run starts
  • one item event for each validated ABN record saved

The current BRONZE item price is $0.003732 per saved record, with lower per-item rates at higher usage tiers.

At the BRONZE rate, 10 saved records cost about $0.04732 including one start event.

At the BRONZE rate, 100 saved records cost about $0.3832 including one start event.

At the BRONZE rate, 1,000 saved records cost about $3.742 including one start event.

Invalid ABNs and ABNs with no matching public record do not produce or charge an item event.

Apify platform usage treatment follows the live pricing shown in Console; use the Console estimate as the final billing authority.

Supplier verification workflow

Start with ABNs already supplied by vendors or held in your source system.

Run the Actor to normalize identity, status, GST, and location fields.

Join output back to your supplier table using abn.

Flag inactive ABNs or unexpected GST status according to your own policy.

Retain sourceUrl and scrapedAt as evidence of when the check occurred.

This Actor returns source facts; it does not make a compliance decision for you.

Scheduled ABN checks

Create an Apify Schedule with a saved Actor task.

Use the same ABN list on each run.

Export each dataset to your warehouse or automation platform.

Compare status and name fields downstream to detect changes.

The Actor itself does not send alerts or store a cross-run change history.

Integrations and exports

Send datasets to Google Sheets for operational review.

Export CSV or Excel for finance and procurement workflows.

Use webhooks to notify an automation after a successful run.

Connect Make, Zapier, or n8n to consume the finished dataset.

Load JSON into a warehouse for recurring supplier enrichment.

Use the Apify API when ABNs originate in another application.

Run with the Apify API

Replace YOUR_TOKEN with an Apify API token.

cURL

curl -X POST \
"https://api.apify.com/v2/acts/automation-lab~australian-abn-register-scraper/runs?token=YOUR_TOKEN&waitForFinish=120" \
-H "Content-Type: application/json" \
-d '{"abns":["51824753556"],"maxItems":1}'

JavaScript

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client
.actor('automation-lab/australian-abn-register-scraper')
.call({ abns: ['51824753556'], maxItems: 1 });
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Python

from apify_client import ApifyClient
client = ApifyClient("YOUR_TOKEN")
run = client.actor(
"automation-lab/australian-abn-register-scraper"
).call(run_input={"abns": ["51824753556"], "maxItems": 1})
items = client.dataset(run["defaultDatasetId"]).list_items().items
print(items)

Use with Apify MCP

Add the Actor to Claude Code:

claude mcp add --transport http apify \
"https://mcp.apify.com?tools=automation-lab/australian-abn-register-scraper"

Claude Desktop, Cursor, and VS Code setup

For Claude Desktop, Cursor, VS Code, or another MCP-compatible desktop/editor client:

{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com?tools=automation-lab/australian-abn-register-scraper"
}
}
}

Example prompts:

  • "Look up ABN 51 824 753 556 and summarize its current registration and GST status."
  • "Run the ABN scraper for these supplier ABNs and return a table of entity name, status, and location."
  • "Export official source URLs and timestamps for this ABN verification list."

Accuracy, freshness, and source behavior

Records reflect what the Australian Business Register displayed when fetched.

recordExtracted is supplied by ABR and may differ from scrapedAt.

ABR exposes only a public state and postcode as the main business location on these pages.

Legacy trading names stopped being collected and updated by ABR in May 2012.

Current business names link to the national Business Names Register when ABR provides a link.

Source layouts and availability can change.

Limits and failure behavior

The Actor supports direct ABN lookup, not discovery by company name or postcode.

It rejects malformed or checksum-invalid ABNs before charging the start event.

A checksum-valid ABN with no public match produces no dataset row.

Transient network errors, HTTP 429 responses, and server errors receive bounded retries.

Permanent HTTP errors and unknown page shapes fail the run instead of returning misleading empty data.

The Actor does not use an automatic proxy fallback.

Responsible use and legality

ABN Lookup publishes public register information supplied under Australian law.

Use the data only for lawful purposes and in accordance with ABR terms, Apify terms, and applicable privacy and data-protection requirements.

Do not treat public register data as a substitute for legal, tax, sanctions, credit, or compliance advice.

Apply appropriate retention, access, and review controls in your own systems.

Troubleshooting

Why did my run fail before making a request?

Check that every supplied value contains 11 digits and passes the ABN checksum.

Copying a digit incorrectly is the most common cause.

Why is the dataset empty?

A checksum-valid number may have no matching public ABR record.

Review logs for the No ABR record found warning.

Why is gstStatus null?

The public source did not display a GST row for that entity at retrieval time.

Null means unavailable, not automatically unregistered.

Why are some trading names old?

ABR stopped collecting and updating trading names in May 2012.

Use businessNames for current registered business-name records shown by ABR.

What should I do after a source error?

Inspect the run log and retry later if ABR was temporarily unavailable.

Do not add a proxy unless direct ABR access is unavailable in your environment.

Use ASX Company Announcements Scraper when the workflow needs Australian listed-company disclosure records in addition to ABN identity.

Use Website Company Address Extractor when you need public address evidence from a supplied company website rather than the ABR state/postcode field.

These Actors produce separate datasets and do not replace official ABN verification.

FAQ

Does the Actor search by company name?

No. It intentionally accepts supplied ABNs so each request maps to one canonical register record.

Does it require an ABR API key?

No. It reads public official detail pages and does not use the GUID-protected web service.

Can I export to Excel?

Yes. Open the run dataset and choose Excel, CSV, JSON, XML, or another supported format.

Are duplicate ABNs charged twice?

No. ABNs are normalized and deduplicated within a run before lookup.

Is an item charged when no record exists?

No. The item event is charged only for a validated record that is saved.

Can I use this for ongoing monitoring?

Yes, by scheduling a task and comparing datasets downstream. The Actor does not itself calculate diffs or send alerts.