GDA: Status

Derek Atkins warlord at MIT.EDU
Fri May 30 10:32:45 EDT 2008

Quoting Graham Leggett <minfrin at>:

> Derek Atkins wrote:
>> A Process Payment gives you that "Negative" number.  What you would
>> do is Process Payment to, say, your checking account.  Then after
>> the transaction gets posted you can go in and change it from Checking
>> to Income.  Make sure you only change the account, not the AMOUNT.
>> Changing the amount will throw off all the numbers.
> This doesn't solve the problem of the need to give your customer a 
> credit note. This requirement exists in law, as the credit note 
> contains tax refund details of VAT amounts on the invoice.
> The real fix it to take out the error check that prevents invoices 
> being posted that have negative totals.

Unfortunately it's not that easy.  That check is in there because the
underlying code uses the Value + AccountType to determine if this is an
"Invoice" or a "Payment".  All the linkage logic is based on the invariant
that an Invoice is "positive" and a Payment is "negative"  (obviously
the numeric positive/negative is different for A/R and A/P, but let's
not confuse the issue).

That check is in place in order to maintain this invariant.  Removing the
check would cause the underlying logic to get confused and potentially
not balance out properly.   I suppose one COULD go through an re-work
all the logic first to remove the "value sign implies transaction type".
Then you could remove the negative value check.

Keep in mind that the printed note does not have to be a GnuCash Invoice.
You just need a some printed note that you can send.  At least that's
what I'm reading from you, right?   So that would imply that you COULD
write a *new* "Credit Note" report that happens to work off of a different
type of transaction than an invoice.

> Regards,
> Graham


       Derek Atkins, SB '93 MIT EE, SM '95 MIT Media Laboratory
       Member, MIT Student Information Processing Board  (SIPB)
       URL:    PP-ASEL-IA     N1NWH
       warlord at MIT.EDU                        PGP key available

More information about the gnucash-devel mailing list