the details depend of course highly on what exactly you are trying to achieve. But just as a thought: Did you consider using the Support-Ticket-System for this purpose? Maybe everything you are looking for is already there:
You could create a dedicated ticket type (e.g. “associated car/printer”) and for each car or printer, you create a new ticket and connect it with the respective customer/third party.
Within the ticket you can capture all required information (e.g. serial numbers, service history etc.) and you can even link all relevant documents (purchase invoices, intervention documents etc.).
For every third party, there is a tab “Tickets” where you can filter for the ticket type as defined above (“associated cars”) and find easily, what you are looking for. And you can have as many of these tickets per third party as you like to support customers with many cars, printers or whatever.