Our own visit statistics are always on. Google Analytics, which helps us understand how people use our public pages (not your signed-in workspace), is enabled only with your permission. See our Privacy policy.

Solar Installer Complaints Are Undercounted: A Map Test

Each complaint body counts only the firms it covers, and map listings split or merge the same installer. We tested 205 Sydney and Brisbane listings against the ABN register to measure which merge rules fail.

Illustration: a row of houses with solar panels and map pins above them. Several duplicate pins connect with dashed lines to one business ID card, and a magnifying glass examines the card.

Complaint data about rooftop solar and home battery installers is incomplete for two reasons. First, each complaint body counts only the businesses that it covers. Second, the rest of the evidence sits on maps, review sites and social media, where one company can have many listings and many names. You cannot add up that evidence until you know which listings are the same legal entity.

We tested this on October 25, 2026, 14:40–15:01 SGT (06:40–07:01 UTC). We sent 21 requests to EveryInfra. 16 requests were billed, for a total of $0.019725.

Six Google Maps searches in Sydney and Brisbane returned 244 rows, which became 205 unique places. Common merge rules found 41 candidate pairs. We could check 29 of these pairs against the Australian Business Number (ABN) register. 27 of the 29 pairs were two different companies.

In this article, "installer identity" means one thing. You link each map listing, review page, regulator record and contract party to one legal entity. You use a registration number as the key. In Australia the key is the ABN. Names, phone numbers and street addresses help you find candidates. They do not prove that two listings are one company.

Isometric illustration. Six identical mailboxes with the same brand sign stand on one base plate, like six map listings. One shared bar over all six ends at a bell, like one shared phone number. Each lock holds a key of a different shape, like a different registration number. The highlighted fourth key shows that the key tells you the owner.

Three complaint counts that do not add up

The NSW ombudsman can only count its members

The Energy & Water Ombudsman NSW (EWON) published its 2025–26 Annual Report on October 13. Page 36 says that complaints about consumer energy resources (CER), such as rooftop solar and batteries, went from 301 to 677 in one year. Page 42 says that these figures do not include complaints outside EWON's jurisdiction. EWON received 456 electricity complaints that it could not assign to a member. Half of them (226) were about CER, and 40% (183) went to NSW Fair Trading.

The EWON media release of the same day quotes Ombudsman Janine Young: "We can only resolve solar and battery complaints when retailers are EWON members". pv magazine Australia reported on October 15 that the 677 complaints are only 0.05% of about 1.35 million solar and battery systems in NSW.

We did one more calculation from the report. EWON saw at least 677 + 226 = 903 CER complaints in the year. It could not handle 226 of them, which is 25.0%. This is a lower limit. A customer who went direct to Fair Trading, to the tribunal or to a review site is not in the 903.

Column chart of CER complaints in the EWON 2025–26 Annual Report. 301 complaints were inside jurisdiction in 2024–25 and 677 in 2025–26. A highlighted column shows 226 complaints in 2025–26 about non-member businesses that EWON could not handle. 183 of these went to NSW Fair Trading.

The industry code counts only its signatories

The New Energy Tech Consumer Code (NETCC) is a voluntary code that the Clean Energy Council administers. Its compliance page says that, at October 1, 2026, there were 2,548 Approved Sellers. In the 12 months to September 30, the code received 970 complaints, closed 613 and took 141 compliance actions. Firms that did not sign the code are not in these numbers.

On August 28, the Australian Competition and Consumer Commission (ACCC) granted conditional authorisation for an updated code for five years. The ACCC said that the code's benefits "are limited by the lack of independent dispute resolution, reliance on self-reported audits, and lack of transparency around breaches". The NETCC update page says that the updated code starts on December 1, 2026. Approved Sellers that do not agree must opt out between October 19 and November 2. An independent review made 10 recommendations for the next phase of the code.

State regulators count their own state

