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
| Field | Value | Source |
|---|---|---|
| entity_name | MACQUARIE BANK LIMITED | ABR |
| abn_status | Active | ABR |
| acn | 008 583 542 | ASIC |
| gst_status | Registered | ABR |
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.
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.