Yeah, the XDM Stream makes this a lot easier... in the old ACP SDK, the developers actually had to populate the products and events right into the request string as &&events=[list of events]&&products=[entire formatted products notation] (since you couldn't even map products with Processing Rules).
But with XDM stream, assuming you are using the proper XDM, you can send the data into the products schema.
However, if you are using the a.tags custom format; to send data through as props, evars and context variables in the AA formatting, and just letting it go straight to Analytics, basically using the ACP methodology with the XDM stream, then you will have to use what I showed above.