In South Australia, Consumer and Business Services (CBS) reported on August 4 nearly 130 installation complaints last financial year. That is more than double the year before. CBS fined four businesses. One fine was for trading under an unregistered business name. In Victoria, the Energy and Water Ombudsman (EWOV) wrote in its September 2026 Reflect report that CER complaints were up 39%. The comparison is with the same quarter last year.

Each of these numbers is correct. Each covers a different set of businesses. You cannot add them, and one cannot replace another. To answer "what is this installer's track record", you must join regulator records, map reviews, review platforms and news. That join fails if you do not first fix the identity of the installer.

The test, and the rules we wrote down first

Before we looked at any match results, we wrote down the ground truth and the pass/fail rules:

  1. Ground truth is the ABN. First we use the ABN on the business website. It must pass the ABN check-digit test of the register. If the site shows no ABN, we search ABN Lookup by name. We accept the result only if one active ABN has exactly the same normalized name. If both listings in a pair have an ABN, the same ABN means one entity. Different ABNs mean two entities. If one side has no ABN, the pair is "unknown" and we do not count it in the error rate.
  2. If a rule gives "two entities" in half or more of the checkable pairs, we say that the rule "must not be used alone to merge".
  3. If a rule has fewer than 5 checkable pairs, we give the pair counts only. We do not use a percentage as a conclusion.

We chose Australia for the main test because ABN Lookup is free, public and searchable by name. It gives a ground truth that does not come from our own model.

Step 1: collect and deduplicate

From 14:40 to 14:43 SGT we used Google Maps Reviews Search API (google_maps_reviews/search) six times. The queries were "solar installer" in Sydney (two pages), "home battery installer" in Sydney and "solar panels" in Penrith. We also searched "solar installer" in Brisbane and "Solahart" in NSW. We got 244 rows. After we removed duplicate place_id values, 205 places remained.

The two Sydney queries overlapped a lot.

The first 100 rows for "solar installer" and the 50 rows for "home battery installer" had 37 places in common. The second query added only 13 new places.

So you must run several queries per city and deduplicate by place_id. Our earlier article on Google Maps Place ID deduplication explains that a Place ID identifies a place, not a company. Google's Place ID documentation also says that one place can have more than one ID and that IDs can change. This article goes one step further. After deduplication, how do you know if two different places are the same company?

Step 2: look at the fields

Of the 205 places:

  • 21 (10.2%) had no street address. They had only a phone number and a website. The Google Business Profile guidelines let service-area businesses hide their address. You can identify these listings only by phone, website and name.
  • 23 (11.2%) had a tagline after a "|" or "-" in the name, such as "Best Solar Installer Sydney". The same guidelines do not allow marketing taglines in the business name. You must remove the tagline before you compare names.
  • Of the 198 places with a phone number, 107 (54.0%) used a national 1300 or 1800 number. Brands and dealer networks often share these numbers.
  • Of the 197 places with a website, 21 (10.7%) had utm_ tracking parameters in the URL. If you do not remove them, one domain looks like many websites.
  • 5 places were not solar businesses. They were in categories such as hot water, skylights and pool repair. One listing had "Solar and Electrical" in its name, but its website belonged to a pool heating company.

Step 3: make candidate pairs and check them

We made a candidate pair when two places had the same phone digits, registered domain, street (without Level or Unit) or normalized name. A pair was also a candidate when one name was fully inside the other. After we removed repeats, we had 41 pairs. Here is how each rule performed against the ABN:

  • Same phone: 19 pairs. 2 were one entity, 15 were two entities and 2 were unknown. 15 of the 17 checkable pairs (88.2%) were wrong merges.
  • Same street address: 14 pairs. 0 were one entity, 6 were two entities and 8 were unknown.
  • One name inside another: 8 pairs. 0 were one entity, 6 were two entities and 2 were unknown.
  • Same website domain: 4 pairs. 2 were one entity and 2 were unknown. No wrong merges, but only 2 checkable pairs.
  • Same normalized name: 1 pair, one entity.
