All n8n workflows
Manual Trigger Schedule Trigger Edit Fields (Set) HTTP Request Code If Wait

Create and publish Shopify product videos with Zvid

Create branded vertical videos for Shopify products with Zvid. This workflow finds eligible catalog items, validates and renders them in bulk, returns editor and review links, and can stage and attach the finished MP4s to matching products through Shopify?s Admin GraphQL API.

Copy, then paste directly onto your n8n canvas (Ctrl/Cmd + V) — or import the downloaded file via Workflow menu → Import from file.

How it works

  1. Run the workflow manually or on its daily 6:00 AM schedule.
  2. Query Shopify?s Admin GraphQL API for active products matching the configured search query, then select products that have public images, priced variants, no usable non-failed video, and no processed tag.
  3. Map each product?s title, price, images, description, sizes, vendor, product type, and storefront URL into a shared branded Zvid project.
  4. Validate the first resolved product for free to confirm that the project is valid and calculate the estimated duration and credit cost for the batch.
  5. With dryRun enabled, save the first resolved product as an editor draft and return the editor link, warnings, skipped products, and full batch quote.
  6. With dryRun disabled, submit one Zvid bulk render, poll until it finishes, and collect the rendered MP4 URL for each Shopify product.
  7. With publishToShopify enabled, inspect each MP4, create Shopify staged-upload targets, upload the files, attach each staged video to its matching product, add the processed tag only after Shopify accepts the request, and return a success/failure summary.

Set up steps

  1. Create a Shopify app. In Shopify Admin, open Settings ? Apps ? Develop apps ? Build apps in Dev Dashboard. Create an app version with read_products, write_products, and write_files, release it, and install it on the target store.
  2. Get an Admin API access token. The Client ID and Client secret are not the token. For Dev Dashboard apps, exchange them with POST https://{shop}.myshopify.com/admin/oauth/access_token using grant_type=client_credentials. Copy the returned access_token; it expires after 24 hours. Existing admin-created apps can use their installed Admin API token.
  3. Create the Shopify credential in n8n. Add a Header Auth credential with header name X-Shopify-Access-Token and the returned token as its value. Assign it to the Shopify catalog, staged-upload, attach-video, and tag nodes. Refresh an expiring token before scheduled runs.
  4. Create the Zvid credential. Create an API key at https://app.zvid.io/api-keys. In n8n, add a Header Auth credential with header name x-api-key and the zvid_? key as its value. Assign it to the Zvid validation, draft, render, and batch-status requests.
  5. Configure the workflow. In Config, set shopDomain to the store subdomain without .myshopify.com, then review the Shopify API version, product query, processed tag, scan limit, maximum products, brand copy, colors, fonts, timing, frame rate, and resolution.
  6. Test safely. Keep dryRun: true for the first manual run. Review the editor draft and credit quote, then set dryRun: false to render. Keep publishToShopify: false until the rendered videos are approved.
  7. Publish deliberately. Set publishToShopify: true only when ready to change Shopify product media. Shopify initially reports uploaded videos as PROCESSING; confirm they become READY in Shopify Admin. Successful products receive the configured processed tag and are excluded from future scheduled batches.

The included example is optimized for five apparel products with square studio or flat-lay images, product descriptions, prices, and S?XXL variants. Other catalogs can reuse the workflow by changing the scene copy and mappings in Config. Never store either provider?s secret in Config.

More n8n workflows

Ready to ship video at scale?

Start free — your first render is only a JSON payload away.