Send Paige invoices to QuickBooks Online with Zapier or Make
Build the Zap or Make scenario that watches Paige's SFTP export folder, finds or creates the vendor, creates the bill in QuickBooks Online from Paige's extracted fields, and attaches the PDF — so every invoice Paige finishes becomes a bill on its own.
Before you begin
- QuickBooks Online with a user who can create bills and vendors
- A paid Zapier or Make plan that includes the SFTP connector
- An SFTP server Paige can reach, with a folder for this scan job
- A Paige scan job with an invoice document type whose fields include vendor name, invoice number, invoice date, due date, and total
At the end of this guide, every invoice Paige finishes becomes a bill in QuickBooks Online within minutes — vendor matched, dates and total filled, invoice number recorded, and the PDF attached to the bill — with no data entry.
The automation is: SFTP trigger → keep only the data file → read the values → find or create the vendor → create the bill → attach the PDF. Paige uploads the PDF before the data file, so the PDF is always there when the automation fires.
Step 1 — Point Paige at your SFTP server
In Paige, open Settings (the gear at the bottom of the left menu — administrators only), pick the scan job, and choose Export.
Click the FTP card. Enter the FTP Address, Port
22, Username, Password, and in FTP Folder Path a folder for this scan job, such as/paige/invoices.Click Test Connection. What you should see:
FTP connection successful!Connect —Connected to FTP Server!and a green Connected label.Turn on Enable Auto Export. Under Auto Export Settings, pick your invoice type under Document Types, set Auto Field Entry Complete to Yes, and set Human Reviewed to Reviewed — a bill created from a misread total is a bill someone has to fix, so let a person glance at each invoice in Paige first. Click Save.
Open port 22 on your firewall to Paige's address ranges — Outbound IP ranges for firewall allow-lists.
Step 2 — Make sure Paige's fields match what a bill needs
A QuickBooks bill needs a vendor, a date, and at least one line with an account and an amount. Check the invoice document type in Paige has fields for:
| Bill needs | Paige field (name it whatever you like) |
|---|---|
| Vendor | Vendor Name — the name as it appears in QuickBooks' vendor list, or the automation will create a new vendor with the spelling on the invoice |
| Transaction date | Invoice Date |
| Due date | Due Date (optional; QuickBooks applies the vendor's terms if absent) |
| Bill number | Invoice Number |
| Amount | Total |
| Line items | Optional — a line-item field with description, quantity, and amount columns if you want itemized bills |
Values export as text exactly as they appear on the page. The automation converts dates and strips currency symbols.
Step 3 — Build the automation
Zapier
Trigger: SFTP by Zapier → New or Updated File (connection: Host, Username, Port Number 22, Password), folder = the scan job's folder.
Filter by Zapier: File Name (Text) Ends with
.json.Code by Zapier → Run Javascript,
filemapped to the trigger's file:const doc = await (await fetch(inputData.file)).json(); const f = doc.fields; return { pdf_file: doc.metadata.pdf_file, vendor: f["Vendor Name"], invoice_number: f["Invoice Number"], invoice_date: f["Invoice Date"], due_date: f["Due Date"] || "", total: (f["Total"] || "").replace(/[^0-9.\-]/g, "") };
QuickBooks Online → Find Vendor, searching by Name =
vendorfrom step 3. Turn on Create QuickBooks Online Vendor if it doesn't exist yet? so unknown vendors are created instead of failing the Zap.QuickBooks Online → Create Bill (Account Based). Map vendor to the found vendor, Transaction Date to
invoice_date, due_date todue_date, Bill Number toinvoice_number, and one line with account set to the expense account you post invoices to and amount =total. Put the invoice number in memo too; it's handy in reports.SFTP by Zapier → Download File, path = the folder plus
pdf_file.QuickBooks Online → Attach File(s) or Note. Attachment Type File; the record is the bill from step 5; the file is the download from step 6.
Turn the Zap on.
Zapier's Find Vendor matches on the exact name. If your invoices spell vendors inconsistently, keep Human Reviewed on in Paige and have the reviewer correct the vendor field to the QuickBooks spelling — one edit in Paige beats a duplicate vendor in QuickBooks.
Make
SFTP → Watch files in a folder (connection: Host, Port 22, Auth Type Username and Password), pointed at the scan job's folder.
Filter: File name Ends with
.json.SFTP → Get a file, then JSON → Parse JSON on its data. Run once with a real file so Make learns the fields.
QuickBooks → Search Vendors by name; add a router so that if none is found, QuickBooks → Create a Vendor runs first.
QuickBooks → Create a Bill. Map the vendor,
parseDate()of the invoice date and due date, the invoice number as the document number, and one line with your expense account andparseNumber()of the total.SFTP → Get a file with path = folder plus parsed
metadata.pdf_file, then QuickBooks → Upload a File (attachment) linked to the bill from module 5.Set the schedule and turn the scenario on.
Step 4 — Test it
Process one invoice through the scan job in Paige, review it, and wait for the export.
Check the automation's run history: one run, every step green.
In QuickBooks Online, open Expenses > Bills (or Vendors > Bills). What you should see: the new bill with the vendor, dates, bill number, and total from the invoice, and the PDF under Attachments on the bill. Open the attachment — the text is selectable.
Then point the real invoices at it.
When it doesn't work
| Symptom | Where to look |
|---|---|
| The automation never runs | Wrong folder, or files landed in a subfolder. |
| Runs four times per invoice | The .json filter is missing. |
| Create Bill fails on the date | Paige's date text isn't in a form QuickBooks accepts. Convert it (Zapier Formatter → Date/Time → Format, Make parseDate()) to YYYY-MM-DD. |
| Create Bill fails on the amount | A currency symbol or thousands separator slipped through. The Code step above strips them; check the field name matches your Paige field exactly. |
| Duplicate vendors appear | The invoice spells the vendor differently from QuickBooks. Fix the spelling in Paige during review; merge the duplicates in QuickBooks. |
| Bill created but no attachment | The PDF path is wrong — it must be the folder plus pdf_file from the data, not the trigger file's name. |
| Nothing arrives from Paige | Auto-export criteria aren't met (review, field values, document type), or the invoice was processed before you enabled auto export. Export once from the Documents page with Export and tick FTP. |
If the Paige side is the problem, contact Ademero support with the scan job name and the message from Test Connection.
