Split batched invoice PDFs into Airtable records

By General Input

When someone drops a multi-invoice PDF into your Airtable intake table, automatically split it into one record per invoice in your accounting base.

Integrations

  • Airtable
  • PDF.co

Type

Deterministic Code

Categories

  • Finance
  • Operations

Build a deterministic, code-based workflow that splits batched multi-invoice PDFs into one record per invoice in Airtable. No agent reasoning is needed; every step is fixed.

Trigger: Airtable poll on the 'new_record' event against a 'Batch Uploads' table in a base I will pick at setup. The operator drops a single PDF attachment into a row; that row firing the trigger is the start of the workflow.

Step 1. From the new Airtable record, read the first attachment URL on the PDF field (call the field 'Batch PDF' by default, but let me reconfigure it). Also capture the record id so we can back-link later, plus any pass-through columns I select (for example Supplier, Date Received, Uploaded By).

Step 2. Call PDF.co's 'Split PDF by Text Search or Barcode' operation with that attachment URL. Expose two configuration knobs at setup: (a) the delimiter type, either text search or barcode, and (b) the delimiter value, defaulting to the literal text 'Invoice #'. The result is an array of one PDF URL per detected invoice segment.

Step 3. Fan out over the returned segments. For each segment URL, create one record in a child 'Individual Invoices' table via Airtable's 'Create Records' operation. On each child record set the split PDF URL as an attachment field (default field name 'Invoice PDF'), link the record back to the parent batch row via a linked-record field (default name 'Batch'), and copy through any pass-through columns selected in Step 1. Batch the create calls in groups of ten because Airtable accepts up to ten records per create call.

Edge cases to handle deterministically: if PDF.co returns only one segment (no delimiter matches found), still create exactly one child row pointing at the original PDF so the batch is not silently dropped. If PDF.co returns an error, surface it on the batch row in a 'Status' or 'Error' field rather than failing the whole run silently.

Setup variables to expose: Airtable base id, Batch Uploads table id, Individual Invoices table id, Batch PDF attachment field name, Invoice PDF attachment field name, Batch back-link field name on the child table, optional pass-through field list, PDF.co delimiter type (text or barcode), and PDF.co delimiter value.

This is the 'code' workflow type because the pipeline is fully fixed: trigger, read URL, split, fan-out create. No model reasoning required.

Related prompts

Explore more prompts
Chase the paperwork every new client and vendor still owesCreator roster board for rebook, test, or pause callsRun your nutrition clients' weekly meal plans from one consoleInstagram UGC rights tracker and repost approval boardA verification desk for every document your team scansBrowse and shortlist creators without burning audit creditsGlobal operations exposure map for your sites and suppliersDeal sourcing kanban board for your Harmonic saved searchesProof client shoots and hand off the delivery album in one placeField service dispatch board that ranks the closest tech