This is indeed an ambitious problem and not likely one that has an existing solution. Let me give you some details. Note that I have been an AI software developer and researcher for a number of years, have coded and released neural network systems, image recognition systems, built mobile apps and server backends etc for many years so I'm well acquainted with the technical challenges of this. There are two aspects to this system. The first is using an app that can identify the existing heating system by scanning it with a camera. The second is to use this identification to recommend replacement pipes, parts, etc. For the identification part, if the heating installer can scan a system in such a way that the scan can identify serial numbers, manufacturer name, etc, then this "structured information" could be used to do the identification pretty quickly. It is just a lookup in a database. But of course you would need access to that custom database. Does your installer have access to such a database? Does it have an API so it can be accessed using a webhook? But if the installer wants to just point a camera at a heating system and identify it from what it looks like, that is a way more complicated problem. It is a problem in image recognition, and unless there is some customer "heating system visual recognition" model out there, you would have to train this on your own. That means getting human labeled images of heating systems, splitting into test and training datasets, using pytorch or similar framework to create a machine learning pipeline, renting a GPU machine on AWS or Google, and training your model. Only people with technical experience in machine learning should take this on. And only if you have a database of images of heating systems that have already been identified by humans so you have something to train on. If you can get the system identified, then the second part is identifying the parts. For that you'd need a database of parts associated with each heating system. It *might* be possible to use an LLM and n8n agent on this database to identify the correct part, but this would take lots of tweaking to get right.