Update Shopify Inventory From Slack Messages

8 min setup
No coding required
Runs automatically

When an item runs out mid-shift, staff tell each other in Slack, but Shopify keeps selling it online until someone opens the admin. This workflow listens to your private Slack channels, reads short commands like SOLD OUT | Chicken Tikka or ADD 10 | Mango Lassi, finds the product, and sets or adjusts its inventory at the Shopify location that channel belongs to.

slack logo icon
A staff member posts in a location's Slack channel
Read the command and match the channel to a location
Shopify logo icon
Find the Shopify product by its name
Shopify logo icon
Shopify sets stock at that location (0 for SOLD OUT)
Shopify logo icon
Shopify adds or removes units at that location
slack logo icon
Slack reacts to the message to confirm the update

How it works

8 steps to mark items sold out in Shopify by typing in Slack

slack logo icon

A staff member posts in a location's Slack channel

App connector: Slack • Time to complete: 1 minute

Start whenever a message is posted in one of the private channels used by each location. The MESA Slack app must be a member of every channel it should listen to.

Read the command and match the channel to a location

App connector: Code • Time to complete: 1 minute

Split the message text on the | character. Read the command word (SOLD OUT, AVAILABLE, ADD, REMOVE or SET), the number if there is one, and the product name, trimmed and case-insensitive. Look up the Slack channel ID in a fixed map of channel ID to Shopify location ID, and return command, quantity, product name and location ID. Return an empty command if the text doesn't match the pattern or the channel isn't in the map.

Ignore chat that isn't an inventory command

App connector: Filter • Time to complete: 1 minute

Continue only when the parsed command is not empty and the location ID was found, so ordinary conversation in the channel never touches inventory.

Shopify logo icon

Find the Shopify product by its name

App connector: Shopify • Time to complete: 1 minute

Look up products whose title matches the product name from the message and take the first variant. If nothing matches, stop here so inventory is never changed for the wrong item.

Branch on the command word

App connector: Paths • Time to complete: 1 minute

SOLD OUT and SET go to a set path, AVAILABLE goes to a set path with the restock quantity you choose (for example 99), ADD and REMOVE go to an adjust path.

Shopify logo icon

Shopify sets stock at that location (0 for SOLD OUT)

App connector: Shopify • Time to complete: 1 minute

On the set path, set the variant's available inventory at the matched location to 0 for SOLD OUT, to the default restock number for AVAILABLE, or to the number given for SET.

Shopify logo icon

Shopify adds or removes units at that location

App connector: Shopify • Time to complete: 1 minute

On the adjust path, change the variant's available inventory at the matched location by the number given: positive for ADD, negative for REMOVE.

slack logo icon

Slack reacts to the message to confirm the update

App connector: Slack • Time to complete: 1 minute

Add a check mark reaction to the original message so staff can see the change went through without leaving the channel.

Trusted by 1,000+ merchants
Logo: Rothy's Logo: Adidas Logo: Allure Logo: GQ Logo: DraftKings Logo: Chubbies Logo: Made In Cookware Logo: MUD/WTR

Ready to mark items sold out in Shopify by typing in Slack

Get setup in 8 minutes.

Use this template →

FAQs

Can one workflow cover several locations?

Yes. The Custom Code step holds a map of Slack channel IDs to Shopify location IDs, so each channel updates its own location. Add a line to the map when you open a new location and invite the MESA app to its channel.

Does marking an item sold out stop in-person sales on Shopify POS?

Setting available inventory to 0 stops customers adding the item to their cart online, unless you allow selling when out of stock. Shopify POS staff can still ring up items at zero or below, so the message is mostly about online and delivery orders.

What happens if someone mistypes the product name?

If no product matches, the workflow stops before touching inventory. You can add a Slack Send Message step on that branch to reply in the channel asking them to check the name.

Personalize this template

Customize this workflow even further:

Reply with the new count
Swap the emoji reaction for a Slack Send Message step that posts the product, location and new available quantity back into the channel.
Match on SKU instead of name
Have staff type a SKU and use Shopify Retrieve Product Variant Details from SKU instead of looking the product up by name, which is safer when several items have similar titles.

You're in good company

"MESA has been a game changer for us. And, if you ever get stuck, their support team is always super helpful."

  • Ico star
  • Ico star
  • Ico star
  • Ico star
  • Ico star
PetFriendly

"It's like Zapier but exactly designed for Shopify. I have been able to complete all the workflows that I've needed."

  • Ico star
  • Ico star
  • Ico star
  • Ico star
  • Ico star
Zailys

"The MESA team has been amazing at helping us set up our automations. We would highly recommend this app!"

  • Ico star
  • Ico star
  • Ico star
  • Ico star
  • Ico star
Rothy's

mark items sold out in Shopify by typing in Slack

8 min setup • Fully supported if you need help