# Templates

Pre-built workflow templates to get started quickly.

Templates are production-ready starter workflows for common automation use cases. Installing a template creates a copy in your store that you can review, edit, test, and activate like any other workflow.

Templates are useful when your workflow is close to a common pattern such as:

- importing products or inventory
- logging Shopify activity to Google Sheets
- sending alerts or summaries
- tagging customers, orders, or products
- running scheduled syncs or cleanup tasks

## Browse the template catalog

The full template catalog is hosted separately so it can grow without crowding the product docs.

[Open the template catalog](https://templates.jsworkflows.com/)

Use the catalog to search by use case, category, trigger type, connected service, Shopify scope, and complexity. The docs on this page explain how templates work after you choose one.

## What a template includes

A template can include:

- a trigger
- prebuilt workflow code
- a setup form for configurable values
- required secret fields
- OAuth-connected fields such as Google or Slack handles
- template-specific setup guidance

After you install a template, it is your workflow copy. Editing it does not change the original catalog template, and future template updates do not automatically change workflows you already installed.

## Install a template

1. Go to **Templates** in the JsWorkflows dashboard.
2. Browse or search for a template.
3. Click **Open template**.
4. Review the template setup form.
5. Fill in the required values, secrets, or OAuth handles.
6. Save the workflow.
7. Run a test if the trigger supports it.
8. Activate the workflow when you are ready.

## Before you install

Some templates work with only a few simple values. Others require additional setup first.

Common requirements include:

- an OAuth connection such as Google, Slack, Microsoft, GitHub, Dropbox, Mailchimp, HubSpot, or Notion
- workflow secrets such as API keys or service-account credentials
- an existing Google Sheet, Drive folder, or document
- Shopify publications, locations, or other store resources
- extra Shopify scopes for specific operations

Check the template setup form and setup guidance before saving.

## How template setup works

Templates can expose several kinds of setup inputs:

- normal configuration values such as names, thresholds, tags, or schedule settings
- secret values that should not be stored in plain workflow code
- OAuth handles that refer to connected third-party services
- picker fields for supported resources such as Google files
- list or mapping fields for cases like publication selections or header mappings

The setup form is part of the template. Different templates expose different fields based on what they need.

## Template types

Templates in the catalog may vary in complexity and operating style.

### Starter-friendly

These are simpler workflows with a smaller setup surface and more direct behavior.

### Advanced

These templates usually involve more setup, more business rules, or more integration detail.

### Heavy operation

These templates handle larger or more operationally intensive jobs such as imports and large syncs.

Heavy-operation templates commonly:

- process work in batches
- fan out into multiple continuation steps
- use internal pacing to avoid throttling
- take longer to finish than simple webhook or notification workflows

That is expected behavior. A long-running sync template is not designed to behave like an instant single-action workflow.

## Trigger types you will see

Templates are also shaped by how they start.

| Trigger type | Typical use |
| --- | --- |
| **Shopify webhook** | React to orders, customers, products, inventory, and other Shopify events |
| **Scheduled** | Run imports, summaries, audits, and recurring syncs on a schedule |
| **Email trigger** | Start from an inbound email, often with attachments |
| **HTTP trigger** | Start from an external system sending an HTTP request |

Choose templates by both use case and trigger model.

## Common setup patterns

| Pattern | What it usually means |
|---|---|
| **OAuth handle required** | Connect the external service first, then select or enter the handle in template setup |
| **Secret field required** | Enter the value in the setup form so it is stored securely instead of hard-coded in the workflow |
| **Google picker field** | Select the target spreadsheet, document, or folder through the Google connection |
| **Publication or location mapping** | Choose or match Shopify resources the workflow will use |
| **Header mapping or import options** | Map source-file columns or control how import/sync logic behaves |

## Troubleshooting template setup

If a template does not work after installation, the most common causes are:

- a required OAuth handle is missing or points to the wrong service account
- a required secret was not filled in
- the target Google Sheet tab, document, or folder does not exist
- Shopify location or publication names do not match what the template expects
- the workflow needs Shopify scopes that are not currently granted
- a heavy-operation template is still processing in batches and has not finished yet

Check the workflow logs first. Most template failures come from missing setup values, missing access, or resource-name mismatches.

## Template or custom workflow?

Use a template when the overall workflow is already close to what you need.

Build a custom workflow when:

- your business logic is unique
- the trigger or data mapping is highly specific
- you need unusual API calls or a custom external integration
- the template would require more rewriting than reusing