diff --git a/accounts/config/config-tags.ledger b/accounts/config/config-tags.ledger index e7ad1b82334ed943c6673a1bf3b434d7d037b746..d222b789009045f12bcdac5433fa1f5e2496debf 100644 --- a/accounts/config/config-tags.ledger +++ b/accounts/config/config-tags.ledger @@ -33,3 +33,9 @@ tag Invoice assert value =~ /[^\/].+/ check value =~ /[^\/][^ ]+(\/[^ ])+/ +; IncomeType refers to the types of income a non-profit can receive. In this +; example, it's for the categorizations on the USA Form 990. This could be +; changed to accomodate other jurisdictions around the world. + +tag IncomeType + assert value =~ /^(Donations|RBI|UBTI)$/ diff --git a/npo-ledger-cli-tutorial.md b/npo-ledger-cli-tutorial.md index 47af519d26e8641d1a634d9d9a1eb2cc5aeb9c50..35ea4f5cedd0922e48cd4ed938ba5b413eb51b0f 100644 --- a/npo-ledger-cli-tutorial.md +++ b/npo-ledger-cli-tutorial.md @@ -241,6 +241,26 @@ Some examples of appropriate uses of the `Statement:` tag are: [receipt](#receipt-tag), but definitely is valid backup documentation for the transaction. +#### 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. +Since this particular system is designed for USA non-profit entities who file +USA Form 990, the following `IncomeType` values are supported: + +* `Donations`, which refers to standard charitable donations. + +* `RBI`, which refers to "related business income". + +* `UBTI`, which refers to "unrelated business taxable income. + +Not that donor-advised funds and government grants don't currently have their +own `IncomeType`. It's possible this might be necessary; the authors aren't +familiar with how to handle those items on the Form 990. It would be a +relatively simple change to `config-tags.ledger`, though, to support other +income types, or to change it entirely to handle use-cases other than USA +Form 990 filing. + ### Expense Account Documentation Each Expense account entries need to be tagged with an