Stacked bar chart of candidate pairs per merge rule among 205 Australian places, checked against the ABN. Same phone: 19 pairs, with 2 one entity, 15 two entities and 2 unknown. Same street: 14 pairs, with 6 two entities and 8 unknown; name inside name: 8 pairs, with 6 two entities and 2 unknown. Same domain: 4 pairs, with 2 one entity and 2 unknown, and same name: 1 pair, one entity.

What went wrong: one phone number, six companies

All 15 wrong phone merges came from one brand. The NSW search for "Solahart" returned 11 places. Six of them used the same number, 1300 362 821. From their websites and the name search, we found six different ABNs for these six places. One ABN was the brand manufacturer. The other five were different companies or trusts in five different postcodes.

The Solahart dealer page lists dealers by region, so this is how the network is designed. The brand routes one national number to local dealers. The customer thinks that they deal with one company, but the contract is with a local dealer. If you merge by phone, you put six companies' reviews and complaints on one record.

The same brand also shows the opposite case. A second number, 1300 721 984, was shared by the brand's head office listing and two dealer listings. Both dealer listings link to pages under /dealer/ on the brand website, and both pages show the same ABN. So these are two service-area listings of one dealer, and you should merge them.

We could not find an ABN for the head office listing, so those pairs stay "unknown". One more listing is called "Solahart Wollongong" on the map. Its website footer says that a company "trading as Solahart Illawarra" owns it. That is one entity with three names.

The street address errors came from shared office buildings. Three solar companies list 50 Clarence St in Sydney. Two or three solar companies also share each of these addresses: 2 Elizabeth Plaza (North Sydney), 4 Columbia Ct (Norwest) and 16 McDougall St (Milton, Brisbane). All 6 checkable street pairs were two different companies. The Google guidelines do not allow a virtual office as a business address unless staff are there during business hours. But these listings are still on the map.

The name errors came from common phrases. Green Solar Energy, Green Solar Energy Solutions, Green Solar NSW, Best Green Solar and Green Solar Pty Ltd each have a different ABN. A listing called "Solar World" had a tagline in its name. Its pairs with "Battery Solar World" and "Global Solar World" stayed "unknown", because one side of each pair had no ABN. When we searched ABN Lookup for "Solar World", two active records had exactly that name: a company in NSW and a sole trader in Victoria.

Only one pair matched on three rules and was one entity: a company with one listing in Sydney and one in Brisbane. The phone, domain and name were the same, and the name search returned one ABN. That is a real "one company, two branches" case.

Result: in these 205 places, same phone, same street address and name containment must not be used alone to merge. Same registered domain made no wrong merge in 2 checkable pairs. That sample is too small, so use it as a strong lead and still confirm with a registration number.

A map name does not give you one ABN in three of ten cases

From 14:49 to 14:52 SGT we removed taglines and suffixes such as "Pty Ltd" from the 205 names. Then we searched each name in ABN Lookup among active ABNs:

  • 140 names (68.3%) matched exactly one ABN.
  • 51 names (24.9%) had no exact match.
  • 14 names (6.8%) matched two or more ABNs.

Then we tested the name search against the ABNs on the websites. We sent one GET request to each of the 197 home pages. If the home page had no ABN, we also tried /contact-us, /contact and /about-us. 183 sites opened. 62 sites (31.5% of 197) showed an ABN that passed the check digit. For these 62:

  • 43 (69.4%): the name search found the same ABN as the website.
  • 2 (3.2%): the name search found a different ABN. If you trust the name, you pick the wrong company.
  • 17 (27.4%): the name search found nothing.
Two 100% stacked bars. Top bar: of 205 names searched in ABN Lookup, 140 matched one ABN, 51 had no exact match and 14 matched two or more. Bottom bar: 62 places show an ABN on their website. For 43 of them the name search found the same ABN, for 2 a different ABN and for 17 nothing.

The Australian Business Register explains why a name is not enough. Its note on trading names says that trading names collected before May 28, 2012 still show on ABN Lookup, but they are "only provided for historical reference with no legal status". They "cannot be updated or relied upon for business identity". The ABN Lookup names FAQ separates entity names, registered business names and old trading names. business.gov.au adds that one ABN can have many business names. The legal name on a contract can also be different from the trading name.

