Send Shopify reports to Slack
Shopify orders, prices and payment status, once a week. Shopify goes into your data warehouse first, is linked there by SQL keys, and only then reaches Slack. The channel gets the answer, not a copy of the source.
The Monday Shopify recap in Slack is someone's screenshot, and the numbers change depending on who took it.
Paste this into your AI assistant. It loads Shopify into your data warehouse with OWOX Data Marts and schedules a weekly Slack message of orders, prices and payment status from one Data Mart.
The prompt
Read https://www.owox.com/ai-agent-setup.md and follow it to set up OWOX Data Marts for me, starting from /connectors/shopify-insights-to-slack.md. The task: send a weekly Shopify recap to our team's Slack channel: orders, revenue and payment status by day, compared with the week before. Tag the links you give me with utm_campaign=ai-task and utm_term=data-foundation. Use what you know about my context and goals
Shopify Endpoints
25 Shopify endpoints you can import. Each lands in its own table in your data warehouse.
Abandoned Checkouts
Checkout sessions that did not complete — customer info, items, and pricing for recovery campaigns.
20 fieldsTime seriesArticle Metafields
Custom metadata attached to articles — namespace, key, value, and type.
9 fieldsArticles
Blog articles — title, author, publication status, and timestamps.
15 fieldsBlog Metafields
Custom metadata attached to blogs — namespace, key, value, and type.
9 fieldsBlogs
Blogs in the store — title, handle, and template settings.
6 fieldsCollection Metafields
Custom metadata attached to collections — namespace, key, value, and type.
9 fieldsCollections
Product collections — title, sort order, product count, and last updated.
10 fieldsCustomer Metafields
Custom metadata attached to customers — namespace, key, value, and type.
9 fieldsCustomers
Customer accounts — contact info, marketing consent, order history, and lifetime spend.
22 fieldsTime seriesDiscount Codes
Discount codes — type, status, usage limits, and validity window.
12 fieldsFulfillment Orders
Fulfillment orders — items to ship, assigned location, delivery method, and status.
11 fieldsInventory Items
Inventory items (SKUs) — tracking status, shipping requirements, and country of origin.
9 fieldsLocation Metafields
Custom metadata attached to locations — namespace, key, value, and type.
9 fieldsLocations
Physical and virtual store locations — activity status, fulfillment capabilities, and address.
19 fieldsOrder Metafields
Custom metadata attached to orders — namespace, key, value, and type.
9 fieldsOrders
Orders placed in the store — financial and fulfillment status, customer info, totals, and timestamps.
96 fieldsTime seriesPage Metafields
Custom metadata attached to pages — namespace, key, value, and type.
9 fieldsPages
Static store pages — title, handle, publication status, and timestamps.
10 fieldsProduct Metafields
Custom metadata attached to products — namespace, key, value, and type.
9 fieldsProduct Variant Metafields
Custom metadata attached to product variants — namespace, key, value, and type.
9 fieldsProduct Variants
Product variants — SKU, price, inventory quantity, and availability.
18 fieldsProducts
Products in the store catalog — vendor, type, status, inventory, and price range.
21 fieldsTime seriesShop
Store settings — domain, currency, timezone, and plan details.
20 fieldsShop Metafields
Custom metadata attached to the shop — namespace, key, value, and type.
9 fieldsTender Transactions
Payment tender transactions — amount, currency, order reference, and processing time.
7 fields
Why Shopify does not post straight to Slack
Shopify knows every order, but nothing about the ad that brought the customer. A message built from the store shows revenue and statuses alone, so nobody can tell from it which campaigns earned the sales. A Slack channel reads fast, so a number posted there is quoted quickly. Whoever posts it needs to be sure of its definition. The join belongs in a warehouse first.
- Shopify orders carry price and status, not the campaign that brought the buyer
- Slack channels are quoted in meetings, so every figure needs one definition
- The data analyst links the sources by SQL keys and controls what the message says
Step 1: Load Shopify into your data warehouse first
Create a Data Mart with Shopify as the source and choose where the data lands. It works with any popular data warehouse.
- 25 endpoints to choose from, each endpoint in its own table
- Authorize with your shop domain and an Admin API access token
- Open the Shopify connector for your data warehouse below
Step 2: Link Shopify orders to ad spend and sessions
In your data warehouse the model merges Shopify orders with Facebook Ads and Google Ads spend, then joins web analytics sessions and customers by an order key. Pick an industry to see the shape of its model.
- Orders and ad spend sit in one table
- Sessions and customers join by SQL keys
- Measures such as orders_count are defined once
Step 3: Send Shopify reports to Slack
Create a Slack destination in OWOX with the email address of the channel that should get the report, then add a report to the published Data Mart. The message is Markdown, and Preview shows how it looks in Slack.
- Slack gives every channel an email address, and OWOX posts to it
- Type / in the message to add the Orders table with name, totalPrice, currencyCode, createdAt
- Create & Run sends the first report at once
Step 4: Add a short analysis under the Shopify report
Write two or three lines under the table in the same Markdown message. Add a trigger on the Triggers tab, for example every Monday morning, and the channel gets a fresh run each week.
- The lines read totalPrice and currencyCode from the report, with no figure from outside it
- The table is filled from a new run of the Data Mart before every send
- A report with a send condition posts only when the result is not empty
Step 5: Reuse Shopify inside OWOX MCP
The same Data Mart works in OWOX MCP, your assistant for data. Request any report, chat with your data, then get the report in Google Sheets or Excel in one click.
- Ask in plain words; the answer comes from your data warehouse
- Define the numbers once and every report reads them
- 0.41.0Rotating a connector key is one change: Sources share reusable Credentials
- 0.39.0Reload a year of history in one backfill, not twelve
- 0.38.0Shopify connector: more orders fields, including line-item discounts
- 0.37.0Clearer connector errors, and custom connectors that handle more APIs
- 0.36.0Start a connector run without expanding the Input Source card
Why OWOX for Shopify in Slack
A Slack bot or a script pulling from the Shopify account posts numbers as they are. OWOX posts answers from your data warehouse, in the channel your team already uses.
- Orders with their cause. Slack gets Shopify orders joined to the ad spend and sessions that produced them.
- You own the data. Shopify lands in your own data warehouse, in tables you control, before anything reaches Slack.
- Slack stays simple. Paste the channel email address once; no Slack app to build and no token to renew.
- Posts only when it matters. Set a report to send only when the result is not empty, so the channel stays quiet on a quiet week.
- Maintained for you. When the source changes its API, the connector is updated, not your Slack setup.
You are booked. The invitation is on its way to , with the calendar invite and the meeting link.
