Linked Transactions, or "how to tell an invoice was paid"?

Derek Atkins warlord@MIT.EDU
26 Nov 2001 21:46:31 -0500


With A/R and A/P, should credits and debits get 'linked'?  For
example, say you post a half-dozen transactions which credit A/R.
(Note: you could reverse this and say transactions that debit A/P --
let's call these "invoices").  Each of these invoice transactions
should have a due date.  I'm currently working on this in the
split-ledger [*].

Later, when the invoice is paid, wouldn't it be nice if, somehow,
those two transactions were linked?  You certainly want to be able to
perform a query of the form:
	show all "invoices" that have not been paid

Storing the transaction links internally is easy.  Use a KVP value to
hold the GUID of the linked transaction (can we assume they always
come in pairs?).  When a transaction is linked, it has been paid.
Therefore, you could query:
	show all "invoices" that have no linked txn.

Assuming this is a reasonable approach, how do you present a UI to
link transactions?  Or is this not something that we really need?  Do
we care?  Perhaps we can just use the 'reconciled' field to show that
an invoice has been paid?  Then we can find unpaid invoices by:
	show all "invoices" with reconciled == 'n'

But obviously this last one is more work, because the user has go go
back and specifically mark the invoice as paid (as opposed to that
being done when they post a payment transaction).

How do people think this should behave?  Note that a druid could be
used to 'pay' invoices and link transactions.  That would imply that
users could not do it from the splitledger -- that is certainly
another option that I'm willing to accept.

What do you all think?

-derek

[*]: Clearly only 'invoice' transactions need a due-date.  This means
that only transactions that credit the A/R or debit A/P need a
due-date.  Any suggestions for an approach to do this in the
splitledger?  I have no idea how to decide whether a field is required
for that particular 'split'.

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