Regulators write their warnings in the same "entity, trading as brand" form. The CBS warning names "1 Solar Australia, trading as Solar Power Nation". The NETCC compliance page records the expulsion of "Prodigy Consulting Pty Ltd" on September 1, 2026, with "Sahara Solar" as the trading name. If you match these records to map names only, both of them fail.

How often does a website show its registration number?

The best place to find a registration number is the business's own website. We ran the same scan in Phoenix, Arizona, for comparison. We searched Google Maps at 14:43 SGT and scanned the sites from 14:47 to 14:57 SGT:

  • Australia (Sydney and Brisbane), ABN: 62 of 197 sites (31.5%).
  • United States (Phoenix), Arizona Registrar of Contractors (ROC) license number: 15 of 47 sites (31.9%). 14 of the 15 showed it on the home page.

Arizona has a specific rule. A.R.S. § 32-1124 requires a contractor's license number in advertisements. Since 2021, an internet advertisement can leave out the number if it links to a website that shows it prominently. The ROC's own guidance says that "prominently displayed" means the number is on the home page and not in the footer. Even with this rule, our script found a license number on only about one third of the Phoenix sites.

Horizontal bar chart of the share of business websites that show a registration number. Sydney and Brisbane ABN: 31.5% (62 of 197). Valencia NIF: 34.1% (14 of 41), highlighted. Phoenix ROC: 31.9% (15 of 47). Santiago RUT: 6.4% (3 of 47) and Guadalajara RFC: 0% (0 of 41).

The chart also shows our Spanish-language cities: Valencia (Spain), Santiago (Chile) and Guadalajara (Mexico). The Spanish version of this article covers them. A limit applies to all five numbers: our script reads static HTML only. It cannot see a footer that loads with JavaScript or a number inside an image. So these numbers are a lower limit. They do not tell you how many businesses break a rule.

Cross-platform: Yelp and Trustpilot give fewer keys

At 14:45 SGT we ran Yelp Search API (yelp/search) for "solar installers" in Phoenix. A synchronous request with limit 50 timed out after 85 seconds and was not billed. The asynchronous request with limit 30 returned 30 businesses. Each result had a Yelp ID, name, URL, rating, review count, categories and an image. It had no phone, no website and no address.

So the only key you can use to match Yelp search results to Google Maps is the name. Ten of the 30 Yelp names were exact matches with names in the Google Maps Phoenix results. We showed above that a name match alone is weak. To get a phone or website from Yelp, you need the profile endpoint. Our three profile requests at 15:00–15:01 SGT returned 503 unavailable, were not billed, and we stopped.

In Phoenix, five pairs of different businesses also shared one street address on Google Maps, for example at 2 N Central Ave. We did not have a ground truth for Arizona pairs, so we do not report an error rate.

At 15:00–15:01 SGT we used Trustpilot Details API (trustpilot/profile) for two Sydney installers. Trustpilot keys a company by its domain. The Trustpilot help page on merging profiles says that a company with several domains can have several profiles. One of our two profiles came back under the www. host, not the bare domain. So you must normalize domains before you join Trustpilot to anything else.

The two installers looked very different on the two platforms:

  • Company A: Google Maps 4.5 from 7,297 reviews; Trustpilot 1.5 from 80 reviews.
  • Company B: Google Maps 4.5 from 3,358 reviews; Trustpilot 1.5 from 49 reviews.

We do not say which rating is "right". Each platform collects reviews in a different way and at a different time in the customer journey. The point is this: if you look at one platform only, you see one picture. If you join the platforms by domain and confirm with the ABN, you see both pictures on one entity.

A merge rule you can use

