Moneydance URI Scheme

Functions Accessible via the Moneydance URI Scheme

The following features can be invoked by calling the showURL method of the extension context from within Moneydance:

For commands that use query parameters, parameter values should be UTF-8 URL-encoded. In particular, reserved URI characters such as &, ?, #, %, and + should be encoded when they are part of a parameter value rather than acting as URI syntax. For example, category=Food & Drink should be encoded as category=Food%20%26%20Drink.

Timing: Most commands that open a window (for example showreport, showprefs, importfile) wait until the Moneydance window is ready and are then queued on the GUI thread, so showURL() returns before they have run. setstatus, remindershome, netsync, exit and fmodule: run straight away on the calling thread; netsync does not return until the download has run, so do not call it from the GUI thread.

Constructing Moneydance URIs Programmatically

When constructing Moneydance URIs programmatically, consider using URLUtil#getMoneydanceURL(), which automatically performs UTF-8 URL encoding of parameter names and values.

from com.moneydance.apps.md.controller import URLUtil
from java.util import Map
url = URLUtil.getMoneydanceURL("importprompt", Map.of("file", "/tmp/Food & Drink.qif"))
result: moneydance:importprompt?file=%2Ftmp%2FFood+%26+Drink.qif
essential