---
title: "Magento 2 Integration"
description: "Manage Magento 2 and Adobe Commerce products, orders, customers, categories, and sales documents from automated flows. Agents sync catalog and stock, invoice and ship orders, keep customer records in step, and report on sales activity through the Magento REST API."
url: https://flowrunner.ai/integrations/magento
date_modified: 2026-08-07T17:20:23-07:00
---

# Magento 2

[E-commerce](https://flowrunner.ai/integrations/category/e-commerce)

Manage Magento 2 and Adobe Commerce products, orders, customers, categories, and sales documents from automated flows. Agents sync catalog and stock, invoice and ship orders, keep customer records in step, and report on sales activity through the Magento REST API.

[Verified](https://flowrunner.ai/integrations/verified "What does verified mean?") · 28 actions · API key · available

[Magento 2 website](https://business.adobe.com/) · [Platform Documentation](https://developer.adobe.com/commerce/webapi/rest/) · Capability data verified 2026-08-12

1.  Scheduled run calls List Orders for orders placed since the last poll
2.  Agent reads the line items, customer email, and totals for each new order
3.  Agent validates stock availability per SKU with Get Stock Item
4.  Agent checks each order against fraud signals and a high-value threshold
5.  Agent calls Create Invoice for Order and Create Shipment for clean orders
6.  Operations channel gets the batch summary and the list of flagged orders
7.  Orders flagged for cancellation get routed to ops for a keep-or-cancel decision

## What This Integration Enables

The Magento 2 integration gives agents read and write access across products (create, update, delete, and stock control), orders (list and get, invoice, ship, comment, hold, unhold, and cancel), customers (full lifecycle), the category tree and category-to-product assignments, and sales documents (invoices, shipments, and credit memos). List endpoints accept a simple Filters array that maps to Magento's searchCriteria, so agents narrow results by status, email, date range, or name without hand-building the verbose query format. The connector covers the operational surface a fulfillment or reporting flow needs; the surrounding flow decides what runs unattended and what stops for a person.

### Without FlowRunner

**Manual order polling**: Someone exports the day's orders and works them one at a time from a spreadsheet

**Fulfillment by hand**: Invoicing and shipping each order means clicking through the admin panel order by order

**Cancellations with no record**: Cancel decisions get made verbally and keyed into Magento with no consistent trail of who approved them

### With FlowRunner

**Orders worked on a schedule**: Each run pulls new orders, validates stock, and invoices and ships the clean ones automatically

**Fulfillment in the flow**: Invoices and shipments are created programmatically as orders qualify

**Cancellations with approval on record**: Every cancel is proposed with full context and executed only after a named approver signs off

## Use Case Scenarios

### Scheduled Order Fulfillment

On a schedule, the agent calls List Orders filtered to a pending status and a created\_at range covering the window since the last run. For each order it checks stock with Get Stock Item, then for a clean order it calls Create Invoice for Order and Create Shipment, and hands the tracking number to [ShipBob](https://flowrunner.ai/integrations/shipbob) or emails the customer a confirmation. Orders that fail the stock check or trip a review rule are held with Hold Order and posted to the operations channel for a human to work.

### Catalog and Stock Sync

An external system of record owns pricing and on-hand counts. The agent reads the source feed, looks up each product with Get Product by SKU, and calls Update Product and Update Stock so the storefront reflects the source of truth. When a SKU drops below its reorder point, the agent posts a note to the buying channel so the dip is visible when it happens rather than at the next stockout.

### Sales Reporting Across Documents

Finance needs a weekly view of what actually happened. The agent queries List Orders, List Invoices, List Shipments, and List Credit Memos with created\_at filters for the week, reconciles them per order, and posts the summary to a reporting channel or appends it to a shared sheet. The credit memos surface the refunds, so the report shows net sales without anyone exporting four separate CSVs.

## Human-in-Loop Highlight

Cancelling an order is a decision a store cannot cleanly take back, so the agent proposes the cancellation and stops. When an exception flow reaches a candidate for cancellation, whether a failed fraud check, an out-of-stock backorder, or a customer request, the agent gathers the order, the customer, the totals, and the reason, then posts to the operations channel: "Cancel requested for order \[number\], customer \[name\], total $\[amount\]. Reason: \[reason\]. Approve to cancel?" The agent has assembled the case; the named approver owns the keep-or-cancel call, and only after they approve does the agent call Cancel Order and notify the customer. This is [human-in-the-loop](https://flowrunner.ai/concepts/human-in-the-loop): the agent pauses on its own, assembles the context and the choices, routes to the approver through the channel they already use, such as [Slack](https://flowrunner.ai/integrations/slack), and resumes the instant they respond.

Agent processes routinely

Detects exception requiring judgment

Clear match Continues automatically

Ambiguous Routes to human via Slack

Human decides

Agent resumes with decision

## Agent Capabilities

28 actions

### Products

7

-   **List Products** Retrieves a paginated list of catalog products using Magento searchCriteria filters. Provide an array of filters (each with field, value and conditionType) to narrow results, for example filter by status, type\_id, name (with a "like" condition and % wildcards) or price. Returns matching product items plus total\_count and the applied search\_criteria.
-   **Get Product** Retrieves a single catalog product by its SKU, including price, status, visibility, type, attribute set and custom attributes.
-   **Create Product** Creates a new catalog product. SKU and name are required. Status is Enabled/Disabled and Visibility controls where the product appears (Not Visible, Catalog, Search, or Catalog & Search). Use custom attributes for attributes such as description, url\_key or category\_ids. Defaults: attribute set 4 (Default), type "simple".
-   **Update Product** Updates an existing catalog product identified by SKU. Only the fields you provide are changed. Pass custom attributes to update attributes such as description or category assignments.
-   **Delete Product** Permanently deletes a catalog product by SKU. Returns true on success.
-   **Get Stock Item** Retrieves the stock item (inventory) details for a product SKU, including quantity, stock status, and the item\_id needed to update stock.
-   **Update Stock** Updates the stock item (quantity and stock status) for a product SKU. Requires the stock item ID, which you can find on the product's stockItems data. Set quantity and whether the product is in stock.

### Orders

8

-   **List Orders** Retrieves a paginated list of sales orders using searchCriteria filters. Common filters: status (e.g. pending, processing, complete, canceled, holded), customer\_email, created\_at (with from/to conditions). Returns order items plus total\_count.
-   **Get Order** Retrieves a single sales order by its entity ID, including line items, totals, status, addresses and payment information.
-   **Create Invoice for Order** Creates an invoice for an order, optionally capturing payment and notifying the customer. Used to advance an order once it qualifies for fulfillment.
-   **Create Shipment** Creates a shipment for an order, optionally with items and tracking numbers, and can notify the customer. Used to book fulfillment and share tracking.
-   **Add Order Comment** Adds a comment to an order's status history, optionally changing status and notifying the customer. Used to record fulfillment updates and customer communication.
-   **Cancel Order** Cancels an order in a cancelable state. This is the irreversible step a human-in-loop approval gate sits in front of, so a person owns the keep-or-cancel call.
-   **Hold Order** Places an order on hold by its entity ID. A held order cannot be invoiced or shipped until it is unheld. Returns true on success.
-   **Unhold Order** Releases an order from hold by its entity ID, returning it to its previous state. Returns true on success.

### Customers

5

-   **List Customers** Searches customers using searchCriteria filters. Common filters: email, firstname, lastname, created\_at, group\_id. Returns matching customer items plus total\_count.
-   **Get Customer** Retrieves a single customer by ID, including email, name, group, store, and address book.
-   **Create Customer** Creates a new customer account. Email, first name and last name are required. Optionally set a password (otherwise the customer must set one via email), and the website and customer group.
-   **Update Customer** Updates an existing customer identified by ID. Only the fields you provide are changed. Note that Magento requires the email on update, so it is always sent when provided.
-   **Delete Customer** Permanently deletes a customer account by ID. Returns true on success.

### Categories

4

-   **List Categories** Retrieves the category tree starting from a root category. Returns a nested tree with each category's id, name, is\_active, level, and children\_data. Optionally set the root category ID and how many levels deep to traverse.
-   **Get Category** Retrieves a single category by ID, including name, parent, active status, path, and custom attributes.
-   **Create Category** Creates a category under a parent. Used in storefront restructure and seasonal merchandising flows.
-   **Get Products in Category** Retrieves the products assigned to a category with SKU and position. Used in merchandising and reporting.

### Sales Documents

4

-   **List Invoices** Retrieves a paginated list of invoices using searchCriteria filters. Common filters: order\_id, state, created\_at. Returns invoice items plus total\_count.
-   **Get Invoice** Retrieves a single invoice by its entity ID, including line items and totals.
-   **List Shipments** Retrieves shipments with searchCriteria filters. Used to report on fulfillment progress.
-   **List Credit Memos** Retrieves credit memos (refunds) with searchCriteria filters. Used to surface refunds in net-sales reporting.

## Frequently Asked Questions

### What can FlowRunner do with Magento 2?

FlowRunner agents can run List Products, Get Product, and Create Product in Magento 2, plus 25 more actions.

### Does connecting Magento 2 to FlowRunner require OAuth?

No. Magento 2 connects to FlowRunner with an API key, no OAuth flow required.

### Can Magento 2 trigger a FlowRunner workflow automatically?

Magento 2 doesn't currently expose triggers in FlowRunner. It connects as an action step inside workflows started by another trigger.

**Work at Magento 2?** This integration exposes Magento 2 to AI agents on every FlowRunner plan, including through MCP, at no cost to you. [See what FlowRunner offers integration partners](https://flowrunner.ai/integrations/partners), including how to keep this page current.

---
Markdown version of https://flowrunner.ai/integrations/magento. Site index: https://flowrunner.ai/llms.txt