From these tests, we suggest this order of evidence. The strongest is first:

  1. Same registration number (ABN, ACN, state contractor license) from a website, contract, invoice or regulator notice: merge.
  2. The website says "entity, trading as brand", and the brand matches the map name: merge into that entity.
  3. Same registered domain and same phone: strong candidate. Confirm with a registration number. In our sample this made no wrong merge, but only 2 pairs were checkable.
  4. Same phone only: do not merge. Brands and dealer networks share 1300 and 1800 numbers. 15 of 17 checkable pairs were two companies.
  5. Same street address only: do not merge. Shared offices are common. All 6 checkable pairs were two companies.
  6. Similar name only: do not merge. Common phrases collide. 6.8% of name searches matched more than one ABN.
  7. The website field is a social or site-builder domain (for example facebook.com): skip the domain rule. In Guadalajara, two unrelated businesses gave facebook.com as their website.
  8. One side has no registration number: put the pair on a review list. Do not merge and do not split until you have a contract, an invoice or a regulator record.
Animated flow with six steps that light up in turn every 8 seconds. Search, then normalize: 244 rows become 205 places, and phone, domain, street and name are cleaned. Candidate pairs, then ID lookup: 41 pairs, each checked with the website ABN or ABN Lookup. Decide, then roll up: same ABN merges, different ABN splits, no ABN goes to review, and records go to the entity.

The last step is the most important. Count complaints, reviews and regulator records per entity. A map listing or a review page is only one entry point to that entity. Our multi-platform reputation monitoring guide shows how a wrong owner changes the result. Our sanctions list screening workflow shows why a name hit and a confirmed match need a human check between them. Installers are the same: an extra "unknown" is better than two companies' complaints on one record.

This is the three-way decision in the Fellegi–Sunter record linkage model from 1969: link, non-link and possible link. Newer models such as Ditto score candidates more accurately, and tools such as Splink run Fellegi–Sunter at scale. But the structure stays the same: find candidates, then decide with strong evidence. The 2026 World-POI dataset paper lists entity resolution between places as future work. A registration number is the kind of strong evidence that these models need.

If you check many ABNs, the ABR offers free ABN Lookup web services after registration. For installer accreditation, Solar Accreditation Australia has a public status check. The government's energy.gov.au guide explains that a solar retailer often subcontracts the accredited installer. So the company on the contract and the person on the roof can be different. Record both.

What it costs to rebuild one city each month

We use the catalog prices that we read on October 25 (check the pricing page before you rely on them). Google Maps search, details and reviews cost $0.001389 per request, and each page is one request. Trustpilot details cost $0.001389 per request. If you rebuild one city's installer list each month:

  • Map search: 3 keywords × 2 pages = 6 requests × $0.001389 = $0.008334
  • Reviews: 200 places × 1 page = 200 × $0.001389 = $0.277800 (up to 100 reviews per page)
  • Trustpilot: 50 businesses with a domain × 1 = 50 × $0.001389 = $0.069450

The total is $0.355584 per month. ABN Lookup and regulator pages are free public pages. Failed and empty requests are not billed, so the real cost is lower. Our 21 test requests cost $0.019725.

Get the same data with code or an AI client

One curl request for one city (replace the key placeholder):

bash
curl -s https://api.everyinfra.com/api/v1/social \
  -H "Authorization: Bearer <API Key>" \
  -H "Content-Type: application/json" \
  -d '{"platform":"google_maps_reviews","action":"search","params":{"keyword":"solar installer","location":"Sydney NSW","country":"au","language":"en","limit":50}}'

The fields that you use for identity work (they match response_fields for google_maps_reviews/search in the catalog):

  • place_id: the Google place ID. Use it to deduplicate. Do not use it as a company ID.
  • name: the map name. It can include a tagline. Remove the tagline before you compare.
  • address, city, state, postal_code, country_code: can be empty for service-area businesses. Remove Level and Unit before you compare streets.
  • phone: keep digits only. Treat 1300 and 1800 numbers as weak evidence.
  • website: keep the registered domain and remove utm_ parameters. Skip social domains.
  • category, categories: remove listings such as hot water or pool repair.
  • rating, rating_scale, review_count: weight these by entity when you roll up.
  • lat, lng: companies in one building have almost the same coordinates. Do not merge on these alone.
  • permanently_closed: keep closed listings in an archive. Old complaints must still match them.

