Export PDF invoices from SmartBill to Google Drive
This workflow automates the retrieval of invoice PDFs from the Smartbill API and saves them to Google Drive in a dynamically created folder based on last month’s date. It also generates a range of invoice numbers, ensuring proper formatting, and uploads each PDF with a structured filename.
Overview
-
Trigger and Data Setup:
The workflow is manually triggered. It sets the invoice range (start and end numbers), invoice series, the parent Google Drive folder ID and the folder where to save the PDF files. -
Folder Handling:
- Folder Name Calculation: Calculates a default folder name based on last month’s date (formatted as
YYYY-MM).
- Folder Name Calculation: Calculates a default folder name based on last month’s date (formatted as
-
Invoice Generation:
A code node generates invoice items by iterating over a specified range of numbers. Each invoice number is padded to custom number of digits (e.g.,0013), and the invoice series and folder ID are attached to each item. -
Retrieving Invoice PDFs:
For each generated invoice, the Smartbill API is called (using an HTTP Request node) to retrieve the corresponding invoice PDF.
How to Use
-
Credentials:
Ensure you have configured the Smartbill API (HTTP Basic Auth) and Google API credentials correctly. -
Parameter Adjustment:
Modify theSetDatanode if you need to change the invoice range, series, or target parent folder. -
Execution:
Click Execute Workflow to run the workflow manually.
Export PDF Invoices from Smartbill to Google Drive
This n8n workflow automates the process of exporting invoices from an external API (likely Smartbill, based on the directory name) and uploading them as PDF files to Google Drive. It includes logic to handle potential errors and retries.
What it does
This workflow performs the following steps:
- Manual Trigger: The workflow is initiated manually by clicking 'Execute workflow'.
- HTTP Request: It makes an HTTP request to an external API endpoint. This request is likely retrieving a list of invoices or initiating an invoice export process.
- Conditional Logic (If): It checks the response from the HTTP request.
- If the request is successful:
- Edit Fields (Set): Processes the successful response data, potentially extracting relevant invoice information.
- Loop Over Items (Split in Batches): Iterates through each item (e.g., each invoice) from the processed data.
- Google Drive: For each item, it uploads a file to Google Drive. This file is expected to be an invoice in PDF format.
- If the request fails:
- Wait: The workflow pauses for a specified duration (e.g., to implement a retry mechanism or allow for manual intervention).
- Edit Fields (Set): Processes the error response, potentially logging or preparing for a retry.
- Loop Over Items (Split in Batches): This branch also includes a loop, suggesting it might attempt to reprocess or log errors for each failed item.
- Google Drive: Attempts to upload to Google Drive again, likely after the wait period, or to upload an error log/notification.
- If the request is successful:
- Code: A
Codenode is present, but without its configuration, its exact function in the workflow is unclear. It might be used for custom data manipulation, logging, or error handling. - Sticky Note: A
Sticky Notenode is included, likely for documentation or temporary notes within the workflow.
Prerequisites/Requirements
- External API Account: Access to the API from which invoices are exported (e.g., Smartbill API). This will require an API key or other authentication details configured in the "HTTP Request" node.
- Google Drive Account: A Google Drive account with appropriate permissions to create and upload files. This requires a Google Drive credential configured in n8n.
Setup/Usage
- Import the workflow: Import the provided JSON into your n8n instance.
- Configure Credentials:
- HTTP Request: Update the "HTTP Request" node with the correct URL, authentication (e.g., API key, OAuth), and any necessary headers or body parameters for your invoice export API.
- Google Drive: Set up a Google Drive credential in n8n and select it in the "Google Drive" nodes. Ensure the credential has access to the target folder in Google Drive.
- Configure Nodes:
- Edit Fields (Set): Adjust the "Edit Fields" nodes to correctly parse and prepare the data from your API response for Google Drive upload.
- Google Drive: Specify the target folder in Google Drive and how the file names should be constructed (e.g., using invoice numbers, dates).
- Wait: Adjust the wait duration in the "Wait" node if needed for retry logic.
- Code: If the "Code" node is intended for specific logic, ensure its JavaScript code is configured correctly.
- Activate the workflow: Once configured, activate the workflow.
- Execute the workflow: Manually trigger the workflow using the "When clicking ‘Execute workflow’" node to start the process.
Related Templates
AI multi-agent executive team for entrepreneurs with Gemini, Perplexity and WhatsApp
This workflow is an AI-powered multi-agent system built for startup founders and small business owners who want to automate decision-making, accountability, research, and communication, all through WhatsApp. The “virtual executive team,” is designed to help small teams to work smarter. This workflow sends you market analysis, market and sales tips, It can also monitor what your competitors are doing using perplexity (Research agent) and help you stay a head, or make better decisions. And when you feeling stuck with your start-up accountability director is creative enough to break the barrier 🎯 Core Features 🧑💼 1. President (Super Agent) Acts as the main controller that coordinates all sub-agents. Routes messages, assigns tasks, and ensures workflow synchronization between the AI Directors. 📊 2. Sales & Marketing Director Uses SerpAPI to search for market opportunities, leads, and trends. Suggests marketing campaigns, keywords, or outreach ideas. Can analyze current engagement metrics to adjust content strategy. 🕵️♀️ 3. Business Research Director Powered by Perplexity AI for competitive and market analysis. Monitors competitor moves, social media engagement, and product changes. Provides concise insights to help the founder adapt and stay ahead. ⏰ 4. Accountability Director Keeps the founder and executive team on track. Sends motivational nudges, task reminders, and progress reports. Promotes consistency and discipline — key traits for early-stage success. 🗓️ 5. Executive Secretary Handles scheduling, email drafting, and reminders. Connects with Google Calendar, Gmail, and Sheets through OAuth. Automates follow-ups, meeting summaries, and notifications directly via WhatsApp. 💬 WhatsApp as the Main Interface Interact naturally with your AI team through WhatsApp Business API. All responses, updates, and summaries are delivered to your chat. Ideal for founders who want to manage operations on the go. ⚙️ How It Works Trigger: The workflow starts from a WhatsApp Trigger node (via Meta Developer Account). Routing: The President agent analyzes the incoming message and determines which Director should handle it. Processing: Marketing or sales queries go to the Sales & Marketing Director. Research questions are handled by the Business Research Director. Accountability tasks are assigned to the Accountability Director. Scheduling or communication requests are managed by the Secretary. Collaboration: Each sub-agent returns results to the President, who summarizes and sends the reply back via WhatsApp. Memory: Context is maintained between sessions, ensuring personalized and coherent communication. 🧩 Integrations Required Gemini API – for general intelligence and task reasoning Supabase- for RAG and postgres persistent memory Perplexity API – for business and competitor analysis SerpAPI – for market research and opportunity scouting Google OAuth – to connect Sheets, Calendar, and Gmail WhatsApp Business API – for message triggers and responses 🚀 Benefits Acts like a team of tireless employees available 24/7. Saves time by automating research, reminders, and communication. Enhances accountability and strategy consistency for founders. Keeps operations centralized in a simple WhatsApp interface. 🧰 Setup Steps Create API credentials for: WhatsApp (via Meta Developer Account) Gemini, Perplexity, and SerpAPI Google OAuth (Sheets, Calendar, Gmail) Create a supabase account at supabase Add the credentials in the corresponding n8n nodes. Customize the system prompts for each Director based on your startup’s needs. Activate and start interacting with your virtual executive team on WhatsApp. Use Case You are a small organisation or start-up that can not afford hiring; marketing department, research department and secretar office, then this workflow is for you 💡 Need Customization? Want to tailor it for your startup or integrate with CRM tools like Notion or HubSpot? You can easily extend the workflow or contact the creator for personalized support. Consider adjusting the system prompt to suite your business
Automated YouTube video uploads with 12h interval scheduling in JST
This workflow automates a batch upload of multiple videos to YouTube, spacing each upload 12 hours apart in Japan Standard Time (UTC+9) and automatically adding them to a playlist. ⚙️ Workflow Logic Manual Trigger — Starts the workflow manually. List Video Files — Uses a shell command to find all .mp4 files under the specified directory (/opt/downloads/单词卡/A1-A2). Sort and Generate Items — Sorts videos by day number (dayXX) extracted from filenames and assigns a sequential order value. Calculate Publish Schedule (+12h Interval) — Computes the next rounded JST hour plus a configurable buffer (default 30 min). Staggers each video’s scheduled time by order × 12 hours. Converts JST back to UTC for YouTube’s publishAt field. Split in Batches (1 per video) — Iterates over each video item. Read Video File — Loads the corresponding video from disk. Upload to YouTube (Scheduled) — Uploads the video privately with the computed publishAtUtc. Add to Playlist — Adds the newly uploaded video to the target playlist. 🕒 Highlights Timezone-safe: Pure UTC ↔ JST conversion avoids double-offset errors. Sequential scheduling: Ensures each upload is 12 hours apart to prevent clustering. Customizable: Change SPANHOURS, BUFFERMIN, or directory paths easily. Retry-ready: Each upload and playlist step has retry logic to handle transient errors. 💡 Typical Use Cases Multi-part educational video series (e.g., A1–A2 English learning). Regular content release cadence without manual scheduling. Automated YouTube publishing pipelines for pre-produced content. --- Author: Zane Category: Automation / YouTube / Scheduler Timezone: JST (UTC+09:00)
Monitor bank transactions with multi-channel alerts for accounting teams
Enhance financial oversight with this automated n8n workflow. Triggered every 5 minutes, it fetches real-time bank transactions via an API, enriches and transforms the data, and applies smart logic to detect critical, high, and medium priority alerts based on error conditions, amounts, or risk scores. It sends multi-channel notifications via email and Slack, logs all data to Google Sheets, and generates summary statistics for comprehensive tracking. 💰🚨 Key Features Real-time monitoring every 5 minutes for instant alerts. Smart prioritization (Critical, High, Medium) based on risk and errors. Multi-channel notifications via email and Slack. Detailed logging and summary reports in Google Sheets. How It Works Schedule Trigger: Runs every 5 minutes. Fetch Transactions: HTTP request retrieves real-time transaction data. API Error?: If condition for error logic is met, sends error alert. Enrich & Transform Data: Advanced risk calculation enhances data. Critical Alert?: If condition (50% or risk > 8) is met, raises alert. High Priority?: If condition (5% or risk > 7) is met, raises alert. Medium Priority?: If condition is met, raises alert. Log Priority to Sheet: Google Sheets appends critical, high, or medium priority data. Send Critical Email: HTML email to execute sheets append. Send High Priority Email: Email to finance team. Send High Priority Slack: Slack notification to finance team. Send Medium Priority Email: Email to finance team. Merge All Alerts: Combines all alerts for comprehensive tracking. Generate Summary Stats: Code block for analytics. Log Summary to Sheet: Summary statistics storage. Setup Instructions Import the workflow into n8n and configure the bank API credentials in "Fetch Transactions." Set up Google Sheets OAuth2 and replace the sheet ID for logging nodes. Configure Gmail API Key and Slack Bot Token for alerts. Test the workflow with sample transaction data exceeding risk or amount thresholds. Adjust priority conditions (e.g., 50%, 5%, risk > 8) based on your risk policy. Prerequisites Bank API access with real-time transaction data (e.g., https://api.bank.com) Google Sheets OAuth2 credentials Gmail API Key for email alerts Slack Bot Token (with chat:write permissions) Structured transaction data format Google Sheet Structure: Create a sheet with columns: Transaction ID Amount Date Risk Score Priority (Critical/High/Medium) Alert Sent Summary Stats Updated At Modification Options Adjust the "Schedule Trigger" interval (e.g., every 10 minutes). Modify "Critical Alert?" and "High Priority?" conditions for custom thresholds. Customize email and Slack templates with branded messaging. Integrate with fraud detection tools for enhanced risk analysis. Enhance "Generate Summary Stats" with additional metrics (e.g., average risk). Discover more workflows – Get in touch with us