# Webhooks

> What the webhooks page holds, how to add an address and test it, and what it sends today.

*Section: Integrations · Updated: 2026-10-19 · Needs the plan feature: webhooks*

By the end you will know what ArmPOS's webhooks page holds, how to add an address and test it, and what to expect from it today.

> **Warning:** **Today, only Send Test reaches your address.** Sales, purchases, payments and the other events you can tick don't send anything yet. Don't build on webhooks until this changes: for now, export from the reports instead.

> **Note:** This guide was written from ArmPOS's screens and code and was **not run** against an outside system. Webhooks come with some plans only.

## What a webhook is

A webhook is an address of one of your own systems, such as an automation tool, that ArmPOS sends a short message to when something happens in the shop. Each message is signed with the webhook's secret, so the receiving system can check it came from ArmPOS.

## Add one

1. **Open [Settings › Webhooks](/app/settings/webhooks/list)** and **click Create.**
2. **Type the Name** and the **URL** your system gave you. Both are required.
3. **Tick the Events** to send, or **Subscribe\_to\_all\_events** (its label shows like this) for all of them. At least one is required.
4. **Set Timeout\_seconds,** how long to wait for an answer (1 to 60; 15 to start).
5. **Click Submit.**

![The Create webhook window: Name, Status Active, URL (https://example.com/webhook), Events with Subscribe\_to\_all\_events and the events sale.created, sale.updated, purchase.created, payment.created and the others, Timeout\_seconds 15, and Submit.](https://armpos.online/storage/help/55f42c89a0-webhooks-2-create.webp)
*Events are named as your developer will see them, such as sale.created.*

![Webhooks: Delivery Logs, Incoming Logs, Search and Create above the list with Name, URL, Events, Status and Action.](https://armpos.online/storage/help/e6ba51227b-webhooks-1-list.webp)
*Each row has Send Test, Disable, Edit and Delete.*

## Test it and read the logs

- **Send Test** on a webhook's row sends a test message (event `webhook.test`). "Test webhook queued — check Delivery Logs." confirms it is on its way.
- **Delivery Logs** lists every message with its **Status**, the answer's **HTTP** code and the **Attempt**; the eye shows what was sent and what came back. A message that fails is tried again after 1 minute, 5 minutes, 30 minutes and 2 hours, then marked failed.
- **Edit** shows the webhook's **Secret**; give it to whoever sets up the receiving system. **Regenerate** makes a new one at once: the old one stops working.

## Receiving messages

ArmPOS also has an address that other systems can send to, listed in **Incoming Logs**. It only records what arrives: nothing in the shop changes.

## What's next

If you need your figures in another system today, export them from [the reports](/app/help/sales-reports) with **EXCEL**.
