Shopify Post-Checkout Survey Guide

Build a survey in the Digioh Shopify app, show it on your thank you, order status or checkout page, and send every response to your PostCheckout Pipeline.

This guide covers the survey built into the Digioh Shopify app. It doesn't use the Digioh campaign editor, campaign conditions or your theme.

Before you start

  • The Digioh app is installed on your Shopify store.

  • You have a webhook URL to receive responses. Most stores use the Hook URL from their Digioh PostCheckout Pipeline. Any endpoint that accepts a JSON POST works.

  • Check which pages your plan supports:

  • Thank you page and Order status page: all Shopify plans.

  • Checkout page (information, shipping and payment steps): Shopify Plus only.

Set up the survey

Step 1. Copy your Hook URL

In Digioh, open your PostCheckout Pipeline. Expand Details, then Hook URLs, and copy the Hook URL.

Step 2. Open Checkout Settings

In Shopify admin, go to Apps → Digioh and click Checkout Settings.

Step 3. Add and test the webhook

Paste the Hook URL into Webhook URL, then click Test Webhook. A test request is sent to the URL. Open the pipeline and confirm it arrived.

The webhook URL is required. The app won't save your survey until it has a valid URL.

Step 4. Choose where and how often the survey shows

  • Enable Checkout Survey: turns the survey on or off everywhere, without removing it from your checkout pages.

  • Show survey only once per customer: when on, the survey hides after a customer submits it in that browser. When off, it shows on every order.

  • Where to show: tick Checkout page, Thank you page and/or Order status page. A page that's unticked hides the survey even if you've added the block there.

Step 5. Add your questions

Click Add Question for each question. Every question has these settings:

  • Enabled: untick to hide a question without deleting it.

  • Survey Question and Survey Description: the question and an optional line of context under it.

  • Display Type: how customers answer. See Question types below.

  • Answer Options: for dropdowns, radio buttons and checkboxes. Put each option on its own line.

  • Maximum rating: for Star Rating, the top of the scale (5 if left empty).

  • Placeholder / Field Label: the label or hint shown on the answer field.

  • Required: the customer must answer before they can submit. Required questions show an asterisk (*).

  • Add an "Other" option with a text box: for choice questions, adds an Other choice that opens a text box when selected.

Use Up and Down to change the order, Duplicate to copy a question, and Remove to delete it.

Step 6. Set the button and thank-you text

Enter the Submit Button Text and the Thank You Message shown after a customer submits. Check the Preview, then click Save.

The preview is approximate. On your store, the survey uses your checkout's own colors and fonts.

Question types

Question types

Display Type

What the customer sees

Answer sent to your webhook

Dropdown List

A dropdown with your answer options

One value, e.g. google

Radio Button

A list of options; they pick one

One value

Checkboxes

A list of options; they pick any number

A list of values, e.g. ["instagram", "tiktok"]

Star Rating

A dropdown numbered 1 to your maximum rating

The number as text, e.g. "4"

NPS

A dropdown numbered 0 to 10

The number as text, e.g. "9"

Free Text

A multi-line text box

What they typed

Number

A number field

The number they entered

Note: Star Rating appears as a numbered dropdown, not as star icons, because Shopify's checkout doesn't offer a star control.

How answers are recorded

For Dropdown List, Radio Button and Checkboxes, your webhook receives a stable value rather than the label the customer saw. The value is the English answer text in lowercase, with spaces and punctuation turned into underscores.

Answer option

Value sent

Google

google

Social Media

social_media

Friend / Family

friend_family

  • The value is the same whatever language the customer sees, so French and English responses report together.

  • If you edit the English text of an answer, its value changes. Update any pipeline steps or reports that match on the old value.

  • When a customer picks Other, the webhook receives the text they typed.

Languages

English is the default. To translate the survey:

1.  Under Languages, type a language code such as fr, es or de and click Add language.

2.  Pick it in Editing language. The question, description, answer options, placeholder, button text and thank-you message fields now edit that language.

3.  Enter the translations and save.

Customers see the survey in their checkout language. Any text you haven't translated falls back to English. Display type, Required and the Other option apply to every language. Keep answer options in the same order in every language. The survey matches translations to the English options by position.