The other fields are url, description, price, image_url and platform. To read reviews, use Google Maps Reviews API for review pages with the url from the search result. For opening hours and Plus Code of one place, use Google Maps Reviews Details API. The platform page Google Maps Scraper API lists all three actions. For the review platforms, see Trustpilot Scraper API and Yelp Scraper API.

In Claude Code, create a key with the quickstart. Then add the remote MCP server, as the Claude Code MCP documentation shows for HTTP servers:

bash
claude mcp add --transport http everyinfra https://api.everyinfra.com/mcp \
  --header 'Authorization: Bearer ${EVERYINFRA_API_KEY}'

Then ask: "Use everyinfra_call_api to search solar installers in Sydney. Deduplicate by place_id, keep phone digits only, keep the registered domain, and list places that share a phone but not a domain."

Errors and billing (all of these happened in our test):

  • A synchronous request for page 2 (more than 60 rows from the start) returns 422 async_required. The error tells you to use "mode":"async". It is not billed.
  • An asynchronous request returns 202 and a job_id at once, and $0.001389 is held. Poll GET /api/v1/jobs/{job_id} until the status is succeeded. Our page 2 returned 50 rows and then stopped at depth_limit. One set of parameters reaches 100 rows at most.
  • A Yelp search with limit 50 timed out after 85 seconds. It returned 503 timeout and was not billed. The message says to lower limit or use async. The async request worked.
  • Three Yelp profile requests returned 503 unavailable with retry_after 60 seconds. They were not billed.
  • If an async job fails or returns no rows, the held amount comes back. See failure refund reconciliation to check each charge, and API error handling for safe retries.

