|
[ https://issues.apache.org/jira/browse/OFBIZ-9492?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16108484#comment-16108484 ] Pierre Smits commented on OFBIZ-9492: ------------------------------------- Re ' I presume the thinking is that exactly the same set of information is a purchase invoice from the perspective of the buyer, and a sales invoice from the perspective of the seller. If the two parties are both using OFBiz, it could even be exactly the same entity.' From a business perspective the representatives of a legal organisation will/could use: * their own OFBiz implementation (meaning that they could have both sales and purchasing transactions) * functions in the OFBiz implementation of another legal entity (meaning that other legal entity owns the transactions). So while there is a mix of perspectives, in one legal entity they can not be regarding the same: a sale is not a purchase. > Tax Authorities need two GL accounts for sales and purchases > ------------------------------------------------------------ > > Key: OFBIZ-9492 > URL: https://issues.apache.org/jira/browse/OFBIZ-9492 > Project: OFBiz > Issue Type: Improvement > Components: accounting > Affects Versions: Trunk > Reporter: Paul Foxworthy > Assignee: Paul Foxworthy > Labels: accounting, vat > > In jurisdictions with Value Added Tax, you need to track tax you have paid on purchases, and tax you have collected with sales. When you report to a tax authority, you pay them the difference between the two, i.e. you pay tax on the value added, not on your inputs. > OFBiz has an entity, TaxAuthorityGlAccount (TAGLA), which currently assumes the GL account is for a sale. > We need to extend OFBiz so it is possible to find two GL accounts for a tax authority, one for sales and one for purchases. > I propose: > - Define a new Enumeration for the direction of a transaction. I suggest > calling the Enumeration TAGLADIR, with two values TAGLADIR_INCOMING > and TAGLADIR_OUTGOING. > We could reuse an existing indication of the direction of a transaction, > for example the GlAccountClassIds INCOME and EXPENSE. However, when we receive > income from a sale, we would incur a tax *liability*, and the GL account for that > would be a liability account. So I think it would be less confusing to have a > separate enum here that's just for TAGLA. > - add a new attribute to the TaxAuthorityGlAccount entity for the direction of the transaction. > The new attribute should be included in the primary key. > - Add a new service in TaxAuthorityServices named getTaxAuthorityGlAccountId which > looks up a TAGLA given primary key values, including the direction > - There are two places in TaxAuthorityServices that would call getTaxAuthorityGlAccountId: getTaxAdjustments and getItemTaxAdjustments, one for orders, and the other for invoice item types. The direction can be inferred from the order type or the invoice item type > - createAcctgTransForPurchaseInvoice and createAcctgTransForCustomerReturnInvoice > should use getTaxAuthorityGlAccountId > - createAcctgTransactionForSalesInvoice should be rewritten to use getTaxAuthorityGlAccountId. > I am working on a patch to do this, but I'd like your thoughts on my proposal -- This message was sent by Atlassian JIRA (v6.4.14#64029) |
| Free forum by Nabble | Edit this page |
