Skip to main content

Overview

Enable your agents to manage e-commerce operations through Shopify. Handle customers, orders, products, inventory, and store analytics to streamline your online business with AI-powered automation.

Prerequisites

Before using the Shopify integration, ensure you have:
  • A CrewAI AMP account with an active subscription
  • A Shopify store with appropriate admin permissions
  • Connected your Shopify store through the Integrations page

Setting Up Shopify Integration

1. Connect Your Shopify Store

  1. Navigate to CrewAI AMP Integrations
  2. Find Shopify in the Authentication Integrations section
  3. Click Connect and complete the OAuth flow
  4. Grant the necessary permissions for store and product management
  5. Copy your Enterprise Token from Integration Settings

2. Install Required Package

3. Environment Variable Setup

To use integrations with Agent(apps=[]), you must set the CREWAI_PLATFORM_INTEGRATION_TOKEN environment variable with your Enterprise Token.
Or add it to your .env file:

Available Tools

Customer Management

Description: Retrieve a list of customers from your Shopify store.Parameters:
  • customerIds (string, optional): Comma-separated list of customer IDs to filter by (example: “207119551, 207119552”)
  • createdAtMin (string, optional): Only return customers created after this date (ISO or Unix timestamp)
  • createdAtMax (string, optional): Only return customers created before this date (ISO or Unix timestamp)
  • updatedAtMin (string, optional): Only return customers updated after this date (ISO or Unix timestamp)
  • updatedAtMax (string, optional): Only return customers updated before this date (ISO or Unix timestamp)
  • limit (string, optional): Maximum number of customers to return (defaults to 250)
Description: Search for customers using advanced filtering criteria.Parameters:
  • filterFormula (object, optional): Advanced filter in disjunctive normal form with field-specific operators
  • limit (string, optional): Maximum number of customers to return (defaults to 250)
Description: Create a new customer in your Shopify store.Parameters:
  • firstName (string, required): Customer’s first name
  • lastName (string, required): Customer’s last name
  • email (string, required): Customer’s email address
  • company (string, optional): Company name
  • streetAddressLine1 (string, optional): Street address
  • streetAddressLine2 (string, optional): Street address line 2
  • city (string, optional): City
  • state (string, optional): State or province code
  • country (string, optional): Country
  • zipCode (string, optional): Zip code
  • phone (string, optional): Phone number
  • tags (string, optional): Tags as array or comma-separated list
  • note (string, optional): Customer note
  • sendEmailInvite (boolean, optional): Whether to send email invitation
  • metafields (object, optional): Additional metafields in JSON format
Description: Update an existing customer in your Shopify store.Parameters:
  • customerId (string, required): The ID of the customer to update
  • firstName (string, optional): Customer’s first name
  • lastName (string, optional): Customer’s last name
  • email (string, optional): Customer’s email address
  • company (string, optional): Company name
  • streetAddressLine1 (string, optional): Street address
  • streetAddressLine2 (string, optional): Street address line 2
  • city (string, optional): City
  • state (string, optional): State or province code
  • country (string, optional): Country
  • zipCode (string, optional): Zip code
  • phone (string, optional): Phone number
  • tags (string, optional): Tags as array or comma-separated list
  • note (string, optional): Customer note
  • sendEmailInvite (boolean, optional): Whether to send email invitation
  • metafields (object, optional): Additional metafields in JSON format

Order Management

Description: Retrieve a list of orders from your Shopify store.Parameters:
  • orderIds (string, optional): Comma-separated list of order IDs to filter by (example: “450789469, 450789470”)
  • createdAtMin (string, optional): Only return orders created after this date (ISO or Unix timestamp)
  • createdAtMax (string, optional): Only return orders created before this date (ISO or Unix timestamp)
  • updatedAtMin (string, optional): Only return orders updated after this date (ISO or Unix timestamp)
  • updatedAtMax (string, optional): Only return orders updated before this date (ISO or Unix timestamp)
  • limit (string, optional): Maximum number of orders to return (defaults to 250)
Description: Create a new order in your Shopify store.Parameters:
  • email (string, required): Customer email address
  • lineItems (object, required): Order line items in JSON format with title, price, quantity, and variant_id
  • sendReceipt (boolean, optional): Whether to send order receipt
  • fulfillmentStatus (string, optional): Fulfillment status - Options: fulfilled, null, partial, restocked
  • financialStatus (string, optional): Financial status - Options: pending, authorized, partially_paid, paid, partially_refunded, refunded, voided
  • inventoryBehaviour (string, optional): Inventory behavior - Options: bypass, decrement_ignoring_policy, decrement_obeying_policy
  • note (string, optional): Order note
