All my products have accessories. I want to be able to define these per product.
It's important to note that accessories are not bi-directional. In other words: If product A has product B as an accessory, then product B does not neccessarily have product A as an accessory.
I know there is the related products addon: CS-Cart Documentation — CS-Cart 4.15.x documentation
This addon needs you to go through complex steps for each product, which makes it very time consuming to add accessories if you have close to 1000 products.
Is there an alternative? (paid or free)
Do you have Product A set up using configurable products with Product B attached to Product A?
If so, you could generate all of the related products as per the KB article using SQL statements.
No, I have not used the configurable products addon. I assumed that this addon is for assembly products.
Product A and B can be bought separately or together in the same manner that you may buy a soap dispenser and a refill unit.
Yes that method allows you to manually assign the products. The addon I shall be releasing soon might be of help to you, I'll PM you the functionality so far shortly.