REST + JSON

ABN Lookup and Validation API

Look up and validate an ABN or ACN and get one verified record back as JSON, joined from every free Australian government register. No SOAP, no XML, no CSV parsing.

How it works

One call. Send an ABN, ACN, or company name and get a joined, verified record.

POST https://api.auo.com.au/v1/resolve
Authorization: Bearer auo_sk_test_...

{ "abn": "46008583542" }

Validate, then resolve

Validation runs the ABN check-digit test locally, so a malformed number never costs a lookup. A valid identifier then resolves across the registers into one canonical record. Every field carries the register it came from and the date it was read.

What you get back

FieldValueSource
entity_nameMACQUARIE BANK LIMITEDABR
abn_statusActiveABR
acn008 583 542ASIC
gst_statusRegisteredABR

An ACN is returned only for a company acting in its own right. A trust has an ABN but no ACN of its own; its corporate trustee is a separate entity.

How this differs from calling ABR directly

The Australian Business Register ships a SOAP/XML web service. Hitting it directly means writing a SOAP client, parsing nested XML, and handling different field structures for companies versus sole traders. The Australian business data API gives you JSON over one bearer token, joins ASIC and the other registers into the same record, and returns the source and date behind every field.

FAQ

ABN lookup questions.

Can I validate an ABN programmatically?

Yes. The check-digit validation runs on the identifier before any lookup, so a malformed ABN or ACN is caught immediately.

What is the difference between an ABN and an ACN?

An ABN identifies a business for tax; an ACN identifies a company registered with ASIC. A company acting in its own right has both, but a trust or sole trader has an ABN and no ACN. See our ABN vs ACN guide.

Is the data free public data?

Yes. It is built entirely on free public Australian government registers.

Look up your first ABN in a minute.

Get an API key