Page 1 of 1

Control over AR accounts from Invoice

PostPosted: Fri Sep 08, 2006 1:55 am
by anticareer
Does anyone have an idea for how to accomplish this?

In Compiere the BP on the invoice (customer) controls what AR account is hit during posting. This accounting is defined in the BP Group and BP windows.

We have a situation where we need to hit different natural accounts for AR depending on certain characteristics about the transaction. For example, we might want to hit a different AR account depending on the product or charge selected on the line.

I realize that this example might seem strange. Revenue would already be handled correctly based on the product accounting. But the issue here is that we need to also manipulate AR.

PostPosted: Fri Sep 08, 2006 6:31 am
by red1
U mean concurrently multiple accounts at the same time? Or just different account for an AR Transaction?

Do u know about the Accounting Tab in the Product, and also BPartner table? Whre u can select a specific account for a specific item?


PostPosted: Fri Sep 08, 2006 8:41 am
by anticareer
I know how to setup product and BP accounting. Product accounting controls revenue/expense. BP accounting controls AR/AP. This is too static. I need to be able to hit a different AR account depending on more dynamic critieria.

Since my original post I have reviewed the code that handles posting of invoices. The class is The only flexibility appears to be differentiation between AR and AR Services. The services option ties back to BP accounting. That tab has both a BP AR account field and a BP AR Services account field.

So I guess the most straight forward way to extend this would be to add additional fields to BP Accounting and customize the invoice (and allocation) posting processes to handle it.

PostPosted: Sun Sep 10, 2006 4:58 pm
by Rasmus Luffen
Maybe try with GL Distribution?

PostPosted: Mon Sep 11, 2006 1:19 am
by anticareer
Good suggestion.

We reviewed the issue with our client and they decided they could get what they need for AR at the BP level.