Typeform quote webhook
This is a pre-release feature and may not work as expected. Please contact support if you have any issues.
It's possible to integrate Typeform with getSoapy to automatically create a quote when a form is submitted. This is done using a webhook.
Typeform allows you to create complex forms with branching logic and calculations. This can be useful for creating a quote form where the customer can provide information about their requirements, and you can calculate the cost based on the information provided. Once the form is submitted, the data is sent to getSoapy via a webhook, and a quote is created.
This feature is only available on the Pro plan.
To do this, you'll need to ensure certain fields are included in your Typeform form with the correct "reference" set, and that the webhook is configured correctly. Below we'll describe the general configuration and fields you need to include, but for help customising your Typeform, you should refer to the Typeform documentation.
Fields
The following fields can be used to submit a quote to getSoapy. You can add any other fields you need for your form, but only the fields listed below will be used to create the quote.
- Name (required)
- To provide the customers name you should include a field with the reference
name
. - Address (required)
- To provide the customers address you should include a field with the reference
address
. We recommend the 'Address' field type. - Email (optional)
- To provide the customers email you should include a field with the reference
email
. We recommend the 'Email' field type.
Note: Either email or phone number is required. - Phone Number (optional)
- To provide the customers phone number you should include a field with the reference
phoneNumber
. We recommend the 'Phone Number' field type.
Note: Either email or phone number is required. - Services (required)
- To provide the services you should include a field with the reference
services
. We recommend the 'Multiple Choice' field type and allowing multiple choices. The choices should be the titles of the services you offer. - Availability (optional)
- To provide the customers availability you should include a field with the reference
availability
. We recommend the 'Multiple Choice' field type and allowing multiple choices. The choices should beAny time
,Morning
,Afternoon
,Evening
. - Frequency (optional)
- To provide the customers frequency you should include a field with the reference
frequency
. We recommend the 'Multiple Choice' field type and allowing multiple choices. The choices should beOnce
,x Weeks
,x Months
,Other
, wherex
is the number of weeks or months you'd like to offer. - Building Type (optional)
- To provide the customers building type you should include a field with the reference
buildingType
. We recommend the 'Select' or 'Multiple Choice' field types, but do not allow multiple choices. The choices should beDetached
,Semi-Detached
,Terraced
,Bungalow
,Flat
,Other
. - Bedrooms (optional)
- To provide the customers bedrooms you should include a field with the reference
bedrooms
. You can use any type of field which returns a single value (e.g., not a multi-choice field). - Note (optional)
- To provide the customers note you should include a field with the reference
note
. You can use any type of field which returns a single value (e.g., not a multi-choice field).
To set the "reference" on each field, you first need to add the field and publish the form. Then, you can find the 'Block references' option under the cog menu.
Variables
Variables work in a similar way as fields, but they are not visible on the form. They are used to store information that can be submitted in the webhook.
- Business ID (required)
- The business ID allows us to identify your account in getSoapy. You should include a variable with the reference
@businessid
, typetext
, and set the value to your business ID.
To find your business ID, go to the 'More' section in the getSoapy app and select 'Domain & Pages'. - Cost (optional)
- You can provide a cost for the quote using a variable with the reference
@cost
, typenumber
, and set the value to the cost. If the cost is provided it will be saved as a 'simple estimate' on the quote. You can use a calculation to set the cost based on the information provided in the form.
Important: the cost must be provided in pence. For example, Β£15.00 would be 1500.
When the webhook is submitted the 'Quote requested' notification will be sent to the customer, if it is enabled.
If the Cost variable is provided, the 'Quote was estimated' notification will also be sent to the customer, if it is enabled.
To avoid sending the customer both notifications, you can disable the 'Quote requested' notification in the 'More' > 'Customers' > 'Notifications' settings.
Create the webhook
Once you have created your form you can create a webhook to send the data to getSoapy. You can find the webhook settings in the 'Connect' tab of your form. Add a webhook and set the URL to:
https://getsoapy.com/api/webhooks/quotes/typeform
Troubleshooting
getSoapy will reject a webhook if any of the required fields are missing, or if the values are not in the correct format.
When this happens, getSoapy will usually provide a reason why the quote was rejected in it's response to the webhook. You can see the API responses using 'View deliveries' in Typeform.
You should review the API responses and update your form to include the missing fields or correct the values.
If there are too many failed webhooks, Typeform will disable the webhook and stop sending the data to getSoapy. Once you have fixed the issues, you can re-enable the webhook.
Any quotes which were not successfully delivered by the webhook can be added to getSoapy by creating a quote and entering the details manually.