AutomationFlowsEmail & Gmail › Automate Orlen Invoice Archiving to Google Drive

Automate Orlen Invoice Archiving to Google Drive

Original n8n title: Orlen

Orlen. Uses manualTrigger, googleDrive, gmail, slack. Event-driven trigger; 10 nodes.

Event trigger★★★★☆ complexity10 nodesGoogle DriveGmailSlack
Email & Gmail Trigger: Event Nodes: 10 Complexity: ★★★★☆ Added:

This workflow follows the Gmail → Google Drive recipe pattern — see all workflows that pair these two integrations.

The workflow JSON

Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →

Download .json
{
  "id": 3,
  "name": "Orlen",
  "nodes": [
    {
      "name": "On clicking 'execute'",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        240,
        300
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "name": "Current date",
      "type": "n8n-nodes-base.function",
      "position": [
        1160,
        960
      ],
      "parameters": {
        "functionCode": "var today = new Date();\nvar year = today.getFullYear();\nvar month = today.getMonth() + 1;\nvar day = today.getDate();\n\nif(month < 10) {\n  month = \"0\" + month;\n}\n\nitems[0].json.year = year;\nitems[0].json.month = month;\nitems[0].json.day = day;\n\nreturn items;"
      },
      "typeVersion": 1
    },
    {
      "name": "Every 23:45",
      "type": "n8n-nodes-base.cron",
      "position": [
        960,
        960
      ],
      "parameters": {
        "triggerTimes": {
          "item": [
            {
              "hour": 23,
              "minute": 45
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "name": "Get Year folder",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        1360,
        960
      ],
      "parameters": {
        "options": {
          "fields": [
            "id"
          ]
        },
        "operation": "list",
        "queryFilters": {
          "name": [
            {
              "value": "={{$json[\"year\"]}}",
              "operation": "is"
            }
          ],
          "mimeType": [
            {
              "mimeType": "application/vnd.google-apps.folder"
            }
          ]
        },
        "authentication": "oAuth2"
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "name": "Get Month folder",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        1560,
        960
      ],
      "parameters": {
        "options": {
          "fields": [
            "id"
          ]
        },
        "operation": "list",
        "queryString": "='{{$json[\"id\"]}}' in parents and name = '{{$node[\"Current date\"].json[\"month\"]}}'",
        "authentication": "oAuth2",
        "useQueryString": true
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "name": "Orlen Invoice",
      "type": "n8n-nodes-base.gmail",
      "position": [
        1760,
        960
      ],
      "parameters": {
        "resource": "message",
        "operation": "getAll",
        "returnAll": true,
        "additionalFields": {
          "q": "from:(orlenpay@orlen.pl) has:attachment is:unread",
          "format": "resolved"
        }
      },
      "credentials": {
        "gmailOAuth2": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "name": "Upload Invoice to Google Drive",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        1960,
        960
      ],
      "parameters": {
        "name": "=Orlen {{$binary.attachment_0.directory}}.{{$binary.attachment_0.fileExtension}}",
        "options": {},
        "parents": [
          "={{$node[\"Get Month folder\"].json[\"id\"]}}"
        ],
        "binaryData": true,
        "resolveData": true,
        "authentication": "oAuth2",
        "binaryPropertyName": "attachment_0"
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "name": "Mark as Read",
      "type": "n8n-nodes-base.gmail",
      "position": [
        2160,
        960
      ],
      "parameters": {
        "labelIds": [
          "UNREAD"
        ],
        "resource": "messageLabel",
        "messageId": "={{$node[\"Orlen Invoice\"].json[\"id\"]}}",
        "operation": "remove"
      },
      "credentials": {
        "gmailOAuth2": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "name": "Merge",
      "type": "n8n-nodes-base.merge",
      "position": [
        2280,
        960
      ],
      "parameters": {
        "mode": "mergeByIndex"
      },
      "typeVersion": 1
    },
    {
      "name": "Slack",
      "type": "n8n-nodes-base.slack",
      "position": [
        860,
        540
      ],
      "parameters": {
        "text": "=Kapitanie!\nDodano faktur\u0119 {{$node[\"Orlen Invoice\"].binary.attachment_0.directory}} do Firma/{{$node[\"Current date\"].json[\"year\"]}}/{{$node[\"Current date\"].json[\"month\"]}}",
        "channel": "n8n",
        "attachments": [],
        "otherOptions": {},
        "authentication": "oAuth2"
      },
      "credentials": {
        "slackOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    }
  ],
  "active": true,
  "settings": {
    "timezone": "Europe/Warsaw",
    "saveExecutionProgress": "DEFAULT"
  },
  "createdAt": "2022-04-11T17:11:34.040Z",
  "updatedAt": "2022-04-11T21:59:45.898Z",
  "staticData": null,
  "connections": {
    "Merge": {
      "main": [
        [
          {
            "node": "Upload Invoice to Google Drive",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Every 23:45": {
      "main": [
        [
          {
            "node": "Orlen Invoice",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Current date": {
      "main": [
        [
          {
            "node": "Get Year folder",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Mark as Read": {
      "main": [
        [
          {
            "node": "Slack",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Orlen Invoice": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "Get Year folder": {
      "main": [
        [
          {
            "node": "Get Month folder",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Month folder": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "On clicking 'execute'": {
      "main": [
        [
          {
            "node": "Orlen Invoice",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Upload Invoice to Google Drive": {
      "main": [
        [
          {
            "node": "Mark as Read",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}

Credentials you'll need

Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.

Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

How this works

This workflow streamlines invoice management for Orlen-related correspondence by automatically retrieving and archiving emails with attachments into organised Google Drive folders, saving hours of manual filing each month. It's ideal for finance teams or administrators handling recurring supplier invoices from Orlen, ensuring nothing gets overlooked amid busy inboxes. The key step involves scanning Gmail for specific invoice emails, extracting attachments, and uploading them to year- and month-based folders in Google Drive, with notifications sent via Slack for confirmation.

Use this workflow for daily or scheduled processing of predictable invoice emails to maintain compliance and easy retrieval, especially in regulated industries like energy. Avoid it for high-volume, variable email patterns that require AI parsing, or when real-time alerts are needed beyond Slack updates. Common variations include adjusting the cron schedule to hourly checks or adding filters for multiple senders to handle broader procurement flows.

About this workflow

Orlen. Uses manualTrigger, googleDrive, gmail, slack. Event-driven trigger; 10 nodes.

Source: https://github.com/Zie619/n8n-workflows — original creator credit. Request a take-down →

More Email & Gmail workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

Email & Gmail

Categories: Payments, Project Operations, Client Onboarding

Stripe Trigger, Google Drive, ClickUp +4
Email & Gmail

Hiring teams often struggle with document follow-ups, offer letter generation, and stakeholder communication. Manual checks, email back-and-forth, and missing files slow down hiring and create chaos d

Google Sheets Trigger, HTTP Request, Slack +3
Email & Gmail

Brand Asset Folder Automation & Client Notification. Uses googleDrive, slack, gmail, googleSheetsTrigger. Event-driven trigger; 8 nodes.

Google Drive, Slack, Gmail +1
Email & Gmail

This template is ideal for HR teams, startup founders, operations leads, remote-first companies, and freelancers managing onboarding manually or across multiple tools.

Google Sheets Trigger, Jira, HubSpot Trigger +7
Email & Gmail

Automate event registration with capacity management, a waitlist, and multi-tier PDF ticket generation using PDF Generator API. When attendees register, the workflow checks available spots, routes by

Form Trigger, Google Sheets, @Pdfgeneratorapi/N8N Nodes Pdf Generator Api +2