Skip to main content
Modules in Mercur never reference each other directly. They connect through module links. The offer sits at the center of the marketplace, so it links out to the store, the master catalog, pricing, inventory, fulfillment, and the cart and order line items that reference it. Once a link is defined, you retrieve related records with query.graph using the link alias.

Catalog & store

Pricing & inventory

Fulfillment

Cart & order

Read-only links (Product, Variant, Seller, Shipping profile) resolve from a field on the offer row and can’t be written through the link itself. The Price and Inventory-item links are writable and are managed by the offer workflows.
The cart- and order-line-item links are list-links on the line-item side so the same offer can be added to many carts and placed on many orders. Without that, Medusa would enforce a 1:1 line-item ↔ offer relationship and block re-use.