Integrations-Anwendungsfall
Place Calls by Order Number Without Seeing the Customer's Phone Number
Learn how to let couriers call customers using only an order code, without ever accessing their phone number.
Overview
In delivery and logistics, a courier often needs to call a customer — but sharing customer phone numbers with field staff raises privacy and data protection concerns. The customer’s number should never leave your system.
This guide shows how to use Speed Dial with a webservice lookup to bridge calls using only an order number. The courier dials a short extension, enters the order code, and Hipcall connects them to the customer automatically — without the courier ever seeing the phone number.
How It Works
The courier dials a Speed Dial extension and enters the order number when prompted. Hipcall sends the digits to your server, which looks up the customer’s phone number and returns it. Hipcall places the call on behalf of the courier — the number stays hidden end to end.
Architecture
flowchart TD
A[Courier dials Speed Dial ext. 72] --> B[Hipcall prompts for order number]
B --> C[Courier enters digits e.g. 1234]
C --> D[Hipcall POSTs digits to your server]
D --> E{Order found?}
E -- Yes --> F[Return customer phone number]
E -- No --> G[Return error]
F --> H[Hipcall bridges the call\ncourier ↔ customer]
Step 1: Configure Speed Dial in Hipcall
- Go to Account > Integrations > Speed Dial in your Hipcall dashboard.
- Create a new Speed Dial entry with the following settings:
| Field | Value |
|---|---|
| Extension | 72 (or any free extension) |
| Announcement | ”Please enter the order number.” |
| Webservice URL | https://your-server.example.com/lookup |
Local development: Use ngrok to expose your local server. Run
ngrok http 5010and use the generated URL.
Step 2: Receive the Lookup Request
When the courier finishes entering digits, Hipcall POSTs the following payload to your endpoint:
{
"number": "1234",
"user_id": 3508,
"uuid": "06787f4b-4873-433b-a000-8fd99ff24ccf",
"speed_dial_id": 5,
"timestamp": 1774611216
}
The number field contains the DTMF digits the courier entered — this is your order code. The other fields (user_id, speed_dial_id) identify which agent and Speed Dial rule triggered the request.
Step 3: Look Up the Order and Return the Destination
Query your database using the order code. If found, respond with the customer’s phone number in the destination field. Hipcall immediately bridges the call to that number.
@app.route('/lookup', methods=['POST'])
def lookup():
data = request.get_json()
code = str(data.get('number', '')).strip()
row = db.execute(
'SELECT phone FROM orders WHERE order_code = ?', (code,)
).fetchone()
if row:
return jsonify({"destination": row['phone']}), 200
else:
return jsonify({"error": "Order not found"}), 404
Successful response:
{ "destination": "905060508169" }
Return the phone number in E.164 format (digits only, no + prefix). Hipcall dials this number and connects it to the courier’s active call.
Not found response:
{ "error": "Order not found" }
If the order code does not exist, Hipcall plays an error message to the courier.
Tools Used
| Tool | Purpose |
|---|---|
| Speed Dial | Prompts the courier for digits and calls your lookup endpoint |
Next Steps
- Speed Dial documentation — Configure extensions, announcements, and webservice integration
- REST API authentication — Secure your lookup endpoint with API keys or Basic Auth
- Webhooks documentation — Combine with
call_hangupevents to log which orders were called
Community fragen
Haben Sie Fragen oder möchten Sie Ihre Integration teilen? Treten Sie der Diskussion bei.
Tools & APIs
Sechs Möglichkeiten, Hipcall in Ihre Systeme zu erweitern und zu integrieren.
REST API
Greifen Sie programmgesteuert auf Ihre Hipcall-Daten zu. Verwalten Sie Nebenstellen, starten Sie Anrufe, rufen Sie Anrufaufzeichnungen ab und mehr über eine RESTful HTTP API mit OAuth 2.0 und API-Schlüssel-Authentifizierung.
Webhooks
Erhalten Sie Echtzeit-HTTP-Benachrichtigungen für 13+ Ereignistypen – eingehende Anrufe, beantwortete Anrufe, Auflegungen, Voicemails und mehr. Übertragen Sie Anrufdaten sofort in jedes System.
Web-Service-basiertes intelligentes Routing
Leiten Sie eingehende Anrufe dynamisch mit Ihrer eigenen Geschäftslogik weiter. Hipcall ruft Ihren Webservice beim Klingeln auf und leitet den Anruf basierend auf Ihrer JSON-Antwort weiter.
Schnellanruf
Lösen Sie ausgehende Anrufe programmgesteuert aus. Initiieren Sie einen Anruf von der Nebenstelle eines Agenten zu einer beliebigen Nummer über eine einzige API-Anfrage – ideal für Click-to-Call-Integrationen.
Externe Verwaltung
Verwalten Sie Ihr Hipcall-Konto von externen Systemen aus. Stellen Sie Benutzer bereit, aktualisieren Sie Anrufabläufe und steuern Sie Einstellungen, ohne sich in das Dashboard einzuloggen.
Insight Card
Zeigen Sie den Echtzeit-Anruferkontext auf dem Bildschirm des Agenten an, sobald ein Anruf verbunden wird. Übertragen Sie beliebige Daten – Name, Unternehmen, Kontostand – aus Ihrem CRM oder ERP über die API.