Adding to shopping cart thru the API results in Out Of Stock
I'm probably missing something obvious... when I add a product to the shopping cart thru the API, it comes in with an error message of "Out Of Stock".
Code snippet is below. I don't know what to do with the "OptionsDetails " parameter in the addToCart ... that may be part of the problem.
I've tried with several different SKU's, even ones that I "shopped into the cart" without problem.
So, what am I supposed to do with the OPtionsDetails parameter, and why does it come in with the OutOfStock error?
Any insight much appreciated!
-tim
--SNIP
Product LessThanMinItem = GetProductBySku("F127479");
OptionsDetails od = new OptionsDetails();
ordersManager.AddToCart(cartOrder, LessThanMinItem, od, 1); // add the item to the cart
odersManager.SaveChanges();
--ENd Snip
Hi Tim,
This is probably because you are adding the Master Version of the product instead of the Live Version. Since version 6.0 we have introduced content lifecycle to Ecommerce and passing the Master Version typically results in giving you this inventory message. Here is the code that you need to use the only difference is calling LifeCycle.GetLive, and in my example id is the current id that results in your error message right now.
CartOrder currentCartOrder =
this
.TryGetShoppingCartForUser(orderManager);
Product productMaster = CatalogManager.GetProduct(
new
Guid(id));
Product product = CatalogManager.Lifecycle.GetLive(productMaster)
as
Product;
OptionsDetails optionDetails =
new
OptionsDetails();
OrdersManager.AddToCart(currentCartOrder, product, optionDetails, 1);