Skip to content

Import drafts on the Mac

With the .bcddrafts file on your Mac (AirDrop leaves it in Downloads), do any of these:

  • Drop the file on the app window.
  • In the Journal, click Import Drafts from iPhone (the tray icon next to +).
  • Choose File ▸ Import Drafts… (⌥⌘I).

You can import several files at once.

There is no inbox and no intermediate screen. Each draft is written straight into your ledger, exactly as if you had added it with the transaction dialog: in the file for its year, in date order, aligned like the rest.

When it finishes, a message sums it up: “Added 7 transactions to the ledger. 2 were incomplete and are marked pending (!) in the Journal. 3 had already been imported.” If any draft was rejected, it says how many and why. The app switches to the Journal, and one commit records the whole import, for example Add 7 transactions, under the usual rules.

Review where you review everything else:

  • Journal — the new transactions are there; double-click one to adjust it.
  • History — the import is a single commit; its diff is the complete list of what was added. If something went badly wrong, Undo in the commit toast takes the commit back.
  • Editor — for anything the dialog cannot do.

A draft is complete when it has at least two accounts and at most one empty amount. Complete drafts are written as they are.

Incomplete drafts are written too, so nothing you noted down is lost:

  • They get the ! flag, so they stand out in orange in the Journal.
  • An amount that has no account cannot be a posting. It goes into the description instead: Café (2.40 EUR).
  • A draft with a single account and an amount does not balance, so it shows up in Errors, which takes you to its line.

Because such an import leaves Beancount errors, the commit is not automatic: the Commit sheet asks first. A comfortable routine is to choose Don’t Commit, complete the pending transactions from the Journal, and let the next save commit everything.

Every draft carries a unique identifier, and the app remembers which ones it has written into each ledger. Importing the same file again — or a newer file that still contains old drafts — writes nothing twice.

Drafts that were rejected (Beancount could not make sense of them at all) are not marked as imported, so you can fix them on the phone — by duplicating them — or import them again later.

That memory is kept in the app’s preferences for that ledger. It is not written to your files.