diff --git a/npo-ledger-cli-tutorial.md b/npo-ledger-cli-tutorial.md index e76c8ed48546b65f106644b2d1ac083b40af9bb9..119ab73e8f9da9a49dcab1bdaa64304a6f3e850d 100644 --- a/npo-ledger-cli-tutorial.md +++ b/npo-ledger-cli-tutorial.md @@ -200,12 +200,12 @@ contains the receipt from that purchase. #### Receipt Tag -The `Receipt:` tag refers to receipt of some sort. Typically, this is a +The `Receipt` tag refers to receipt of some sort. Typically, this is a document that shows clear confirmation that the transaction has already -occurred. The value of the `Receipt:` tag is always a valid pathname in the +occurred. The value of the `Receipt` tag is always a valid pathname in the repository to the document, [as described above](#documentation-tags). -Some examples of appropriate uses of the `Receipt:` are: +Some examples of appropriate uses of the `Receipt` are: * a point-of-sale credit card receipt from a purchase, given by a cashier or sent via email after the purchase has occurred. @@ -222,13 +222,13 @@ Some examples of appropriate uses of the `Receipt:` are: #### Invoice Tag -The `Invoice:` tag refers to an actual invoice, either generated by the +The `Invoice` tag refers to an actual invoice, either generated by the organization or received by the organization. Typically, this is a document that is a request for payment, rather than documenting an actual payment that -has occurred. The value of the `Invoice:` tag is always a valid pathname in +has occurred. The value of the `Invoice` tag is always a valid pathname in repository to the document, [as described above](#documentation-tags). -Some examples of appropriate uses of the `Invoice:` tag are: +Some examples of appropriate uses of the `Invoice` tag are: * an actual invoice as sent by a vendor to the organization. @@ -241,14 +241,14 @@ Some examples of appropriate uses of the `Invoice:` tag are: #### Statement Tag -The `Statement:` tag refers to any sort of written statement received from an +The `Statement` tag refers to any sort of written statement received from an external party (or even perhaps generated internally) that provides document, insight, or other information about the transaction. The value of the -`Statement:` tag is always a valid pathname in the repository to the +`Statement` tag is always a valid pathname in the repository to the document, [as described above](#documentation-tags). -Some examples of appropriate uses of the `Statement:` tag are: +Some examples of appropriate uses of the `Statement` tag are: * bank statements, as received from the banking institution. @@ -284,8 +284,8 @@ considered pure "meta-data" for a ledger entry. #### Entity Tag -The `Entity:` tag is required for many types of ledger entries. The value of -the `Entity:` tag is a unique moniker that identifies the organization, +The `Entity` tag is required for many types of ledger entries. The value of +the `Entity` tag is a unique moniker that identifies the organization, company, person, or legal entity that is the external party for the transaction. @@ -299,8 +299,8 @@ Barring that, the #### IncomeType Tag -The `IncomeType:` tag is used for all `Income:` accounts. This refers to the -type of income. The value of the `IncomeType:` tag is always a string. +The `IncomeType` tag is used for all `Income` accounts. This refers to the +type of income. The value of the `IncomeType` tag is always a string. Since this particular system is designed for USA non-profit entities who file USA Form 990, the following `IncomeType` values are supported: @@ -319,12 +319,12 @@ Form 990 filing. #### TaxImplication Tag -The `TaxImplication:` tag is used for all `Asset:` accounts when the +The `TaxImplication` tag is used for all `Asset:` accounts when the transaction includes a payment of $10.00 or more leaving the account. This tag catalogs any tax implications that might occur on outgoing funds. The most important USA-related issue tracked by this tag are contractors who -must have annual 1099 and/or W2 issued. An [`Entity:` tag](entity-tag) should always +must have annual 1099 and/or W2 issued. An [`Entity` tag](entity-tag) should always go along with a TaxImplication tag. The possible values for this field are: @@ -413,16 +413,16 @@ ledger itself via the configurations found in `config-tags.ledger` and Each `Expenses:` account entry must be tagged with the following tags: -* One of: [`Invoice:`](#invoice-tag), [`Receipt:`](#receipt-tag), or +* One of: [`Invoice`](#invoice-tag), [`Receipt`](#receipt-tag), or [`Statement`](#statement-tag). (The only exception to this rule: an entry - does not need an `Invoice:`, `Receipt`, nor a `Statement` tag if the + does not need an `Invoice`, `Receipt`, nor a `Statement` tag if the [payee was never charged](#never-charged-payee).) -* A [`Program:`](#program-tag) tag. +* A [`Program`](#program-tag) tag. Expense accounts can have the following optional tag: -* A [`GrantLocation:`](#grantlocation-tag) tag. +* A [`GrantLocation`](#grantlocation-tag) tag. #### NEVER CHARGED Payee @@ -462,20 +462,20 @@ thus deprecated. Each `Income:` account must have the following tags: -* One of: [`Invoice:`](#invoice-tag), - [`PurchaseOrder:`](#purchase-order-tag), - [`Statement:`](#statement-tag), or +* One of: [`Invoice`](#invoice-tag), + [`PurchaseOrder`](#purchase-order-tag), + [`Statement`](#statement-tag), or [`Contract`](#contract-tag). Exceptions to this requirement are as follows: + the income generated from the transaction is less than $800, or + the `IncomeType` is `RBI` and the income is for a defined, public program (such as conference registration) -* An [`Entity:`](#entity-tag) tag, *iff.* the Income for the transaction is +* An [`Entity`](#entity-tag) tag, *iff.* the Income for the transaction is for more than $800. -* An [`IncomeType:`](#incometype-tag) tag. +* An [`IncomeType`](#incometype-tag) tag. -* A [`Program:`](#program-tag) tag. +* A [`Program`](#program-tag) tag. Reports For Various Situations ------------------------------ @@ -537,7 +537,7 @@ FIXME: example output ### Checking Integrity of a Tag -[As mentioned](#entity-tag), the `Entity:` tag is one example among many +[As mentioned](#entity-tag), the `Entity` tag is one example among many where the value is a wide range, but since Ledger CLI isn't backed by a more complete ERP system, it's possible during data entry for typos to make a serious problem. One work around to this flaw is to periodically run a @@ -545,7 +545,7 @@ command like: $ ledger -f accounts/books.ledger -F '%(tag("Entity"))\n' reg|sort|uniq|less -which will show all unique `Entity:` values currently in use. +which will show all unique `Entity` values currently in use. Copyright and License of This File ----------------------------------