Integratie Gebruiksscenario

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.

Speed Dial

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

  1. Go to Account > Integrations > Speed Dial in your Hipcall dashboard.
  2. Create a new Speed Dial entry with the following settings:
FieldValue
Extension72 (or any free extension)
Announcement”Please enter the order number.”
Webservice URLhttps://your-server.example.com/lookup

Local development: Use ngrok to expose your local server. Run ngrok http 5010 and 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

ToolPurpose
Speed DialPrompts the courier for digits and calls your lookup endpoint

Next Steps

Vraag de Community

Heeft u vragen of wilt u uw integratie delen? Sluit u aan bij de discussie.

Tools en API's

Zes manieren om Hipcall uit te breiden en te integreren in uw systemen.

REST API

Toegang tot uw Hipcall-gegevens via programmeren. Beheer extensies, initieer gesprekken, haal gespreksregistraties op en meer via een RESTful HTTP API met OAuth 2.0 en API-sleutelauthenticatie.

Webhooks

Ontvang realtime HTTP-meldingen voor meer dan 13 soorten gebeurtenissen — inkomende gesprekken, beantwoorde gesprekken, ophangingen, voicemails en meer. Verstuur gespreksgegevens onmiddellijk naar elk systeem.

Webservice-gebaseerde Slimme Routering

Routeer inkomende gesprekken dynamisch met uw eigen bedrijfslogica. Hipcall roept uw webservice aan tijdens het overgaan en routeert het gesprek op basis van uw JSON-antwoord.

Snel Bellen

Activeer uitgaande gesprekken programmatisch. Initieer een gesprek van de extensie van een agent naar elk nummer via een enkele API-aanvraag — geweldig voor klik-om-te-bellen integraties.

Extern Beheer

Beheer uw Hipcall-account vanuit externe systemen. Voorzie gebruikers, update gespreksstromen en beheer instellingen zonder in te loggen op het dashboard.

Insight Card

Geef realtime beller-context weer op het scherm van de agent op het moment dat een gesprek verbindt. Stuur willekeurige gegevens — naam, bedrijf, accountsaldo — vanuit uw CRM of ERP via de API.