This is May from Shopify.
That is a good question. At this moment, we do not have a feature to limit discount codes on certain sales channels. I do see the advantage of having this feature though, especially if you want to increase traffic on your website, or run an online store special discounts.
I think adding this feature to our platform will benefit many merchants, so I am going to submit a feature request to our developers. I hope we can see this feature added in the future. In the mean time, I found a workaround to achieve this. This may not be ideal if you have many products on your store, but the workaround is to create a duplicate of your products, and change the product availability to POS only. Then, you would need to create a new collection for these products. When you create a discount, you can select which collections you would like this discount to apply to, and you would want to exclude your POS collection.
If you have any followup questions or concerns, please feel free to reply back to this thread or contact our 24/7 live support.
+1 on having the ability to select different channels for discounts. On our case it's the inverse, we have some discount codes only for the POS that we would like to avoid being "leaked" to use online.
Thank you for leaving a comment and for the feedback. I've gone ahead and added your vote to the existing ballot our developers' review so that they know there is further interest in getting it added. Hopefully, this will be something we can see released in the near future!
If you have any followup questions, feel free to leave a reply here or contact our 24/7 support!