Auto-Publish Shopify Products from Trello Approved Cards | MESA
Publish Shopify Products When Trello Cards Move to Approved
7 min setup
No coding required
Runs automatically
This template works in tandem with "Create Trello Cards When Shopify Draft Products Are Made," which automatically creates a Trello card for every new Shopify draft product and stores the product ID directly on the card. When your creative team moves that card to your "Approved" list, MESA uses the stored product ID to find and publish the exact product in your Shopify store — making it live for customers to purchase instantly. No manual switching between apps and no missed approvals.
How it works
6 steps to automatically publish Shopify products the moment their Trello card moves to your Approved list
Trello Card Updated
App connector: [Trello](/content/apps/trello/integrate "View Trello integration page"/index.html)• Time to complete: 2 minutes
Why this matters: This is the starting point of the workflow. Without it, MESA has no way to know when a card has moved — nothing downstream runs until this trigger fires.
This step watches your Trello board for any card movement and kicks off the workflow every time a card's list changes. You'll need to select your Trello board from the dropdown — this should be the board where your product review process lives. MESA polls the board every 15 minutes, so publishing happens within that window of a card being moved. Every card move on this board will start the workflow, but later steps handle filtering so only the right ones result in a publish.
Retrieve Card
App connector: [Trello](/content/apps/trello/integrate "View Trello integration page"/index.html)• Time to complete: 0 minutes (Auto-configured)
Why this matters: The trigger only captures surface-level card data. This step fetches the full card details — including the card name where the Product ID is stored — which every downstream step depends on.
This step pulls the complete Trello card record using the card ID captured by the trigger. No configuration is needed here; it automatically uses the board and card from the trigger. The card name is particularly important: your card names must follow the format "Product ID: [ID]" for the workflow to correctly identify which Shopify product to publish. This data is passed forward and used in both the filter and the Shopify steps.
Retrieve List
App connector: [Trello](/content/apps/trello/integrate "View Trello integration page"/index.html)• Time to complete: 0 minutes (Auto-configured)
Why this matters: This step identifies which Trello list the card was just moved to. Without knowing the destination list name, the workflow can't determine whether the card was approved or moved somewhere else entirely.
This step fetches the full details of the list the card currently belongs to, using the list ID from the trigger data. No configuration is required — it runs automatically using the board and list values already captured. The list name it returns (e.g., "Approved") is what the next filter step evaluates. If your "Approved" list is named differently in Trello, you'll need to account for that in the following step.
Check If Approved
App connector: [Filter](/content/apps/filter/integrate "View Filter integration page"/index.html)• Time to complete: 1 minute
Why this matters: This filter is what prevents every card movement from triggering a publish. It stops the workflow dead if the destination list isn't "Approved," so cards moved to "In Review," "Rejected," or any other list are safely ignored.
This step compares the list name retrieved in Step 3 against the value "Approved" using an exact match. If the names match, execution continues; if they don't, the workflow stops. The comparison is case-sensitive and whitespace is automatically trimmed. If your Trello list is named anything other than exactly "Approved" — including "approved" or "Approved" — you'll need to update the b field in this step to match your list name exactly.
Check If Product Status Is Draft
App connector: [Filter](/content/apps/filter/integrate "View Filter integration page"/index.html)• Time to complete: 0 minutes (Auto-configured)
Why this matters: This filter prevents double-publishing. If a product is already active in Shopify, there's no reason to update it again — and skipping the unnecessary write keeps your workflow clean and avoids redundant API calls.
This step retrieves the product's current status from Shopify and checks whether it equals "draft". If the product is already "active" or "archived", the workflow stops here. The product is identified by parsing the Product ID out of the Trello card name from Step 2 — which is why the "Product ID: [ID]" naming format in Trello is required. No configuration is needed; this runs automatically based on data already in the workflow.
Set product active
App connector: [Shopify](/content/apps/shopify/integrate "View Shopify integration page"/index.html)• Time to complete: 0 minutes (Auto-configured)
Why this matters: This is where the actual publishing happens. Every prior step exists to make sure this one only fires when it should — on the right card, in the right list, for a product that's still in draft.
This step updates the Shopify product's status from "draft" to "active", making it visible to customers in your store. The Product ID is parsed directly from the Trello card name, so no manual input is needed. Once this step completes, the product is live. If you want to set the product to a different status (such as keeping it in draft but scheduling it), you can update the status field in this step.
Frequently asked questions
What format does the Trello card name need to follow for this to work?
The workflow parses the product ID directly from the card name, so it must include Product ID: followed by the Shopify product ID — for example, Summer Jacket Product ID: 8291034567. If the card name doesn't follow this format, the Retrieve Product step won't be able to identify the correct product and the workflow will fail.
What happens if the Trello card moves to "Approved" but the product was already active in Shopify?
The "Continue Only If Product Status Is Draft" filter catches this. If the product is already active, the workflow stops at Step 5 and no update is made. You won't see an error — the task simply won't proceed, which is the intended behavior.
How do I find the Shopify Product ID to use in my Trello card names?
In your Shopify admin, go to Products, open the product, and look at the URL in your browser — the number at the end is the Product ID (e.g., admin.shopify.com/store/your-store/products/8291034567). You can also export your product list from Shopify, which includes Product IDs as a column.