I am trying to appy DDD principles along with CQRS, and I am having trouble integrating bounded contexts.
Let us consider the Catalog and Billing contexts in a marketplace domain. I modeled the Product concept as an Entity of the Catalog Aggregate in the 1st BC, and as an Aggregate in the latter.
Now I have this "merchant UI" where a merchant can add Products to his Catalog. when doing this, he'll provide the Product's name, description and some other classification & customization data, as well as it's selling price, discount policy etc ...
How should I communicate the creation of a Product in both Bounded Contexts ? I have considered the following approaches, but none of them feels right to me:
create a single command gathering all of the data the merchant has provided through the UI, and then have a controller or an application service integrate both Bounded Contexts and dispatch specialized commands to each one
add the pricing information to the Catalog BC and trigger an event (or use a database trigger) to inform the Billing BC of the Product creation
What would be a satisfying alternative approach ?
Thanks