Hi,
Under the ProductService class we have the function GetProductById that has various input schemes:
public Product GetProductById(string productId, string productVariantId, bool useDefaultLanguage);
public Product GetProductById(string productId, string productVariantId, string productLanguageId, bool useAssortments);
public Product GetProductById(string productId, string productVariantId, string productLanguageId);
If I have a product with 2 variants, so 3 rows in the EcomProducts table: 1 for the head product, and then 1 row for each variant combination. If I then call GetProductById, sending in the product id, variant id and languageId, the function will always return to me the head product, not the variant combination one. Is this how it's supposed to be? And if so, if I want to get exactly the EcomProduct item for that specific variant combination, must I do a SQL select for it instead?
EcomProducts table example (Ignore the null fields): https://imgur.com/a/EYsV8aQ
TLDR; Sending GetProductById("164798", "SVARTUR..", "LANG1"); will always return the top product on the image above.
Best regards,
Arnór