How to create a Shopify order from a Typeform response

Typeform’s integration with Shopify streamlines the process of turning every form response into Shopify orders, no manual input needed. Collect orders from product recommendation quizzes, custom requests, or pre-orders and have a smooth transition to order fulfillment.

You can map questions from your form to Shopify properties. Your form will need to include the following to create an order in Shopify:

Optionally, you can add a question, URL parameter, or Variable to indicate the variant (color, size, etc.) of the item a customer is ordering, Shopify’s Variant ID. Learn how to find your Shopify Variant ID here. If you choose not to add a Variant ID, the integration will pull the Variant ID that is associated with your Product ID in Shopify.

In order to authorize your Shopify account to integrate with Typeform, you must have the permission to manage and install apps in Shopify. Check out Shopify’s article on app permissions here.

Create your form

In this example, we’re going to create a pre-order form for a single item of eye glasses. We’re going to use variables to indicate the Product ID and Variant ID for the eye glasses.

1. We’ve created a form with the following questions:

Make sure to mark the billing address, email address and quantity questions as required.

shopify 01.png

2. Next, we’re going to add Variables for our Product ID and Variant ID.

Click Workflow and then click the Variable icon (x).

shopify 02.png

3. Click + Add custom variable.

shopify 03.png

We’re going to create 2 custom variables - product_id and variant_id. Click the dropdown and select Text to create text variables.

shopify 04.png

Since we’re only taking pre-orders for one item, we’ll enter the starting value for product_id and variant_id. This way every time someone pre-orders the item, this Product ID and Variant ID will be sent to Shopify.

shopify 05.png

You can locate your Product ID and Variant ID in your Shopify account. When you open your product in Shopify, you can find the Product ID and Variant ID in the URL.

shopify 06.png

If you have more than one product, you can change your text variable based on what a respondent selects in your form. More information can be found here.

We can map the product_id and variant_id later to a Shopify order when we connect to the Shopify integration.

4. Click Save when you’re done creating your Variables.

shopify 07.png

Our form is all set up! Move on to the next section to learn how to connect your form to Shopify.

Connect Typeform with Shopify

1. Make sure your form is live by clicking the Share or Publish edits button.

shopify 08.png

2. Click the Connect tab.

shopify 09.png

3. Search for the Shopify integration and click the Connect button next to Shopify (by Alloy).

shopify 10.png

4. Copy your Shopify Shop Subdomain and paste it in the Shop Subdomain field.

shopify 11.png

5. Then click Add account.

shopify 12.png

6. Once your shop has been connected, click Continue.

shopify 13.png

7. Map your form questions to Shopify fields/properties. Click the dropdown to start mapping.

2025-05-12_11-56-23.png

8.  Click + Map to property to map more form questions. You need to map the following for the integration to work:

From Typeform To Shopify property
Email address Customer Email
Address Billing Address
Number/Quantity Quantity
Product ID (Custom Variable) Product ID
Variant ID (Custom Variable) Variant ID

Then map any other questions you have in your form that you would like to send to Shopify.

2025-05-12_12-00-50.png

9. Click Finish when you’re done with mapping.

shopify 16.png

That’s it! Now when respondents submit your form, a new order will be created in Shopify.

shopify 17.png

If you need to edit the integration, head back to the Connect tab in your Typeform account and click the three dots next to the Shopify integration. Then select Edit or Delete.

shopify 18.png


Note! Bundles with shared Product IDs are not yet compatible with the integration.

Was this article helpful?

Have more questions? Submit a request

Tap into our community knowledge

Find answers

Can’t find what you’re looking for?

Contact support