# Testing webhooks

> Send sample events to your endpoint and check your signature verification before going live.

Source: https://shopassist.coec.dk/docs/webhooks/testing · Updated 2026-10-01

**Send test event** on an endpoint sends a sample of the chosen event type straight away and shows the response. The sample has a fresh `evt_…` id and the current time, is signed like a real delivery, and is not stored or retried. You can send 10 test events per endpoint per hour.

## Checklist [#checklist]

1. Your endpoint answers `2xx` within 10 seconds.
2. A request with a changed body or an old timestamp is rejected.
3. Sending the same event id twice is processed once.
4. Unknown event types and unknown fields are ignored, so new additions do not break your integration.

## Local development [#local]

ShopAssist only delivers to public HTTPS URLs on port 443. To test on your machine, use a tunnelling service that gives you a public HTTPS URL, and remove the endpoint when you are done.

## Test vector [#vectors]

To unit-test your verification without ShopAssist:

| Input         | Value                                                              |
| ------------- | ------------------------------------------------------------------ |
| Secret        | `whsec_test_secret`                                                |
| `t`           | `1791450000`                                                       |
| Raw body      | `{"id":"evt_test"}`                                                |
| Signed string | `1791450000.{"id":"evt_test"}`                                     |
| Expected `v1` | `f953aff63a794b201078e5b589a5528a9d3d42efcfcf3aaed9491ebdd1bcff83` |

Remember to disable the timestamp tolerance (or freeze your clock) when you run the vector.
