In my example, I don’t see the need to have a full replica of Product data set, I would only share the identifier of the product.
The Shipping Service would subscribe to the ProductCreated event, but it would use it to save its “defaults/rules” to save the Product.
For example, let’s imagine we get the product category on the ProductCreated event. We might want to set a rule saying that all the product of “Luxury” category will have the Box “Premium” associated to it. When handling the event “ProductCreated” on the Shipping Service we would create a new record on the Shipping Service with something like: ProductId = XXX-XXX and BoxId = <PremiumBoxId>.
Did it answer to your question?