Online store - Add dynamic checkout buttons to products

Community Manager
Community Manager
311 10 288

Caution: This is an advanced tutorial and is not supported by Shopify. Knowledge of web design languages such as HTML, CSS, JavaScript, and Liquid is required. We suggest hiring a Shopify Expert if you are not comfortable proceeding with the following tutorial.

You can update the product form on the product page template to support dynamic checkout buttons. If your theme has a home page featured product section, then you can update the product form in that template as well.


You can learn more about dynamic checkout buttons in Adding dynamic checkout buttons to your online store.



To update the product form to support dynamic checkout buttons



  1. From your Shopify admin, go to Online Store > Themes.
  2. Find the theme you want to edit, and then click Actions > Edit code.
  3. In the Sections directory, open one of the following files:

    • Click product-template.liquid to update the product page template. In some themes, the product template has a different filename. In some cases, the product form is included in a file in the Snippets directory, and has a name like product-form.liquid.
    • Click featured-product.liquid to update the home page featured product section.

  4. Find the product form by searching for <form action="/cart/add". Take note of any attributes that the form has, such as a class or an id. You can include these attributes in the updated product form that you will create in the next step. If you don't include the attributes, then the styling or behavior of the form might be affected.
  5. Delete the entire opening <form> tag, and replace it with the following Liquid:

    {% form 'product', product %}


    To include the attributes from the old form, add them to your updated form by using the following syntax:

    {% form 'product', product, id: "oldID", class: "old-class" %}


    To learn more about modifying form attributes, see the Liquid reference for form tags.

  6. Find the closing </form> tag by searching for </form>.
  7. Replace the closing </form> tag with the following Liquid:

    {% endform %}


  8. Find the Add to cart button by searching for an input or a button tag that has the attribute type="submit".
  9. On a new line below the Add to cart button, add the following Liquid:

    {{ form | payment_button }}


  10. Click Save.

    Your modified product form should look something like this example code:

    {% form 'product', product %}
      <button type="submit">Add to cart</button>
      {{ form | payment_button }}
    {% endform %}


TyW | Community Manager @ Shopify
 - Was my reply helpful? Click Like to let me know! 
 - Was your question answered? Click Accept as Solution 

1 Like
New Member
1 0 0

Thank you! :)