Receive a Daily Order Report Card Email for Shopify

6 min setup
No coding required
Runs automatically

Keep a pulse on your store’s performance with a daily “report card” email summarizing the past 24 hours of Shopify orders. This customizable MESA workflow template delivers key metrics to your inbox each day, including Total Orders, Orders Over $100, Paid Orders, Pending Orders, Fulfilled Orders, Most Popular Products Sold, and more. Stay informed and make data-driven decisions with ease.

schedule icon
Run order report
Get List of Orders
Retrieve Shop
Compile order data
email icon
Send Email Report

You're in good company

"MESA has been a game changer for us. And, if you ever get stuck, their support team is always super helpful."

  • Ico star
  • Ico star
  • Ico star
  • Ico star
  • Ico star
PetFriendly

"It's like Zapier but exactly designed for Shopify. I have been able to complete all the workflows that I've needed."

  • Ico star
  • Ico star
  • Ico star
  • Ico star
  • Ico star
Zailys

"The MESA team has been amazing at helping us set up our automations. We would highly recommend this app!"

  • Ico star
  • Ico star
  • Ico star
  • Ico star
  • Ico star
Rothy's

How it works

5 steps to start receiving daily order report cards via email automatically

schedule icon

Run order report

App connector: Schedule • Time to complete: 1 minute
Why this matters: This trigger runs the report on a consistent daily schedule, providing predictable morning sales insights that help you understand yesterday's performance and start each day informed about business activity.

This scheduled trigger runs once per day at 8 AM. The timing delivers yesterday's complete sales data first thing in the morning when planning the day's activities. You can adjust the schedule to run at different times by modifying the schedule value.

Get List of Orders

App connector: Shopify • Time to complete: 0 minutes (Auto-configured)
Why this matters: Retrieves all orders from the previous 24 hours to provide the raw data needed for calculating metrics, ensuring the report reflects complete sales activity regardless of order status or payment state.

This step fetches orders from Shopify using a time range filter. The query parameters include status "any" (captures all orders regardless of fulfillment or payment status), created_at_min set to 24 hours ago, and created_at_max set to now. This ensures the report includes every order placed in the past 24 hours: completed purchases, pending payments, abandoned checkouts converted to orders, and any other order activity. The orders are returned as an array with complete order details including financial status, fulfillment status, line items, and pricing.

Time range calculation: The workflow uses date math to calculate exactly 24 hours before the current time, ensuring consistent reporting windows even as the schedule runs daily.

Retrieve Shop

App connector: Shopify • Time to complete: 0 minutes (Auto-configured)
Why this matters: Fetches your store's domain information needed for generating clickable links in the email report that direct you back to specific areas of your Shopify admin or the MESA workflow editor.

This step retrieves shop details from Shopify including the myshopify domain. This domain is used in the email template to construct links like the workflow customization link that appears at the bottom of the report card, enabling easy access to modify the workflow or view orders in Shopify admin.

Compile order data

App connector: Loop • Time to complete: 0 minutes (Auto-configured)
Why this matters: Processes the raw order data through custom JavaScript to calculate meaningful business metrics, transforming a list of orders into actionable insights about sales performance, payment status, and product popularity.

This step runs custom JavaScript that analyzes the order array and calculates key metrics:

  1. Total Orders: Counts all orders in the past 24 hours
  2. Orders Over $100: Counts orders where total price exceeds $100 (high-value orders)
  3. Orders Paid: Counts orders with financial status "paid"
  4. Orders Pending: Counts orders with financial status "pending"
  5. Orders Fulfilled: Counts orders with fulfillment status "fulfilled"
  6. Most Popular Product: Analyzes line items across all orders, counts how many times each product was sold, and identifies the product(s) with the highest sales count

Product popularity logic (from compile_order_data.js): The code maintains a count of each product title across all line items, sorts products by count descending, then returns all products that match the highest count. If multiple products tie for most popular, all are listed comma-separated.

The calculated metrics are returned as an object with properties like orders_total, orders_over_100, orders_paid, orders_pending, orders_fulfilled, and most_popular_product that populate the email template.

email icon

Send Email Report

App connector: Email • Time to complete: 2 minutes
Why this matters: Delivers the analyzed metrics in a professionally formatted HTML email that provides at-a-glance insights into yesterday's sales performance with clear categorization and visual hierarchy.

This step sends an HTML-formatted email to your configured recipient.

Configuration: You must enter the email address during setup—this could be your personal email, a team distribution list, or a business intelligence tool. The email includes:

  1. Subject: "Order Report Card for [current date]"
  2. Body: Professional HTML template with MESA branding, the 24-hour date range covered, and a metrics section with:
  3. Total Orders count
  4. Total Orders Over $100 count
  5. Total Orders Paid count
  6. Total Orders Pending Payment count
  7. Total Orders Fulfilled count
  8. Most Popular Product(s) Sold (comma-separated if multiple tied)
  9. Customization link: Direct link to edit this workflow in MESA

Email formatting: The HTML template uses responsive design that displays properly on desktop and mobile email clients with clear typography, colored sections, and structured layout for scannable metrics.

Ready to set this up? It only takes 6 minutes.

Our support team will even help you personalize this workflow for free.

Get started →

Make it your own!

Customize this workflow even further:

Change the reporting schedule
Modify the schedule trigger to run weekly for a weekly summary, multiple times per day for frequent updates, or on specific days for targeted reporting cadences that match your business rhythm.
Add revenue calculations
Enhance the custom code to calculate total revenue, average order value, revenue by payment status, or other financial metrics beyond order counts for deeper performance insights.
Send to Slack instead of email
Replace or supplement the email step with a Slack message to a channel like #daily-sales or #operations, enabling team visibility and discussion of daily performance.
Filter by order properties
Modify the order retrieval query to include filters for specific tags, product types, sales channels, or customer segments, creating focused reports for different business areas.

Common questions

Can I customize the metrics shown in the report?

What happens if there are no orders in the past 24 hours?

Can I get reports for longer time periods like weekly or monthly?

Ready to start receiving daily order report cards via email automatically?

7-day free trial • 6 min setup • Cancel anytime

Need help? Our automation experts will help you personalize this workflow for free. Contact support