Shopistuff icon

Shopistuff

Consume Shopify API

Overview

The Shopistuff node for n8n allows you to interact with the Shopify API, specifically to manage products.
For the Product → Create operation, this node enables you to create a new product in your Shopify store with detailed attributes such as title, description, images, options (like size or color), tags, and more.

Common scenarios:

  • Automating the addition of new products from another system (e.g., ERP, PIM, spreadsheet).
  • Bulk uploading products with rich metadata and images.
  • Integrating product creation into e-commerce workflows (e.g., after supplier approval).

Practical example:
You could use this node to automatically add a new T-shirt product to your Shopify store when a new row is added to a Google Sheet, including its images, available sizes, and vendor information.


Properties

Name Type Meaning
Title String The name of the product. This is required and will be used as the main identifier for the product in Shopify.
Additional Fields Collection Optional fields to further describe the product. Includes:
  Body HTML String A description of the product. Supports HTML formatting.
  Handle String A unique, human-friendly string for the product, used in URLs and by Shopify's Liquid templating language.
  Images Collection List of image objects associated with the product. Each image can have properties like source URL, dimensions, position, etc.
    Created At DateTime When the product image was created.
    ID Number Unique numeric identifier for the product image.
    Position Number Order of the image in the list (first image is the "main" image).
    Product ID Number The ID of the product associated with the image.
    Variant IDs Number[] Array of variant IDs associated with the image.
    Source String Location (URL) of the product image. Can include Shopify image modifiers (e.g., _small, _2048x2048).
    Width Number Width of the image (determined on upload).
    Height Number Height of the image (determined on upload).
    Updated At DateTime When the product image was last modified.
  Options FixedCollection Custom product property names (e.g., Size, Color, Material). Up to 3 options, each with a name and value.
  Product Type String Categorization for filtering/searching products.
  Published At DateTime When the product was published (ISO 8601 format). Set to null to unpublish.
  Published Scope Options Where the product is published: "Global" (Online Store + POS) or "Web" (Online Store only).
  Tags String Comma-separated tags for filtering/search (up to 250 tags, each up to 255 characters).
  Template Suffix String Suffix for the Liquid template used for the product page. If empty, uses default template.
  Vendor String Name of the product's vendor.

Output

The node returns the created product object as received from Shopify.
The structure typically includes (but is not limited to):

{
  "id": 123456789,
  "title": "Example Product",
  "body_html": "<strong>Good product</strong>",
  "vendor": "Vendor Name",
  "product_type": "Category",
  "created_at": "2024-06-01T12:00:00-04:00",
  "handle": "example-product",
  "updated_at": "2024-06-01T12:00:00-04:00",
  "published_at": "2024-06-01T12:00:00-04:00",
  "tags": "tag1, tag2",
  "options": [
    {
      "name": "Size",
      "position": 1,
      "values": ["S", "M", "L"]
    }
  ],
  "images": [
    {
      "id": 987654321,
      "src": "https://cdn.shopify.com/s/files/...",
      "position": 1,
      "width": 800,
      "height": 600,
      "created_at": "2024-06-01T12:00:00-04:00"
    }
  ],
  ...
}
  • All standard Shopify product fields are included.
  • If an error occurs and "Continue On Fail" is enabled, the output will contain an error field with the error message.

Dependencies

  • External Service: Requires access to a Shopify store and valid Shopify API credentials (API key/password or private app token).
  • n8n Credentials: You must configure the shopistuffApi credential in n8n for authentication.
  • Environment: No special environment variables beyond n8n and Shopify requirements.

Troubleshooting

Common issues:

  • Missing Required Field: If the "Title" is missing, the node will throw an error indicating that the product title is required.
  • Invalid Image URLs: If an image source URL is invalid or inaccessible, Shopify may reject the product creation.
  • Option Formatting: Incorrectly structured options (e.g., missing name/value) may cause errors.
  • API Authentication Errors: Invalid or expired Shopify credentials will result in authentication failures.

Error messages:

  • "At least one line item has to be added" – Not relevant for product creation, but if encountered, check the operation selected.
  • Shopify API errors (e.g., "422 Unprocessable Entity") – Usually due to missing or invalid fields. Check all required fields and data formats.
  • "error": "Some error message" – If "Continue On Fail" is enabled, errors will appear in the output under the error key.

How to resolve:

  • Double-check all required fields, especially "Title".
  • Ensure all image URLs are correct and publicly accessible.
  • Verify your Shopify API credentials in n8n.
  • Review Shopify's product API documentation for field requirements.

Links and References


Discussion