Luca Snow -
An Accounting System for Mac OS X Snow Leopard Users

Luca Snow runs on Mac OS X Snow Leopard 10.6.x.

It takes advantage of new Snow Leopard programming features, e.g., concurrent parallel processing, and it's been built on top of the stability provided by previous versions of Luca that have been downloaded and used by so many people all over the world, over the last five years.

OS X Lion Note: Luca for Lion is now available.

Please purchase a serial number to support Luca. Note that no refunds will be given. Luca will do exactly as described on this page and on the Luca manual. If a feature is not highlighted here, you can safely assume that it is not yet supported.

The serial number & download link will be displayed in your browser after payment and will also be sent to you via email.

To download Luca Snow, please provide the email address you used to purchase Luca Snow and its serial no.:

The latest version is 3.0.4
Includes support for handling multi-lingual data entry and search. Please check the Release Log.

For help, please contact
Luca Support.

Check out the
Luca Snow
Owner's Manual

Snow Leopard Notes

There is a new feature to create recurring vouchers easily.

Existing users upgrading from Luca Snow 3.0.1 or earlier versions will have to import data from their previous Luca database. Refer to the Luca Snow Manual on how this is done.

Luca Snow will only run on Mac OS X Snow Leopard 10.6.

What is Luca?

Luca is an accrual-based accounting system that runs on OS X. It has the ability to handle real-time double-entry postings and multiple currencies, yet we try to make it very easy to use, so that it will require minimal accounting knowledge to operate. It is designed for small and medium-sized enterprises.

Luca's Design Objectives

"The task of the accounting profession, in relation to intangible assets and knowledge-based enterprise, is less about counting than it is about giving an account - telling the story of both tangible and intangible assets in meaningful ways, for both managers and markets." - Accounting for Knowledge Management.

The primary aim of an accounting system should be to help its users understand the financial information better. And we believe there's no finer platform for understanding information design than the Mac.

So we're trying to take advantage of all the wonderful user-interface design technology that is available on a Mac to provide Mac users with an inexpensive, easy-to-use accounting system that has most of the standard accounting features (e.g., double-entry, multi-currency, real-time P&L reporting, the ability to drill down and verify the source of any piece of data), and yet is still recognisably Mac-like in concept and navigation.

We take advantage of multiple windows to allow the user to focus on more-manageable pieces of information at a time, while providing the ability to drill down into the details or bring up related information with just one click. And we take advantage of a Cocoa application's ability to keep all its windows synchronised when you make changes in any piece of data.

Luca also exploits the relational nature of the underlying database to allow the user to analyse the data from any angle – for example, by starting at the Profit and Loss Statement and drilling down to the specific transactions that made up an account, or by starting at a specific transaction (say, an invoice) and looking up all the payment transactions, comparing them against the debtor’s credit history.

Luca has been built on very strong foundations. It has an open architecture, which allows users to choose which database they want to use to store the accounting data. Luca works with the SQLite database, by default, but users can choose to use it with MySQL or PostgresSQL.

Also, Luca is written in Objective-C and can be used as an embedded database in mission-critical applications, e.g., in CRM (Customer Relationship Management) or insurance systems.

Therefore, the way we've envisaged it, a user can begin to use Luca in a non-critical, entry-level setting. And we're hoping to make the data entry as streamlined as a Personal Financial Management Tool. Then if Luca proves to be useful, the user can look forward to exploiting the built-in scaleability of Luca's double-entry engine to handle the accounting requirements of even a large scale business.

The schedule for Luca Snow's development is to add features like Inventory and Time Billing, and a feature for importing invoices to create associated vouchers automatically, etc.

Other Features

Recurring Vouchers

Recurring vouchers can be created for General Vouchers, Cash Receipts or Disbursements, and Receivables or Payables.

Parameters can be set to repeat a voucher daily, weekly, monthly or yearly over a number of periods. Vouchers can also be set to repeat at intervals, e.g. at a bi-weekly or 6-monthly interval.

Printing and Exporting

The listings e.g. Chart of Accounts, Trial Balance, Journals and Statement of Accounts, etc. can be printed, saved as a PDF file or exported so that you may format it in your preferred spreadsheet application.

Currency Formats

Currency display formats and decimal number precision can be set for individual currencies (e.g., the Japanese yen has no decimal places and you can set this, as shown below, by setting Max fraction digits to 0) :

Fast Start

Luca is designed to make it very easy for novice users to establish an accounting system. When first launched, Luca lets you choose to create an initial example of Chart of Accounts and Vouchers, or to create a minimum Chart of Accounts to start using Luca. The Chart of Accounts and Vouchers can be modified as needed.

