Get Report
Fetch Shopify store data including orders, customers, and inventory metrics
The Get Report node lets you fetch performance data from your connected Shopify store using specified metrics, dimensions, and filters. This is an AI-powered node that can understand natural language instructions.
When to Use It
Use this node to:
- Generate automated sales and performance reports
- Track order metrics and customer behavior over time
- Create data-driven insights for business decisions
- Export data for further analysis in external tools
- Monitor inventory levels and product performance
Setup Requirements
Before using this node, you need to connect your Shopify store to Markifact. Follow our step-by-step guide:
How to Connect Your Shopify Store
Complete setup guide with screenshots
Inputs
Field | Type | Required | Description |
---|---|---|---|
Date Range | Date range picker | Yes | Select date range for the report |
Metrics | Multi-select | Yes | Select metrics to include in the report |
Dimensions | Multi-select | No | Select dimensions to segment your data |
Filters | Rule-based filters | No | Add filters to refine your data |
Order By | Sort configuration | No | Set the order of results |
Limit | Number | No | Maximum number of rows to return |
Options | Report options | No | Additional options for the report |
Filters
Filters allow you to refine your data by applying conditions to specific dimensions or metrics. Multiple filters use AND logic - all conditions must be met for a row to be included in the results.
Available Filter Operators
Operator | Description | Example Use Case |
---|---|---|
EQUALS | Exact match | Product type equals “Electronics” |
NOT_EQUALS | Does not match exactly | Order status not equals “cancelled” |
CONTAINS | Contains substring | Product title contains “iPhone” |
NOT_CONTAINS | Does not contain substring | Product title doesn’t contain “test” |
IN_LIST | Matches any value in list | Order status in [“fulfilled”, “paid”] |
NOT_IN_LIST | Doesn’t match any value in list | Payment status not in [“pending”] |
REGEXP_MATCH | Matches regular expression | Product title matches ”.(phone|tablet).” |
NOT_REGEXP_MATCH | Doesn’t match regex | Product title doesn’t match “test.*“ |
GREATER_THAN | Numeric greater than | Order value > 100 |
LESS_THAN | Numeric less than | Quantity < 10 |
IS_NULL | Field has no value | Discount code is null |
IS_NOT_NULL | Field has a value | Discount code is not null |
Filter Examples
Example 1: High-value fulfilled orders
Example 2: Electronics products using regex (OR logic)
Example 3: Exclude test orders
OR Logic with Filters
Since multiple filters use AND logic, use these approaches for OR conditions:
- IN_LIST operator:
Order status IN ["fulfilled", "shipped", "delivered"]
- REGEXP_MATCH operator:
Product type REGEXP_MATCH ".*(electronics|accessories|gadgets).*"
- Run separate queries: Create different workflows for different conditions
Options Reference
These optional settings let you format the output from Shopify before passing it to other nodes.
Option | Description |
---|---|
Pretty Column Names | Converts column headers to Title Case (e.g. orderValue becomes Order Value ) |
Add Percent Sign to Ratios | Appends % to ratio metrics like Conversion Rate |
Display Currency Symbol | Adds $ or local currency symbol to monetary metrics |
Compact Numbers | Converts large numbers to short format (e.g. 10K instead of 10,000 ) |
Pivot Dimensions as Columns | Transforms dimension values into separate columns for easier comparison |
Output
The node returns a structured dataset with performance metrics and dimensions. The exact format depends on your configuration and the data returned from Shopify.
Typical Output Structure:
- Data Rows: Performance metrics and dimensions
- Metadata: Store information, date ranges, and query details
- Summary Statistics: Total records, data freshness, execution time
Can be passed to:
- AI nodes like Analyze Data or Structured Output
- Export nodes (e.g., Google Sheets)
- Email or Slides nodes
Credit Cost
- Cost per run: 1 credit (per successful execution)
Example Setup
Configuration Example:
- Date Range: Last 30 days
- Metrics: Total Sales, Order Count, New Customers, Average Order Value
- Dimensions: Date, Product Type
- Filters: Order Status = “fulfilled”
- Limit: 1000 rows
FAQs
How do I combine filters with OR logic?
How do I combine filters with OR logic?
Multiple filters always use AND logic (all conditions must be true). For OR logic, use:
Option 1: IN_LIST operator
Option 2: REGEXP_MATCH operator
Option 3: Run separate workflows Create different Get Report nodes for different conditions, then combine the data downstream.
What's the difference between CONTAINS and REGEXP_MATCH?
What's the difference between CONTAINS and REGEXP_MATCH?
- CONTAINS: Simple substring search.
Product title CONTAINS "iPhone"
finds any product with “iPhone” anywhere in the title - REGEXP_MATCH: Advanced pattern matching.
Product title REGEXP_MATCH "^iPhone.*"
finds products that START with “iPhone”
Use CONTAINS for simple text searches, REGEXP_MATCH for complex patterns or OR conditions.
Why are my filters not working?
Why are my filters not working?
Common filter issues:
- Case sensitivity: “Electronics” ≠ “electronics”. Use CONTAINS or regex for flexible matching
- Data type mismatch: Don’t use text operators on numeric fields like order value
- Field availability: Not all dimensions/metrics support all filter operators
- Syntax errors: Check regex patterns for proper escaping
Why don't I see an Accounts field like other advertising platforms?
Why don't I see an Accounts field like other advertising platforms?
Shopify connections are store-specific - each connection represents one Shopify store. You don’t need to select accounts because the node automatically uses your connected store’s data.
How do I connect multiple Shopify stores?
How do I connect multiple Shopify stores?
Each Shopify store requires a separate connection in Markifact. You’ll need to:
- Use different Get Report nodes for each store’s data
- Create individual connections with each store’s credentials
Why am I getting 'No data found' errors?
Why am I getting 'No data found' errors?
Common causes of empty results:
- Date range: The selected period may have no orders or activity
- Filters: Your filters may be too restrictive
- Store status: Your store may be in development mode or have no sales
- Permissions: Check that your access token has the required permissions
- Connection: Verify your Shopify connection is still active
Why is my data different from Shopify admin?
Why is my data different from Shopify admin?
Data discrepancies can occur due to:
- Order statuses: Different filters applied (e.g., including/excluding refunds)
- Data freshness: Reports may take time to sync
- Calculation methods: Different aggregation methods between Shopify admin and API
My API token isn't working - what should I check?
My API token isn't working - what should I check?
If your API token fails:
- Token visibility: API tokens are only shown once when created
- Permissions: Ensure you selected the required scopes (
read_orders
,read_customers
,read_inventory
) - App status: Verify your custom app is installed and active
- Token expiry: Check if you need to regenerate the token
- Store ID: Confirm you’re using the correct store ID from your admin URL
How do I find my Shopify Store ID?
How do I find my Shopify Store ID?
Your Store ID is in your Shopify admin URL:
- Log in to your Shopify admin dashboard
- Look at the URL in your browser
- Find the text after
/store/
in the URL - Example: In
https://admin.shopify.com/store/my-store
, your Store ID ismy-store
What should I do if my connection stops working?
What should I do if my connection stops working?
If your Shopify connection fails:
- Check if your custom app is still installed in Shopify
- Verify the access token hasn’t been revoked
- Ensure your Shopify store is active and accessible
- Try reconnecting with a new access token
- Contact support if issues persist