<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE chapter SYSTEM "gnc-docbookx.dtd">

<!--
    (Do not remove this comment block.)
    Version: 3.5
    Last modified: March 30th 2019
    modified: April 15th 2007
    modified: August 12th 2006
    modified: February 28th 2005

Maintainers:
  Frank H. Ellenberger
  Chris Lyttle <chris@wilddev.net>
  Neil Williams <linux@codehelp.co.uk>

Author:
  Chris Lyttle <chris@wilddev.net>
  Translators:
(translators put your name and email here)
-->

<!--
    Common Transaction Operations Items Here !!!
-->

<chapter id="ch_Common_Trans_Ops">
  <title>Common Transaction Operations</title>

  <para>A <emphasis>transaction</emphasis> represents the movement of money from one account to another account. Whenever you spend or
  receive money, or transfer money between accounts, that is a transaction. In <application>&appname;</application> transactions always involve
  at least two accounts.</para>

  <para><application>&appname;</application> uses accounts as a way of grouping or organizing the recording of transactions.
  This section describes the methods <application>&appname;</application> has to help enter transactions
  quickly into the register. </para>
  <para></para>

  <para><application>&appname;</application> has several methods available for entering transactions.</para>

  <itemizedlist>
    <listitem>
      <para>Entering directly into the register window is the most common way of entering transactions.</para>
    </listitem>

    <listitem>
      <para>Using the <guilabel>Transfer Funds</guilabel> window .</para>
    </listitem>

    <listitem>
      <para>Importing transactions either from a file or via on-line banking.
      </para>
    </listitem>

  </itemizedlist>
  <!--
      <note>
      <para>Where should the Importing of data from downloaded files" and "On-line" banking be covered?.
      </para></note>
  -->

  <sect1 id="trans-win-enter">
    <title>Transfer Funds Dialog Box</title>
    <para>The <guilabel>Transfer Funds Dialog Box</guilabel>, accessed
    via <menuchoice><guimenu>Actions</guimenu>
    <guimenuitem>Transfer...</guimenuitem></menuchoice> or its
    shortcut or by pressing the <guibutton>Transfer</guibutton> icon
    from the account register tab, serves two purposes in
    <application>&appname;</application>: <itemizedlist><listitem><para>A way to
    create a simple (i.e. two-split) transaction between arbitrary
    accounts.</para></listitem> <listitem><para>Collect exchange rate or amount
    information in a multi-currency transaction (see <xref
    linkend="trans-currency-enter"/>).</para></listitem></itemizedlist>
    </para>
    <note><para>The <guilabel>Basic Information</guilabel> and
    <guilabel>Transfer Accounts</guilabel> panes will be disabled in
    the <guilabel>Transfer Funds</guilabel> dialog when it is being
    used only to collect exchange rate or amount
    information.</para></note>
    <sect2><title>Basic Information</title>
    <para> The Basic Information section collects the entries for
    constructing a transaction: Date, description, amount, etc.</para>
    <itemizedlist>
      <listitem><para><guilabel>Amount:</guilabel> The amount of the transaction in the <guilabel>Transfer From</guilabel>account's commodity.</para></listitem>
      <listitem><para><guilabel>Date:</guilabel> The posting date for the
      transaction, i.e. the date that you want to record it in your
      book.</para></listitem>
      <listitem><para><guilabel>Num:</guilabel> A reference number for the
      transaction, often a check number.</para></listitem>
      <listitem><para><guilabel>Description:</guilabel> The description of
      the transaction, often the payer or payee.</para></listitem>
      <listitem><para><guilabel>Memo:</guilabel> Additional information you
      might want to note about the transaction. Anything entered here
      will be added to the <guilabel>Memo</guilabel> fields of
      <emphasis>both</emphasis> splits.</para></listitem>
    </itemizedlist>
    </sect2>
    <sect2><title>Transfer Accounts</title>
    <para>The <guilabel>Transfer From</guilabel> and
    <guilabel>Transfer To</guilabel> tree views are used to select the
    accounts which will participate in the transaction. They normally
    show only Asset and Liability accounts. If you need to use an
    Income or Expense account in one of them, check the <guilabel>Show
    Income/Expense</guilabel> checkbox below the appropriate
    view.</para>
    <itemizedlist>
      <listitem>
        <para>Choose the <guilabel>Transfer From</guilabel> account.</para>
      </listitem>

      <listitem>
        <para>Choose the <guilabel>Transfer To</guilabel> account.</para>
      </listitem>
    </itemizedlist>
    </sect2>
    <sect2 id="trans-win-price"><title>Currency Transfer</title>
    <para> The <guilabel>Currency Transfer</guilabel> pane is used to
    collect the needed information to enter the amount of the
    <guilabel>Transfer To</guilabel> split. You may enter either a
    price or an amount and <application>&appname;</application> will
    compute the other. If you have Online Price Retrieval installed
    (see <xref linkend="Online-price-setup"/>) you can use the
    <guilabel>Fetch Rate</guilabel> button to retrieve a current
    quote.</para>
    <para>The <guilabel>Currency Transfer</guilabel> pane is enabled
    only if the selected accounts use different commodities or the
    <guilabel>Transfer Funds</guilabel> dialog was launched to collect
    price or amount information from editing a transaction in the
    register. </para>
    <para>The <guilabel>Currency Transfer</guilabel> pane is organized
    as a radio group with two selections, <guilabel>Exchange
    Rate</guilabel> and <guilabel>To Amount</guilabel>. Each consists
    of a radio button and a numeric entry.</para>
    <para> If a relevant price is available in the price database (see
    <xref linkend="invest-stockprice-manual"/>) the <guilabel>Exchange
    Rate</guilabel> will have that as a default entry.</para>
    <itemizedlist>
      <listitem><para>Select the <guilabel>Exchange Rate</guilabel> radio
      button if you want to enter a price or use the <guilabel>Fetch
      Rate</guilabel> button.</para></listitem>
      <listitem><para>Select the
      <guilabel>To Amount</guilabel> radio button if you want to enter
      the amount of the <emphasis>To Account</emphasis>
      split.</para></listitem>
      <listitem><para>Enter the price/exchange rate or the amount in the
      numeric entry corresponding to radio button you
      selected. <application>&appname;</application> will calculate the
      other amount for you when you exit the field. If it's enabled
      you can use the <guilabel>Fetch Rate</guilabel> button to
      retrieve a current quote.</para></listitem>
    </itemizedlist>
      <note><para>If you have created a price in the <guilabel>Price
      Editor</guilabel> (see <xref
      linkend="invest-stockprice-manual"/>) for the current date quote
      retrieval will not update that price. You must first delete the
      manually-created price in the <guilabel>Price Editor</guilabel>
      before you <keycombo action="click"><mousebutton>Button1</mousebutton></keycombo>on the <guibutton>Fetch Rate</guibutton>
      button.</para></note>
      <note><para>The <guibutton>Fetch
      Rate</guibutton> button will immediately create or replace a
      price in the <guilabel>Price Editor</guilabel> unless there is
      an existing manually-created price for
      today.</para></note>
    </sect2>
    <sect2><title>Finishing Up</title>
    <para>Select <guibutton>OK</guibutton> to commit the transaction
    (or confirm the price/amount) or <guibutton>Cancel</guibutton> to
    dismiss the dialog without entering the
    transaction.<note><para>When committing a transaction or
    confirming an exchange rate the price on the transaction date in
    the <guilabel>Price Editor</guilabel> may be updated. See <xref
    linkend="tool-price"/> for details.</para></note></para>
    </sect2>
  </sect1>

  <sect1 id="trans-enter">
    <title>Enter Transaction via register</title>

    <para>When the Account Register Window for an account is opened the list of transactions for that
    account is shown. This window has the name of the account on its tab. The menus contain several
    functions that alter the display of transactions. The <emphasis>Toolbar</emphasis> also contains several functions that are
    often used when entering or manipulating transactions. These are described in the
    <xref linkend="account-register"></xref> section of this document.</para>

    <sect2 id="trans-reg-enter">
      <title>Entering Directly in the Register Window</title>

      <para>The register window will look slightly different depending on the style options you have chosen.
      The following describes entering simple transactions in the basic ledger style. The cursor is placed
      in the <guilabel>date</guilabel> field by default when the register window is opened.</para>

      <note>
        <para>When working on transactions in <application>&appname;</application>, be aware that the
        <keycap function="enter">Enter</keycap> key and the <keycap function="tab">Tab</keycap> key behave
        differently, and perform different actions.</para>
        <para>The <keycap function="enter">Enter</keycap> key moves to the first field of the next split,
        regardless of which field you are in. If there is no next split, proceeds to the next transaction.
        In any case, <keycap function="enter">Enter</keycap> finishes the transaction edit, and any
        imbalance is posted to <emphasis>Imbalance-CUR</emphasis>, where <emphasis>CUR</emphasis> is the
        currency of the transaction.</para>
        <para>The <keycap function="tab">Tab</keycap> key moves to the next field in the current split.
        If it's the last field, moves to the next split, creating a new one if there isn't one. If the
        split is blank, the <keycap function="tab">Tab</keycap> key finishes the transaction and posts any
        imbalance to <emphasis>Imbalance-CUR</emphasis>, as above.</para>
      </note>

      <orderedlist>
        <listitem>
          <para>Selecting the small icon on the right of the date field drops down a date selection calendar.
          Use the arrows to select the correct month and year for the transaction then select the date.
          Selecting the icon once more will close the date selection calendar. It is also possible to
          type in the date or part of the date and let <application>&appname;</application> fill the rest.</para>
        </listitem>

        <listitem>
          <para>Press <keycap>Tab</keycap> to move to or select the <guilabel>Num</guilabel> field. Here you can enter a check or
          transaction number.  Pressing <keycap>+</keycap> (plus) will automatically advance the number by one from
          the last transaction to have a number.</para>
        </listitem>

        <listitem>
          <para>Press <keycap>Tab</keycap> to move or select the <guilabel>Description</guilabel> field. This field is used to enter
          either a payee or other description for the transaction. It will automatically attempt to fill the payee
          name as you type.</para>
        </listitem>

        <listitem>
          <para>At this stage one of two things will happen if tab is pressed. If <application>&appname;</application> matches an existing
          transaction the cursor will jump to one of the amount fields, automatically filling in the transfer
          account.  Selecting any field with the mouse instead of tabbing will not automatically fill the
          transferring account field.  If there is no matching (existing) transaction, <application>&appname;</application> will move the
          cursor to the <guilabel>Transfer</guilabel> field with only one line of the transaction supplied.</para>
        </listitem>

        <listitem>
          <para> Accounts may be selected either by typing them in or
          by pressing the small button on the right of the
          <guilabel>Transfer</guilabel> field, which will display a
          pick list of all non-placeholder accounts. Note that this pick list
          will still display hidden accounts. If you have hidden an account in
          your chart of accounts, you may want to set the account also to be
          a placeholder account so that it doesn't display here.
          </para>
          <para> When typing, <application>&appname;</application> will
          fill in available accounts as you type. For example, if you
          have <emphasis>Equity</emphasis> and
          <emphasis>Expenses</emphasis> top-level accounts, typing
          <keycap>E</keycap> will fill in <emphasis
          role="bold">Equity</emphasis> because it sorts before
          <emphasis role="bold">Expenses</emphasis>. Continuing to
          type <keycap>x</keycap> will present <emphasis
          role="bold">Expenses</emphasis> the account separator
          (<keycap>:</keycap> by default, see <xref
          linkend="prefs-accounts"></xref>Account Preferences about
          changing it) will accept the currently offered account so
          that you can start typing the name of a child
          account.</para>
        </listitem>

        <listitem>
          <para>The next field <guilabel>R</guilabel> is used for reconciliation. This is described in the <guimenu>Reconcile an
          Account to a Statement</guimenu> section.  <xref linkend="acct-reconcile"></xref></para>
        </listitem>

        <listitem>
          <para>Press the <keycap>Tab</keycap> key to move to the first of the amount fields. The names of the next two columns are different
          according to what type of account is opened. For example, <emphasis>Bank</emphasis> accounts show <guilabel>Deposit</guilabel> and
          <guilabel>Withdrawal</guilabel> here, <emphasis>Credit Card</emphasis> accounts show <guilabel>Payment</guilabel> and
          <guilabel>Charge</guilabel>, and <emphasis>Stock</emphasis> accounts show <guilabel>Shares</guilabel>, <guilabel>Price</guilabel>,
          <guilabel>Buy</guilabel> and <guilabel>Sell</guilabel>.</para>
        </listitem>

        <listitem>
          <para>Enter an amount for the transaction in the correct fields. When the transaction is "balanced"
          pressing the <keycap function="enter">Enter</keycap> key, selecting the <guibutton>Enter</guibutton> icon or going to
          <menuchoice><guimenu>Transaction</guimenu><guimenuitem>Enter Transaction</guimenuitem></menuchoice> will
          finish the transaction. Selecting the <guibutton>Cancel</guibutton> icon or going to
          <menuchoice><guimenu>Transaction</guimenu><guimenuitem>Cancel Transaction</guimenuitem></menuchoice>
          will erase the transaction.</para>
        </listitem>

        <listitem>
          <para>Transactions with just one transfer account will show the name of that account in the <guilabel>Transfer</guilabel>
          field in completed transactions. (The <guilabel>Transfer</guilabel> field is the fourth (4) from the left in the register
          display.)</para>
        </listitem>

        <listitem>
          <para>To move to the blank transaction at the bottom of the register, press the
          <guibutton>Blank</guibutton> <emphasis>Toolbar</emphasis> icon or go to
          <menuchoice><guimenu>Actions</guimenu><guimenuitem>Blank Transaction</guimenuitem></menuchoice>.
          </para>
        </listitem>
      </orderedlist>
    </sect2>
  </sect1>

  <sect1 id="trans-assoc">
    <title>Associating an External File with a Transaction.</title>
    <para>Some users find it helpful to associate external files or URLs, perhaps images of store reciepts, cancelled checks, or vendor invoices, with their transactions. &app; provides a facility for doing just that.</para>
    <para>
      Select a transaction in the <guilabel>Register</guilabel> and right-click it to present the
      <guimenu>Context Menu</guimenu> and select
      <guimenuitem>Update Association for Transaction</guimenuitem>. You will be presented with the
      <guilabel>Change a Transaction Association</guilabel> dialog.</para>
      <figure pgwide="1">
        <title>Change a Transaction Association Dialog</title>
        <screenshot>
          <mediaobject>
            <imageobject>
              <imagedata fileref="figures/Help_Trans_Assoc_Dialog.png" format="PNG"
                         srccredit="Frank H. Ellenberger" />
            </imageobject>
          </mediaobject>
        </screenshot>
      </figure>
      <para>At the top is a radio button with two choices <guilabel>File Association</guilabel> and
      <guilabel>Location Association</guilabel>. If there's an item associated then the radio button
      will have the appropriate selection. At the bottom, 3 buttons:
      <guilabel>Remove</guilabel>,
      <guilabel>Cancel</guilabel>, and
      <guilabel>OK</guilabel>.
      <guilabel>Remove</guilabel> will remove the current association and close the dialog box; the
      other two do the usual actions.
    </para>
    <para>If the <guilabel>File Association</guilabel> radio button is selected the control beneath it is a file chooser button. It will display the name of the selected file if there is one or <guilabel>None</guilabel> if there isn't. Clicking the button will bring up a file chooser dialog from which one may select the file to associate.</para>
    <para>If the <guilabel>Location Association</guilabel> radio button is selected there is a text entry beneath it in which you may type a URL.</para>
    <para>When you have finished click the <guilabel>OK</guilabel> button to confirm your choice or the <guilabel>Cancel</guilabel> button to dismiss the dialog without making a change.</para>
    <para><guimenuitem>Open Association for Transaction</guimenuitem> is enabled if there is a file or URL associated with the selected transaction. Selecting it will open a file in the operating system's default viewer for the file type and a URL in the default browser</para>
    <para><guimenuitem>Remove Association from Transaction</guimenuitem> is enabled if there is a file or URL associated with the selected transaction and does exactly what you'd expect.</para>
    <figure float="1">
      <title>Chain and Paperclip</title>
      <screenshot>
        <mediaobject>
          <imageobject>
            <imagedata fileref="figures/Help_Trans_Assoc_Symbols.png" format="PNG"
                       srccredit="Frank H. Ellenberger" />
          </imageobject>
        </mediaobject>
      </screenshot>
    </figure>
    <para>
      When the <guilabel>Register</guilabel> is in <guilabel>Double Line</guilabel> mode the cell
      underneath the <guilabel>Reconciliation</guilabel> cell is the <guilabel>Association</guilabel>
      cell and displays
      <itemizedlist>
        <listitem>
          <para>a <emphasis>paperclip symbol</emphasis>
            if there is a file associated with the transaction and
          </para>
        </listitem>
        <listitem>
          <para>
            a <emphasis>chain-link symbol</emphasis> if there is a URL associated with it
          </para>
        </listitem>
      </itemizedlist>
      as long as those symbols are supported by the current font for the cell. Hovering over the cell
      will display the file path or URL in a tooltip and clicking in it will open the file or URL as
      the <guimenuitem>Open Transaction</guimenuitem> context menu item would.
    </para>
  </sect1>
  <sect1 id="trans-multi-enter">
    <title>Multiple Split Transactions</title>

    <para>The register window will look slightly different depending on the style options you have chosen.
    The following describes entering transactions with multiple splits in the basic ledger style. <application>&appname;</application> describes
    as a <quote>Split</quote> when money is transferred to or from more than two accounts in a transaction.
    The cursor is placed in the date field by default when the register window is opened.</para>

    <para>The multiple account lines will not be displayed in the Basic Ledger unless the <guibutton>Split</guibutton>
    icon or the <menuchoice><guimenu>Action</guimenu><guimenuitem>Split Transaction</guimenuitem></menuchoice> option have been selected.
    </para>

    <orderedlist>
      <listitem>
        <para>Selecting the triangle icon on the right of the date field drops down a date selection dialog.
        Use the arrows to select the correct month and year for the transaction then select the date. Selecting
        the icon once more will close the date selection calendar. It is also possible to type in the
        date or part of the date and let <application>&appname;</application> fill the rest.</para>
      </listitem>

      <listitem>
        <para>Press <keycap>Tab</keycap> to move to or select the <guilabel>Num</guilabel> field. Here you can enter a check or
        transaction number.  Pressing <keycap>+</keycap> (plus) will automatically advance the number by one from
        the last transaction to have a number.</para>
      </listitem>

      <listitem>
        <para>Press <keycap>Tab</keycap> to move to or select the <guilabel>Description</guilabel> field. This field is used to enter
        either a payee or other description for the transaction. It will automatically attempt to fill the payee name
        as you type.</para>
      </listitem>

      <listitem>
        <para>At this stage one of two things will happen if tab is pressed. If <application>&appname;</application> matches an existing
        transaction the cursor will jump to one of the amount fields, automatically filling in the transfer
        account.  Selecting any field with the mouse instead of tabbing will not automatically fill the
        transferring account field.  If there is no matching (existing) transaction, <application>&appname;</application> will move the
        cursor to the <guilabel>Transfer</guilabel> field with only one line of the transaction supplied.</para>
      </listitem>

      <listitem>
        <para>When typing in the <guilabel>Transfer</guilabel> field <application>&appname;</application> will also attempt to automatically match the account.
        It does this alphabetically, so typing <userinput>Ex</userinput> will match the <computeroutput>Expenses</computeroutput> section of the account list.
        When the section is matched, it is possible to move to a child account by pressing <keycap>:</keycap> (colon).
        If after typing <emphasis>Ex</emphasis> you press <keycap>:</keycap> then the cursor will move to the first child account in the
        list.  Typing combinations of letters and <keycap>:</keycap> will allow movement down the tree of accounts
        quickly. The small icon on the right of the <guilabel>Transfer</guilabel> field can be used as an alternate way of selecting accounts.
        </para>
      </listitem>

      <listitem>
        <para>The next field is used for reconciliation. This is described in <xref linkend="acct-reconcile"></xref></para>
      </listitem>

      <listitem>
        <para>Press <keycap>Tab</keycap> to move to the first of the amount fields. The names of the next two columns
        are different according to what type of account is opened. For example, Bank accounts show
        Deposit and Withdrawal here, Credit Card accounts show Payment and Charge, and Stock accounts
        show Shares, Price, Buy and Sell.</para>
      </listitem>

      <listitem>
        <para>Enter the total amount for the transaction in the correct field. Before pressing <keycap>Tab</keycap>
        or <keycap function="enter">Enter</keycap> read next step.</para>
      </listitem>

      <listitem>
        <para>To enter the additional splits, press the <guibutton>Split</guibutton> button on the <emphasis>Toolbar</emphasis> or select
        <menuchoice><guimenu>Actions</guimenu><guimenuitem>Split Transaction</guimenuitem></menuchoice>.
        Transactions with more than one split show the text <emphasis>--Split Transaction--</emphasis> and the
        <guibutton>Split</guibutton> button will need to be used
        to show the details.</para>
      </listitem>

      <listitem>
        <para>The display will expand, the titles of the amount columns will be renamed and the <guilabel>Transfer</guilabel>
        column name will be blank. The first line contains the description and the amount of the transaction.
        The second line contains the currently opened account name in the <guilabel>Account</guilabel> field and the amount of
        the transaction. The third line contains the transfer account name in the <guilabel>Account</guilabel> field. If the
        amount is not balanced, <application>&appname;</application> will indicate this by placing gray check-boxes in the amount columns
        with the unbalanced amount in a blank last row.</para>
      </listitem>

      <listitem>
        <para>When one of the short lines is selected, the column titles will change. The very first and last
        (<guilabel>Date</guilabel> and <guilabel>Balance</guilabel>) columns will have blank titles. <guilabel>Num</guilabel>
        will change to <guilabel>Action</guilabel>, <guilabel>Description</guilabel> to <guilabel>Memo</guilabel>,
        the now blank <guilabel>Transfer</guilabel> column will change to <guilabel>Account</guilabel>. The last two amount columns
        will show the name described in step seven.</para>
      </listitem>

      <listitem>
        <para>The <guilabel>Action</guilabel> and <guilabel>Memo</guilabel> columns are optional to fill out at this stage.
        <guilabel>Action</guilabel> is used to describe what kind of account transfer is involved. <guilabel>Memo</guilabel>
        is an additional description of the transfer.</para>
      </listitem>

      <listitem>
        <para>Move to the missing amount field on the third line and fill in the amount. Pressing the
        <keycap function="enter">Enter</keycap> key, selecting the <guibutton>Enter</guibutton> icon or going to
        <menuchoice><guimenu>Actions</guimenu><guimenuitem>Enter</guimenuitem></menuchoice>
        will now move the cursor to the next line.</para>
      </listitem>

      <listitem>
        <para>The <guilabel>Account</guilabel> column contains the list of transfer accounts. This column is the one that is used
        to add splits. The method described in step five can be used to select another account on a blank line.
        Add as many additional splits as needed.</para>
      </listitem>

      <listitem>
        <para>When the transaction is balanced the gray check-boxes will disappear and the last blank line will
        not have an amount.</para>
      </listitem>

      <listitem>
        <para>Pressing <keycap function="enter">Enter</keycap> as described above will jump to the next
        transaction. Selecting the next transaction will close the split or it can be manually closed by pressing
        the <guibutton>Split</guibutton> icon or selecting
        <menuchoice><guimenu>Actions</guimenu><guimenuitem>Split Transaction</guimenuitem></menuchoice>.</para>
      </listitem>
    </orderedlist>

  </sect1>

  <sect1 id="trans-currency-enter">
    <title>Multiple Currency/Commodity Transactions</title>

    <para>Any transaction that has splits whose accounts are
    denominated in different commodities (currencies are a subset
    of commodities) requires an exchange rate to convert between
    the two. For more information please see Chapter 10 of the
    <emphasis role="italic">Tutorial and Concepts Guide</emphasis>.</para>
    <para>Registers for accounts of type STOCK or FUND display
    four columns, <guilabel>Shares</guilabel>,
    <guilabel>Price</guilabel>, <guilabel>Buy</guilabel>, and
    <guilabel>Sell</guilabel> (the last two will be
    <guilabel>Credit</guilabel> and <guilabel>Debit</guilabel>
    respectively if you've enabled <guilabel>Use formal accounting
    labels</guilabel> in the <guilabel>Accounts</guilabel> tab of
    <guilabel>Preferences</guilabel>). Enter any two and
    <application>&appname;</application> will calculate the other for
    you; if you enter 3 and the result doesn't balance
    <application>&appname;</application> will ask which one to change
    to make the split balance.</para>
    <para>Registers of other types have only
    <guilabel>Credit</guilabel> and <guilabel>Debit</guilabel> (the
    names will be different depending on the account type if you
    haven't enabled <guilabel>Use formal accounting labels</guilabel>)
    and so use the <guilabel>Transfer Dialog</guilabel> with most of
    the fields disabled to collect either an <guilabel>Exchange
    Rate</guilabel> or a <guilabel>To Amount</guilabel> (the amount in
    the other currency/comodity). Please see (<xref
    linkend="trans-win-price"></xref>) for details of using this
    dialog.</para>
    <note><para>When committing a transaction or confirming
    an exchange rate the price on the transaction date in the
    <guilabel>Price Editor</guilabel> may be updated. See <xref
    linkend="tool-price"/> for details.</para></note>
  </sect1>

  <sect1 id="trans-edit">
    <title>Editing a Transaction</title>

    <para>Editing a transaction involves just selecting the part of the transaction that needs to be changed.
    Once the changes are complete pressing the <keycap function="enter">Enter</keycap> key, selecting the
    <guibutton>Enter</guibutton> icon or going to
    <menuchoice><guimenu>Transaction</guimenu><guimenuitem>Enter Transaction</guimenuitem></menuchoice> will
    now move the cursor to the next line or transaction.
    </para>

    <para>To see a more detailed view of a transaction for editing in Basic Ledger, press the
    <guibutton>Split</guibutton> button on the <emphasis>Toolbar</emphasis> or select
    <menuchoice><guimenu>Actions</guimenu><guimenuitem>Split Transaction</guimenuitem></menuchoice>.</para>
  </sect1>

  <sect1 id="trans-delete">
    <title>Deleting a Transaction</title>

    <para>If a transaction needs to be removed from the register, select the transaction and press either
    the <guibutton>Delete</guibutton> icon on the <emphasis>Toolbar</emphasis> or go to
    <menuchoice><guimenu>Transaction</guimenu><guimenuitem>Delete Transaction</guimenuitem></menuchoice>.

    A window will appear to confirm the delete, unless the preference has been changed.  The window presents
    two options; "Remember and don&rsquo;t ask again", and "Remember and don&rsquo;t ask again this session". The response
    will be set according to the selected checkbox.  The preference can also be reset via
    <menuchoice><guimenu>Actions</guimenu><guimenuitem>Reset Warnings</guimenuitem></menuchoice>.  <xref linkend="reset-warning"></xref>.</para>

    <para>Parts of a transaction can also be removed by pressing the <guibutton>Split</guibutton> button on
    the <emphasis>Toolbar</emphasis> or selecting
    <menuchoice><guimenu>Actions</guimenu><guimenuitem>Split Transaction</guimenuitem></menuchoice>. The part of the
    transaction that needs to be deleted can be then selected for deletion.</para>
  </sect1>

  <sect1 id="trans-reverse">
     <title>Add Reversing Transaction</title>

     <para>In formal accounting, transactions should never be deleted or altered. Instead, when a mistake is made, the original transaction remains in the ledger, and a reversing transaction is added to the ledger. This <emphasis>reversing transaction</emphasis> restores the ledger to its state before the error, allowing the user to enter the transaction again correctly.</para>

      <para>While a user can certainly enter reversing transactions manually, <application>&appname;</application> includes a menu option (<menuchoice><guimenu>Transaction</guimenu><guimenuitem>Add Reversing Transaction</guimenuitem></menuchoice>) that can quickly create the reversing transaction for you. This option only appears when you are in an account register. When you are in the transaction that needs to be reversed, all you need to do is select this menu item, and a duplicate transaction that reverses the active transaction is immediately created.</para>

        <note><para>Once you choose the menu item, a reversing transaction is immediately created in the account using the current date. You may wish to locate the new transaction at the end of the register, and add explanatory notes to it.</para></note>
  </sect1>

  <sect1 id="trans-split-remove">
    <title>Removing Transaction Splits</title>

    <para>Removing Transaction Splits involves erasing all splits except the one for the account that is opened.
    This is a useful way of reusing a previous transaction that has multiple splits that need to be changed.
    (Note this can be done without opening the split, but doing so makes the effect more visible)</para>

    <orderedlist>
      <listitem>
        <para>If in Basic Ledger, press the <guibutton>Split</guibutton> button on the <emphasis>Toolbar</emphasis> or select
        <menuchoice><guimenu>Actions</guimenu><guimenuitem>Split Transaction</guimenuitem></menuchoice>
        to open the transaction.  If in other modes select transaction.</para>
      </listitem>

      <listitem>
        <para>Select <menuchoice><guimenu>Transaction</guimenu><guimenuitem>Remove Transaction Splits</guimenuitem></menuchoice>.</para>
        <para>A window will appear to confirm the delete, unless the preference has been changed.  The window
        presents two options; "Remember and don&rsquo;t ask again", and "Remember and don&rsquo;t ask again this session".
        The response will be set according to the selected checkbox.  The preference can also be reset via
        <menuchoice><guimenu>Actions</guimenu><guimenuitem>Reset Warnings</guimenuitem></menuchoice>.  <xref linkend="reset-warning"></xref>.</para>
      </listitem>

      <listitem>
        <para>All Accounts and their related details will be removed except for the
        currently opened account. </para>
      </listitem>

      <listitem>
        <para>The amount is not balanced and <application>&appname;</application> will indicate this by placing gray
        check-boxes in the amount columns with the unbalanced amount in the blank last
        row.</para>
      </listitem>

      <listitem>
        <para>Edit the transaction to fill in the new details.</para>
      </listitem>
    </orderedlist>
  </sect1>

  <sect1 id="trans-copy">
    <title>Copying a Transaction</title>

    <para>Copying Transactions is available from the <guimenu>Transaction</guimenu> menu.  The
    <guimenu>Transaction</guimenu> menu has <guimenu>Cut Transaction</guimenu>, <guimenu>Copy
    Transaction</guimenu> and <guimenu>Paste Transaction</guimenu> which allows a whole transaction to be
    cut or copied and pasted to a new transaction line.
    This way of copying a transaction will use the date showing in the new transaction blank line.
    </para>

    <para>The <menuchoice><guimenu>Transaction</guimenu><guimenuitem>Duplicate Transaction...</guimenuitem></menuchoice> or the <emphasis>Toolbar</emphasis>
    <guimenu>Duplicate</guimenu> which, unlike the Copy method, allows for choosing a different date.</para>

    <itemizedlist>
      <listitem>
        <para>Select the transaction to duplicate.</para>
      </listitem>

      <listitem>
        <para>Go to <menuchoice><guimenu>Transaction</guimenu><guimenuitem>Duplicate Transaction...</guimenuitem></menuchoice></para>
      </listitem>

      <listitem>
        <para>A dialog called <emphasis role="bold">Duplicate Transaction</emphasis> will prompt for a new
        Date and Num for the transaction.</para>
      </listitem>

      <listitem>
        <para>Press <guibutton>OK</guibutton> to add the transaction to the register.</para>
      </listitem>
    </itemizedlist>
  </sect1>

  <sect1 id="trans-stts">
    <title>Setting the reconcile status (<guilabel>R</guilabel> field) of a transaction</title>
    <para>In the <application>&appname;</application> register there is a column labeled <guilabel>R</guilabel>. This field
    indicates the status of a transaction. Possible values are:</para>

    <variablelist>
      <varlistentry>
        <term><guilabel>n</guilabel></term>
        <listitem>
          <para>No. This is the default status when a transaction is created.</para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term><guilabel>c</guilabel></term>
        <listitem>
          <para>Cleared. Status may be assigned either manually or by an import process.</para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term><guilabel>y</guilabel></term>
        <listitem>
          <para>Yes, reconciled. This status is solely assigned by the reconciliation process (see <xref linkend="acct-reconcile" />).
          Places limits optionally requiring confirmation on editing fields in that line of a transaction.</para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term><guilabel>f</guilabel></term>
        <listitem>
          <para>Frozen. Not implemented at this time</para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term><guilabel>v</guilabel></term>
        <listitem>
          <para>Voided. Status is assigned or released manually through the transaction menu (<xref linkend="Trans-transaction-menu" />)
          to a transaction and applies to every line in the transaction. It hides most of the transaction details but does not delete them.
          When a transaction is voided a reason entry is required that appears to the right of the transaction notes. The notes
          and void reason will only be visible when you have enabled
          <menuchoice><guimenu>View</guimenu><guimenuitem>Double Line</guimenuitem></menuchoice>.</para>
        </listitem>
      </varlistentry>
    </variablelist>

  </sect1>

  <sect1 id="acct-jump">
    <title>Jump to another Account Register</title>

    <para>When using the Account Register Window it is frequently useful to be able to
    view another account and also the transfer account at the same time. <application>&appname;</application> allows you to
    do this quickly by using the <guibutton>Jump</guibutton> button available in the <emphasis>Toolbar</emphasis> or
    the <menuchoice><guimenu>Actions</guimenu><guimenuitem>Jump</guimenuitem></menuchoice> menu item in the Account Register Window. </para>

    <para>Select the transaction in the Account Register Window and either click the <guibutton>Jump</guibutton> icon or select
    <menuchoice><guimenu>Actions</guimenu><guimenuitem>Jump</guimenuitem></menuchoice> to open the Account Register Window
    target. If the transaction is split
    between more than one transfer account then you will need to show all the split transfer accounts first and
    select the transfer account to jump to.</para>
  </sect1>

  <sect1 id="trans-sched">
    <title>Scheduling Transactions</title>

    <para>Scheduled Transactions provide the ability to have reminders scheduled or transactions scheduled to be
    entered at a specified date. This is combined with the <guilabel>Since Last Run</guilabel> assistant (<xref linkend="trans-sched-slr"></xref>) to review and enter the transactions. The
    <guilabel>Mortgage &amp; Loan Repayment</guilabel> assistant (<xref linkend="trans-sched-loans"></xref>) is used
    to setup a scheduled transaction to repay a compounding interest loan. The Scheduled Transaction Editor
    (<xref linkend="sched-editor"></xref>) is used to create and edit transactions that are to be added to the
    register in an automated way.</para>

    <para>The easiest way to setup a scheduled transaction is to use an existing transaction in an account register
    as a template. Select the transaction you wish to use as a template and then either select the
    <guibutton>Schedule</guibutton> icon on the <emphasis>Toolbar</emphasis> or go to
    <menuchoice><guimenu>Actions</guimenu><guimenuitem>Schedule...</guimenuitem></menuchoice>.
    This will bring up the <emphasis role="bold">Make Scheduled Transaction</emphasis> dialog.</para>

    <itemizedlist>
      <listitem>
        <para><guilabel>Name:</guilabel> Enter a name to use for the scheduled transaction. This will be
        used in the <guilabel>Description</guilabel> field of the transaction.</para>
      </listitem>

      <listitem>
        <para><guilabel>Frequency:</guilabel> Choose the time period you want between scheduled entries. The
        dates that the transactions will be entered will show in the mini calendar pane to the right.</para>
      </listitem>

      <listitem>
        <para><guilabel>Start Date:</guilabel> Choose a date for the scheduled transaction to start.</para>
      </listitem>

      <listitem>
        <para><guilabel>Never End:</guilabel> This scheduled transaction has no finish date.</para>
      </listitem>

      <listitem>
        <para><guilabel>End Date:</guilabel> Choose a date for the scheduled transaction to end.</para>
      </listitem>

      <listitem>
        <para><guilabel>Number of Occurrences:</guilabel> Enter the number of times you wish the scheduled
        transaction to be added to the register.</para>
      </listitem>
    </itemizedlist>

    <para>The <guilabel>Advanced...</guilabel> button brings up the Scheduled Transaction Editor&rsquo;s dialog to
    Edit the Scheduled Transaction. This is described in the section Scheduled Transaction Editor.
    <xref linkend="sched-editor"></xref></para>

    <sect2 id="sched-trans-win">
      <title>Scheduled Transactions Window</title>

      <para>The Scheduled Transactions Window is used to access the list of scheduled transactions and create,
      edit or remove them. It also provides a calendar which displays upcoming scheduled transactions. Clicking
      on the calendar view and hovering over any date will pop up a small dialog that shows the transactions
      scheduled for that day. The yellow highlight in the calendar indicates which days have scheduled
      transactions. To dismiss the hover dialog click once more.</para>

      <para>The top pane of the Scheduled Transaction Window contains the list of scheduled transactions that are
      currently setup. This window lists the Name of the transaction, if the transaction is enabled for scheduling,
      the Frequency (month and day) that the transaction is to be entered, the last time the transaction was entered
      and the next time the transaction will be entered.</para>

      <para>The right side of this pane contains a down arrow button that when clicked will pull-down a window to
      allow selection of the characteristics displayed in the list.  Unchecking the appropriate box will remove the
      characteristic from the display.</para>

      <para>The <emphasis>Toolbar</emphasis> of this window contains three buttons to create, delete and edit scheduled transactions.
      <guibutton>New</guibutton> and <guibutton>Edit</guibutton> buttons opens the Edit Scheduled Transaction dialog.
      <guibutton>Delete</guibutton> removes the selected scheduled transaction.
      The same options are available thru <menuchoice><guimenu>Schedule</guimenu><guimenuitem>New/Edit/Delete</guimenuitem></menuchoice>,
      from the Scheduled Transaction Tab. </para>

      <para>Below the list of scheduled transactions is the Upcoming calendar. This calendar displays up to the next
      year and highlights the dates that the scheduled transactions are scheduled to occur so it is easy to see when
      the transactions are scheduled.  Clicking on a date in the calendar brings up a list of scheduled transactions
      for that date. Moving the mouse over other dates changes to the list of transactions on those dates. Clicking
      once more on the calendar removes the transaction list.</para>

      <para>The Scheduled Transaction Window is activated from the Account tab or the Transaction Register via
      <menuchoice><guimenu>Actions</guimenu><guisubmenu>Scheduled Transaction</guisubmenu>
      <guimenuitem>Scheduled Transaction Editor...</guimenuitem></menuchoice>.</para>

    </sect2>
  </sect1>
  <sect1 id="sched-editor">
    <title>Edit Scheduled Transaction Window</title>
<!-- Todo: has been redesigned -->
    <para>The Edit Scheduled Transaction Window is divided into a Name area, Options area, Occurrences area,
    Recurrence Frequency area, mini calendar and Template Transaction pane.</para>

    <para>The <guilabel>Name</guilabel> field is used to enter the name for the scheduled transaction. This will be
    used in the <guilabel>Description</guilabel> of the transaction.</para>

    <para>The <guilabel>Options</guilabel> area contains check-boxes to set if the transaction is
    automatically created and how many days in advance the transaction is created and/or a reminder posted.
    </para>

    <para>The <guilabel>Occurrences</guilabel> area contains selections to set for dates limits on
    transactions to be entered or the number of transactions to be entered.</para>

    <para>The <guilabel>Recurrence Frequency</guilabel> area contains selections to set how
    often the transaction is scheduled to be added and on what dates this occurs.</para>

    <para>The mini calendar provides a visual indication of what transactions are already scheduled.</para>

    <para>The <guilabel>Template Transaction</guilabel> pane allows you to setup the transaction
    as you would like it to be entered into the register.</para>

    <para>These options are described in more detail in <xref linkend="trans-sched"></xref></para>

    <itemizedlist>
      <listitem><para>From the Scheduled Transaction tab selecting a transaction from the list and pressing
      the <guibutton>Edit</guibutton> or <guibutton>New</guibutton> buttons will bring up the Edit Scheduled Transaction Editor.</para>
      </listitem>
    </itemizedlist>

  </sect1>

  <sect1 id="print-check">
    <title>Printing Checks</title>

    <para>Checks are printed in <application>&appname;</application> from the account register. <application>&appname;</application> provides the
    ability to print to several standard Quicken Checks (including US Letter) or to make
    a custom check format. Check position and Date formats are also customizable.</para>

    <para>To print a single check in <application>&appname;</application>, select the transaction to print a check for
    and go to <menuchoice><guimenu>File</guimenu><guimenuitem>Print Checks</guimenuitem></menuchoice>.
    This will open the Print Checks properties dialog to print the selected transaction.</para>

    <para>To print multiple checks in <application>&appname;</application> execute a search to find the transactions
    you wish to print.  With the search results window as the front window go to
    <menuchoice><guimenu>File</guimenu><guimenuitem>Print Checks</guimenuitem></menuchoice>. This will open
    the Print Checks properties dialog to print all the transactions in the search results window.</para>

    <para>The Print Checks dialog has two tabs. The first tab, Options, is used to setup
    the most common options to print a check. The second tab, Custom format, is used to
    setup the position of various fields on the check. It is useful to print a test check
    to a plain piece of paper first and use that to make any adjustments needed.</para>

    <para>The default selection in Options is for Quicken/Quickbooks (tm) US-Letter checks.</para>

    <itemizedlist>
      <listitem>
        <para>Check format: Test with Quicken first then use custom if the position is incorrect.</para>
      </listitem>

      <listitem>
        <para>Check position: This sets if the Top, Middle or Bottom check is printed.  Custom is used if the
        position of the checks on the page is incorrect.</para>
      </listitem>

      <listitem>
        <para>Date format: The default here is set in the Preferences International section. Choose a date format.
        This can also be adjusted by the Use of the Months: and Years: lines. Custom allows the date format to be
        set in the Format: box (%m means month, %d means day, %Y means year) A Sample of the format chosen is
        displayed below.</para>
      </listitem>
      <listitem>
        <para>Address: This sets the address of the Payee, if the check format includes a
        space for it and you are printing a single check.</para>
      </listitem>
    </itemizedlist>

    <para>The Custom format tab has two sections.  The top half of the window (above the
    dividing line) allows you to position the fields in each check.  It contains two
    columns to enter in the X and Y co-ordinates of the field position on the
    check. Positions in the Custom Check Format entry area are specified with x = 0 at
    the left edge of the check with x increasing to the right, and y = 0 at the top edge
    of the check with y increasing as you travel down.  (If you are using a version of
    GTK prior to 2.10, then y = 0 is at the bottom of the page and y increases as you
    travel up.)</para>

    <itemizedlist>
      <listitem>
        <para>Payee: </para>
      </listitem>

      <listitem>
        <para>Date: </para>
      </listitem>

      <listitem>
        <para>Amount (words): </para>
      </listitem>

      <listitem>
        <para>Amount (numbers): </para>
      </listitem>

      <listitem>
        <para>Address: </para>
      </listitem>

      <listitem>
        <para>Notes: </para>
      </listitem>

      <listitem>
        <para>Memo: </para>
      </listitem>

      <listitem>
        <para>Splits Amount: </para>
      </listitem>

      <listitem>
        <para>Splits Memo: </para>
      </listitem>

      <listitem>
        <para>Splits Account: </para>
      </listitem>
    </itemizedlist>

    <para>The part of the custom format tab below the dividing line contains fields to
    position the entire check correctly on the page.  The Translation field is the
    distance from the top left corner and the Rotation field rotates the check
    clockwise by the indicated amount.</para>

    <para>The Units field in the bottom half of the window specifies the units used in
    all the fields in both halves of the window.</para>

    <para>Once <guibutton>OK</guibutton> is pressed on the Print Check dialog the Print <application>&appname;</application> Document dialog is presented. Press <guibutton>OK</guibutton>
    to print the check.</para>

  </sect1>
  <sect1 id="trans-import">
    <title>Importing Transactions from Files</title>

    <para>Imported transactions will generally be to a specific account in your account tree. In the following
            this will be referred to as the <emphasis role="bold">import</emphasis> or
            <emphasis role="bold">base</emphasis> account. It may or may not be
            specified in the data being imported depending on the import format. It is usually the first split
            of a transaction being imported.
    </para>
    <para>All transactions will also need to have a <emphasis role="bold">destination</emphasis> account for
            any other splits associated with the tansaction. These may or may not be supplied in the imported data,
            depending upon the data source and the format of the data. If it is not, <application>&appname;</application>
            may be able to assign an account on the basis of the previous import history by matching infomation in
            the imported data to data associated with previous account assignments in the importer. The user may
            always over-ride this automatic assignment or where no assignment can be made automatically assign an account manually.
    </para>
    <para>Multi-split data  exported from <application>&appname;</application> in CSV format will normally have both the import
       and destination accountsfor transaction splits specified in the data file.
    </para>
    <sect2 id="trans-import-formats">
      <title>Import Formats</title>
      <para><application>&appname;</application> allows transactions to be imported in a number of structured formats
        for the exchange of financial data as well as in the unstructured CSV format, a plain text tabular format
        commonly used for the import and export of data to and from  spreadsheets:
      </para>
      <itemizedlist>
        <listitem><para><emphasis role="bold"><link linkend="trans-import-qif">QIF</link></emphasis>
             (.qif) Quicken Interchange format - import data from Quicken financial software;</para></listitem>
        <listitem><para><emphasis role="bold"><link linkend="trans-import-ofx">OFX/QFX</link></emphasis>
             (.ofx,.qfx) Open Financial eXchange format (QXF is an Intuit/Quicken proprietary version of OFX);
        </para></listitem>
        <listitem><para><emphasis role="bold"><link linkend="trans-import-csv">CSV</link></emphasis>
             (.csv)  Comma Separated Values;</para></listitem>
        <listitem><para><emphasis role="bold"><link linkend="trans-import-MT940-MT942-DTAUS">MT940</link></emphasis>
               SWIFT MT940 Customer End of Day Statement Message;</para></listitem>
        <listitem><para><emphasis role="bold"><link linkend="trans-import-MT940-MT942-DTAUS">MT942</link></emphasis>
               SWIFT MT942 Customer Intra-day Transaction Report;</para></listitem>
        <listitem><para><emphasis role="bold"><link linkend="trans-import-MT940-MT942-DTAUS">DTAUS</link></emphasis>
             (.DTAUS)  Banking data Exchange File;</para></listitem>
      </itemizedlist>
      <note><para>Files using these formats do not necessarily use the file extensions shown above.</para></note>
      <para>These import methods can be accessed from the <menuchoice><guimenu>File</guimenu><guisubmenu>Import
        </guisubmenu></menuchoice>sub-menu entry, along with methods for importing other types of data. Select
        the appropriate entry from the <menuchoice><guimenu>File</guimenu><guisubmenu>Import</guisubmenu></menuchoice>
        sub-menu to initiate importing transactions.
      </para>
    </sect2>
    <sect2 id="trans-import-prefs">
      <title>Import Preference</title>
      <para>User preferences set in the <link linkend="prefs-online">Online Banking tab</link> of the user preferences
        accessed by <menuchoice><guimenu>Edit</guimenu><guisubmenu>Preferences</guisubmenu></menuchoice> from the
        menu will affect the importing of transactions from the files described below.
      </para>
    </sect2>
    <sect2 id="trans-import-qif">
      <title>Import QIF</title>
      <para>To import data from Quicken®, MS Money®, or other programs that use QIF(Quicken® Interchange Format),
            you must first export your data to a QIF file. One way to do this is to export each account as a
            separate QIF file. An easier way, available in Quicken® 98 and beyond, is to export all accounts at
            once into a single QIF file. Check your program's manual to determine if this option is available.
      </para>
      <sect3>
        <title>To import QIF files:</title>
        <para>Select
          <menuchoice>
            <guimenu>File</guimenu>
            <guisubmenu>Import</guisubmenu>
            <guimenuitem>Import QIF...</guimenuitem>
          </menuchoice>
          from the menu to open the QIF Import dialog box illustrated below.
        </para>
        <figure pgwide="1">
          <title>The Import QIF Files Assistent</title>
          <screenshot id="ImportQIFDruid">
            <mediaobject>
              <imageobject role="html">
                <imagedata fileref="figures/Help_Import_QIF_Druid.png" format="PNG" srccredit="David Cousens" width="510"></imagedata>
              </imageobject>
              <imageobject role="fo">
                          <imagedata fileref="figures/Help_Import_QIF_Druid.png" format="PNG" srccredit="David Cousens"></imagedata>
              </imageobject>
            </mediaobject>
          </screenshot>
        </figure>
        <formalpara>
          <title>Dialog Navigation</title>
          <para>The right hand pane will display some or all of the following navigation buttons:
          <itemizedlist>
            <listitem><para><emphasis role="bold"><guibutton>Cancel</guibutton></emphasis>: Exit the dialog;</para>
            </listitem>
            <listitem><para><emphasis role="bold"><guibutton>Back</guibutton></emphasis>: Go back to the previous step;</para>
            </listitem>
            <listitem><para><emphasis role="bold"><guibutton>Next</guibutton></emphasis>: Proceed to the next step.</para>
            </listitem>
          </itemizedlist>
          The buttons displayed are determined by whether navigation to the destination step is valid from the current step.
          </para>
        </formalpara>
        <formalpara>
        <title>Import Dialog Steps</title>
        <para>The left hand pane lists the steps in the import dialog process. The right hand pane contains
          instructions and/or controls for performing the operations in the step selected and highlighted
          in the left hand pane. The import process steps are:
          <itemizedlist>
            <listitem>
              <para><emphasis role="bold"><guilabel>Import of QIF files</guilabel></emphasis>: Initial informational panel.
                Click <emphasis role="bold"><guibutton>Next</guibutton></emphasis> to proceed;
              </para>
            </listitem>
            <listitem>
              <para><emphasis role="bold"><guilabel>Select a QIF file to load</guilabel></emphasis>: Open a file selection dialog.
                Navigate to and select the file you wish to import and click <emphasis role="bold"><guibutton>Import</guibutton></emphasis>.
                Then click <emphasis role="bold"><guibutton>Next</guibutton></emphasis>;
              </para>
            </listitem>
            <listitem>
              <para><emphasis role="bold"><guilabel>Load QIF files</guilabel></emphasis>: Click the <emphasis role="bold"><guibutton>Start</guibutton></emphasis>
                button to load the file. The file will be parsed and loaded. If errors or warnings occur you may have to remove the file, edit it and reimport it. If there are no
                errors click <emphasis role="bold"><guibutton>Next</guibutton></emphasis>;
              </para>
            </listitem>
            <listitem>
              <para><emphasis role="bold"><guilabel>Set a date format for the file</guilabel></emphasis>: Select a date format (m-d-y or d-m-y)
                appropriate to the locale of the source of your QIF file. In the US this is generally m-d-y and in Europe d-m-y;
              </para>
            </listitem>
            <listitem>
              <para><emphasis role="bold"><guilabel>Set the default QIF account name</guilabel></emphasis>: If the QIF file does
                not specify an account name, enter an account name. If importing data
                from another accounting program you should use the name used in that program;
              </para>
            </listitem>
            <listitem>
              <para><emphasis role="bold"><guilabel>QIF files you have loaded</guilabel></emphasis>: This step allows you to edit the
                list of files to be imported and to load additional files. To remove a file,
                click on the row and then click on <emphasis role="bold"><guibutton>Unload selected file</guibutton></emphasis>. To load another
                file click the <emphasis role="bold"><guibutton>Load another file</guibutton></emphasis>. When you have all the files you wish
                to import loaded, click <emphasis role="bold"><guibutton>Next</guibutton></emphasis>;
              </para>
            </listitem>
            <listitem>
              <para><emphasis role="bold"><guilabel>Accounts and stock holdings</guilabel></emphasis>: Information panel.
              Click <emphasis role="bold"><guibutton>Next</guibutton></emphasis> to proceed;
              </para>
            </listitem>
            <listitem>
              <para><emphasis role="bold"><guilabel>Match QIF accounts with &appname; accounts</guilabel></emphasis>: QIF account
                names are matched to <application>&appname;</application> accounts if possible. New <application>&appname;</application>
                accounts are created if no matching accounts are found. For stock, the required account structures are also created.
                Created accounts are indicated by checking the checkbox in the New column. Assigned accounts may be edited by
                selecting the appropriate the row and clicking on the <emphasis role="bold"><guibutton>Change &appname; Account</guibutton></emphasis>
                button to to run the account selection dialog;
              </para>
            </listitem>
            <listitem>
              <para><emphasis role="bold"><guilabel>Income and Expense categories</guilabel></emphasis>: Information panel.
                Click <emphasis role="bold"><guibutton>Next</guibutton></emphasis> to proceed;
              </para>
            </listitem>
            <listitem>
              <para><emphasis role="bold"><guilabel>Match QIF categories to &appname; accounts</guilabel></emphasis>: QIF categories
                are matched to <application>&appname;</application> accounts where possible. New <application>&appname;</application>
                accounts are created where no matching <application>&appname;</application> account is found. Created accounts are
                indicated by the checkbox in the New column being checked. If you are not sure what changes are needed, it is safe to
                accept the <application>&appname;</application> account names. These may be changed later in <application>&appname;</application>.
                Assigned accounts may be edited by selecting the appropriate row and clicking on the
                <emphasis role="bold"><guibutton>Change &appname; Account</guibutton></emphasis> button to run the account selection dialog;
              </para>
            </listitem>
            <listitem>
              <para><emphasis role="bold"><guilabel>Payees and Memos</guilabel></emphasis>: Information page.
                Click <emphasis role="bold"><guibutton>Next</guibutton></emphasis> to proceed;</para>
            </listitem>
            <listitem>
              <para><emphasis role="bold"><guilabel>Match payees/memos to &appname; accounts</guilabel></emphasis>: QIF payees and memos are
                matched to &appname; accounts where possible and new accounts are created where this is not possible again
                indicated by the checkbox in the New column. The assigned account may be changed by selecting a row and clicking on the
                <emphasis role="bold"><guibutton>Change &appname; Account</guibutton></emphasis> button to to run the account selection dialog;
              </para>
            </listitem>
            <listitem>
              <para><emphasis role="bold"><guilabel>Choose the QIF file currency</guilabel></emphasis>: Select the required currency
                from the dropdown list and click on <emphasis role="bold"><guibutton>Next</guibutton></emphasis> to continue;
              </para>
            </listitem>
            <listitem>
              <para><emphasis role="bold"><guilabel>Tradable commodities</guilabel></emphasis>: Not yet implemented;
              </para><!--FIXME when implemented.-->
            </listitem>
            <listitem>
              <para><emphasis role="bold"><guilabel>QIF Import</guilabel></emphasis>:
                Click on <emphasis role="bold"><guibutton>Start</guibutton></emphasis> to begin the import. <application>&appname;</application>
                currently proceeds to the Update your <application>&appname;</application> accounts tab if the import is successful;
              </para>
            </listitem>
            <listitem>
              <para><emphasis role="bold"><guilabel>Match existing transactions</guilabel></emphasis>: Not yet implemented;
              </para><!--FIXME when implemented.-->
            </listitem>
            <listitem>
              <para><emphasis role="bold"><guilabel>Select possible duplicates</guilabel></emphasis>: Not yet implemented;
              </para><!--FIXME when implemented.-->
            </listitem>
            <listitem>
              <para><emphasis role="bold"><guilabel>Update your &appname; accounts</guilabel></emphasis>: Click
                <emphasis role="bold"><guibutton>Apply</guibutton></emphasis> to complete the import. Depending
                upon the size of your file, the import might take a few minutes to complete,
                so a progress bar displays the percentage finished. When the import process is complete,
                <application>&appname;</application> will return you to the main window, which should now
                display the names of the accounts you imported.
              </para>
              <para>Other features are not currently implemented;<!--FIXME when implemented.--></para>
            </listitem>
            <listitem>
              <para><emphasis role="bold"><guilabel>QIF Import Summary</guilabel></emphasis>: Click on
                <emphasis role="bold"><guibutton>Close</guibutton></emphasis> to exit the wizard.
              </para>
            </listitem>
          </itemizedlist>
        </para>
        </formalpara>
      </sect3>
    </sect2>

    <sect2 id="trans-import-ofx">
      <title>Import OFX/QFX</title>
      <para><guimenu>File</guimenu>-><guisubmenu>Import</guisubmenu>-><guimenuitem>Import OFX/QFX transactions</guimenuitem>
        opens a file selection dialog. Navigate to the file you wish to import, select a file with
        the appropriate extension (.ofx  or .qfx), then press the <emphasis role="bold"><guibutton>Import</guibutton></emphasis> button.</para>
      <para><application>&appname;</application> then opens an Account Selection dialog to select an account in your CoA to match to an account name in the import file. Select
        the appropriate account from the account tree and press the <emphasis role="bold"><guibutton>OK</guibutton></emphasis> button. On subsequent import of files from the
        same source account, the mapped <application>&appname;</application> account is remembered and the account selection dialog is not displayed.
      </para>
      <para>The generic import transaction matcher dialog is opened next. See the <link linkend="trans-import-matcher">
        Import Matcher</link> section (common to both OFX/QFX and CSV import formats) following the Import CSV
        section to continue the import process.
      </para>
    </sect2>

    <sect2 id="trans-import-csv">
      <title>Import CSV</title>
      <para>Clicking on <emphasis role="bold"><guimenu>File</guimenu>-><guisubmenu>Import</guisubmenu>-><guimenuitem>Import Transactions from CSV</guimenuitem></emphasis>
        will bring up the CSV Transaction Import Assistant dialog illustrated below.
      </para>
      <figure pgwide="1">
        <title>The CSV Transaction Import Assistant - Introduction</title>
        <screenshot id="CSV_Transaction_Import_Assistant">
          <mediaobject>
            <imageobject role="html">
              <imagedata  fileref="figures/Help_CSV_Transaction_Import_Assistant.png" format="PNG" srccredit="David Cousens" width="515px"></imagedata>
            </imageobject>
            <imageobject role="fo">
              <imagedata width="515px" fileref="figures/Help_CSV_Transaction_Import_Assistant.png" format="PNG" srccredit="David Cousens"></imagedata>
            </imageobject>
          </mediaobject>
        </screenshot>
      </figure>
      <para>The CSV Transaction import Assistant is largely self explanatory with information panes which describe the functionality.</para>
      <formalpara>
      <title>Dialog Navigation</title>
        <para>Each pane displays a selction of the following navigation buttons at the bottom right:
        <itemizedlist>
          <listitem><para><emphasis role="bold"><guibutton>Cancel</guibutton></emphasis> Exit the CSV Transaction Import Assistant;</para></listitem>
          <listitem><para><emphasis role="bold"><guibutton>Back</guibutton></emphasis> Return to the previous step in the assistant;</para></listitem>
          <listitem><para><emphasis role="bold"><guibutton>Next</guibutton></emphasis> Proceed to the next step in the assistant.</para></listitem>
        </itemizedlist>
        The buttons displayed are determined by the validity of the traget step from the current step.
        </para>
      </formalpara>
      <formalpara>
      <title>CSV Import Process Steps</title>
      <para>
        The steps in the CSV import process are listed in the left hand pane with the current step highlighted.
        Explanatory text and the widgets to setup and carry out the step are displayed in the right hand pane.
        The function of the controls in each step is explained below, in the explanatory information in the panes or in tooltips on some controls.
        The steps in the CSV import process are:
      <itemizedlist>
        <listitem><para><emphasis role="bold">Transaction Import Assistant</emphasis>: Introductory information panel.
          Click <emphasis role="bold"><guibutton>Next</guibutton></emphasis> to continue;</para>
        </listitem>
        <listitem>
          <para><emphasis role="bold"><guilabel>Select File for Import</guilabel></emphasis>: Display the File selection dialog.
            Navigate to the file you wish to import then click
            the <emphasis role="bold"><guibutton>Next</guibutton></emphasis> button;
          </para>
        </listitem>
        <listitem>
          <para><emphasis role="bold">Import Preview</emphasis>: The Import Preview pane controls set options
            for the import of CSV data and provides a preview of the data to be imported.
            <figure pgwide="1">
              <title>The CSV Import Preview Pane</title>
              <screenshot id="CSV_Import_Preview">
                <mediaobject>
                  <imageobject role="html">
                    <imagedata  fileref="figures/Help_CSV_Import_transactions_Preview.png" format="PNG" srccredit="David Cousens" width="515px"></imagedata>
                  </imageobject>
                  <imageobject role="fo">
                    <imagedata  fileref="figures/Help_CSV_Import_transactions_Preview.png" format="PNG" srccredit="David Cousens" ></imagedata>
                  </imageobject>
                  <caption>The CSV Import Preview Pane with settings to import the shown data.</caption>
                </mediaobject>
              </screenshot>
            </figure>
            <itemizedlist>
              <title>Import preview Controls</title>
              <listitem>
                <para id="trans-import-csv-save"><emphasis role="bold"><guilabel>Load and Save Settings</guilabel></emphasis>: Once you
                  have set all the import parameters, you can save these settings by typing
                  in a setting a unique name in the <guilabel>Load and Save Settings Entry</guilabel> combo box and clicking the
                  Save icon just to the right of the box. A previously defined settings group can be retrieved by selecting the
                  appropriate setting group name from the dropdown list activated by
                  the down arrow at the right end of the text box. This will set all other settings to the stored values.
                </para>
                <para> The delete/trashcan icon to the right of the Save icon can be used to remove
                  the saved settings group selected from the drop down list for the box.
                </para>
                <para> The settings group <emphasis role="bold"><guilabel>&appname; Export Settings</guilabel></emphasis>
                  defines a setting group for used for the export and reimport of <application>&appname;</application> transaction data - use this if
                  importing data previously exported from <application>&appname;</application>;
                </para>
              </listitem>
              <listitem>
                <para><emphasis role="bold"><guilabel>Account</guilabel></emphasis>: If the data you are
                  importing does not specify the source account for the transaction an account can be selected
                  from the drop down list will import all transactions to the selected account. Leave blank if your imported data
                  specifies a source account;
                </para>
              </listitem>
              <listitem>
                <para><emphasis role="bold"><guilabel>File Format</guilabel></emphasis>:
                  <itemizedlist>
                    <listitem>
                      <para><emphasis role="bold"><guilabel>Separators</guilabel></emphasis>: Selecting this radio button will allow
                        you to define characters which will be used to distinguish columns in the input file. The default is comma
                        separated. In countries using the comma as decimal separator the semicolon is common as column separator.
                        However spaces, tabs, colons or semicolons or any combination of them may be used to separate columns
                        in the input file by selecting the appropriate check boxes. You may also define custom separators by typing
                        the required characters into the text box and selecting the <guilabel>Custom</guilabel> checkbox. This may
                        be used in combination with any of the predefined separators;
                      </para>
                    </listitem>
                    <listitem>
                      <para><emphasis role="bold"><guilabel>Fixed-Width</guilabel></emphasis>: Selecting this radio button will
                        allow you to define column boundaries by double clicking at the appropriate positions in the sample records
                        displayed in the panel below. Single clicking in a column will narrow, widen or merge the column.
                      </para>
                    </listitem>
                  </itemizedlist>
                </para>
              </listitem>
              <listitem>
                <para><emphasis role="bold"><guilabel>Multi-split</guilabel></emphasis>: Selecting this check box allows the splits
                  for a single transaction to be defined on consecutive lines within the file with each line defining a single split.
                  If not selected each line is assumed to contain the information for a single transaction including one or two splits;
                </para>
              </listitem>
              <listitem>
                <para><emphasis role="bold"><guilabel>Miscellaneous</guilabel></emphasis>: The miscellaneous settings allow you to set:
                <itemizedlist>
                  <listitem>
                    <para><emphasis role="bold"><guilabel>Encoding</guilabel></emphasis>:
                      This is usually UTF-8, but may differ for files from other sources;</para>
                  </listitem>
                  <listitem>
                    <para><emphasis role="bold"><guilabel>Date Format</guilabel></emphasis>:
                      This does not default to the Locale setting so check it matches the data you are importing;</para>
                  </listitem>
                  <listitem>
                    <para><emphasis role="bold"><guilabel>Currency Format</guilabel></emphasis>:
                      Select the format of the decimal separator (full stop or comma or other) for the currency if the correct value is not supplied by Locale;</para>
                  </listitem>
                  <listitem>
                    <para><emphasis role="bold"><guilabel>Leading Lines to Skip</guilabel></emphasis>:
                      Select the number of header lines to skip in the imported file;</para>
                  </listitem>
                  <listitem>
                    <para><emphasis role="bold"><guilabel>Trailing Lines to Skip</guilabel></emphasis>:
                      Select the number of trailing lines to skip in the import file;</para>
                  </listitem>
                  <listitem>
                    <para><emphasis role="bold"><guilabel>Skip alternate lines</guilabel></emphasis>:
                      Use to skip every second line in the import file.</para>
                  </listitem>
                </itemizedlist>
                  to match the settings for the file you are importing. Tooltips may also contain information on the setting and options.
                </para>
              </listitem>
            </itemizedlist>
          </para>
          <para>The import panel shows the data being imported as it is interpreted using the settings chosen to define columns and formats.
            The dropdown lists in the headers for each column of the import allow you to associate a specific column in the imported data
            with a specific field in the display of a transaction in an account register. At a minimum to import data, columns in the
            imported data containing the following information <emphasis>must</emphasis> be specified:
            <itemizedlist>
              <listitem><para><guilabel>Date</guilabel>: of transaction;</para></listitem>
              <listitem><para><guilabel>Account</guilabel>: into which transaction is to be imported (or alternatively set the base account as above);</para></listitem>
              <listitem><para><guilabel>Description</guilabel>: of the transaction;</para></listitem>
              <listitem><para><guilabel>Deposit or Withdrawal</guilabel>: column.</para></listitem>
            </itemizedlist>
          </para>
          <para> The dropdown list of <application>&appname;</application> transaction data fields which may be associated
            with a column of the imported data contains the following:
            <itemizedlist>
              <listitem>
                <para><emphasis role="bold"><guilabel>None</guilabel></emphasis>: The column is not assigned to a transaction
                  data field and is not imported;
                </para>
              </listitem>
              <listitem>
                <para><emphasis role="bold"><guilabel>Date</guilabel></emphasis>: Ensure the date format in the column matches
                  the Miscellaneous date Format Setting;
                </para>
              </listitem>
              <listitem>
                <para><emphasis role="bold"><guilabel>Num</guilabel></emphasis>: Transaction Num field - Use for check numbers etc.; </para>
              </listitem>
              <listitem>
                <para><emphasis role="bold"><guilabel>Description</guilabel></emphasis>;
                </para>
              </listitem>
              <listitem>
                <para><emphasis role="bold"><guilabel>Notes</guilabel></emphasis>;
                </para>
              </listitem>
              <listitem>
                <para><emphasis role="bold"><guilabel>Transaction Commodity</guilabel></emphasis>;
                </para>
              </listitem>
              <listitem>
                <para><emphasis role="bold"><guilabel>Void Reason</guilabel></emphasis>;
                </para>
              </listitem>
              <listitem>
                <para><emphasis role="bold"><guilabel>Action</guilabel></emphasis>;
                </para>
              </listitem>
              <listitem>
                <para><emphasis role="bold"><guilabel>Account</guilabel></emphasis>: This header should be matched to a column
                  specifying the source account for a transaction if it is present. Otherwise, set the source account in the
                  <emphasis role="bold"><guilabel>Account</guilabel></emphasis> combo box;
                </para>
              </listitem>
              <listitem>
                <para><emphasis role="bold"><guilabel>Deposit</guilabel></emphasis>: Apply this header to a column containing
                  the amount of the transaction. Positive amounts in the column generally represent an increase in the account
                  balance and negative amounts a decrease in the balance (asset accounts: Checking, Savings).
                  In external statements supplied by a bank for a check or savings account, a credit (Cr)
                  is normally an increase in the account balance and a debit (Dr) a decrease in the
                  account balance. In the banks eyes, your savings or checking account is a Liability to them;
                </para>
                <para>
                  If the amount data is in separate columns for debits and credits you will have
                  to apply both this heading and the Withdrawal heading. </para>
              </listitem>
              <listitem>
                <para><emphasis role="bold"><guilabel>Withdrawal</guilabel></emphasis>: Apply this header to a column with the
                  amount of the transaction where positive amounts in the column represent a decrease in the account balance
                  and negative amounts an increase in the balance (e.g. Liability account: credit card).
                </para>
                <para>Where separate columns are used for debits and credit to the account apply it
                 to the opposite to the column to which Deposits is applied;
               </para>
               <note><para>Some experimentation may be necessary to determine the correct allocation of the Deposit and Withdrawal headings.</para></note>
              </listitem>
              <listitem>
                <para><emphasis role="bold"><guilabel>Price</guilabel></emphasis>: The price for commodity transactions and/or
                  transactions involving currency exchange;
                </para>
              </listitem>
              <listitem>
                <para><emphasis role="bold"><guilabel>Memo</guilabel></emphasis>: Additional column containing descriptive
                  information relevant to one split of a transaction. If in the first line of a multi-split import it will apply
                  to the source account. In subsequent lines/splits it is applied to the transfer account defined in that
                  line or allocated to it in the matcher;</para>
              </listitem>
              <listitem>
                <para><emphasis role="bold"><guilabel>Reconciled</guilabel></emphasis>: Apply to a column indicating the
                reconciliation status of the transaction. This generally only applies to data exported from <application>&appname;</application>;
                </para>
              </listitem>
              <listitem>
                <para><emphasis role="bold"><guilabel>Reconcile Date</guilabel></emphasis>: Apply to a column which specifies the
                  date of reconciliation, generally only for <application>&appname;</application> exported data;</para>
              </listitem>
              <listitem>
                <para><emphasis role="bold"><guilabel>Transfer Action</guilabel></emphasis>;
                </para>
              </listitem>
              <listitem>
                <para><emphasis role="bold"><guilabel>Transfer Account</guilabel></emphasis>: This header should be applied
                  to a column which specifies the transfer account for the second split of a single line import and/or for
                  subsequent splits in multiline exported transactions;</para>
              </listitem>
              <listitem>
                <para><emphasis role="bold"><guilabel>Transfer Memo</guilabel></emphasis>: Apply to a column with descriptive
                  information relevant to a split to  a transfer account specified by
                  <emphasis role="bold"><guilabel>Transfer Account</guilabel></emphasis>;</para>
              </listitem>
              <listitem>
                <para><emphasis role="bold"><guilabel>Transfer Reconciled</guilabel></emphasis>: Apply to a column with
                  reconciliation status information relevant to a split to a transfer account specified by <emphasis role="bold">
                  <guilabel>Transfer Account</guilabel></emphasis>;
                </para>
              </listitem>
              <listitem>
                <para><emphasis role="bold"><guilabel>Transfer Reconcile Date</guilabel></emphasis>: Apply to a column containing
                  a reconciliation date relevant to a split to a transfer account previously specified in
                  <emphasis role="bold"><guilabel>Transfer Account</guilabel></emphasis>.
                </para>
              </listitem>
            </itemizedlist>
          </para>
          <para>
            The <guilabel>Skip Errors</guilabel> check box will skip trying to import any rows with errors in matching the columns.
          </para>
          <para>When you are happy with all the import settings, <link linkend="trans-import-csv-save">save</link> them
             if you will use the same settings again, then press the <emphasis role="bold"><guibutton>Next</guibutton></emphasis> button.
          </para>
        </listitem>
        <listitem>
          <para><emphasis role="bold">Match Import and <application>&appname;</application> accounts</emphasis>: This window allows you
            to map the accounts identified in the account columns (Account and Transfer Account) with accounts in the
            <application>&appname;</application> account tree (Account name). Double click on a row to bring up a dialog to select the
            matching <application>&appname;</application> account. If you have previously imported transactions to this account
            and account mappings can be matched automatically, this window will not be displayed.
            When you have selected a match for all accounts, click on the <emphasis role="bold"><guibutton>Next</guibutton></emphasis> button;
          </para>
        </listitem>
        <listitem>
          <para><emphasis role="bold">Transaction Information</emphasis>: The Transaction Information
            panel allows review of data entry settings so far. Clicking Next will perform checks on the data.
            If there are errors you will be returned to the <emphasis role="bold">Import Preview</emphasis> pane
            to edit the settings. For no errors you proceed to the next step;
          </para>
        </listitem>
        <listitem>
          <para><emphasis role="bold">Match Transactions</emphasis>: Clicking on Match Transactions will then bring up the
            main <link linkend="trans-import-matcher">Import Matcher</link> window. The Import Matcher is described in a
            separate section;
          </para>
        </listitem>
        <listitem>
          <para><emphasis role="bold">Import Summary</emphasis>: <application>&appname;</application> displays a summary
            of the imported data. Click on the <emphasis role="bold"><guibutton>Close</guibutton></emphasis> to exit the wizard.
          </para>
        </listitem>
      </itemizedlist>
      </para>
      </formalpara>
      <caution>
        <para>Multi-split imports of multicurrency transactions and commodity
          transactions are experimental and may currently experience some errors.
          Please experiment and report any bugs encountered.
        </para><!--FIXME remove when bug fixes are incorporated.-->
      </caution>
    </sect2>

    <sect2 id="trans-import-MT940-MT942-DTAUS">
      <title>Import MT940 and MT942 SWIFT and DTAUS format files</title>
      <para> The SWIFT MT940 format is used for an end of day statement by banks using the SWIFT network for data exchange.
        MT942 is used for an intra-day statement in the same system. DTAUS is a format used with 9 track magnetic tapes
        since 1976 and later with other removable media (floppy disks). DTAUS has not been supported by banks since 1 February 2016.
      </para><!--FIXME replace with link to glossary if and when extended to help -->
      <para>When you select <emphasis role="bold"><guimenu>File</guimenu>-><guisubmenu>Import</guisubmenu>-></emphasis>
        <itemizedlist>
          <listitem><para><emphasis role="bold"><guimenuitem>Import MT940</guimenuitem></emphasis> or;</para></listitem>
          <listitem><para><emphasis role="bold"><guimenuitem>Import MT942</guimenuitem></emphasis> or;</para></listitem>
          <listitem><para><emphasis role="bold"><guimenuitem>Import DTAUS</guimenuitem></emphasis>.</para></listitem>
        </itemizedlist>
        from the menu, <application>&appname;</application> opens a file selection dialog. Navigate to the MT940, MT942 or DTAUS format file
        you wish to import and then click on the <emphasis role="bold"><guibutton>Import</guibutton></emphasis> button. On the first import of data to a given account specification in the import file, <application>&appname;</application> will
        bring up an account selection dialog to select an appropriate account into which to import the transactions in the file.
        <application>&appname;</application> will map the account description in the import file onto the selected account and use it for future imports from the same account. The imported transactions
        will then be displayed in the <link linkend="trans-import-matcher"><emphasis role="bold"><guimenuitem>Generic Import Transaction Matcher</guimenuitem></emphasis></link> for review.
      </para>
    </sect2>

    <sect2 id="trans-import-matcher">
      <title>Generic Transaction Import Matcher</title>
      <figure id="fig-fil-imp-match" pgwide="1">
        <title>The Generic Transaction Import Matcher Window</title>
        <screenshot id="ImportMatcherScreenShot">
          <mediaobject>
            <imageobject role="html">
              <imagedata fileref="figures/Help_Import_Transaction_matcher_1.png" format="PNG" srccredit="David Cousens" width="510"></imagedata>
            </imageobject>
            <imageobject role="fo">
                        <imagedata fileref="figures/Help_Import_Transaction_matcher_1.png" format="PNG" srccredit="David Cousens"></imagedata>
            </imageobject>
            <caption>This is an image of the import transaction matcher window after opening a file to import.</caption>
          </mediaobject>
        </screenshot>
      </figure>
      <para>The Import Matcher checks whether an imported transaction matches an existing transaction already recorded in <application>&appname;</application>
          within a predefined time window (~+_42 days) for the account into which the transactions are being imported. A match probablity is
          calculated based on the Date, Amount, Transaction ID's(if present), Check numbers (if present) and the Description
          and split Memo fields. Exact matches will generate a high match probability and flag a transaction as matching an existing
          transaction and therefore not to be imported. If there is a lower quality match to an existing transaction, the imported transaction
          may be flagged for updating of non-matching information in the <application>&appname;</application> record of the matching transaction. These decisions can be overridden by the user.
      </para>
      <para>If no matching transaction can be identified the transaction will be flagged for import. The matcher will attempt to assign
          a transfer account based on matches between tokenized information for previously imported transactions stored in lists associated
          with the transfer accounts which were assigned to them on import.
        <itemizedlist>
          <listitem><para>If a good match is obtained, the transfer account is assigned and
          the transaction is flagged as ready to import.</para></listitem>
        <listitem><para>If a transfer account cannot be assigned, the transaction will be flagged for import and manual
          assignment of the transfer account by the user. By default, if no transfer account is assigned, transactions will be assigned to an Imbalance
          account on import. This is to indicate that they need an appropriate account assigned to them.</para></listitem>
        </itemizedlist>
      </para>
      <para>The generic import transaction matcher is invoked when transaction data is imported using any of the following import formats:
        <itemizedlist spacing="compact">
          <listitem><para>QIF;</para></listitem>
          <listitem><para>OFX/QXF;</para></listitem>
          <listitem><para>CSV;</para></listitem>
          <listitem><para>MT940;</para></listitem>
          <listitem><para>MT942;</para></listitem>
          <listitem><para>DTAUS.</para></listitem>
        </itemizedlist></para>
        <para>This window has the following
        <itemizedlist>
        <title>Controls:</title>
          <listitem><para><emphasis role="bold"><guilabel>List of downloaded transactions</guilabel></emphasis>: Table containing information from the imported transactions. </para></listitem>
          <listitem><para><emphasis role="bold"><guibutton>Show the Source Account column</guibutton></emphasis>: Checkbox to displays the account into which the transactions are being
            imported. This is the second column labelled Account in the screenshot;</para></listitem>
          <listitem><para><emphasis role="bold"><guibutton>Help</guibutton></emphasis>: Display a popup help window;</para></listitem>
          <listitem><para><emphasis role="bold"><guibutton>Cancel</guibutton></emphasis>: Close this window without importing transaction data;</para></listitem>
          <listitem><para><emphasis role="bold"><guibutton>OK</guibutton></emphasis>: Close this window importing transaction data;</para></listitem>
        </itemizedlist>
      </para>
      <para> The <guilabel>List of downloaded transactions</guilabel> has the following columns which display the following information for each of the downloaded transactions:</para>
      <itemizedlist>
        <title id="trans-match-col">Columns in <quote>List of Downloaded Transactions</quote></title>
        <listitem><para><emphasis role="bold"><guilabel>Date</guilabel></emphasis> - The date supplied with the downloaded transaction;</para></listitem>
        <listitem><para><emphasis role="bold"><guilabel>Account</guilabel></emphasis> - The import or base account to which the transactions will be imported (optional see above);</para></listitem>
        <listitem><para><emphasis role="bold"><guilabel>Amount</guilabel></emphasis> - The amount of the transaction (split to the import or base account);</para></listitem>
        <listitem><para><emphasis role="bold"><guilabel>Description</guilabel></emphasis> - The description of the transaction;</para></listitem>
        <listitem><para><emphasis role="bold"><guilabel>Memo</guilabel></emphasis> - The memo for the split to the import or base account of the transaction;</para></listitem>
        <listitem><para><emphasis role="bold"><guilabel>A</guilabel></emphasis> - Checkbox which indicates that the transaction is to be imported as a new transaction;</para></listitem>
        <listitem><para><emphasis role="bold"><guilabel>U+C</guilabel></emphasis> - Checkbox which indicates that the transaction matches an existing transaction but has some differences
         and the existing transaction will be updated with the different information</para></listitem>
        <listitem><para><emphasis role="bold"><guilabel>C</guilabel></emphasis> - Checkbox which indicates that the transaction matches an existing transaction and will not be imported;</para></listitem>
        <listitem><para><emphasis role="bold"><guilabel>Info</guilabel></emphasis> - For transactions which have been matched to an existing transaction displays a bar indicating the quality of the match
         and text indicating whether the transaction is to be imported.</para></listitem>
      </itemizedlist>
      <para>In addition to the checkboxes, the import status of each transaction is indicated by the background color of the transaction row. The checkbox state,
        background colors and their meaning are described in <xref linkend="match_status"/>.</para>
      <table id="match_status" frame="all" >
        <title>Import Status of Transactions</title>
        <tgroup cols="3" rowsep="1" >
          <colspec colwidth="1*+ 1cm" align="center" colsep="1" />
          <colspec colwidth="15*" align="left" colsep="1" />
          <colspec colwidth="26*" align="left" colsep="1" />
          <thead>
            <row rowsep="1">
              <entry>Checked Box</entry>
              <entry>Background</entry>
              <entry>Meaning</entry>
            </row>
          </thead>
          <tbody>
            <row>
              <entry morerows='1' valign='middle'><emphasis role="strong">A</emphasis></entry>
              <entry><?dbhtml bgcolor="#FFD700"?><?dbfo bgcolor="#FFD700"?>Gold</entry>
              <entry><?dbhtml bgcolor="#FFD700"?><?dbfo bgcolor="#FFD700"?>No matches, flagged for input and no transfer account matched &ndash;
                Import as a new transaction. Intervention required to select a transfer account.
              </entry>
            </row>
            <row>
              <entry><?dbhtml bgcolor="#CFFFCB"?><?dbfo bgcolor="#CFFFCB"?>DarkSeaGreen1</entry>
              <entry><?dbhtml bgcolor="#CFFFCB"?><?dbfo bgcolor="#CFFFCB"?>No matches detected, flagged for input and a transfer account is matched &ndash;
                Import as a new transaction. Reconciliation status will be set as cleared (c) on import. Intervention is not required.
              </entry>
            </row>
            <row>
              <entry  valign='middle'><emphasis role="strong">U+C</emphasis></entry>
              <entry><?dbhtml bgcolor="#CFFFCB"?><?dbfo bgcolor="#CFFFCB"?>DarkSeaGreen1</entry>
              <entry><?dbhtml bgcolor="#CFFFCB"?><?dbfo bgcolor="#CFFFCB"?>Matches an existing transaction but not exactly on date and/or amount &ndash;
                Intervention not required, import and update.  Reconciliation status will be set as cleared (c) on import.
              </entry>
            </row>
            <row>
              <entry  valign='middle'><emphasis role="strong">C</emphasis></entry>
              <entry><?dbhtml bgcolor="#CFFFCB"?><?dbfo bgcolor="#CFFFCB"?>DarkSeaGreen1</entry>
              <entry><?dbhtml bgcolor="#CFFFCB"?><?dbfo bgcolor="#CFFFCB"?>Matches an existing transaction: &ndash;
                Not to be imported. The existing transaction reconciliation status will be as cleared (c) on import. Intervention is not required
              </entry>
            </row>
            <row>
              <entry></entry>
              <entry><?dbhtml bgcolor="#FF4040"?><?dbfo bgcolor="#FF4040"?>Brown1</entry>
              <entry><?dbhtml bgcolor="#FF4040"?><?dbfo bgcolor="#FF4040"?>Transaction has poor matches and no action was set: &ndash;
                Not to be imported. Intervention required.
              </entry>
            </row>
            <row>
              <entry></entry>
              <entry><?dbhtml bgcolor="#6495ED"?><?dbfo bgcolor="#6495ED"?>Cornflower Blue</entry>
              <entry><?dbhtml bgcolor="#6495ED"?><?dbfo bgcolor="#6495ED"?>Row is selected</entry>
            </row>
          </tbody>
        </tgroup>
      </table>
      <note><para>The colors illustrated here are the defaults for <application>&appname;</application> specified in
        <ulink url="https://github.com/Gnucash/gnucash/blob/maint/gnucash/gnucash-fallback-310.css">gnucash-fallback-310.css</ulink>.
        You may experience different colors if the gtk-3.0 CSS files have been modified</para>
      </note>
      <para>You may always intervene manually to
        <itemizedlist>
          <listitem><para>change the import action by selecting another checkbox (or none) and/or</para></listitem>
          <listitem><para>manually assign a different transfer account</para></listitem>
        </itemizedlist>
        after reviewing the matched transactions and accounts and the automatically selected actions.
      </para>
      <para>Multi row selection is enabled for the list of downloaded transactions. The following operations can be performed on the list of downloaded transactions:</para>
      <itemizedlist>
        <listitem>
          <para><emphasis role="bold">Click <mousebutton>Button1</mousebutton> on a row</emphasis>:
           Select this row (row is displayed with a blue background);
          </para>
        </listitem>
        <listitem>
          <para><emphasis role="bold">Double-click <mousebutton>Button1</mousebutton> on a row</emphasis>:
            If the transactions is flagged for import (see below) this will open an account selection dialog to select
            a destination/transfer account to be used in the second split of the imported transaction. You may create a new
            account if necessary in this dialog using the <emphasis role="bold"><guibutton>New Account</guibutton></emphasis>
            buttonIf the transaction is flagged as matching an existing transaction either for import or updating,
            the match picker dialog is opened to allow the matched transactions to be examined and a correct match selected;
          </para>
        </listitem>
        <listitem>
          <para><emphasis role="bold"><keycombo action="simul"><keycap>Ctrl</keycap><mousebutton>Button1</mousebutton></keycombo> on a row</emphasis>:
            Add the row to a selection of rows (displayed with a blue background) to which a single destination/transfer account may be applied;
          </para>
        </listitem>
        <listitem>
          <para><emphasis role="bold"><keycombo action="simul"><keycap>Shift</keycap><mousebutton>Button1</mousebutton></keycombo> on a row</emphasis>:
            Select all rows between the last selected row and this row and add them to the current selection of rows;
          </para>
        </listitem>
        <listitem>
          <para><emphasis role="bold">Click <mousebutton>Button2</mousebutton> in the window</emphasis>:
            Display a popup menu which when clicked in turn opens a dialog to select a single destination/transfer
            account which will be applied to all rows currently selected.
          </para>
        </listitem>
      </itemizedlist>
      <important>
        <para>It is important to assign a transfer account to each transaction prior to import of the transactions. Otherwise the tokenized information from the imported transaction
          will not be appended to the list of tokens for an assigned account for use in future matching of transactions to transfer accounts.
        </para>
      </important>
      <note>
        <para>Note that "reconciled" in this context does not mean the same as "reconciled" in the process of reconciling an account to an external statement. The reconciliation status of an imported transaction is set to cleared (c) on import of a new transaction
        </para>
      </note>

      <para>Where a row has been matched to an existing transaction or is to update an existing transaction it will have a DarkSeaGreen background.
        <emphasis role="bold">Double-clicking <mousebutton>Button1</mousebutton></emphasis> on the row will bring up the Match Picker dialog which displays detail of the imported.
        If you, feel the wrong transfer account has been assigned or the matcher has not produced a valid result, you may change the
        checkbox selection if you disagree with the matcher decisions and you may reassign an assigned transfer account (see below).
      </para>
      <para><emphasis role="bold">Double-clicking <mousebutton>Button1</mousebutton></emphasis> on a row marked as New with a <phrase>DarkSeaGreen1</phrase> background
        and a transfer account assigned to it will bring up the account selection dialog to allow you to
        choose a different transfer account for the second split.
      </para>
      <para><emphasis role="bold">Double-clicking <mousebutton>Button1</mousebutton></emphasis> on a row marked New with no transfer account matched with a <phrase>Gold</phrase>
        background will also bring up the account selection dialog to allow you to assign a suitable
        transfer account to the transaction.
      </para>
     <sect3><title>Assign a Destination Account to a Single Transaction</title>
        <para>The currently selected row is selected by <mousebutton>left</mousebutton> clicking it. It is displayed with a
          <phrase><?dbhtml bgcolor="#6495ED"?><?dbfo bgcolor="#6495ED"?>Cornflower Blue</phrase> background color.</para>
        <para>Double <mousebutton>left</mousebutton> clicking  on a row will select it and open an Account Selection
          dialog to allow you to assign a transfer account. Select the desired transfer account in the dialog and click <emphasis role="bold"><guibutton>OK</guibutton></emphasis>.
          The dialog has a <emphasis role="bold"><guibutton>New Account</guibutton></emphasis> button which will
          allow you to create a suitable account if there is no existing account which can be applied as the transfer account.The row
          background will change to a <phrase><?dbhtml bgcolor="#CFFFCB"?><?dbfo bgcolor="#CFFFCB"?>DarkSeaGreen1</phrase> and the assigned destination account will be displayed
          in the Info column.
        </para>
        <para>or alternatively, <mousebutton>left</mousebutton> click on a row to select it followed by a
           <mousebutton>right</mousebutton> click to bring up a popup menu then select
          <guimenuitem>Assign a transfer account</guimenuitem> to display the <guilabel>Account Selection</guilabel> dialog, select the destination account and
           click the <emphasis role="bold"><guibutton>OK</guibutton></emphasis> button.
        </para>
      </sect3>
      <sect3>
        <title>Assign a Destination Account to Multiple Transactions</title>
        <para>Sometimes you will have several transactions which can have the same destination account. <application>&appname;</application>
              allows you to select multiple transactions and apply the same destination account to all transactions
              in the selection.
        </para>
        <para>Rows in a selection are displayed with a <phrase><?dbhtml bgcolor="#6495ED"?><?dbfo bgcolor="#6495ED"?>Cornflower Blue</phrase> background.</para>
        <para>Only rows which have the <emphasis role="strong">A</emphasis> checkbox checked and either a <phrase><?dbhtml bgcolor="#CFFFCB"?><?dbfo bgcolor="#CFFFCB"?>DarkSeaGreen1</phrase>
         or <phrase><?dbhtml bgcolor="#FFD700"?><?dbfo bgcolor="#FFD700"?>Gold</phrase> background colour can be selected for inclusion in a multiple selection. Rows with a
          <phrase><?dbhtml bgcolor="#FF4040"?><?dbfo bgcolor="#FF4040"?>Brown1</phrase> background or with the <emphasis role="strong">U+C</emphasis>  or <emphasis role="strong">C</emphasis>
          checkboxes checked cannot be selected in a multiple  selection.
        </para>
        <para>To select rows and add rows to a selection either:</para>
        <itemizedlist>
          <listitem>
            <para>
              <emphasis role="bold">Click <mousebutton>Button1</mousebutton></emphasis>
              on first row and then
              <emphasis role="bold"><keycombo action='simul'>
                <keycap>Ctrl</keycap>
                <mousebutton>Button1</mousebutton></keycombo>
              </emphasis>
              on other rows to add to the selection; or
            </para>
          </listitem>
          <listitem>
            <para>
              <emphasis role="bold">Click <mousebutton>Button1</mousebutton></emphasis> on first row and then
              <emphasis role="bold">
                <keycombo action='simul'>
                  <keycap>Shift</keycap>
                  <mousebutton>Button1</mousebutton>
                </keycombo>
              </emphasis> on another row to select all rows between them.
            </para>
           </listitem>
           <listitem>
            <para>Rubber banding is also enabled so you may also <emphasis role="bold">
              hold <mousebutton>Button1</mousebutton> and drag</emphasis> over rows to create a selection. To
              add more rows, <emphasis role="bold"><keycombo action="press"><keycap>Ctrl</keycap><mousebutton>Button1</mousebutton></keycombo> and
              drag</emphasis> over more rows.
            </para>
           </listitem>
         </itemizedlist>
        <para>then <emphasis role="bold"><keycombo action="click"><mousebutton>Button2</mousebutton></keycombo></emphasis> to display a popup menu and then select
          <guimenuitem>Assign a transfer account</guimenuitem> to open the Account
           Selection dialog. Select the desired destination account (create a new account if necessary) and click the <emphasis role="bold"><guibutton>OK</guibutton></emphasis>
           button in the Account Selection dialog.
         </para>
      </sect3>
      <sect3>
        <title>Completing the Import</title>
        <para>Once you have assigned destination accounts for all the imported transactions using the above methods
          (all row backgrounds will be a light green colour), check that the assigned destination acounts are correct
          and then press the <guibutton>OK</guibutton> button at the bottom of <xref linkend="fig-fil-imp-match"/>.
          The transactions selected for import will have their splits added to the selected source and destination accounts.
        </para>
        <para>The tokenized data from the transactions assigned to a given transfer account is stored on exiting from the matcher and is used to
          match transactions to the appropriate transfer account in future imports.
        </para>
      </sect3>
    </sect2>
    <sect2 id="trans_match_picker">
      <title>Match Picker</title>
      <para>The Match Picker allows you to review and edit existing <application>&appname;</application> transactions which have been matched to a transaction being imported.
        <keycombo action ="double-click"><mousebutton>Button1</mousebutton></keycombo> on a row with the
        <guilabel>C</guilabel> checkbox checked to bring this dialog up.
      </para>
      <figure pgwide="1">
        <title>The Match Picker Dialog</title>
        <screenshot id="ImportMatcherPicker">
          <mediaobject>
            <imageobject role="html">
              <imagedata fileref="figures/Help_Import_MatchPicker.png" format="PNG" srccredit="David Cousens" width="510"></imagedata>
            </imageobject>
            <imageobject role="fo">
                        <imagedata fileref="figures/Help_Import_MatchPicker.png" format="PNG" srccredit="David Cousens"></imagedata>
            </imageobject>
            <caption>The Match Picker dialog window showing existing &appname; transactions matching an imported transaction.</caption>
          </mediaobject>
        </screenshot>
      </figure>
      <para>The top pane of the Match Picker displays details of the first split of the transaction to be imported. The column labels:
        <itemizedlist>
          <listitem><para><emphasis role="bold"><guilabel>Account</guilabel></emphasis></para></listitem>
          <listitem><para><emphasis role="bold"><guilabel>Date</guilabel></emphasis></para></listitem>
          <listitem><para><emphasis role="bold"><guilabel>Amount</guilabel></emphasis></para></listitem>
          <listitem><para><emphasis role="bold"><guilabel>Description</guilabel></emphasis></para></listitem>
          <listitem><para><emphasis role="bold"><guilabel>Memo</guilabel></emphasis></para></listitem>
          <listitem><para><emphasis role="bold"><guilabel>Balanced</guilabel></emphasis></para></listitem><!--FIXME ????-->
        </itemizedlist>
        are the same and have the same meaning as in <xref linkend="trans-match-col"/> with the exception of the Balanced column which
        gives the amount of the balancing split for the transaction.<!--FIXME not sure what happens here with multisplit transactions -->
      </para>
      <para>The lower pane displays the details of existing <application>&appname;</application> transactions which match this transaction. If no transactions are displayed check the
        <emphasis role="bold"><guilabel>Show Reconciled</guilabel></emphasis> checkbox at the bottom of the panel. The first row in
        this pane will normally be the auto-matched transaction with the best match score. Other rows will display other existing
        transactions which might also be matches for the transaction being imported. The columns in this pane are:
        <itemizedlist>
          <listitem><para><emphasis role="bold"><guilabel>Confidence</guilabel></emphasis>: This column indicateds the confidence of the
            individual match as both a bar chart and a numerical value. Where the bar extends into the green, the match is good.
            If the bar only extend to the red or yellow setions the quality of match is more doubtful.</para>
          </listitem>
          <listitem><para><emphasis role="bold"><guilabel>Date</guilabel></emphasis></para></listitem>
          <listitem><para><emphasis role="bold"><guilabel>Amount</guilabel></emphasis>: If this does not match exactly the amount
            of the transaction being imported but otherwise the match is good, the amount of the imported transactions is
            used to update the existing transaction matching it.</para></listitem>
          <listitem><para><emphasis role="bold"><guilabel>Description</guilabel></emphasis></para></listitem>
          <listitem><para><emphasis role="bold"><guilabel>Memo</guilabel></emphasis></para></listitem>
          <listitem><para><emphasis role="bold"><guilabel>Reconciled</guilabel></emphasis>: Indicates the reconciliation
            status of a matching existing transaction.</para>
          </listitem>
          <listitem><para><emphasis role="bold"><guilabel>Pending Action</guilabel></emphasis></para></listitem>
          <!--FIXME  not sure what this column really indicates. Doesn't seem to display the actual action proposed i.e. whether it is to skip importing or to update an existing transaction.-->
        </itemizedlist>
      </para>
      <para>If you are not happy with the existing transaction that was auto-matched, <keycombo action="click"><mousebutton>Button1</mousebutton></keycombo> on your preferred
        match to select it and then <keycombo action="click"><mousebutton>Button1</mousebutton></keycombo> the <emphasis role="bold"><guibutton>OK</guibutton></emphasis>.
        The transaction will then be marked as a (manual) match in the Info column of the Import Matcher.
        To exit the dialog without changing the auto-match <keycombo action="click"><mousebutton>Button1</mousebutton></keycombo> on the <emphasis role="bold"><guibutton>Cancel</guibutton></emphasis>.
      </para>
    </sect2>
    <sect2 id="ImportMatchEditor">
      <title>Import Match Editor</title>
      <para>The Import Match Editor allows you to edit the data used by <application>&appname;</application> to automatically assign a
        transfer account in the Import Matcher. It can be used to edit the data used by the Bayesian
        matcher, the Non-Bayesian matcher and online ID's. To open it select <emphasis role="bold">
        <guimenu>Tools</guimenu>-><guimenuitem>Import Map Editor</guimenuitem></emphasis> from
        the menu.
      </para>
      <figure pgwide="1">
        <title>The Import Map Editor</title>
        <screenshot>
          <mediaobject>
            <imageobject role="html">
              <imagedata fileref="figures/Help_Import_Map_Editor.png" format="PNG" srccredit="David Cousens" width="510"></imagedata>
            </imageobject>
            <imageobject role="fo">
                        <imagedata fileref="figures/Help_Import_Map_Editor.png" format="PNG" srccredit="David Cousens"></imagedata>
            </imageobject>
            <caption>The Import Map Editor illustrating typical entries for the Bayesian matcher.</caption>
          </mediaobject>
        </screenshot>
      </figure>
      <para>The three radio buttons at the top of the dialog select the type of data being displayed and edited:
        <itemizedlist>
          <listitem>
            <para><emphasis role="bold"><guilabel>Bayesian</guilabel></emphasis>:
              The Bayesian matcher matches a transfer or destination account using
              the frequency of association of a token string with an assigned transfer/destination account in the Import matcher
              for a specific source account (the account that the first split of the imported transactionis directed to);
            </para>
          </listitem>
          <listitem>
            <para><emphasis role="bold"><guilabel>Non-Bayesian</guilabel></emphasis>:
              The Non Bayesian matcher matches the transfer account on the basis of the occurrence of a token string in
              transactions assigned to a transfer/destination account and does not record the frequency of association. This
              was the original <application>&appname;</application> matching process and has now been superceeded by the Bayesian matcher in more recent versions;
            </para>
          </listitem>
          <listitem>
            <para><emphasis role="bold"><guilabel>OnlineiD</guilabel></emphasis>:
              Online ids are specific strings which identify specific accounts in information downloaded from online sources.
            they may include account numbers and specific instiution identifiers.
            </para>
          </listitem>
        </itemizedlist>
      </para>
      <para>The <emphasis role="bold"><guilabel>Bayesian</guilabel></emphasis> matcher data columns are:
        <itemizedlist>
          <listitem>
            <para><emphasis role="bold"><guilabel>Source Account</guilabel></emphasis>:
              This is the account into which a transaction has been imported and is normally the first split in an
              imported record. It may either be specified in the record itself or during the import setup for all
              transactions to be imported. The arrow control at the left of each entry in this column may be used
              to display all the data used in matching a transfer or destination account for transactions which have
              this account as their source split;
            </para>
          </listitem>
          <listitem>
            <para><emphasis role="bold"><guilabel>Match String</guilabel></emphasis>:
              This column displays a specific token string that has been associated with the allocation of the
              account in the <emphasis role="bold"><guilabel>Mapped to Account Name</guilabel></emphasis> column as
              a transfer/destination account for transfers to the <guilabel>Source Account</guilabel>;
            </para>
          </listitem>
          <listitem>
            <para><emphasis role="bold"><guilabel>Mapped to Account Name</guilabel></emphasis>:
              The account name in this column is a <application>&appname;</application> account name which has been allocated as a
              transfer/destination account in association with the token string in the
              <emphasis role="bold"><guilabel>Match String</guilabel></emphasis> column;
            </para>
          </listitem>
          <listitem>
             <para><emphasis role="bold"><guilabel>Count of Match String Usage</guilabel></emphasis>:
             This is the number of times the token string in the <emphasis role="bold"><guilabel>Match String</guilabel></emphasis>
              column has occurred in association with the transfer/destination account specified in the
              <emphasis role="bold"><guilabel>Mapped to Account Name</guilabel></emphasis> column for transactions imported to <application>&appname;</application>.
            </para>
          </listitem>
        </itemizedlist>
      </para>
      <para>The <emphasis role="bold"><guilabel>Non-Bayesian</guilabel></emphasis> matcher displays the same first three columns as the Bayesian matcher having the same usage.
        It does not store data on the frequency with which a particular token is associated with the assignement of a given
        transfer/destination account. It has an additional column which specifies the type of the imported data process in
        which the assignment occurred.It has the following columns:
        <itemizedlist>
          <listitem>
            <para><emphasis role="bold"><guilabel>Source Account</guilabel></emphasis>;</para>
          </listitem>
          <listitem>
            <para><emphasis role="bold"><guilabel>Based on</guilabel></emphasis>:
              This identifies the import process in which the <emphasis role="bold"><guilabel>Match String</guilabel></emphasis>
              was associated with the transfer destination account in the <emphasis role="bold"><guilabel>Mapped to Account Name</guilabel></emphasis>
              column;
            </para>
          </listitem>
          <listitem>
            <para><emphasis role="bold"><guilabel>Match String</guilabel></emphasis>;</para>
          </listitem>
          <listitem>
            <para><emphasis role="bold"><guilabel>Mapped to Account Name</guilabel></emphasis>.</para>
          </listitem>
        </itemizedlist>
      </para>
      <para><emphasis role="bold"><guilabel>Online ID</guilabel></emphasis> displays the same columns with the same data as the Non-Bayesian matcher.
      </para>
      <para>The <emphasis role="bold"><guilabel>Filter</guilabel></emphasis> textbox at the bottom of the dialog allows filtering
        of the displayed data matching the entered string in either the
        <emphasis role="bold"><guilabel>Match String</guilabel></emphasis> column or the <emphasis role="bold"><guilabel>Mapped to Account Name</guilabel></emphasis>
        column.
      </para>
      <para>The <emphasis role="bold"><guibutton>Expand All</guibutton></emphasis> and <emphasis role="bold"><guibutton>Collapse All</guibutton></emphasis> buttons expand or collapse the data
      in the other columns for the accounts in the <emphasis role="bold"><guilabel>Source Account</guilabel></emphasis> column.
      </para>
      <para>The <emphasis role="bold"><guibutton>Delete</guibutton></emphasis> button will delete any selected rows in the displayed matcher data.
      </para>
      <para>The <emphasis role="bold"><guibutton>Close</guibutton></emphasis> button closes the Import Match Editor dialog.
      </para>
    </sect2>
  </sect1>
  <sect1 id="trans-export">
    <title>Exporting Transactions</title>
    <para><application>&appname;</application> allows transaction data to be exported in CSV format with the optional use of alternative column separators.
      Transactions can be exported in either a single line format (simple layout) which can only be used for transactions with
      two splits and may not allow all the data associated with a transaction to be exported or in a multiline format where
      two or more lines are used for transactions with two or more splits with each splits information on separate lines.
      Transaction data can be exported either from the currently selected active register or from selected accounts.
      The menu commands to export transactions are:
      <itemizedlist>
        <listitem><para><emphasis role="bold"><guimenu>File</guimenu>-><guisubmenu>Export</guisubmenu>-><guimenuitem>Export Transactions to CSV</guimenuitem></emphasis>;</para></listitem>
        <listitem><para><emphasis role="bold"><guimenu>File</guimenu>-><guisubmenu>Export</guisubmenu>-><guimenuitem>Export Active Register to CSV</guimenuitem></emphasis>.</para></listitem>
      </itemizedlist>
      These commands start the wizard illustrated in <!--FIXME --> to setup the export. They differ only in that in the latter case the
       <emphasis role="bold"><guilabel>Account Selection</guilabel></emphasis> step is not available in the left hand pane.
    </para>
    <figure pgwide="1">
      <title>The Export Transactions Wizard.</title>
      <screenshot id="export-transactions-wizard">
        <mediaobject>
          <imageobject role="html">
            <imagedata fileref="figures/Help_Choose_Export_Settings.png" format="PNG" srccredit="David Cousens" width="510"></imagedata>
          </imageobject>
          <imageobject role="fo">
                      <imagedata fileref="figures/Help_Choose_Export_Settings.png" format="PNG" srccredit="David Cousens"></imagedata>
          </imageobject>
        </mediaobject>
      </screenshot>
    </figure>
    <para> The Export transaction wizard opens at the first step and performs the steps listed in the left hand pane:
      <itemizedlist>
        <listitem>
          <para><emphasis role="bold"><guilabel>Choose Export Settings</guilabel></emphasis>;</para>
        </listitem>
        <listitem>
          <para><emphasis role="bold"><guilabel>Account Selection</guilabel></emphasis>;</para>
        </listitem>
        <listitem>
          <para><emphasis role="bold"><guilabel>Choose File Name for export</guilabel></emphasis>;</para>
        </listitem>
        <listitem>
          <para><emphasis role="bold"><guilabel>Export Now...</guilabel></emphasis>;</para>
        </listitem>
        <listitem>
          <para><emphasis role="bold"><guilabel>Export Summary</guilabel></emphasis>.</para>
        </listitem>
      </itemizedlist>
    </para>
    <para>Navigation between the steps uses the buttons displayed in the right hand lower corner of the wizard.
      Which of the following buttons are displayed will depend on what is permissible from the step:
      <itemizedlist>
        <listitem>
          <para><emphasis role="bold"><guilabel>Cancel</guilabel></emphasis>:
            Exit the wizard without exporting any transactions;</para>
        </listitem>
        <listitem>
          <para><emphasis role="bold"><guilabel>Back</guilabel></emphasis>:
            Return to the previous step in the wizard;</para>
        </listitem>
        <listitem>
         <para><emphasis role="bold"><guilabel>Next</guilabel></emphasis>:
           Proceed to the next step.</para>
        </listitem>
     </itemizedlist>
    </para>
    <sect2 id="trans-export-settings">
      <title>Choose Export Settings</title>
      <para>This step allows you to choose various options in the formattig of the transactions being exported.</para>
      <para>The <emphasis role="bold"><guilabel>Options</guilabel></emphasis> checkboxes may be selected singly or both may be selected together:
        <itemizedlist>
          <listitem><para><emphasis role="bold"><guilabel>Quotes</guilabel></emphasis>:
            Surround each data field in quotes;</para>
          </listitem>
          <listitem><para><emphasis role="bold"><guilabel>Simple layout</guilabel></emphasis>:
            If checked, the ouput transaction data will be as displayed in the single row register
              view option and some of the transfer detail may be lost.
            </para>
            <para>The column headers for data exported in <emphasis role="bold"><guilabel>Simple layout</guilabel></emphasis> format are:</para>
              <orderedlist>
                <listitem><para><emphasis role="bold"><guilabel>Date</guilabel></emphasis></para>
                </listitem>
                <listitem><para><emphasis role="bold"><guilabel>Account Name</guilabel></emphasis>: name of the source account;</para>
                </listitem>
                <listitem><para><emphasis role="bold"><guilabel>Number</guilabel></emphasis></para>
                </listitem>
                <listitem><para><emphasis role="bold"><guilabel>Description</guilabel></emphasis></para>
                </listitem>
                <listitem><para><emphasis role="bold"><guilabel>Full Category Path</guilabel></emphasis>: full account name for transfer/destination account;</para>
                </listitem>
                <listitem><para><emphasis role="bold"><guilabel>Reconcile</guilabel></emphasis></para>
                </listitem>
                <listitem><para><emphasis role="bold"><guilabel>Amount with Sym</guilabel></emphasis></para>
                </listitem>
                <listitem><para><emphasis role="bold"><guilabel>Amount NUm</guilabel></emphasis></para>
                </listitem>
                <listitem><para><emphasis role="bold"><guilabel>Rate/Price</guilabel></emphasis></para>
                </listitem>
              </orderedlist>
            <para> If <emphasis role="bold"><guilabel>Simple layout</guilabel></emphasis> is not checked the transaction data will be exported
              in a multi-line format.
            </para>
            <para>The column headers for a multiline output for a transaction are:</para>
              <orderedlist>
                <listitem><para><emphasis role="bold"><guilabel>Date</guilabel></emphasis>: first line only;</para>
                </listitem>
                <listitem><para><emphasis role="bold"><guilabel>Transaction ID</guilabel></emphasis>: first line only;</para>
                </listitem>
                <listitem><para><emphasis role="bold"><guilabel>Number</guilabel></emphasis>: first line only;</para>
                </listitem>
                <listitem><para><emphasis role="bold"><guilabel>Description</guilabel></emphasis>: first line only</para>
                </listitem>
                <listitem><para><emphasis role="bold"><guilabel>Notes</guilabel></emphasis>: first line only;</para>
                </listitem>
                <listitem><para><emphasis role="bold"><guilabel>Commodity/Currency</guilabel></emphasis>: first line only;</para>
                </listitem>
                <listitem><para><emphasis role="bold"><guilabel>Void Reason</guilabel></emphasis>: first line only;</para>
                </listitem>
                <listitem><para><emphasis role="bold"><guilabel>Action</guilabel></emphasis>: first line and subsequent lines;</para>
                </listitem>
                <listitem><para><emphasis role="bold"><guilabel>Memo</guilabel></emphasis>: first line and subsequent lines;</para>
                </listitem>
                <listitem><para><emphasis role="bold"><guilabel>Full Account Name</guilabel></emphasis>: first line and subsequent lines;</para>
                </listitem>
                <listitem><para><emphasis role="bold"><guilabel>Account Name</guilabel></emphasis>: first line and subsequent lines;</para>
                </listitem>
                <listitem><para><emphasis role="bold"><guilabel>Amount with SYm</guilabel></emphasis>: first line and subsequent lines;</para>
                </listitem>
                <listitem><para><emphasis role="bold"><guilabel>Amount Num</guilabel></emphasis>: first line and subsequent lines;</para>
                </listitem>
                <listitem><para><emphasis role="bold"><guilabel>Reconcile</guilabel></emphasis>: first line and subsequent lines;</para>
                </listitem>
                <listitem><para><emphasis role="bold"><guilabel>Reconcile Date</guilabel></emphasis>: first line and subsequent lines;</para>
                </listitem>
                <listitem><para><emphasis role="bold"><guilabel>Rate/Price</guilabel></emphasis>: first line and subsequent lines;</para>
                </listitem>
              </orderedlist>
            <para>Each line contains the data relevant to a single split with the first line also having
              transaction data relevant to all splits in the first 7 columns.
            </para>
          </listitem>
        </itemizedlist>
      </para>
      <para>The <emphasis role="bold"><guilabel>Separators</guilabel></emphasis> radio buttons allow the choice of an alternative column separator:
        <itemizedlist>
          <listitem><para><emphasis role="bold"><guilabel>Comma(,)</guilabel></emphasis>:
              This is the default separator;</para>
          </listitem>
          <listitem><para><emphasis role="bold"><guilabel>Colon(:)</guilabel></emphasis>:
              Use a colon to separate the columns;</para>
          </listitem>
          <listitem><para><emphasis role="bold"><guilabel>Semicolon(;)</guilabel></emphasis>:
              Use a semicolon to separate the columns;</para>
          </listitem>
          <listitem><para><emphasis role="bold"><guilabel>Custom</guilabel></emphasis>:
              Define a custom character to separate the columns by entering it in the textbox.</para>
          </listitem>
        </itemizedlist>
      </para>
      <para><emphasis role="bold"><keycombo action="click"><mousebutton>Button1</mousebutton></keycombo> on <guibutton>Next</guibutton></emphasis> to go to the next step.</para>
    </sect2>
    <sect2 id="trans-export-account-select">
      <title>Account Selection</title>
      <para>This step allows selection of one or more accounts and the specification of the date range
        containing the transactions to be exported.
      </para>
      <para>The <emphasis role="bold"><guilabel>Accounts</guilabel></emphasis> panel displays an account
        tree which allows one or more accounts to be selected for export. (<keycombo action="click"><keycap>Ctrl</keycap><mousebutton>Button1></mousebutton></keycombo>
        and <keycombo action="click"><keycap>Shift</keycap><mousebutton>Button1</mousebutton></keycombo>
        may be used to select accounts). The <emphasis role="bold"><guibutton>Select Subaccounts</guibutton></emphasis>
        button will select all subaccounts of a selected account. The <emphasis role="bold"><guibutton>Select All</guibutton></emphasis>
        button will select all accounts in the account tree for export. The number of accounts which have been selected is indicated.
      </para>
      <para>The <emphasis role="bold"><guilabel>Dates</guilabel></emphasis> panel allows selection of either all
        transactions or only those within a selected date range in the selected accounts to be exported.
      </para>
    </sect2>
    <sect2 id="trans-export-choosefile">
      <title>Choose File Name for export</title>
      <para>A file selection dialog is presented allowing specification of a file name and a path to the directory/folder in which it is to be stored.
      </para>
    </sect2>
    <sect2 id="trans-export-now"><title>Export Now...</title>
      <para>The filename and path of the file to be exported and the number of accounts to be exported is displayed.
        To continue with the export <keycombo action="click"><mousebutton>Button1</mousebutton></keycombo> the <emphasis role="bold"><guibutton>Apply</guibutton></emphasis> button.
      </para>
    </sect2>
    <sect2 id="trans-export-summary">
      <title>Export Summary</title>
      <para>Displays a message if the file is successfully exported or an error message and debugging suggections if not.</para>
    </sect2>
  </sect1>

  <sect1 id="trans-online">
    <title>Online Actions ...</title>

    <note><para>This section is "under construction - any input will be welcome !!".</para></note>

    <sect2> <title>Get Balance</title><para></para></sect2>
    <sect2> <title>Get Transactions ...</title><para></para></sect2>
    <sect2> <title>Issue Transaction</title><para></para></sect2>
    <sect2> <title>Direct Debit</title><para></para></sect2>

  </sect1>

  <sect1  id="general-journal">
    <title>General Journal</title>
    <para>The General Journal is an advanced register used to enter transactions without needing to open
    individual accounts. The General Journal shows the transaction entries for all accounts on one register.</para>

    <para>Entering transactions in the General Journal is more complicated than entering them in the individual
    account registers. The advantage is the General Journal provides a more comprehensive view of the
    transactions you have entered in all your accounts.</para>

    <para>The General Journal defaults to showing only the previous month of transactions. This is changeable
    by using the "Filter By..." on the View menu.</para>
  </sect1>

</chapter>
