Ah.. ok, what you are looking for is called Merchandising eVars
so the format of products is:
"Category;Product;Quantity;Price;Events;EVars"
Both Events and eVars can take multiple values with a pipe (|) delimiter.
so let's say I have a product "12345" in category "merchandise", and I want to attach some additional information such as name (ball) and colour (red)
First, I need to configure 2 new eVars (let's use eVar1 and eVar2 for simplicity), you must make these "Merchandising eVars" using "Product Syntax":

You don't set these eVars the normal way, you actually have to add them to the products value, this is what explicitly connects Name A to Product A, and Name B to Product B.
Now, your products string should look like (I am not passing events in this example, but you can add events in between the two semi-colons):
merchandise;12345;1;5.99;;evar1=ball|evar2=red
So let's say you have 2 products in the same call:
merchandise;12345;1;5.99;;evar1=ball|evar2=red,merchandise;56775;1;14.97;;evar1=shirt|evar2=blue
(eVar in the notation can be either normal eVar or lowercase evar)
Now you will have explicitly connected "12345" with "ball" and "red"
and separately, you will have "56775" connected with "shirt" and "blue"
Here is some more information on Products:
https://experienceleague.adobe.com/docs/analytics/implementation/vars/page-vars/products.html?lang=en