Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
cleanexpo avatar

Abn Entity Lookup

  • 9 installs
  • 6 repo stars
  • Updated July 16, 2026
  • cleanexpo/ato

Validates Australian Business Numbers and retrieves entity details from the Australian Business Register for tax and compliance checks.

About

Queries the Australian Business Register to validate ABNs and retrieve entity name, type, and GST registration status. A developer uses it when verifying contractor ABNs or entity types for Australian tax compliance.

  • Validates ABNs and checks active/cancelled status
  • Returns entity type and GST registration for tax decisions

Abn Entity Lookup by the numbers

  • 9 all-time installs (skills.sh)
  • Ranked #1,495 of 2,715 Automation & Workflows skills by installs in the Skillselion catalog
  • Data as of Jul 28, 2026 (Skillselion catalog sync)
npx skills add https://github.com/cleanexpo/ato --skill abn-entity-lookup

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs9
repo stars6
Last updatedJuly 16, 2026
Repositorycleanexpo/ato

What it does

Validates Australian Business Numbers and retrieves entity details from the Australian Business Register for tax and compliance checks.

Files

SKILL.mdMarkdownGitHub ↗

ABN Entity Lookup Skill

Queries the Australian Business Register (ABR) to validate ABNs, retrieve entity names, determine entity types, check GST registration status, and verify active/cancelled status. Essential for contractor deeming analysis, payroll tax compliance, and entity type determination.

When to Use

  • Validating a contractor's ABN before classifying payments
  • Determining entity type (company, trust, sole trader, partnership) for tax rate selection
  • Checking GST registration status for input tax credit eligibility
  • Verifying ABN is active (not cancelled) before processing payments
  • Populating entity details for new Xero organisation connections
  • Cross-referencing Xero contact ABNs for data quality checks

ABR API Configuration

Endpoint

https://abr.business.gov.au/abrxmlsearch/AbrXmlSearch.asmx/ABRSearchByABN

Parameters

ParameterRequiredDescription
searchStringYes11-digit ABN
includeHistoricalDetailsNoY or N (default N)
authenticationGuidYesABR API GUID from env ABR_GUID

Alternative Endpoints

EndpointUse Case
ABRSearchByABNLookup by ABN (primary)
ABRSearchByASICLookup by ACN (9-digit)
ABRSearchByNameSearch by entity name (fuzzy)
ABRSearchByNameAdvancedSearch with state/postcode filters

ABN Validation Rules

Format Validation (Client-Side)

1. Must be exactly 11 digits 2. Apply ABN weighting algorithm:

  • Subtract 1 from the first digit
  • Multiply each digit by its weighting factor: [10, 1, 3, 5, 7, 9, 11, 13, 15, 17, 19]
  • Sum the products
  • Result must be divisible by 89

Example Validation

ABN: 51 824 753 556
Step 1: Subtract 1 from first digit → [4, 1, 8, 2, 4, 7, 5, 3, 5, 5, 6]
Step 2: Multiply by weights →          [40, 1, 24, 10, 28, 63, 55, 39, 75, 85, 114]
Step 3: Sum = 534
Step 4: 534 / 89 = 6.0 (exactly divisible) → VALID

Entity Type Mapping

ABR returns entity type codes that map to tax treatment:

ABR Entity TypeCodeTax RateAmendment PeriodPayroll Tax Grouping
Australian Private CompanyPRV25%/30%4 yearsRelated body corporate
Australian Public CompanyPUB30%4 yearsRelated body corporate
Individual/Sole TraderINDMarginal rates2 yearsN/A
Family TrustTRTTrustee rates4 yearsTracing provisions
Unit TrustTRTTrustee rates4 yearsTracing provisions
PartnershipPTRPartner rates4 yearsCommon employees
SMSFSMF15%/0%4 yearsN/A
Government EntityGOVExemptN/AExempt
Non-ProfitNPFVaries4 yearsCharitable exemption

Response Data Extraction

Key Fields

FieldPathUse
Entity NamebusinessEntity/mainName/organisationNameDisplay name
Entity TypebusinessEntity/entityType/entityTypeCodeTax rate selection
ABN StatusbusinessEntity/ABN/isCurrentIndicatorActive check
GST RegisteredbusinessEntity/goodsAndServicesTax/effectiveFromInput tax credit
GST StatusbusinessEntity/goodsAndServicesTax/isCurrentIndicatorCurrent registration
StatebusinessEntity/mainBusinessPhysicalAddress/stateCodePayroll tax jurisdiction
PostcodebusinessEntity/mainBusinessPhysicalAddress/postcodeLocation verification
ACNbusinessEntity/ASICNumberCompany cross-reference

Output Format

<abn_lookup_result>
  <abn>51824753556</abn>
  <abn_valid>true</abn_valid>
  <abn_active>true</abn_active>
  <entity_name>Example Pty Ltd</entity_name>
  <entity_type>Australian Private Company</entity_type>
  <entity_type_code>PRV</entity_type_code>
  <gst_registered>true</gst_registered>
  <gst_effective_from>2015-07-01</gst_effective_from>
  <state>NSW</state>
  <postcode>2000</postcode>
  <acn>824753556</acn>

  <tax_implications>
    <corporate_tax_rate>0.25</corporate_tax_rate>
    <!-- Base rate entity test required (passive income <80%) -->
    <amendment_period_years>4</amendment_period_years>
    <payroll_tax_grouping_risk>related_body_corporate</payroll_tax_grouping_risk>
  </tax_implications>

  <lookup_metadata>
    <source>ABR API</source>
    <queried_at>2026-02-13T10:00:00+11:00</queried_at>
    <cache_ttl_hours>24</cache_ttl_hours>
  </lookup_metadata>
</abn_lookup_result>

Privacy Considerations

  • ABR data is public information — no consent required for lookup
  • However, caching ABR responses containing sole trader names has privacy implications under APP 11
  • Sole trader lookups return individual names — handle with same care as personal information
  • Cache ABR responses for 24 hours maximum, then re-query
  • RLS policies on abn_lookup_cache table must restrict access to authenticated users only

Best Practices

  • Always validate ABN format client-side before making API call
  • Cache responses for 24 hours to reduce ABR API load
  • Handle ABN not found gracefully — entity may have recently registered or cancelled
  • Check GST status separately from ABN status — ABN can be active with cancelled GST
  • Entity type determines tax rate, amendment period, and payroll tax grouping — always extract
  • Rate limit ABR API calls — no published limit but be respectful (max 1 req/second)

Related skills

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.