BlogHow to Parse Invoices in Make (Formerly Integromat) — No Code Required

How to Parse Invoices in Make (Formerly Integromat) — No Code Required

2026-06-05 · 6 min read

Make (formerly Integromat) is a visual workflow automation tool that connects apps and APIs without requiring code. If you receive invoices by email and want them automatically extracted and routed to a spreadsheet, accounting software, or internal system — this guide shows how to build that workflow from scratch.

No programming required. Total setup time: 20–30 minutes.

0
code required
5
steps to automate
~3s
extraction time
Free
to start
Your completed Make scenario
📧
Gmail Trigger
New email with attachment
🔗
HTTP Request
DocuParseAPI extract
📊
Google Sheets
Append row with data
Prerequisites

What You'll Need

  • A Make account (free tier works for testing — make.com)
  • A DocuParseAPI account — free at docuparseapi.com/signup, 20 documents/month, no credit card
  • A destination for the extracted data (Google Sheets, Airtable, Xero, or any app Make supports)
Overview

The Workflow We're Building

text · 11 lines
Email arrives with PDF invoice attachment
          ↓
Gmail / Email module detects the attachment
          ↓
HTTP module calls DocuParseAPI with the PDF
          ↓
JSON response is parsed
          ↓
Structured data written to Google Sheets
          ↓
Optional: Slack notification sent

Step 1

Step 1 — Create a New Scenario in Make

  1. Log into Make and click Create a new scenario
  2. You'll see a blank canvas with a prompt to choose your first module

Step 2

Step 2 — Add the Email Trigger

If your invoices arrive by email:

  1. Search for and select Gmail (or your email provider)
  2. Choose Watch Emails as the trigger
  3. Connect your Gmail account when prompted
  4. Configure the trigger:
    • Folder: INBOX (or a dedicated AP folder)
    • Criteria: Only emails with attachments
    • Maximum number of results: 10 (adjustable)

If you want to trigger manually for testing: Use the Manual trigger (clock icon) while building and switch to email later.


Step 3

Step 3 — Add the HTTP Module (DocuParseAPI Call)

H
HTTP
Make a request
URLhttps://docuparseapi.com/api/v1/extract
MethodPOST
Header — NameAuthorization
Header — ValueBearer YOUR_API_KEY
Body typeMultipart/form-data
Field Keyfile
Field Value[attachment Data field from trigger]
Parse responseYes ✓
↑ Configure your HTTP module exactly like this

This is the core of the workflow. The HTTP module sends your invoice file to DocuParseAPI and returns the extracted JSON.

  1. Add a new module after the email trigger
  2. Search for HTTP and select Make a Request
  3. Configure it as follows:

URL:

text · 1 line
https://docuparseapi.com/api/v1/extract

Method: POST

Headers: Click Add item and add:

  • Name: Authorization
  • Value: Bearer YOUR_API_KEY_HERE

(Replace YOUR_API_KEY_HERE with your actual key from the DocuParseAPI dashboard)

Body type: Multipart/form-data

Fields: Click Add item:

  • Key: file
  • Value: Click the file icon and map to the attachment from the email trigger (Attachments[] > Data)
  • Content type: application/octet-stream

Parse response: Toggle this to Yes — this tells Make to parse the JSON response automatically so you can map the fields in later modules.


Get your DocuParseAPI key to complete this scenario.
20 documents/month — free forever. No credit card. Add your key and the scenario runs.
Step 4

Step 4 — Map the Extracted Fields

After adding the HTTP module, run the scenario once with a test email to populate the response structure. Make will show you all the available fields from the API response:

text · 12 lines
data.merchant
data.total
data.tax
data.currency
data.date
data.due_date
data.invoice_id
data.payment_method
data.line_items[]
  data.line_items[].description
  data.line_items[].quantity
  data.line_items[].amount

Step 5

Step 5 — Write to Google Sheets

  1. Add a Google Sheets module after the HTTP module
  2. Choose Add a Row
  3. Connect your Google account
  4. Select your spreadsheet and sheet
  5. Map the columns to the extracted fields:
Spreadsheet Column Map to
Vendor data.merchant
Invoice # data.invoice_id
Date data.date
Due Date data.due_date
Currency data.currency
Total data.total
Tax data.tax

Your invoice spreadsheet now fills itself automatically every time a new email arrives.


Troubleshooting

Step 6 — Handle Extraction Failures

Not every PDF will extract successfully. Add error handling before the Google Sheets step:

  1. Add a Router module after the HTTP module
  2. Create two routes:
    • Route 1: Filter condition: data.success = true → proceed to Google Sheets
    • Route 2: Filter condition: data.success = false → send a Slack message or email alert

Slack notification for failures:

text · 4 lines
Invoice extraction failed.
File: {{1.attachments[].filename}}
Error: {{3.data.error.code}}
Please review manually.

See what the API returns before configuring Make
Upload a PDF invoice and see the exact JSON fields you'll map in your Make scenario.
Open Live Demo →
Free tier · 20 documents/month — free forever · No credit card · No account needed for the demo
Reference

Complete Module Configuration Reference

HTTP Module Settings

text · 10 lines
URL: https://docuparseapi.com/api/v1/extract
Method: POST
Headers:
  Authorization: Bearer [your API key]
Body Type: Multipart/form-data
Fields:
  Key: file
  Value: [mapped from email attachment Data field]
  Content-Type: application/octet-stream
Parse Response: Yes

Router Conditions

Success route:

text · 1 line
Condition: {{3.data.success}} Equal to true

Failure route:

text · 1 line
Condition: {{3.data.success}} Not equal to true

(The 3 refers to the HTTP module's step number — adjust if your scenario has a different numbering)


Sending to Xero Instead of Google Sheets

Replace the Google Sheets module with an HTTP module calling the Xero API, or use Make's native Xero module:

  1. Add a Xero module
  2. Choose Create Invoice (this creates a payable bill)
  3. Map the fields:
    • Contact Name: data.merchant
    • Invoice Number: data.invoice_id
    • Date: data.date
    • Due Date: data.due_date
    • Total: data.total
    • Currency Code: data.currency

Make's Xero module handles the authentication; you just connect your Xero account.


Alternative Trigger: Google Drive

If invoices are dropped into a Google Drive folder rather than emailed:

  1. Replace the Gmail trigger with Google Drive > Watch Files in a Folder
  2. Set the folder to your invoice intake folder
  3. The rest of the workflow is identical — map data (the file content) to the HTTP module's file field

Testing Your Workflow

  1. Click Run once in Make while in the scenario editor
  2. Send a test email with a PDF invoice to your Gmail
  3. Make will process one email and show you the data at each step
  4. Check the HTTP module output to see the full API response
  5. Check Google Sheets to confirm the row was created

If the HTTP module shows an error:

  • Verify your API key is correct (check the DocuParseAPI dashboard)
  • Confirm the attachment is being mapped correctly — it should be binary data, not a URL
  • Check that Parse Response is set to Yes

Monthly Cost

  • Make free tier: 1,000 operations/month (each module execution = 1 operation; a 3-module workflow uses 3 per invoice)
  • DocuParseAPI free tier: 20 documents/month, no credit card
  • For higher volume: DocuParseAPI Starter at $14.99/month covers 3,000 documents

At 100 invoices/month, the Make Core plan ($9/month) plus DocuParseAPI free tier (or $14.99/month if over 20) is well under $25/month total.


Next Steps

Make · HTTP Module · No Code Required

Your Make scenario is one API key away from working.

20 documents/month — free forever. No credit card. Set up in 5 minutes.

More from the blog