Skip to main content

Automatically send monthly sales reports from Square via Gmail

Workflow preview

Workflow preview
100%
Automatically send monthly sales reports from Square via Gmail preview
Open on n8n.io

Important notice

This workflow is provided as-is. Please review and test before using in production.

1. Workflow Overview

Automatically Send Monthly Sales Reports from Square via Gmail What It Does This workflow automatically connects to the Square API and generates a monthly sales summary report for all your Square l...

Best for

  • Content Creation automation workflows
  • Multimodal AI automation workflows
  • advanced n8n builders looking for reusable templates

Tools used

n8n-nodes-base.httprequest, n8n-nodes-base.splitout, n8n-nodes-base.if, n8n-nodes-base.code, n8n-nodes-base.stickynote, n8n-nodes-base.scheduletrigger, n8n-nodes-base.converttofile, n8n-nodes-base.gmail

Source and attribution

This workflow is cataloged by N8N Workflows and links back to its original n8n.io source page by Rosh Ragel.

Original n8n.io source

1.1 Workflow description

Title
Automatically send monthly sales reports from Square via Gmail
Workflow name
Automatically send monthly sales reports from Square via Gmail

Automatically Send Monthly Sales Reports from Square via Gmail

What It Does

This workflow automatically connects to the Square API and generates a monthly sales summary report for all your Square locations. The report matches the figures displayed in Square Dashboard > Reports > Sales Summary.

It's designed to run monthly and pull the previous month’s sales into a CSV file, which is then sent to a manager/finance team for analysis.

This workflow builds on my previous template, which allows users to automatically pull data from the Square API into n8n for processing. (See here: https://n8n.io/workflows/6358)

Prerequisites

To use this workflow, you'll need:

  • A Square API credential (configured as a Header Auth credential)
  • A Gmail credential

How to Set Up Square Credentials:

  • Go to Credentials > Create New
  • Choose Header Auth
  • Set the Name to Authorization
  • Set the Value to your Square Access Token (e.g., Bearer <your-api-key>)

How It Works

  1. Trigger: The workflow runs on the 1st of every month at 8:00 AM
  2. Fetch Locations: An HTTP request retrieves all Square locations linked to your account
  3. Fetch Orders: For each location, an HTTP request pulls completed orders for the previous calendar month
  4. Filter Empty Locations: Locations with no sales are ignored
  5. Aggregate Sales Data: A Code node processes the order data and produces a summary identical to Square’s built-in Sales Summary report
  6. Create CSV File: A CSV file is created containing the relevant data
  7. Send Email: An email is sent using Gmail to the chosen third party

Example Use Cases

  • Automatically send monthly Square sales data to management for forecasting and planning
  • Automatically send data to an external third party, such as a landlord or agent, who is paid via commission
  • Automatically send data to a bookkeeper for entry into QuickBooks

How to Use

  • Configure both HTTP Request nodes to use your Square API credential
  • Set the workflow to Active so it runs automatically
  • Enter the email address of the person you want to send the report to and update the message body
  • If you want to remove the n8n attribution, you can do so in the last node

Customization Options

  • Add pagination to handle locations with more than 1,000 orders per month
  • Adjust the date filters in the HTTP node to cover the full calendar month (e.g., use Luxon or JavaScript to calculate start_date and end_date)

Why It's Useful

This workflow saves time, reduces manual report pulling from Square, and enables smarter automation around sales data — whether for operations, finance, or performance monitoring.

1.2 Logical Blocks

This catalog entry is organized from the workflow JSON. The node-level section below shows the executable blocks available for review before importing the template.

2. Block-by-Block Analysis

Block 1 - Get Square Locations

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 2 - Turn Locations Into List

Type / Role
n8n-nodes-base.splitOut - splitOut
Config choices
Version 1

Block 3 - Ignore Locations w/o Sales

Type / Role
n8n-nodes-base.if - if
Config choices
Version 2.2

Block 4 - Get Sales from Square

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 5 - Compile Sales Reports

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 6 - Sticky Note1

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 7 - Sticky Note2

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 8 - Sticky Note3

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 9 - Sticky Note4

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 10 - Schedule Trigger

Type / Role
n8n-nodes-base.scheduleTrigger - scheduleTrigger
Config choices
Version 1.2

Block 11 - Sticky Note5

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 12 - Convert Sales Summary to CSV File

Type / Role
n8n-nodes-base.convertToFile - convertToFile
Config choices
Version 1.1

Block 13 - Sticky Note6

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 14 - Send Report

Type / Role
n8n-nodes-base.gmail - gmail
Config choices
Version 2.1

Block 15 - Sticky Note7

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 16 - Get Dates From Last Month

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

3. Summary Table

Workflow Automatically send monthly sales reports from Square via Gmail
Complexity advanced
Nodes 16
Categories Content Creation, Multimodal AI
Author Rosh Ragel
Published 07 Aug 2025

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/7090/7090.json as the source template for this automation.

  2. 2. Import the template into n8n

    Open n8n, import the downloaded JSON, and review each node before activating the workflow.

  3. 3. Configure credentials and variables

    Replace placeholder credentials, API keys, webhook URLs, account IDs, and environment-specific values with your own settings.

  4. 4. Test with sample data

    Run the workflow manually or in a staging workspace, inspect node output, and confirm downstream systems receive the expected data.

  5. 5. Activate and monitor

    Enable the workflow only after testing, then monitor executions, errors, and rate limits during the first production runs.

5. General Notes & Resources

Review imported nodes carefully before activation. This catalog entry is intended to help you inspect the workflow structure, understand required services, and find related templates faster.

Node names, credentials, schedules, webhook paths, and external service limits may need adjustment for your workspace.

Frequently asked questions

What does Automatically send monthly sales reports from Square via Gmail do?

Automatically Send Monthly Sales Reports from Square via Gmail What It Does This workflow automatically connects to the Square API and generates a monthly sales summary report for all your Square l...

What do I need before importing this workflow?

Review the workflow JSON, configure any required credentials in n8n, and test the automation in a safe workspace before using it in production.

Can I customize this workflow?

Yes. Use the block-by-block analysis and the downloadable JSON to inspect each node, then adjust credentials, prompts, schedules, filters, or destinations for your Content Creation, Multimodal AI use case.