If you are already a Luca user, there is an import function for importing data from your previous Luca versions.

Note: There are some changes to the Luca Snow file structure from the previous Luca versions. Existing Luca users will have to use this import button to import their data to the new file structure.

The Luca Snow Manual

There is a Luca Quick Start Manual that will use the Demo Chart of Accounts as an example of how you could go about using Luca. You can go to work immediately by following the examples in the Manual.

The Manual describes one month's worth of accounting data that's already been entered into the system. The Manual takes you from the initial setup to the various transactions, based on a variety of scenarios.

The Luca Snow Manual can be found here.

Release Log

3.0 31st March 2010. Luca for Snow Leopard released. This is a break from the previous Tiger & Leopard-compatible releases because, from this version on, we're using Snow Leopard-only Cocoa APIs (application programming interfaces) to take advantage of new Snow Leopard features, e.g., to make better use of the multiple CPUs in modern-day Macs to process as many tasks in parallel as we can. This is the platform that we'll build all future enhancements on. Most of the changes in Luca 3.0 are "under the hood" - there are lots of bug fixes and closing of memory leaks. But a couple of changes are visible at the GUI - 1) invoices can be printed for accounts receivables and, 2) the bug at Print Preview when viewing thumbnails has been fixed.

3.0.1 4th April 2010. Fixed a problem in updating vouchers when the System Preferences Date Format was set to certain localities, e.g., German or Chinese format (a problem introduced when switching to Snow Leopard 10.6.3 APIs but now Luca works a lot more smoothly when dealing with locality changes, e.g., if you switch locale to Chinese, the dates all show Chinese characters, in Chinese-preferred formats, and yet they still sort correctly when displayed in tabular formats). Also fixed a problem where Luca wasn't able to list every single voucher record when used with SQLite as the database (Luca worked correctly with MySQL and PostgreSQL databases).

3.0.2 4th May 2010. There's a sizeable number of improvements with this release.

Added the ability to generate recurring vouchers. The vouchers can be configured to repeat daily, weekly, monthly or yearly over any number of periods. They can also be set to repeat at specified intervals, e.g. bi-weekly or 6-monthly. Note: To support this new feature, the Luca database structure needed to be modified. Existing Luca users will need to re-import their old Lucadb to fit into the new table structure.

Exporting a Lucadb from SQLite to MySQL or PostgreSQL has also been improved. Luca now takes care of creating a new database to store Lucadb automatically if one does not already exist in MySQL or PostgreSQL.

This Luca 3.0.2 release also fixed a bug that caused vouchers to be duplicated when vouchers were modified when accessed through "Show Payment History" or "Account Postings".

Finally, account closing is now done on a separate thread to take advantage of Snow Leopard's ability to spawn work off to separate processors in a multi-core cpu Mac. So, even when Luca is closing the accounts with a very large number of records, the Luca interface remains responsive to the user and the beach ball doesn't appear, so that the user won't mistakenly think that the system has frozen while it's still processing the records.

3.0.3 10th June 2010. This is a minor update with bug fixes. The extension of files exported with comma-separated values has been changed from cvs to csv. A crash that occurred while performing account closing or batch posting with other windows opened has been fixed. This release also fixed a bug that caused a discrepancy in the closing balance of a header account when the account's opening balance is updated manually.

3.0.4 6th July 2010. This version includes support to handle text in any language.


• Chart of Accounts
• Unlimited levels
• Easily re-ordered
   thru (Control-)drag    and drop

• Double-entry
• Real-time Postings
• Real-time P&L
• Can drill down into
• Makes it easy to

• Tracks Sales,
• Allows partial
   payment of
• Allows off-setting
   between invoices
   of same account

• Multi-Currency
• Billing, Settlement,
   & Base Currencies
   can be different
• Calculates Forex

• Statement of
   Accounts and
   Aging Analysis can    be generated at
   any time and for
   any period
• Can manage
   Budget against
   Accounts, e.g.,
   expenses & rental
• Can set up
   separate cost
   centres    consolidate them
   for reporting

• Transactions can
   be entered for new
   month without
   waiting for
   previous month to
• Accounts for
   previous month
   can be re-opened
   and balances are
   auto-updated on


Essentials of Accounting by Robert N. Anthony - the best guide to learning accounting

The Accounting Game
Basic Accounting Fresh from the Lemonade Stand

MySQL & PostgreSQL
Luca works with a built-in SQLite database. It can also work with PostgreSQL and MySQL databases.

There is a companion application, called Liya Snow, whose web page contains links to our one-cick MySQL and PostgreSQL installers. You can export Luca's database to MySQL or PostgreSQL using Luca's Preferences pane.

Luca for the iPhone

Liya for the iPhone