IntegrationsCaller ID

Caller ID

Menu path: Settings → Integrations  •  URL: /admin/settings/integrations Access: ADMIN, MANAGER  •  Plan: caller_id_integration marketplace add-on

Purpose

The Caller ID integration connects your phone system (or cloud telephony service) to HummyTummy. When a customer calls, the incoming number is matched against your saved customer profiles by phone; if a match is found, the operator recognizes the caller instantly. This way, the “who’s calling?” question is answered automatically on screen for takeaway and phone orders.

This integration is a marketplace add-on (caller_id_integration). When the add-on is inactive, the Incoming Calls entry is hidden from the sidebar and the backend rejects the request (defense in depth). You can add the add-on from the Marketplace.

How it works

The flow is one-directional: on every call event your phone system sends a webhook to HummyTummy, the system records the event and matches the number to a customer.

The provider reports the call

Your telephony provider (Twilio, Verimor, Netgsm, 3CX, or any generic HMAC-compatible system) sends a signed request to HummyTummy’s webhook address for each call.

The event is recorded and matched

The system stores every event with its type: incoming, answered, ended, and missed. At the same time the calling number (in E.164 format, e.g. +905xxxxxxxxx) is looked up against your existing customer records.

The operator sees the customer

When a match is found, the event is linked to the corresponding customer profile. The Incoming Calls screen lists the number, the customer link, and the duration; for unmatched calls the number appears as plain text, from where you can create a new customer record in one tap.

Customer matching is best-effort: even if the number matches no record, the call is still recorded and shown in the list — a missing match never hides the call.

Setup

The integration is defined as an integration entry under Settings → Integrations; the webhook secret, meanwhile, is configured server-side by your system administrator.

Enable the add-on

First add the caller_id_integration add-on from the Marketplace. Once the add-on is active, the Incoming Calls menu becomes available.

Choose your provider

Supported providers: twilio, verimor, netgsm, 3cx, and generic for any HMAC-signed system. The provider’s panel must support defining a webhook (callback) URL.

Enter the webhook address at the provider

The webhook address you give the provider has this shape:

https://<your-domain>/v1/caller/webhooks/<provider>/<tenant-id>

Example: .../v1/caller/webhooks/verimor/<tenant-id>. Each business (tenant) has its own webhook address.

Set the secret

Webhooks are signed with HMAC-SHA256. The provider adds x-signature and x-timestamp headers to every request. Your system administrator defines the matching secret on the server; if no secret is set, no call is accepted (secure default: closed).

⚠️

The webhook address and secret open a flow that carries PII (phone number + customer profile). For that reason the Incoming Calls screen is open only to the ADMIN and MANAGER roles; WAITER/KITCHEN cannot see it. Never share the secret anywhere other than the provider panel and the server configuration.

Duplicate protection: providers may send the same notification more than once (“at-least-once” delivery). When the system receives the same call event again, it silently ignores it — no duplicate row or double alert appears on screen. Requests with a stale timestamp (older than 5 minutes) are also rejected.

The Incoming Calls screen

With the add-on active, the Incoming Calls screen at /admin/caller-feed becomes available. This list shows recent calls, auto-refreshing every 10 seconds: time, provider, call type, number, matched customer, and duration. From a matched-customer row you can jump straight to the customer detail, or to the POS screen when there’s a related order.