Add the survey block to your checkout pages

Saving your settings doesn't place the survey on your store. Add the block to each page where you want it:

1.  On the Checkout Settings page, click Open Checkout Customization. You can also go to Settings → Checkout → Customize in Shopify admin.

2.  Use the page selector at the top of the editor to open the Thank you page.

3.  Click Add app block and choose the Digioh survey block (listed as digioh-checkout). Drag it where you want it to appear.

4.  Repeat for the Order status page and, on Shopify Plus, the Checkout page.

5.  Click Save in the editor.

Test your survey

1.  Place a test order, for example with Shopify's Bogus Gateway or your payment provider's test mode.

2.  On the thank you page, try submitting without answering a required question. You should see "Please answer all required questions before submitting."

3.  Answer the questions and submit. The survey is replaced by your thank-you message and "Your response has been submitted."

4.  Open your PostCheckout Pipeline and confirm the response arrived.

With Show survey only once per customer on, the survey stays hidden in that browser after you submit. Use a private window to test again.

What your webhook receives

Each submission sends one POST request with a JSON body like this:

JSON
{

  "SurveyValue": "google, instagram, tiktok, 9",

  "SurveyResponses": [

    { "id": "q1", "question": "How did you hear about us?", "answer": "google" },

    { "id": "q2", "question": "Where do you follow us?", "answer": ["instagram", "tiktok"] },

    { "id": "q3", "question": "How likely are you to recommend us?", "answer": "9" }

  ],

  "Email": "customer@example.com",

  "orderDetail": {

    "email": "customer@example.com",

    "phone": "+15555550123"

  },

  "data": {

    "products": [

      {

        "product_id": "gid://shopify/Product/7609240649826",

        "variant_id": "gid://shopify/ProductVariant/42815829868642",

        "variant_title": "Default Title",

        "sku": "HO-S30-10PK",

        "quantity": 1

      }

    ]

  }

}

 


Field

What it holds

SurveyResponses

One entry per question: its id, the question text in the customer's language, and the answer. Checkbox answers are lists.

SurveyValue

Every answer joined into one comma-separated string, for pipelines that read a single field.

Email

The customer's email, when Shopify shares it with the app. Can be empty.

orderDetail

The customer's email and phone, when available.

data.products

The items in the order: product ID, variant ID, variant title, SKU and quantity. Shopify doesn't give checkout apps the product name, so variant_title is the variant label such as "Small" or "Default Title".

  • The request is sent from the customer's browser, so the webhook URL is visible to anyone who looks. Don't put passwords or API keys in it.

  • The survey doesn't wait for or read the webhook's response. A slow or failed webhook won't stop the customer from seeing the thank-you message.

  • If you use your own endpoint, read the body as JSON whatever the request's content type. Browsers can send it as text/plain.

Troubleshooting

The survey doesn't appear

Check each of these:

  • The block is added to that page in the checkout editor, and the editor was saved.

  • Enable Checkout Survey is on, and the page is ticked under Where to show.

  • At least one question is enabled.

  • Show survey only once per customer is off, or you're testing in a browser that hasn't submitted it yet.

  • For the Checkout page, the store is on Shopify Plus.

"Checkout webhook URL is required" or "Invalid checkout webhook URL format" when saving

Enter the full URL, starting with https://, in Webhook URL.

No responses reach the pipeline

Click Test Webhook and check the pipeline. If the test doesn't arrive either, copy the Hook URL again and make sure the destination accepts POST requests.

Email or phone is empty

Shopify only shares customer contact details with apps it has approved for that data, and only when the customer provided them. Contact support@digioh.com if they're always empty.

Answers look like social_media instead of "Social Media"

That's expected. See How answers are recorded above.

A translation shows in English

That field has no text for the customer's language yet. Choose the language in Editing language, fill in the field and save.

Want to get more from Digioh?

Get the playbooks leading brands use to convert more visitors into revenue.

Browse the Playbooks

Platform Tour

See what else you can do with Digioh in our self-guided platform tour.

Take the Tour

Still Need Help?

Connect with our team for technical help.

Message Support