AUO vs Building It Yourself
Joining ABR, ASIC, and ACNC yourself means a SOAP client, a tab-delimited CSV pipeline, and no API at all for charities. The Australian business data API is one call.
The DIY cost
Every one of these registers is free and public. None of them is easy to join.
The Australian Business Register ships a SOAP/XML web service, and the XML shape differs for a company versus a sole trader, so your client needs to branch on entity type before it can even read a name field correctly. ASIC publishes weekly CSV dumps that are actually tab-delimited despite the .csv extension, with multiple rows per company, so you filter on the current-name indicator just to get one row per entity. ACNC, the charity regulator, has no API at all: no SOAP, no REST, nothing to poll. Once you can read all three, you still need a cross-referencing layer to join them on ABN and ACN, a cache so you are not re-fetching on every request, and a process to keep it fresh as data.gov.au rotates resource IDs roughly every month. That is before you have written a single line of business logic.
What one call collapses that into
One call, one bearer token, joined and provenanced JSON.
POST https://api.auo.com.au/v1/resolve Authorization: Bearer auo_sk_test_... { "abn": "46008583542" }
The response is a single canonical record joined from ABR, ASIC, and ACNC (where applicable), with every field carrying the register it came from and the date it was read.
Build it yourself, or one API
| Task | Build it yourself | The API |
|---|---|---|
| ABR access | SOAP/XML client, nested fields, company vs sole-trader branching | One JSON field |
| ASIC access | Tab-delimited CSV parsing, multi-row filtering on current-name indicator | One JSON field |
| ACNC access | No API exists; you would need to source or build your own extract | One JSON field |
| Join / cross-reference | Your own ABN/ACN matching logic across three shapes | Already joined |
| Keep fresh | Track rotating resource IDs, re-fetch on a schedule | Kept current for you |
| Monitoring | Your own diff-and-alert pipeline across every source | Webhooks and polling built in |
What you would still need us for, and what you wouldn't
This removes the SOAP client, the CSV pipeline, the missing ACNC API, and the join layer. It does not remove the honest limits of the underlying data: no free source publishes director, shareholder, or beneficial-ownership registers for ordinary companies, so it does not return them either. It is verification and monitoring, not full KYB or CDD. If your use case genuinely needs beneficial ownership, that sits above what any free Australian source, including this one, can provide.
Build vs buy questions.
Isn't the ABR API free?
Yes, but it is a SOAP/XML web service and it only covers the ABR. You still need to build a tab-delimited CSV pipeline for ASIC, work around ACNC having no API at all, and write a layer that joins all three.
Can I just use the CSVs?
You can, but ASIC's weekly dumps are tab-delimited despite the .csv extension, carry multiple rows per company, and require filtering on the current-name indicator. The download resource IDs also rotate roughly monthly.
What does it not do?
It does not return directors, shareholders, or beneficial ownership for ordinary companies. No free source publishes that register. This is verification and monitoring, not full KYB or CDD.
Is the data the same free public data?
Yes. It is built entirely on free public Australian government registers: the same ABR, ASIC, and ACNC data you would pull yourself.