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, likeapi.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.