How to send Quo calls to LeadTruffle with Zapier
📝 Use Zapier to send completed inbound Quo calls into LeadTruffle as contacts and lead inquiries, without automated messages.
Table of contents
- How it works
- Before you start
- Step 1: Create your LeadTruffle source
- Step 2: Set up the Quo trigger
- Step 3: Configure the webhook POST
- Step 4: Map the fields in LeadTruffle
- Step 5: Choose how repeat calls are handled
- Step 6: Test and turn on your Zap
- Troubleshooting
How it works
You can capture inbound calls from Quo (formerly OpenPhone) with a two-step Zap:
- Quo — Incoming Call Completed
- Webhooks by Zapier — POST to your LeadTruffle Custom Lead Source
The call stays in Quo. After it ends, Zapier sends the caller's details to LeadTruffle. A new caller gets a contact and a lead inquiry. When the phone number matches an existing contact in the same LeadTruffle company, LeadTruffle can reuse that contact; your duplicate settings determine whether another inquiry is created.
This captures calls whether or not they turn into qualified opportunities. The trigger also supports unanswered calls and voicemail. It does not wait for your team to qualify the caller.
Before you start
You'll need:
- Access to the Quo account and the business phone numbers you want to monitor.
- A Zapier account with access to Webhooks by Zapier.
- Custom Lead Sources enabled in your LeadTruffle account.
- A test inbound call with a usable caller phone number.
Step 1: Create your LeadTruffle source
- In LeadTruffle, open Custom Lead Sources and click Add Source.
- Choose the Custom source template.
- Name the configuration Quo calls.
- Set the Lead Source label to Quo (Phone).
- Continue to the endpoint setup screen and copy the webhook URL shown for capturing a test payload. Keep this setup open while you configure Zapier.
Use the URL generated for this source. Do not use a Zapier Catch Hook URL or a general LeadTruffle API URL.
If you configure authentication for this endpoint, use the corresponding authentication details in Zapier. Keep your webhook URL and authentication values private.
Step 2: Set up the Quo trigger
- Create a new Zap in Zapier.
- Select Quo as the trigger app.
- Choose Incoming Call Completed as the trigger event.
- Connect the customer's Quo account.
- Select the business phone numbers to monitor.
- Test the trigger and choose a recent inbound call.

Check that the sample contains the caller's phone number and the call ID. For an incoming call, the caller is the From number; the To number is your business number.
A missed call may have an empty answeredAt value. Do not filter out these records if you want to capture missed calls too. Quo's Zapier trigger description explains the unanswered-call and voicemail fields.
Step 3: Configure the webhook POST
Add an action with these settings:
Setting | Value |
|---|---|
App | Webhooks by Zapier |
Action event | POST |
URL | The webhook URL copied from your LeadTruffle source |
Payload Type | JSON |
Wrap Request in Array | No |
File | Leave blank |
Basic Auth | Leave blank unless required by your endpoint's configured authentication |
Headers | Match your endpoint's authentication settings; use Content-Type: application/json if setting it manually |
Under Data, create these keys on the left and select the corresponding Quo values on the right:
Data key | Value to send |
|---|---|
phone | Caller's phone number from the trigger |
call_id | Unique call ID from the trigger |
message | Type “Inbound call received through Quo.”; optionally insert the completion time or other available call details |
full_name | Caller or contact name, only if provided in the trigger sample |
called_number | Business number that received the call, if available |
completed_at | Call completion timestamp, if available |

The keys above are names you create in Zapier. Quo's field labels may look different in the data picker. Select values from Step 1 rather than typing a sample caller's number or call ID into the Zap.
Omit optional fields that are unavailable. Do not invent a name or email address.
Click Test step on the POST action to send the sample to LeadTruffle. Testing only the Quo trigger does not send anything to LeadTruffle.
Step 4: Map the fields in LeadTruffle
Return to the source setup and confirm that a payload was captured. Map the fields:
LeadTruffle field | Payload path |
|---|---|
Phone |
|
Project Description |
|
Contact Name, using Full name |
|
External Lead ID |
|
Optionally add called_number and completed_at under Additional Data using $.called_number and $.completed_at.
Keep Quo (Phone) as the fixed source label. You do not need to send a separate source field from Zapier.
Run the mapping preview or dry test. Verify that the phone belongs to the caller, not your business, and that the call ID resolves correctly.
For what happens when leads arrive, select Create lead only. Leave automated SMS and email qualification off. Do not treat the fact that someone called as consent data for this integration.
Step 5: Choose how repeat calls are handled
Prevent the same call from being imported twice
After mapping External Lead ID to $.call_id, enable Use External Lead ID to ignore duplicate webhooks.
Mapping the ID alone does not enable duplicate protection. Use the call ID, not the caller's phone number or Quo conversation ID, because the same person can make several separate calls.
Decide whether a repeat caller creates another inquiry
The Ignore duplicate contact webhooks within [ ] days setting defaults to 30.
- Set it to 0 if every distinct inbound call should create an inquiry, including repeat callers. Call-ID duplicate protection still prevents the same call from being imported twice.
- Keep a nonzero window if you want to suppress another inquiry when the contact already has a recent custom-webhook inquiry. Suppressed deliveries remain in webhook logs.
This window can also match an inquiry from another Custom Lead Source for the same contact. It is separate from contact matching and call-ID duplicate protection.
Step 6: Test and turn on your Zap
- Confirm Create lead only is selected and the mapping dry test passes.
- Complete the source's activation steps. If activation asks for SMS consent when you only want to capture calls, recheck the selected mode and contact support rather than confirming consent you do not have.
- Make sure Zapier's POST URL is the source's Live Endpoint. If you used a Test Endpoint for mapping, replace it now.
- Publish the Zap in Zapier.
- Make a new test call to one of the selected Quo numbers and end the call.
- Check Zap History, the LeadTruffle source's webhook logs, and the resulting contact and inquiry.
Verify an answered call and a missed call. If you want voicemail details, also test a voicemail and map only the fields present in your sample.
New inquiries count toward LeadTruffle lead usage. Choose the repeat-call setting with your reporting and expected call volume in mind.
Troubleshooting
Problem | What to check |
|---|---|
Nothing arrives in LeadTruffle | Confirm the monitored Quo number, check Zap History, and test the POST action rather than only the trigger. |
LeadTruffle cannot map the payload | Use JSON with Wrap Request in Array set to No; send another sample after changing the Data keys. |
Every call has your business phone number | Map the caller's From number, not the business To number. |
A repeat call does not create an inquiry | Check the webhook log for duplicate suppression and review the contact window. |
All calls have the same External Lead ID | Replace the typed sample ID with the dynamic call ID from Quo Step 1. |
The caller has no name | Leave the name unmapped unless Quo supplies it; use the caller's phone number to identify the contact. |
You want AI summaries | Start with the basic call details. A summary may become available after the call-completed trigger and needs additional setup; do not make it required for capture. |
The same call appears through Quo and Google LSA | Ask support to review source overlap; matching a contact does not automatically merge inquiries. |
Need help? Contact us at support@leadtruffle.com or message the team via the chat on this article or in-app.
Updated on: 18/09/2026
Thank you!