How this compares with other methods

  • Regulator and code data only: free and authoritative. Each source covers only its members or its scope (EWON members, NETCC signatories, one state's licensees). Good evidence that a complaint was handled. Not a full track record.
  • Manual checks: you search ABN Lookup and the state licence register for each name. Accurate, but slow for hundreds of firms per city.
  • Commercial company databases: good for directors, related companies and credit data. They usually do not include map listings and platform reviews, so you still need the join.
  • The method in this article: map and platform data are collected automatically and the raw responses are kept. Rules make candidates and a review list, and the registration number decides. Its limit: where no public registration number exists, the review list is long, and you still need contracts and invoices.

What changed in the last 60 days

  • October 13: EWON Annual Report 2025–26. NSW solar and battery complaints doubled, and 25.0% of the CER complaints that EWON saw were about non-members. For you: until ombudsman scope grows, a large part of complaints stays outside the ombudsman count, and platform data is one way to see it.
  • **October 13: ABC News on Lux Solar.** ABC reported that Queensland's Office of Fair Trading is investigating the company. NETCC expelled it in June, but its website still used "approved seller" wording. For you: an "approved" badge on a website is a claim. Check it against the code's own list and the expulsion records.
  • **September 30: ABC News on Macarthur Solar.** The brand's underlying company, Macarthur Energy, went into liquidation. It owes almost $3.4 million to more than 79 unsecured creditors. The NSW Building Commission received more than 100 complaints. For you: the brand on the roof and the company in liquidation can have different names. Your identity record must link both.
  • **September 30: CER postcode data.** The Clean Energy Regulator counts 7,117,378 small-scale installations, including batteries from the Cheaper Home Batteries Program. Its June quarter report says Q2 2026 had more than 111,000 approved battery installations. For you: more installations from more new sellers means more new listings and names to resolve.
  • August 28 and December 1: the updated NETCC. The ACCC authorised it on August 28, and it starts on December 1. Sellers that opt out lose the Approved Seller badge on November 30. For you: refresh your seller list after December 1, because the set of signatories will change.
  • From November 2: the NSW CER Installer Portal. The portal page says that new systems up to 200 kW must use it in the Endeavour and Essential networks. Ausgrid follows on November 23. For you: each new system will have a government installer record. That is a new source of strong evidence.

Limits of this test

  • The ground truth has errors. A website ABN can belong to the web agency. A single ABN from a name search can belong to a different firm with the same name. We checked some cases by hand, for example a dealer footer that says "trading as". We did not check all 62 websites by hand.
  • Many pairs are unknown: 12 of 41. The percentages above describe only the checkable pairs.
  • The sample comes from searches on one day, October 25. Map ranking changes. We took only the first 50 to 100 rows per query.
  • We do not rate any company. We use company names only to show identity cases. This article is not legal advice.

FAQ

Where do I complain about a solar installation in NSW? It depends on who you have the contract with. If the retailer is an EWON member, EWON can handle it. EWON says it can only resolve these complaints when the retailer is a member. It sent 183 such customers to NSW Fair Trading in 2025–26. If the seller is an NETCC Approved Seller, the code has its own complaint process. Find the ABN on your contract first, because each body searches by entity. (Question from the search suggestion "solar installation complaints nsw".)

How do I check if a solar installer is accredited? Check the person and the company separately.

Solar Accreditation Australia has a public status check for individual installers. The NETCC lists Approved Sellers. ABN Lookup shows the company behind the ABN. In our test, a map name gave one clear ABN in only 68.3% of cases. So use the ABN on the quote, not the name on the map. (Question from the search suggestion "check solar installer accreditation".)

The solar company went out of business. Who covers the warranty? This is not legal advice. It shows how to find the right entities.

The brand, the retailer on the contract, the installer on the roof and the equipment maker can be four different entities. If one closes, the others may still exist. In the Macarthur Solar case, the company in liquidation had a different name from the brand. List each entity and its ABN from your contract, invoice and warranty papers. (Question from the search suggestion "solar installer gone out of business warranty".)

Related reading

References

  1. Energy & Water Ombudsman NSW, "Annual Report 2025–26", 2026-10-13, https://www.ewon.com.au/content/Document/Annual%20Reports/AnnualReport2026.pdf
  2. Energy & Water Ombudsman NSW, "Solar and battery complaints double", 2026-10-13, https://www.ewon.com.au/page/media-center/media-releases/solar-and-battery-complaints-double/
  3. pv magazine Australia, "Lack of consumer energy resources retailer memberships skew EWON complaint data", 2026-10-15, https://www.pv-magazine-australia.com/2026/10/15/lack-of-consumer-energy-resources-retailer-memberships-skew-ewon-complaint-data/
  4. New Energy Tech Consumer Code, "Reporting on Applications and Complaints", data at 2026-10-01, https://www.newenergytech.org.au/compliance-activity
  5. Australian Competition and Consumer Commission, "Exemption granted for New Energy Tech Consumer Code", 2026-08-28, https://www.accc.gov.au/media-release/exemption-granted-for-new-energy-tech-consumer-code
  6. New Energy Tech Consumer Code, "Moving to an updated Code", read 2026-10-25, https://www.newenergytech.org.au/moving-to-an-updated-code
  7. New Energy Tech Consumer Code, "2026 NETCC Independent Review", read 2026-10-25, https://www.newenergytech.org.au/2026-review
  8. Consumer and Business Services SA, "Shining a light on dodgy solar operators", 2026-08-04, https://www.cbs.sa.gov.au/news/shining-a-light-on-dodgy-solar-operators
  9. Energy and Water Ombudsman Victoria, "Reflect, September 2026", 2026-09, https://www.ewov.com.au/reports/reflect-202608
  10. Australian Business Register, "Format of the ABN", read 2026-10-25, https://abr.business.gov.au/Help/AbnFormat
  11. Australian Business Register, ABN Lookup, read 2026-10-25, https://abr.business.gov.au/
  12. Google for Developers, "Place IDs, Places API (New)", read 2026-10-25, https://developers.google.com/maps/documentation/places/web-service/place-id
  13. Google Business Profile Help, "Guidelines for representing your business on Google", read 2026-10-25, https://support.google.com/business/answer/3038177?hl=en
  14. Solahart, "Find your nearest Solahart dealer", read 2026-10-25, https://solahart.com.au/dealer
  15. Australian Business Register, ABN Lookup active search "Solar World", read 2026-10-25, https://abr.business.gov.au/Search/ResultsActive?SearchText=Solar%20World
  16. Australian Business Register, "Trading names in the ABR", read 2026-10-25, https://www.abr.gov.au/media-centre/featured-news/business-super-funds-charities/trading-names-abr
  17. Australian Business Register, "Business names/Trading names FAQs", read 2026-10-25, https://abr.business.gov.au/FAQ/Names
  18. business.gov.au, "Business names, trading names and legal names", read 2026-10-25, https://business.gov.au/planning/new-businesses/business-names-trading-names-and-legal-names
  19. Arizona State Legislature, A.R.S. § 32-1124, https://www.azleg.gov/ars/32/01124.htm
  20. Arizona Registrar of Contractors, "Changes to Arizona Law Regarding Advertising Requirements for Contractors", 2021-09-15, https://roc.az.gov/news/changes-arizona-law-regarding-advertising-requirements-contractors
  21. Trustpilot Help Center, "Guidelines for merging business profiles", read 2026-10-25, https://help.trustpilot.com/s/article/Guidelines-for-merging-business-profiles?language=en_US
  22. Ivan P. Fellegi and Alan B. Sunter, "A Theory for Record Linkage", Journal of the American Statistical Association 64(328), 1969, https://doi.org/10.1080/01621459.1969.10501049
  23. Yuliang Li et al., "Deep Entity Matching with Pre-Trained Language Models", PVLDB 14(1), 2020, https://doi.org/10.14778/3421424.3421431
  24. Ministry of Justice Analytical Services, Splink documentation, read 2026-10-25, https://moj-analytical-services.github.io/splink/
  25. H. Amiri, M. Hashemi and A. Züfle, "Descriptor: Global Foursquare and OpenStreetMap Point-of-Interest Dataset (World-POI)", IEEE Data Descriptions, 2026, https://ieeexplore.ieee.org/abstract/document/11690803/
  26. Australian Business Register, "ABN Lookup web services", read 2026-10-25, https://abr.business.gov.au/Tools/WebServices
  27. Solar Accreditation Australia, "Check Installer Accreditation Status", read 2026-10-25, https://saaustralia.com.au/accreditation-status-check/
  28. energy.gov.au, "Choose your solar retailer and installer", read 2026-10-25, https://www.energy.gov.au/solar/solar-retailers-and-installation/choose-your-solar-retailer-and-installer
  29. EveryInfra, data catalog GET /api/v1/social/catalog, read 2026-10-25 14:34 SGT, https://api.everyinfra.com/api/v1/social/catalog
  30. Anthropic, "Connect Claude Code to tools via MCP", read 2026-10-25, https://code.claude.com/docs/en/mcp
  31. ABC News, "Lux Solar investigated by watchdog as consumers say they were ripped off", 2026-10-13, https://www.abc.net.au/news/2026-10-14/lux-solar-battery-system-fail-federal-government-scheme/107248800
  32. ABC News, "Macarthur Solar customers furious and without batteries after company collapses", 2026-09-30, https://www.abc.net.au/news/2026-09-30/macarthur-solar-collapse/107150190
  33. Clean Energy Regulator, "Small-scale installation postcode data", data at 2026-09-30, https://cer.gov.au/markets/reports-and-data/small-scale-installation-postcode-data
  34. Clean Energy Regulator, "Quarterly Carbon Market Report June Quarter 2026", read 2026-10-25, https://cer.gov.au/markets/reports-and-data/quarterly-carbon-market-reports/quarterly-carbon-market-report-june-quarter-2026
  35. NSW Climate and Energy Action, "NSW Consumer Energy Resources Installer Portal", read 2026-10-25, https://www.energy.nsw.gov.au/nsw-plans-and-progress/regulation-and-policy/installer-portal

Reference BL-40