E-commerce · n8n

Automatically Log Every Shopify Order to Google Sheets in Real Time

Every time a new order is placed in your Shopify store, this workflow instantly captures the key details and appends a new row to your Google Sheet. No more manual exports or missed orders — your sales log stays up to date automatically.

difficulty Beginnersetup 30 minresult A live Google Sheet that automatically records every new Shopify order with customer name, email, order number, total price, and order date.
  1. 1

    Connect your Shopify store as the trigger

    Add a Shopify Trigger node to your canvas. In the node settings, select orders/create as the Topic so the workflow fires on every new order. Create a Shopify credential using your store URL and API credentials (Admin API access token). Save and activate the node.

  2. 2

    Extract and rename the order fields

    Add a Set node after the trigger. Create the following fields: orderNumber mapped to {{ $json.order_number }}, customerName mapped to {{ $json.billing_address.name }}, customerEmail mapped to {{ $json.email }}, totalPrice mapped to {{ $json.total_price }}, and orderDate mapped to {{ $json.created_at }}. This keeps the data clean before writing to Sheets.

  3. 3

    Append the order as a new row in Google Sheets

    Add a Google Sheets node set to the Append Row operation. Connect your Google account credential. Enter your Spreadsheet ID (found in the Sheet URL) and set the Sheet Name to match your tab name (e.g. Orders). Map each column header to the fields you created in the previous step: Order Number, Customer Name, Email, Total Price, and Order Date. Make sure your Sheet has these headers in row 1 before running.

Frequently asked questions

Do I need any coding experience to set this up?

No coding is required. You only need to copy and paste your Shopify API token and your Google Sheet ID into the node credentials fields. The visual n8n editor handles everything else.

What happens if an order comes in while n8n is offline?

If you are using n8n cloud, it runs 24/7 and no orders will be missed. If you self-host n8n, make sure your server is always running. Shopify webhooks do retry failed deliveries a few times, but a prolonged outage could result in missed rows.

Can I add more order fields like shipping address or product names?

Yes. In the `Set` node, add extra fields and reference them using expressions like `{{ $json.shipping_address.address1 }}` for shipping or `{{ $json.line_items[0].name }}` for the first product. Add matching column headers to your Google Sheet and map the new fields in the Google Sheets node.

About this recipe. Recipes on FlowRecipesHub are written for business owners, not developers, and are tested before publishing — how recipes get made. Some ingredient links are affiliate links that cost you nothing — full disclosure.