This end‑user guide explains how Jira administrators and support teams can configure and operate Voice to Ticket for Jira to convert inbound support phone calls into Jira Service Management (JSM) requests.
Overview
Voice to Ticket for Jira captures caller messages, transcribes them with AI, analyzes intent and key details, and creates JSM requests automatically. Optional SMS confirmations can close the loop with callers.
Typical flow
A customer calls your support number.
The app plays a greeting and records the caller message.
AI transcribes and analyzes the recording.
A Jira Service Management request is created automatically.
Optional SMS confirmation is sent to the caller.
Benefits at a glance
Reduce missed details with call recording and AI transcription.
Standardize ticket quality and speed up triage.
Offer callers a simple, familiar channel without portal friction.
Prerequisites
An active Jira Service Management project (Cloud).
Twilio account with a purchased phone number capable of voice (and SMS if confirmations are desired).
OpenAI API key with access to transcription and text generation models.
Jira administrator permissions to install and configure apps.
Initial setup
Install the app on your Jira Cloud site from Atlassian Marketplace.
Open Jira Settings -> Apps -> Voice to Ticket for Jira - Configuration.
Copy the webhook URL displayed on the app’s admin page (you will paste it in Twilio).
Configure the Twilio voice webhook (see steps below).
Add credentials in the app:
OpenAI API Key
Twilio Account SID
Twilio Auth Token
Select your JSM project for ticket creation.
Select a default request type to use when AI routing is not enabled or not confident.
Configure optional settings:
AI request type selection (allow the app to classify calls to request types).
Default reporter (choose a service account or a specific user).
Fill caller phone custom field (map your phone field to store the caller number).
Caller language (controls TwiML prompts and SMS language).
Ticket language (controls summary/description language; can follow caller language).
SMS confirmation settings (enable/disable and set the sender number).
Save configuration.
Security tip: Store credentials in the app’s secure fields only. Rotate tokens periodically and restrict Twilio subaccount access to least privilege.
Configure Twilio voice webhook (required)
Follow these steps in Twilio Console to route calls to the app webhook.
Open Twilio Console.
Navigate to Phone Numbers -> Manage -> Active Numbers and select the number that will receive support calls.
In the Voice Configuration section:
Set A call comes in to Webhook.
Set the method to HTTP POST.
Paste the webhook URL you copied from the app admin page.
Click Save configuration in Twilio.
Place a test call to verify the app answers and records the message.
Note: During testing, after finishing speaking, you must press any key on your phone to end the recording. This action triggers the processing of the call and the creation of the Jira ticket.
If the webhook is not configured correctly, no Jira tickets will be created from calls.
Language behavior
Caller Language controls TwiML voice prompts and SMS language.
Ticket Language controls generated Jira summary and description.
If Ticket Language is set to “Same as caller language”, ticket text follows the caller’s language.
Multilingual tip: Keep greetings simple and avoid idioms. If you serve multiple locales, enable automatic ticket language to match the caller for better agent routing.
Issue data visible to agents
Each created request may include the following for rapid triage and auditability:
AI‑generated summary and description (based on the call transcript).
Caller phone number captured in a custom field (if enabled and mapped).
Call recording attached to the issue for reference.
Issue activity panel with call metadata, model confidence, and full transcript.
Best practices
Start with a single JSM project and one default request type to validate flow and quality.
Before enabling caller phone sync, confirm the custom phone field is on the Create/Edit/View screens for the chosen request types.
Periodically review tickets flagged as low‑confidence or routed to a fallback type; refine greeting and request type descriptions accordingly.
Keep the greeting concise and instructive (e.g., ask callers to include product, error, and urgency).
Troubleshooting
No ticket created
Verify the Twilio webhook URL exactly matches the value shown in the app (watch for trailing slashes or hidden characters).
Confirm OpenAI and Twilio credentials are valid and not expired or revoked.
Check the app logs for processing errors and HTTP response codes from Twilio callbacks.
Wrong request type selected
Ensure request type names and descriptions in JSM are clear and distinct to improve AI classification.
Disable AI request type selection to force the default request type if misrouting persists.
Phone field not populated
Confirm “Fill Caller Phone Number field” is enabled in the app configuration and mapped to the correct custom field.
Ensure the custom field appears on the relevant Jira screens for creation and viewing.
SMS not sent
Confirm SMS sending is enabled and a messaging‑capable Twilio number is configured as the sender.
Review Twilio message logs for delivery errors and country/number capabilities.
Quick reference
Area | What to check | Expected result |
|---|---|---|
Twilio webhook | Number configured with HTTP POST to the app’s webhook URL | Incoming calls reach the app and are recorded |
Credentials | OpenAI key, Twilio SID/Token saved in configuration | Transcription, analysis, and SMS (if enabled) succeed |
JSM project & request type | Project selected; default request type set; optional AI routing enabled | Tickets are created with correct type and fields |
Support
When contacting support, include:
Jira site URL
Issue key (if available)
Approximate call time
Twilio Call SID (if available)
Screenshot of app configuration (do not include secrets)