Skip to content
Help
Store settings

How do I set up webhooks to send new orders to my own system or email?

Send order created, order updated, and session created events to your own server, CRM, or ad tracker (API webhook), or receive every new order by email (E-mail webhook). Use {{placeholder}} URLs for postbacks, and learn about retries and failure warnings.

4 min read

What a webhook does

A webhook sends the details of an event in your store to another place the moment it happens. You choose the event and where it goes:

  • API: Storeep sends the event data to a web address (URL) of your server, CRM, Zapier or Make scenario, or ad tracking tool.
  • E-mail: Storeep sends the event data to an email address, for example to get an email for every new order.

Open Settings > Webhooks. You need the Settings permission.

Many tools already have a ready-made app, which is easier: Google Sheets, courier networks, and ad pixels. Check the Apps market first.

Creating a webhook

Click Add new webhook, fill in the form, and click Add.

  • Activate: ticked by default. When ticked, events are sent right away. Untick it to keep the webhook but pause it.
  • Name: a label for your list, for example "CRM new orders".
  • Type: API or E-mail.
  • Event:
    • Order created: a customer places a new order.
    • Order updated: an order's status or details change.
    • Session created: a new visitor arrives on your store. API type only.
  • Format: Json.
  • URL (API type): the address to send to. The https:// part is added for you, so type the rest, like api.example.com/orders.
  • Email address (E-mail type): where the email goes.

An E-mail webhook only sends order events. If you pick E-mail with Session created, nothing is sent.

Putting order data in the URL

You can place any field of the event data inside the URL with double braces, {{field_name}}. For example:

example.com/postback?cid={{fbclid}}&payout={{order_total}}

This sends the Facebook click ID and the order total to an ad tracking or affiliate platform, with no extra server. A field that does not exist becomes empty. To see the field names, create an E-mail webhook for the same event and look at the data you receive.

The webhooks list

Each row shows the Name, URL / E-mail, Type, Event, Format, and Status (Activated or Deactivated). Click a row to edit it. Tick rows and choose Delete webhooks to remove them for good. There is a maximum number of webhooks per store, and you see a message when you reach it.

You can create several webhooks for the same event, for example one to your CRM and one to your ad tracker.

When a delivery fails

  • Your server should answer quickly with a success code (2xx). A slow answer counts as a failure.
  • If your server is down or busy (a 5xx or 429 answer, or no answer), Storeep tries again several times over the next few minutes. Only the webhooks that failed are retried, so the others do not get duplicates.
  • If your server refuses the request (a 4xx answer such as 404 or 403), Storeep does not retry, because the address or its security is wrong.
  • When a webhook fails several times in a row, the store owner gets one email: "Action needed: your Storeep webhook is failing", with the webhook name, address, event, and last error code. After the webhook works again, a future problem can send a new warning. You can turn this email off in Notifications.
  • E-mail webhooks are sent once, with no retry.

Webhooks paused by an unpaid balance

If your store has an unpaid due amount and your wallet cannot cover it, webhooks wait. They are sent after you add funds and the amount is settled. See Wallet and billing.

Tips

  • If your server needs a password or key, put it in the URL query, for example ?key=yoursecret.
  • Session created fires for every visitor, which can be a lot on a busy store. Only use it if your server can handle it.
  • To let a tool read your orders and products whenever it wants, use an access token instead.

Still need help?

Write to us and we will answer you.

Contact us