Shopify is a complete commerce platform that lets anyone start, manage, and grow a business. You can use Shopify to build an online store, manage sales, market to customers, and accept payments in digital and physical locations.
56 actions Leo can use in the apps and agents it builds for you: 18 that read Shopify data, 38 that create or update it.
Retrieve a list of fulfillment orders.
Docs ↗Search for products.
Docs ↗Lists all discount codes for a given price rule in Shopify so you can obtain a valid discount code ID.
Docs ↗Retrieve a list of draft orders.
Docs ↗Retrieves a single discount code that belongs to a price rule in Shopify. Run List Price Rules to find a valid price rule ID and List Discount Codes to find a valid discount code ID.
Docs ↗Retrieve a list of customers.
Docs ↗Search for an order or a list of orders.
Docs ↗Search for a custom collection by name/title.
Docs ↗Lists price rules in the Shopify store.
Docs ↗Retrieve a list of all pages.
Docs ↗Retrieves a list of metaobjects.
Docs ↗Retrieves a list of metafields that belong to a resource.
Docs ↗Retrieve a fulfillment, including tracking info, status, and delivery timestamps.
Docs ↗Retrieve a single fulfillment order by ID.
Docs ↗Retrieve a single draft order by ID.
Docs ↗Retrieve a single customer by ID.
Docs ↗Retrieve a list of fulfillment orders assigned to a merchant location.
Docs ↗Retrieve a list of all articles from a blog.
Docs ↗Updates the value of an existing discount code belonging to a price rule in Shopify. Run List Price Rules and List Discount Codes to find valid IDs.
Docs ↗Request cancellation of a fulfillment order. This is a fulfillment-service workflow distinct from cancelling the order itself. Run Get Fulfillment Orders first to obtain the fulfillment order GID.
Docs ↗Sends an invoice email for an existing order.
Docs ↗Processes an existing return in Shopify via the returnProcess mutation, marking the specified return line items as processed. By default no refund is issued — to also issue a refund, include a financialTransfer object with an issueRefund operation (and its required orderTransactions) in Additional Fields.
Places a fulfillment order on hold. Run Search for Orders and inspect the order's fulfillment orders to obtain the fulfillment order GID.
Docs ↗Creates a return for an order.
Docs ↗Create a refund on an existing order. Run Search for Orders first to obtain the order GID and the line item GIDs to refund.
Docs ↗Create a new product.
Docs ↗Adds multiple discount codes to a price rule in Shopify (up to 100 codes per request).
Docs ↗Cancel an existing order. Run Search for Orders first to obtain the order GID.
Docs ↗Cancels a fulfillment. Run the Search for Orders action and inspect the order's fulfillments to obtain the fulfillment GID.
Docs ↗Cancels a fulfillment order. Run Search for Orders and inspect the order's fulfillment orders to obtain the fulfillment order GID.
Docs ↗Runs a bulk mutation (Shopify's bulkOperationRunMutation) by uploading a JSONL file of per-line mutation variables, so a mutation (e.g. product/variant/metafield create or update) runs once per line across thousands of records in a single Admin GraphQL bulk operation instead of one API call per record.
Update an existing product.
Docs ↗Update an existing product variant.
Docs ↗Update an existing page.
Docs ↗Update an existing order.
Docs ↗Updates a metaobject.
Docs ↗Updates the value of an existing metafield on a Shopify resource (product, customer, order, etc.) via the metafieldsSet mutation. Use this to change custom data stored on a record you've already identified. Select the owner resource and record, then the specific metafield to update, and provide the new value. This action resolves the selected metafield and reuses its existing namespace, key, and type — only the value is changed, and the metafield must already exist. The value must be a string serialized to the metafield's type — for example 10 for number_integer, {"color":"red"} for json, or 2026-08-12 for date. To discover a resource's metafields first, use a list/get metafields action.
Sets the on-hand inventory level for an inventory item at a location.
Docs ↗Update a blog article.
Docs ↗Search for product variants or create one if not found.
Docs ↗Delete an existing page.
Docs ↗Deletes a metafield belonging to a resource.
Docs ↗Permanently deletes a discount code from a price rule in Shopify.
Docs ↗Delete an existing blog.
Docs ↗Delete an existing blog article.
Docs ↗Creates a smart collection whose membership is defined by conditions (rules).
Docs ↗Create a new product variant.
Docs ↗Create a new page.
Docs ↗Creates a metaobject.
Docs ↗Creates a metafield belonging to a resource.
Docs ↗Create a new custom collection.
Docs ↗Create a new blog.
Docs ↗Create a new blog article.
Docs ↗Add tags.
Docs ↗Adds a product or products to a custom collection.
Docs ↗Creates a new order. For full order object details see the docs or see examples
Leo connects Shopify to the ERP your business already runs on: the records it reads in Shopify land in your ERP, and what changes in the ERP flows back.
Authorize Shopify once, in a couple of clicks. Leo only gets the permissions you grant.
In plain language: the dashboard, portal or agent you want across Shopify and your ERP. No code, no mapping spreadsheets.
Leo builds it, you review, it goes live. Agents run on a schedule or on events, under the guardrails you set.