The Behavioral Triggers are an awesome solution for Abandoned Engagement. The Abandoned Cart scenario already has multiple great features that make it easy to implement.
There is, however, area for an easy improvement on that idea to make it much more flexible and ready for real-world scenarios. This can be done with two elements:
1. Custom Cart Attributes: Just as there are Custom Attributes for the Product Catalog, it would be great to have a similar option on the Cart itself. Product Catalog ones are global - shared for all Customers interested in selected product. There is a need for something more unique and customer-specific.
Just as it is already delivered with the optional "price" attribute of trackCart Collect.js Data Layer that contains individual price that does not impact the Product Catalog, it would be great to add the possibility to add few more, that would be available in trackCart Collect.js and the response from Einstein Backend (IgoDigital).
Example use case? Sure. Coupon Code Name, Coupon Code Discount (either integer or float for per cent value), added Personalisation, Voucher ID. All those tools are frequently used in e-commerce and would be perfect to have in a trackCart layer. Good for personalisation, perfect for passing data needed for rebuilding the cart.
2. Cart Attributes Visibility in Content Block: This is actually just an extension of the above idea. We already have a nice way to decide on what Product Catalog Attributes are displayed in Behavioral Trigger Content Block. But in many cases when Abandoned Cart is being used I would rather display trackCart individual price (after coupons are applied) instead of the global Catalog one. It could be also useful for some Custom Cart Attributes from the first point.