Shop Sale Notifier for Etsy & Shopify
Every time I make a sale in my shop, I feel it. Yes, emotionally, but also: I literally feel my phone buzz. And then I get distracted, pick it up, I spiral into notifications, and minutes later, I’m watching somebody else’s project instead of finishing my own. So I built something to help with that.
I’m a maker who sells things online– hardware kits and sewing patterns in my Etsy and Shopify stores.
And I wanted a dedicated physical object on my wall that would celebrate each new sale without pulling me onto my phone.
What I ended up with is a shadowbox with both logos backlit with NeoPixels that flash for each sale– orange for Etsy, green for Shopify. Today, I’ll show you how easy it was to put together, so you can follow along and build your own.
Supplies you’ll need:
- NeoPixel LEDs
- ESP32 microcontroller – I’m using the DFRobot Beetle ESP32-C3
- Solderful breadboard
- Soldering tools and supplies
- USB-C cable
- Printer and paper
- Scissors
- Tape
- Utility knife
- Shadowbox frame

I tried two different approaches for this project, and I’ll try to explain the pros and cons of each one.
The method I ultimately went with was using IFTTT and Adafruit IO, two web services that can relay and capture my live sales data so it’s fetchable by my microcontroller in a friendly way.

This method is easy and secure. IFTTT is an API gateway that lets you log in to a bunch of your favorite web services, then route cause-and-effect actions between them. So all I had to do was connect the Etsy service to my IFTTT account and create a new applet that fires whenever a new sale is made. The output sends the timestamp of the order to Adafruit IO, a web data service that will funnel the new order data into a feed called “etsy-orders”.
My WiFi microcontroller is running Arduino code that connects to my local network, then connects to Adafruit IO for the feed data. If there’s a new record, the sketch animates the connected NeoPixels. This works great for Etsy, which has gone through the process of making its API accessible through the IFTTT platform.

But Shopify doesn’t have its service on IFTTT. So we’ll use webhooks to connect them. In my Shopify settings, I can specify a URL to send a message to when something happens in my store.

In the IFTTT webhooks settings, you can find this URL, which is unique to your account, and put it in the Shopify settings to trigger when a new order is created.

Back on IFTTT, create an applet with the webhooks service as the input, and Adafruit IO as the output, in a feed called “shopify-orders.”

The microcontroller code is the same as the Etsy version, except for the feed name and the color of the LED animation.
Since I have both Etsy and Shopify stores, I made a combined Arduino sketch that checks both Adafruit IO feeds and animates different portions of my LED strand depending on which store got the sale.
Before we talk about the physical construction, I want to tell you about the other way you could technically build this without any additional web services by using the Etsy API directly. It takes a long time to get approval for an API key, but once you’ve got it, you can have the Arduino sketch authenticate with the API and fetch the data. The thing is, the authentication tokens need refreshing every now and then. Besides being a giant pain to handle OAuth on the microcontroller, it’s also not secure. Better to have your own little web server handling that, which is what you would need to implement the Shopify webhook functionality, unless you make your ESP board’s IP accessible to the internet, which is not secure. But technically? It is possible. I just don’t recommend it.
Full disclosure: this is my first vibe-coded project. I would never have taken the time to try out the less secure methods otherwise. I’ve been writing electronics tutorials for over a decade. I’ve made a dozen IFTTT-to-Adafruit IO-to-Neopixel projects by now. And this was the first time I used AI to write code for myself. So I’ll use this quick aside to let you know where I’m at with AI coding tools: I’m a huge fan, and also terrified by how fast everything is changing. Sure, I have enough experience to describe my software specifications in sufficient detail and, most importantly, to evaluate the output. So I think that is the skill these days, and therefore still worthwhile to learn to code. But it was so easy, it was a little scary.
I know you’re going to ask me which AI coding tool I prefer: I’m using CodeCraft from Seeed Studio. It’s got built-in specialty hardware knowledge trained on Seeed’s product documentation, and it even uploads the code it writes to your board directly from the browser, so you don’t have to fuss with your local machine’s setup. That also means it’ll run on Chromebooks in the classroom.

For the physical form of this project, I’m using a shadowbox frame. If you’ve been watching my videos for a while, you will remember I’ve used this method several times before. It’s just so quick and easy, and requires very few tools.

I designed a printout to put in the frame containing both of the shop logos. Shopify’s is easy to find along with usage guidelines, but I had to trace the Etsy E, which is subtly but extensively customized from a standard serif typeface. I think cloning this E is the step that took me the longest when building this project. But I like Adobe Illustrator a lot, so I can’t say I wasn’t enjoying myself.
I used a utility knife, ruler, and cutting mat to cut the 4×6 design from the printer paper. I put the logo artwork in the frame and added a cardboard divider to divide the shadowbox in half. Then I loosely looped some LED pixels inside each half, and closed it up to check out the effect.
I had hoped the two layers of black laser printing would block the light more than it did, so I wasn’t impressed with the effect. I inverted the black and white in my design, and now I like it so much better. I then went in and revised the positioning of the LEDs and taped them in place, as well as soldered up the circuit to a little breadboard.

I created an opening for a USB-C cable to enter the enclosure and then hung it on the wall in my studio. It fits well with my YouTube subscriber counter and other LED projects I’ve got on display there.
So now, when I’m sitting at my desk, and somebody buys one of my sewing patterns, I can still get the dopamine hit of a new shop sale, without distracting me completely away from my work. To take this project further, I think I’d try making a sculpted or 3D-printed shop logo as the enclosure. But as-is, this project is incredibly approachable in both skill and cost of materials.
If you build one, I want to see it. Tag me. And if you want more projects like this, hit subscribe. I make things, I share what I learn, and I promise I will never stop being delighted about LEDs. See you next time.
