How Savannahs stopped missing webhooks by using Hookdeck.

Company
Savannahs
Location
Sweden
Industry
Ecommerce
Size
11-50
"After implementing Hookdeck, I am confident that every order is coming through. I know what's happening with my webhooks at all time."
Victor Josephson
Lead Developer

Savannahs is a popular store focused on designer shoes, bags and accessories. The company launched in Sweden in 2008, and since then they have expanded to become an international ecommerce retailer with 5 Shopify stores, one per geographical region (USD - international, UK, EU, AUD and SWE). With Savannahs’ growth, the tech team is focused on ensuring a positive customer experience, and for that to be true, the store must have confidence in their webhooks.

Victor is the tech lead, and therefore the one in charge of the tech stack. His goal is to reduce the burden on the technical team by setting up tools and workflow to remove friction for non-tech staff to manage the ecommerce.

100% confident about webhooks when using Hookdeck.
Reduce time spent developing and troubleshooting.
Hookdeck empowers the operations team.
THE PROBLEM

Webhooks unreliable nature makes missing webhooks is a worrisome reality.

“I can’t miss an event, but I often find myself worried about missing Shopify webhooks because they’re flaky.”

Shopify webhooks often fall short for Victor. When there’s an issue (like a failed webhook), he only knows after the customer is already impacted.

For Victor, missing a webhook translates into failing to live up to the customer experience he strives for. And on the technical side, it means he has to dedicate his time to troubleshooting the errors of 5 stores....

Lack of visibility

What about Shopify webhook alerts? Well, too many alerts are just as useless as too few. Shopify just adds to the list of third parties that flood his emails with errors. He used to rely on his email to keep track of the errors, but realized he was often asking himself “is this still an error?” and ultimately was having difficulty keeping track of what was relevant.

When Victor does catch an error at the right time, he is disappointed that he does not have a dashboard that shows him the failed webhooks and gives him an opportunity to fix the error before it ends up impacting the customer.

Tedious troubleshooting

Shopify doesn’t make it simple to troubleshoot webhook related issues. It can be hard to find the webhooks that didn’t work. There have been many incidents where webhooks that Victor was trying to troubleshoot disappeared because Shopify deleted them and he didn’t know about it.

Additionally, when it comes to replaying the events, the retry mechanism is inflexible. This causes him to wait for an automatic replay that will come hours down the line, or he has to do manual reconciliation.

THE SOLUTION

Hookdeck solves the lack of visibility of webhooks in production.

With Hookdeck, I can confirm that everything is working as it should be.

Victor started to look for a solution so he could finally have confidence in his webhooks.

He was recommended Hookdeck by a member of the developer community and went to read co-founder Alex’s blog post. The webhook problem spoke to him and he realized he would need to rebuild the queuing wheel. When he compared building his own solution to trying Hookdeck, the answer was clear; Victor decided to set up Hookdeck to manage his most critical webhooks, the product update, and the order webhooks topics.

Webhook visibility

The first thing Victor noticed was the visibility of his webhooks. That helped him feel confident.

Hookdeck offers a dashboard that gave him a way to validate the health of his webhooks at a glance. It’s been so useful that it is now part of his routine to visit the “failed” event page to keep track of how things are going. He no longer has to rely on tracking Shopify emails.

Streamlined incident management

Alert and retries

Just glancing at Hookdeck every day, Victor avoids being caught off-guard with issues while still maintaining his priority to fix errors in a timely manner. He is thrilled to be able to customize alerts and retries for each connection to the exact level of granularity he needs.

An example of his ruleset:

  • 2 retries per webhooks
  • Send 1 email when the last webhook fails
“I love the fact I’m only receiving 1 email for failed webhooks. I know they are relevant and signify exactly what I need to take action on.”

Replay

In the beginning, what attracted Victor to Hookdeck the most was the ability to replay webhooks. Replaying webhooks is perfect for dealing with errors in production, and he was not disappointed. With Hookdeck, he can easily replay the events that have failed.

He quickly realized that manual retries are also very helpful during development because they save him from having to create new data for tests. He owns a store for his development environment and previously had to generate fake actions each time to test.

Controlling the throughput

Using Hookdeck as his serverless queue means Victor can manage the throughput of irregular streams of events that would normally cause his backend servers to hit their rate limit. Previously, the backend server would hit the rate limit and events would start to fail when doing bulk updates that generate a lot of webhooks in a short amount of time.

Victor applied a 20 per second rate limit in order to keep their backend servers performant and avoid dropping any product update webhooks.

For example, at Savannahs, the product updates are done as batch updates via spreadsheet import that can generate 100s of webhooks in a minute or so. Their WMS backend is hosted on Cloud Run (GCP) which has a built-in rate limit of ~ 50/second.

THE RESULT

Webhook observability leads to peace of mind.

“The confidence Hookdeck gives me when working with webhooks saves me a lot of time. Operating in a black box environment meant that I had to do extra work to continuously validate that things were working.”

For Victor, peace of mind is the biggest value of using Hookdeck. He doesn’t have to worry if everything is going fine. He feels confident that everything is working as it should because he has visibility on the current state of the systems. No mental notes required.

On top of the peace of mind, Hookdeck has already helped Victor save valuable hours of work (time he prefers to spend building Savannahs). Although it may be hard to estimate the exact value in number of hours saved, Victor has told us that using Hookdeck is the key to supercharging his workflow using webhooks from development to production.

"Hookdeck has definitely helped me save time on development and troubleshooting. I can’t put a number on it but it’s a big one!"

Read more customer stories

Start developing with Hookdeck