Description: Update an existing order in your Shopify store.Parameters:
  • orderId (string, required): The ID of the order to update
  • email (string, optional): Customer email address
  • lineItems (object, optional): Updated order line items in JSON format
  • sendReceipt (boolean, optional): Whether to send order receipt
  • fulfillmentStatus (string, optional): Fulfillment status - Options: fulfilled, null, partial, restocked
  • financialStatus (string, optional): Financial status - Options: pending, authorized, partially_paid, paid, partially_refunded, refunded, voided
  • inventoryBehaviour (string, optional): Inventory behavior - Options: bypass, decrement_ignoring_policy, decrement_obeying_policy
  • note (string, optional): Order note
Description: Retrieve abandoned carts from your Shopify store.Parameters:
  • createdWithInLast (string, optional): Restrict results to checkouts created within specified time
  • createdAfterId (string, optional): Restrict results to after the specified ID
  • status (string, optional): Show checkouts with given status - Options: open, closed (defaults to open)
  • createdAtMin (string, optional): Only return carts created after this date (ISO or Unix timestamp)
  • createdAtMax (string, optional): Only return carts created before this date (ISO or Unix timestamp)
  • limit (string, optional): Maximum number of carts to return (defaults to 250)

Product Management (REST API)

Description: Retrieve a list of products from your Shopify store using REST API.Parameters:
  • productIds (string, optional): Comma-separated list of product IDs to filter by (example: “632910392, 632910393”)
  • title (string, optional): Filter by product title
  • productType (string, optional): Filter by product type
  • vendor (string, optional): Filter by vendor
  • status (string, optional): Filter by status - Options: active, archived, draft
  • createdAtMin (string, optional): Only return products created after this date (ISO or Unix timestamp)
  • createdAtMax (string, optional): Only return products created before this date (ISO or Unix timestamp)
  • updatedAtMin (string, optional): Only return products updated after this date (ISO or Unix timestamp)
  • updatedAtMax (string, optional): Only return products updated before this date (ISO or Unix timestamp)
  • limit (string, optional): Maximum number of products to return (defaults to 250)
Description: Create a new product in your Shopify store using REST API.Parameters:
  • title (string, required): Product title
  • productType (string, required): Product type/category
  • vendor (string, required): Product vendor
  • productDescription (string, optional): Product description (accepts plain text or HTML)
  • tags (string, optional): Product tags as array or comma-separated list
  • price (string, optional): Product price
  • inventoryPolicy (string, optional): Inventory policy - Options: deny, continue
  • imageUrl (string, optional): Product image URL
  • isPublished (boolean, optional): Whether product is published
  • publishToPointToSale (boolean, optional): Whether to publish to point of sale
Description: Update an existing product in your Shopify store using REST API.Parameters:
  • productId (string, required): The ID of the product to update
  • title (string, optional): Product title
  • productType (string, optional): Product type/category
  • vendor (string, optional): Product vendor
  • productDescription (string, optional): Product description (accepts plain text or HTML)
  • tags (string, optional): Product tags as array or comma-separated list
  • price (string, optional): Product price
  • inventoryPolicy (string, optional): Inventory policy - Options: deny, continue
  • imageUrl (string, optional): Product image URL
  • isPublished (boolean, optional): Whether product is published
  • publishToPointToSale (boolean, optional): Whether to publish to point of sale

Product Management (GraphQL)

Description: Retrieve products using advanced GraphQL filtering capabilities.Parameters:
  • productFilterFormula (object, optional): Advanced filter in disjunctive normal form with support for fields like id, title, vendor, status, handle, tag, created_at, updated_at, published_at
Description: Create a new product using GraphQL API with enhanced media support.Parameters:
  • title (string, required): Product title
  • productType (string, required): Product type/category
  • vendor (string, required): Product vendor
  • productDescription (string, optional): Product description (accepts plain text or HTML)
  • tags (string, optional): Product tags as array or comma-separated list
  • media (object, optional): Media objects with alt text, content type, and source URL
  • additionalFields (object, optional): Additional product fields like status, requiresSellingPlan, giftCard
Description: Update an existing product using GraphQL API with enhanced media support.Parameters:
  • productId (string, required): The GraphQL ID of the product to update (e.g., “gid://shopify/Product/913144112”)
  • title (string, optional): Product title
  • productType (string, optional): Product type/category
  • vendor (string, optional): Product vendor
  • productDescription (string, optional): Product description (accepts plain text or HTML)
  • tags (string, optional): Product tags as array or comma-separated list
  • media (object, optional): Updated media objects with alt text, content type, and source URL
  • additionalFields (object, optional): Additional product fields like status, requiresSellingPlan, giftCard

Usage Examples

Basic Shopify Agent Setup

Filtering Specific Shopify Tools

Product Management with GraphQL

Order and Customer Analytics

Getting Help

Need Help?

Contact our support team for assistance with Shopify integration setup or troubleshooting.