E-commerce

Shopify connector

React to orders, inventory, and customer changes as they happen, and read or write products, orders, customers, and fulfillments from any Neblex workflow or agent, with bulk operations for whole catalogs and full order history, all under the same governance and audit trail as every other connector.

OAuth 2.0 or access token
Authentication
GraphQL, REST, inbound webhooks
API surface
Storefront and admin resources
Objects supported
Poll or inbound webhook
Change events

Overview

The Shopify connector lets a Neblex workflow or agent treat a store as a source and a destination: push paid orders into an ERP, keep inventory in step with a warehouse system, enrich and route customers, and answer questions about orders, without a nightly export and without hitting a rate limit mid-run.

  • Works against production stores and development stores, switched per connection
  • Uses the GraphQL Admin API by default, falling back to REST for the few resources GraphQL does not cover
  • Bulk operations handle a whole catalog or years of order history as a single background job that returns a file
  • One connector powers deterministic workflows, agent tool calls, and inventory and order sync jobs, all in the same run log

Why teams use the Shopify connector

The three jobs this connector is picked for most often, and what each one gets you.

  • Get orders into the ERP cleanly.
  • Keep inventory honest across channels.
  • Feed marketing the events it needs.

Worked example

A real flow e-commerce ops teams turn on first, with the actual field-level detail.

Paid Shopify order to a NetSuite sales order, with a fraud hold

On orders/paid, Neblex creates or matches the customer, raises the sales order, and routes anything Shopify flags as high risk to a review queue before it posts.

  1. 1Trigger: Order event for orders/paid, carrying the order, line items, customer, and addresses.
  2. 2Risk check: read the order's risk assessment. If the recommendation is cancel or investigate, post to #order-review with the order link and stop until a human releases it.
  3. 3Customer: Upsert record on the ERP customer, keyed on external ID shopify_customer_id, mapping customer.email → email, customer.first_name → first name, customer.last_name → last name, shipping_address.country_code → billing country.
  4. 4Order: create the sales order, mapping order.name → otherRefNum, and each line to an item sublist line with line.sku → item, line.quantity → quantity, line.price → rate, plus a shipping line from total_shipping_price_set.
  5. 5Guard: if any line.sku does not match an ERP item, hold the order in the review queue rather than creating a partial order.
  6. 6Close the loop: write the ERP order number to a Shopify order metafield custom.erp_order_number, so support can see it on the order page.

Example flows

Common patterns other teams start from with this connector.

  • Order to ERP. Paid orders become NetSuite sales orders, new shoppers become customers, and fulfillment status flows back to the store. (E-commerce ops)
  • Store to email and SMS. Orders, refunds, and customer changes stream to Klaviyo with enriched, deduped customer records. (Marketing)
  • Orders to the books. Daily order and payout totals sync into QuickBooks as sales receipts and deposits, reconciled to the payout. (SMB finance)
  • Store data to the warehouse. Order, product, and customer history loads into Snowflake through a nightly bulk export, then a polled change trigger, or Shopify's webhooks pointed at a Neblex endpoint, keeps it current. (Data)

Supported objects

Admin API resources are supported for read and write. Metafields extend any of them with your own structured data.

Commonly used resources

Product, Variant, Collection, Order, Draft Order, Customer, Inventory Item, Inventory Level, Location, Fulfillment, Fulfillment Order, Refund, Transaction, Discount, Price Rule, Metafield

Metafields on products, orders, customers, and variants are read and written like any other field, so a workflow can store an ERP ID or a sync status directly on the Shopify record.

Security and access

The connection is scoped to the Admin API access scopes you grant, so it can only read and write the resources you approve.

  • OAuth 2.0 or access token. OAuth 2.0 for a public app, a store access token for a single store. Scopes are granted per resource, for example read_orders, write_inventory.
  • Scope-limited access. A connection without write_products cannot change the catalog. Grant the narrowest scope set each flow needs.
  • Webhook endpoints. A flow can expose a webhook endpoint for Shopify to call, protected by an API consumer key with per-consumer rate limits, quotas, and metering.
  • Full audit trail. Every webhook, read, write, and bulk job, with the resource ID, flows into the same Neblex audit trail as every other connector.

Limits, as the vendor publishes them

The shape of the vendor's limits, as published at the time of writing. Verify the exact figures for your plan; they change without notice. Neblex honors the vendor's own rate-limit and retry signals and backs off within them.

  • The GraphQL Admin API uses a cost bucket of 1,000 points that refills at 50 points per second, higher on Shopify Plus. The connector reads the cost of each query and paces to fit
  • The REST Admin API allows about 2 requests per second with a 40-request burst, doubled on Plus
  • Only one bulk operation of each type runs per store at a time. Large reads and writes queue behind it and return a file
  • Webhooks are retried over roughly 48 hours across 19 attempts, so a flow must be safe to run twice on the same event
  • Order, fulfillment, and inventory writes follow Shopify's own state rules, for example an unpaid order cannot be fulfilled, and the connector surfaces the rejection rather than forcing it

What a flow can do in Shopify

Read and update products, variants, and inventory levels, create, close, and cancel orders, fulfil orders and manage fulfilment holds, calculate and create refunds, create and update customers, run bulk operations over the whole catalog, and many more.

The connector exposes 367 operations, generated from Shopify as it ships, and 100% of them describe their output so later steps can map fields without guessing. Authentication: None.

How flows react to changes in Shopify

Shopify does not push change events to Neblex. A flow reacts to changes either with a Poll for changes trigger that reads the connector on a schedule and detects inserts, updates, and deletes, or by giving Shopify a Neblex webhook endpoint to call when it supports outbound notifications on your plan.

Frequently asked questions

Does the Shopify connector use GraphQL or REST?

GraphQL Admin API by default, since it is where Shopify adds new capability and it lets one query pull related data together. It falls back to REST for the few resources GraphQL does not yet cover.

Can it react to orders in real time?

Shopify does not push change events to Neblex on its own. Point Shopify's webhook topics such as orders/paid and inventory_levels/update at a Neblex webhook endpoint and the flow starts when the webhook arrives; a Poll for changes trigger on the schedule you set covers everything else, including deletes.

How do I load a large catalog or full order history?

A bulk operation runs the query as a background job and returns a JSONL file, so a first sync of a large store does not fight the cost limit. Polled change triggers then keep it current.

Does it handle custom data with metafields?

Yes. Metafields on any resource are read and written like standard fields, so you can keep an ERP order number or a sync status on the Shopify record itself.

Does it work with a development store?

Yes. Each connection targets a production or development store, so you can build and test on a dev store and promote the same flow through environments.

See it on your data

Bring one real integration

We will build it with you against your own systems, with the run log open.