Generate PDF Invoices from Airtable with ComposeIt
Automatically generate professionally styled PDF invoices directly from your Airtable records using ComposeIt.
Automatically generate professionally styled PDF invoices directly from your Airtable records. This guide walks you through connecting Airtable’s Order Tracking & Invoicing base to ComposeIt, mapping live record fields into dynamic template variables, and preparing auto-named PDF attachments for your workflow.
1. Create a New Invoice Template in ComposeIt
Start by creating a new document in ComposeIt using the built-in Invoice template.
- Navigate to Templates in the left sidebar and click Create Template.
- Name your template (e.g.,
Invoice 1), set the type to Document, and select the Invoice 1 layout under the starter choices. - Click Create Template.
2. Preview the Default Data Source and Canvas Layout
When you open the new template, ComposeIt loads dummy data sources (invoice, company, product) to help you preview layout rendering immediately.
- Click the Data Sources tab on the left sidebar to inspect the default collections and test records.
- Switch to the Preview (PDF Viewer) mode to see how mock variables render into a final page.
- Select elements on the canvas to see default variable bindings, such as
{{number}},{{date}}, and line item collections.
3. Set Up Your Base in Airtable
Next, prepare your data base in Airtable.
- Create or open an Airtable base using the standard Order Tracking & Invoicing template.
- Open the Invoices table.
- Add a new field named
Invoice PDFswith the type set to Attachment. ComposeIt will use this column to store generated PDF documents back to Airtable.
4. Connect ComposeIt to Airtable
Now, replace the dummy template collections with your live Airtable data source.
- In ComposeIt, navigate to Data Sources.
- Delete all existing default collections (
invoice,company,product). - Once empty, click Connect to Airtable.
- In the configuration modal:
- Select your Airtable Connection.
- Choose the Order Tracking & Invoicing base.
- Select the Invoices table.
- Click Save Configuration.
Once connected, ComposeIt instantly fetches live records from your base into the preview table.
5. Configure Dynamic PDF File Naming
To ensure generated documents stay organized, configure a dynamic file naming pattern based on Airtable record IDs or Invoice numbers.
- Open Settings (gear icon) in the left toolbar.
- Under Name Pattern, enter your dynamic binding string:
{{[Invoice ID]}} - ComposeIt will automatically name each generated file using the record's unique ID when exporting.
6. Map Airtable Fields to Canvas & Clean Up
Now, map the live Airtable fields to replace the template's placeholder variables and clean up unused visual elements.
- Select text elements in the canvas and bind them to your new Airtable fields:
- Invoice Number:
{{Invoice #}} - Invoice Date:
{{Invoice Date}} - Due Date:
{{Invoice Due Date}} - Client Info:
{{Client.Client}}and{{Client.Billing Contact}} - Line Items Table: Map
{{Task}},{{Notes}},{{Total Hourly Rate}},{{Billable Hours}}, and{{Invoice Amount}}.
- Invoice Number:
- Remove unneeded elements:
- Select the Signature block at the bottom right of the template and delete it.
7. Dynamic Logo & Asset Sizing
Make your invoice header dynamic by linking the brand logo directly to your Airtable attachment record:
- Select the logo image on the canvas and set its fixed width to
200px. - Open the image properties and bind the
srcfield dynamically to the Airtable attachment thumbnail path: (Choose whichever thumbnail size fits best for your document resolution).Logo.thumbnails.small.url
8. Apply Table Sorting & Filtering Logic
Refine how line items display within your invoice table by applying conditional rules:
- Select your line-items table element and click Edit Logic (or open the collection logic modal).
- Under Sorting, add a rule to sort tasks by
Taskin Ascending order. - Under Filter, add a condition to only display billable or completed line items (e.g.,
CompletedisTruthy).
9. Preview with Real Base Records
Switch to Preview Mode (PDF Viewer) to evaluate how live Airtable records populate your template layout.
Tip: You can quickly customize fonts, brand accents, and table background styles by opening the Themes tab on the left sidebar.
10. Publish & Generate Airtable Formula Link
Once your design is ready, publish the template and create a trigger URL for Airtable:
- Click Publish in the top-right corner.
- Go to Data Sources and Setup Integration.
- In the modal, switch to the Formula Button Link tab.
- Set Attachment Field to
Invoice PDFs. This instructs ComposeIt to upload rendered PDFs directly back into Airtable. - Click Copy Link to copy the generated Airtable formula.
You can also use the automation script to setup automations in Airtable but for the example we'll keep it simple
11. Create the Trigger Button in Airtable
- Open your Order Tracking & Invoicing base in Airtable and select the Invoices table.
- Add a new column with field type Button.
- Set Label to
Generate, Style to Solid purple, and Action to Open URL. - Paste the copied formula into the URL formula field and click Create.
12. Generate, Download, & View PDF Attachments
- Click Generate on any row inside Airtable.
- You will be redirected to the ComposeIt Outputs page showing generation status (
Ready), where you can download the PDF file directly. - Because the attachment destination was configured, ComposeIt automatically attaches the rendered PDF back into the
Invoice PDFscolumn in Airtable. - Click on the attachment thumbnail in Airtable to view your rendered document inline!
More Document Ideas for this Base
Using the remaining tables in the Order Tracking & Invoicing base (Design Projects, Tasks, Clients), here are additional document automations you can build:
1. Client Overview & Onboarding Sheets (Clients Table)
Generate single-page executive summaries for new or existing clients. Pull contact details, active billing terms, and linked project histories into a clean PDF backgrounder.
2. Task Activity & Time Tracking Audits (Tasks Table)
Build automated timesheets for client sign-off. Filter tasks by completion status, calculate total billable hours, and export itemized work logs for external auditing.
3. Project Progress Reports with Grouped Data (Design Projects Table)
Create multi-page project status reports by iterating through design projects and grouping associated deliverables by phase or status (In Progress, In Review, Completed).
To learn how to group nested table items into categorized sub-sections, see our guide on Grouping Data.
Fibery
Connect ComposeIt with Fibery to dynamically generate documents and invoices from your database records.
Automated Certificate Generation with Zapier & Google Sheets
Learn how to automatically generate personalized PDF certificates and collect e-signatures using Google Sheets, ComposeIt, DocuSeal, and Zapier.