{"product_id":"medusa-product-upsert-webhook-workflow-n8n-via-admin-api","title":"Medusa Product Upsert Webhook Workflow (n8n) via Admin API","description":"\u003ch3\u003eUpsert Medusa products automatically from your PIM—using an n8n webhook\u003c\/h3\u003e\n\u003cp\u003eThis \u003cstrong\u003eMedusa Product Upsert Webhook Workflow (n8n) via Admin API\u003c\/strong\u003e receives product-launch webhooks from a PIM, then \u003cstrong\u003ecreates or updates products in Medusa by handle\u003c\/strong\u003e, assigns them to the right \u003cem\u003ecategory\u003c\/em\u003e and \u003cem\u003ecollection\u003c\/em\u003e, and \u003cstrong\u003epublishes to the correct sales channel\u003c\/strong\u003e. It finishes by returning a clear JSON response describing what happened.\u003c\/p\u003e\n\n\u003ch3\u003eWhat this workflow does\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003e\n\u003cstrong\u003eReceives a POST webhook\u003c\/strong\u003e request with product details, pricing, and destination merchandising IDs.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eValidates and normalizes required fields\u003c\/strong\u003e—including \u003ccode\u003ehandle\u003c\/code\u003e, \u003ccode\u003eSKU\u003c\/code\u003e, \u003ccode\u003ecurrency\u003c\/code\u003e, \u003ccode\u003eamount\u003c\/code\u003e, \u003ccode\u003ecategory_id\u003c\/code\u003e, \u003ccode\u003ecollection_id\u003c\/code\u003e, and \u003ccode\u003esales_channel_id\u003c\/code\u003e.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eSearches Medusa by product handle\u003c\/strong\u003e to determine whether the product already exists.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eUpserts the product\u003c\/strong\u003e: updates core fields if found, or creates a new Medusa product with an initial priced variant if not.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eLinks merchandising destinations\u003c\/strong\u003e by adding the product to the specified Medusa product category and product collection.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003ePublishes to a sales channel\u003c\/strong\u003e so the product becomes available in the intended Medusa sales channel.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eReturns a JSON response\u003c\/strong\u003e indicating whether the product was \u003cem\u003ecreated\u003c\/em\u003e or \u003cem\u003eupdated\u003c\/em\u003e, including product and destination IDs.\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch3\u003eUse cases\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003eWhen a catalog team launches a product in a PIM, automatically push it into Medusa and make it sellable in the correct sales channel.\u003c\/li\u003e\n  \u003cli\u003eUse handle-based upserts to keep Medusa synchronized when product attributes or pricing change.\u003c\/li\u003e\n  \u003cli\u003eRapid onboarding of new products: category\/collection\/sales-channel placement happens automatically via IDs sent from your source system.\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch3\u003eTechnical details\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003eInstall the community node package \u003ccode\u003e@blackswampai\/n8n-nodes-medusa\u003c\/code\u003e.\u003c\/li\u003e\n  \u003cli\u003eCreate a \u003cstrong\u003eMedusa Admin API credential\u003c\/strong\u003e in n8n.\u003c\/li\u003e\n  \u003cli\u003eWebhook endpoint receives the payload from your PIM.\u003c\/li\u003e\n  \u003cli\u003eUses n8n nodes: \u003cstrong\u003eif\u003c\/strong\u003e, \u003cstrong\u003eset\u003c\/strong\u003e, \u003cstrong\u003ecode\u003c\/strong\u003e, \u003cstrong\u003emerge\u003c\/strong\u003e, \u003cstrong\u003ewebhook\u003c\/strong\u003e, and \u003cstrong\u003esticky note\u003c\/strong\u003e.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cp\u003eCopy the workflow webhook URL from n8n and configure it in your PIM’s outbound webhook settings.\u003c\/p\u003e","brand":"N8N Commerce","offers":[{"title":"Default Title","offer_id":45876827848883,"sku":"N8N-18532","price":51.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/6279\/6723\/files\/j32EfFY7M8TVHasd9bNO9_mEHDSAHD.png?v=1787303000","url":"https:\/\/buyflowscripts.com\/products\/medusa-product-upsert-webhook-workflow-n8n-via-admin-api","provider":"N8N Commerce","version":"1.0","type":"link"}