Sync Squarespace Orders to QuickBooks Online Sales Receipts (Make.com)

Automate e-commerce accounting by mapping Squarespace Commerce triggers to QuickBooks ledger entries using Make.com's advanced logic.

Tools: SquarespaceQuickBooks

Platform: Make.com

Short Answer

A fully automated sync that triggers every time a new order is placed. The scenario performs a duplicate check, creates or updates the customer, and generates a Sales Receipt with correct line items and tax mapping automatically.

The Problem

Manual entry of Squarespace orders into QuickBooks is time-consuming and prone to human error, leading to mismatched tax records and inventory discrepancies. Businesses often struggle to reconcile Squarespace sales with specific Income Accounts in their Chart of Accounts.

The Outcome

A fully automated sync that triggers every time a new order is placed. The scenario performs a duplicate check, creates or updates the customer, and generates a Sales Receipt with correct line items and tax mapping automatically.

Step-by-Step Guide

1. **Initialize Squarespace Trigger**: Create a new Scenario. Add the **Squarespace** module and select the 'Watch Orders' trigger. Create a connection using your Squarespace API Key. 2. **Configure Webhook**: Set the 'Order Status' to 'Pending' or 'Fulfilled' depending on your revenue recognition policy. 3. **Search for Customer**: Add a **QuickBooks Online** 'Search Customers' module. Use the filter `PrimaryEmailAddr = {{1.customerEmail}}` to check if the user already exists. 4. **Add a Router**: Place a Router after the search module to handle 'New' vs 'Existing' customers. 5. **Customer Path A (New)**: Set a filter for the top path: `Total number of bundles EQUAL TO 0`. Add a 'Create a Customer' module mapping name and email from Squarespace. 6. **Customer Path B (Existing)**: Set a filter for the bottom path: `Total number of bundles GREATER THAN 0`. Use the 'Update a Customer' module to ensure billing addresses are current. 7. **Map Line Items**: Add the 'Create a Sales Receipt' module. Since Squarespace orders may contain multiple items, use the **Iterator** module if you have complex orders, or map the first line item using the `map()` function for simple sales. 8. **Select Income Account**: In the Sales Receipt module, manually select the 'Deposit To Account' (e.g., Undeposited Funds) and the 'Income Account' based on your Chart of Accounts. 9. **Handle Taxes**: Map the `taxTotal` from Squarespace to the QuickBooks `TaxCodeRef` field. Note: You may need a **Switch** function to map Squarespace tax names to QuickBooks internal IDs. 10. **Error Handling**: Right-click the QuickBooks module and select 'Add error handler'. Choose the **Break** directive to store the execution and retry later if the QuickBooks API is temporarily down.