
Back in January, DocumentSnap reader Jos van de Voort van de Kleij wrote in with a question: How could he use his ScanSnap S1300 to scan directly to his OmniFocus inbox?
Now, despite the writing and podcasting of David Sparks, Ben Brooks, and Merlin Mann, I have not yet taken the plunge and started using OmniFocus. However, I was at Macworld at the time, so I went to the Omni booth to ask for suggestions, and they pointed me to the Omni Forums.
After some great help from the Omni folks, Jos has worked out a workflow that lets him scan to his OmniFocus Inbox. Now, why would he want to do this? Here are his words:
Remember: this workflow allows you to create paperless “ticklers” in OmniFocus therefore eliminating the need for the 43 folders as described in the book by David Allen. As an example you could scan a bill, give it a “pay by” date and it will disappear from your radar until the date comes to pay the bill. You will have the scan of the bill to support preparing the payment. When done you click the action completed and it goes away automatically. Yet another step in going paperless!
Sounds good to me. Here are the steps to get it done.
Set Up The A Folder Action
- Download the OmniFocus Applescript to somewhere on your computer
- Unzip it
- Drop the script into this folder:Macintosh HD>Library>Scripts>Folder Action Scripts
- Find or create a folder that you are going to want to scan/save to
- Right-click on this folder, and select Services>Folder Actions Setup

- Select the “Add files as OmniFocus actions” script

- Click Attach
Now you have a folder where any time a file gets saved there, it automatically gets imported to OmniFocus.
Set Up Your Scanner
Set up your scanner to scan to this folder (in my case I called it “To OmniFocus”).
If you are using a ScanSnap, you can set up a profile for this.
On the Application tab, choose Scan To File (or, if you want to be able to rename it first, Scan To Folder)

On the Save tab, browse to your OmniFocus scan folder that you created earlier.

For the rest of the tabs, set whichever options you prefer.
Scan To OmniFocus!
Once this is all set up, you are good to go. Select your OmniFocus profile, hit Scan, and the Quick Entry window should pop up.

Do whatever you OmniFocus people do there, and hit Save. The task will then be created with your scanned document as an attachment in your OmniFocus Inbox.

Since we’re talking OmniFocus, any other OF devotees out there that have tips or tricks for how they reference their documents from it? Let us know in the comments.
Related posts:














Thanks Brooks for sharing this workflow and crediting me for it.
I share your enthusiasm for Hazel and I use Hazel to clean up the directory I scan the papers to. That makes for a true “set and forget” workflow.
Too bad this only works on a Mac! Or is there somebody out there that has a paperless “tickler” solution for Windows?
Jos
Good point about using Hazel; I forgot to mention that. You will want to have some way to clearing out the To OmniFocus folder because the Applescript leaves the files there. Use Hazel or just manually clean it out every once in a while.
After you pay the bill do you have to manually drag the invoice to your accounting AP folder then? I know QB on the PC lets you attach invoice to check, but not on WB for Mac!. That would be nicer yet, if the PDF of the invoice attached to the Quickbooks check record.
Does anyone know how OF stores the files? Are those files included in the syncs and backups?
I can foresee that syncing OF with multiple devices can become really slow as the database gets filled with these scans (due to increase in file sizes of OF).
Yes, OmniFocus stores the file attachments in your data file and syncs them to other devices.
To keep your syncs fast, configure ScanSnap to scan at a lower resolution, and make sure to use the File > Move Old Data to Archive… feature in OmniFocus to move old, completed actions to a separate, non-synced OmniFocus data file.
Thanks for the confirmation/idea sentience.
I have set a monthly recurring action to do the "Move Old Data to Archive". Keeps the sync with my iPad snappy!
Just tried it with my Scansnap. Works like a charm! Excellent actionscript and setup.
I took care of the old scan file by changing the script to this:
on adding folder items to this_folder after receiving added_items
try
repeat with i from 1 to number of items in added_items
set this_item to item i of added_items
tell application "Finder" to set file_name to (name of this_item)
tell application "OmniFocus"
tell quick entry
open
set NewTask to make new inbox task with properties {name:file_name}
tell the note of NewTask
make new file attachment with properties {file name:this_item, embedded:true}
end tell
activate
end tell
end tell
try
tell application "Finder" to delete this_item
end try
end repeat
end try
end adding folder items to
Works good for me.
Thanks for the update!
Thanks for the tip. It wasn't until I got to the part where it says "◦Download the OmniFocus Applescript to somewhere…" that I started to suspect this might not be a job for Windoze…
If you could mention "This is for Mac users only", it would make your interesting articles a little more user-friendly.
Sorry marcopojp, point well taken. I thought since OmniFocus is Mac only it would be clear, but now that you mention it, I shouldn't assume these things. Will do in the future.
I’m having trouble with multi-page documents. The folder action seems to get triggered by the scan of the first page, so by the time my ScanSnap is sucking in the second page, OmniFocus already has its Quick Entry window open asking me what to do with the first page.
Hazel is smarter than folder actions about not processing files until they have been closed by the creating process, but the AppleScript provided doesn’t work with Hazel. It’s written specifically to run as a folder action.
A work-around is to have ScanSnap drop the file in one folder and have Hazel move it (after 1 minute) to a second folder, to which you attach the Folder Action script. The 1 minute delay is pretty annoying, but it works.
Any ideas on how to improve on this?
Even better solution: use Automator to create an Application that contains a single Run AppleScript action, with the following code:
on run {input, parameters}
if (class of input) is not equal to list then set input to {input}
try
repeat with i in input
tell application "Finder" to set file_name to (name of i)
tell application "OmniFocus"
tell quick entry
open
set NewTask to make new inbox task with properties {name:file_name}
tell the note of NewTask
make new file attachment with properties {file name:i, embedded:true}
end tell
activate
end tell
end tell
end repeat
end try
return input
end run
Save this in your Applications folder, then set up your ScanSnap Manager profile to scan and open the file with the application you just created. Works perfectly (and instantly!) for me. No need for Folder Actions or Hazel (except to tidy up the scanned files if you want to).
Thanks for this sentience! I'm sure it'll be helpful.
I have tried this Automator script today and it seems to work better than the method Brooks based this blog post on.
I am amazed to see how many people have taken on to this. I never realized so many other people struggled with this issue. The scan to Omnifocus has been a part of my workflow for a couple of months now and it surely helps to keep my office (almost, 99%) paperless!
Thanks for the report Jos, and thanks for the post inspiration!
Thanks so much for is article! Is there anyway to automate the process so that one does NOT need to press the save button when the omnifocus quick entry dialogue box appears? I ask because fully automating the process would allow one to drop a file using dropbox on my work windows pc,, leave my iMac running at home to create the omnifocus task and attachment, and sync via mobile me to my iPad omnifocus version that i have with me at work. Currently I have to remotely log into my iMac to press the save button!
Many thanks for this ! I am trying to improve means of direct input to OmniFocus and the omnifocus input folder is great…. Just tried it and works fine.. ! I had to create the "Folder Action Scripts" folder which was not there….
Great Donald, glad it worked.