|
![]() xTuple ERP 3.0 won the LinuxWorld product excellence award for best Business Application! Read more here!
![]() xTuple has also been recognized as a "Market Leader" by CRM Magazine, for "helping companies streamline business processes, maximize profitability, and provide more value to customers" with the integrated CRM functionality in xTuple ERP.
|
Beginning with version 2.1.0, xTuple ERP has implemented a comprehensive and flexible design for taxation intended to address the unique requirements for sales Tax around the world. This section illustrates how this capability can be adapted to wide-ranging requirements. It also offers tips for users migrating from previous releases of xTuple ERP. In this scenario, we will show the setup for and operation of a simple Tax scheme in which there are two Tax Authorities (described as "Tax Zones"). Two Tax Types will also be defined—one for Normal Products (Tax Type 1) and one for Educational Products (Tax Type 2). The same Customer will ship to two different stores, each of which will fall under the jurisdiction of a different Tax Authority. In one case, Educational Products are taxed at 1% and Normal Products at 5%. In the other, both are taxed at 5%. Two Items will be defined—one a normal toy truck (YTRUCK1) and the other an educational toy truck (ETRUCK1). We will demonstrate how xTuple ERP applies the appropriate Tax to each S/O Line Item depending on the Item ordered and the Ship-To Address selected. Tax Codes have been established to determine the Tax Rate to apply (5% or 1% in this example) and the appropriate General Ledger (G/L) Account to use. xTuple ERP gives you the ability to collect Taxes on Sales Orders. There are generally two methods for recording the collection of sales Tax in the General Ledger:
These two methods are not mutually exclusive, but the relationships between Tax Codes, Expense Categories, and corresponding G/L Accounts and Tax Authorities must be carefully thought out. You will setup your G/L Accounts with the level of detail necessary to provide the insight and reporting you require for your situation. The following screen shows the Account detail for a Tax liability Account: ![]() G/L Account Definitions
In this example we have created Accounts that relate to Tax Types and Tax Authorities. This may be desirable if you plan to use the Financial Reporting Engine (FRE) to perform financial analysis or to generate supporting documents for Tax returns that require this level of detail. The following Tax-related screens are grouped together in the "Master Information" section of the G/L Module:
We will look at each of these Master Information categories—with the exception of Tax Registrations, which are used (optionally) to store Tax Account numbers by Tax Authority. Tax Authorities are defined as CRM Accounts in xTuple ERP, as shown in the following screenshot: ![]() Tax Authority CRM Account Definition
TipIf we need to generate a Check to pay Taxes to a Tax Authority, the parent CRM Account should also be defined as a Vendor in order to facilitate the payment process. The detail under a Tax Authority provides a place to store Account information, Contacts, and Addresses. NoteThe concept of a Tax Authority is new beginning with xTuple ERP version 2.1. For users migrating to this version, the upgrade script will automatically create Tax Authorities from each pre-existing Tax Code. In this scenario, we will use one Customer who ships to stores that fall under the Tax jurisdiction of two different Tax Authorities, each with different Tax Rates on different types of products. ![]() Customer Ship-To Tax Definition
The critical field for taxation is the "Tax Authority" field. In this case we see that Store 1 falls under the Tax jurisdiction of TAXZONE1. Store 2 (not shown) falls under TAXZONE2. Tax Codes hold both the rate(s) at which Tax is calculated and the G/L Account(s) Tax transactions are posted to. You can see a sample Tax Code detail in the following screen: ![]() Sample Tax Code Detail You may define up to three Tax Rates. Each is calculated independently, unless the "Cumulative" box is checked. When that option is selected, Tax is calculated cumulatively on the previous Tax Rate. Such a scenario is very rare. Notice that G/L Accounts are also linked to each Tax Rate. The same Account may be used for all three Tax Rates—or a different Account may be used for each to capture more detail for G/L and Tax reporting purposes. Tax Types are linked to Items and Tax Authorities in an Item's P/D record. You should think carefully about how to approach Tax Types. For example, you may consider creating Tax Types that relate to different Tax Authorities. In this case, you might have Tax TYPE10 and Tax TYPE15. A single Item could be linked to each—TYPE10 for each Tax Authority that taxes it at 10% and TYPE15 for each that taxes it at 15%. A sample Tax Types list is shown in the following screen: ![]() Tax Types
Another strategy is to relate the Tax Type to Product Categories. In our scenario, we have Normal Products and Educational Products. The relationship between Item, Tax Type, and Tax Authority is then established based on how each Tax Authority treats that type of product. Some Tax Authorities charge Tax on Freight. A reserved Tax Type called Freight is pre-populated in the xTuple ERP database specifically for this purpose. On the Tax Selection screen (see below), the freight Tax Type is then linked to a) Tax Authorities that charge Tax on freight and b) Tax Codes that contain the appropriate rate. Before we look at an Item and its relationship to Tax Types, let's take a look at Tax Selections. The Tax Selections screen creates a matrix combining the Tax Type (linked to the Item), the Tax Authority (also linked to the Item), and the Tax Code. The following screen shows a sample Tax Selections master list: ![]() Tax Selections
Here we see that Tax Authority TAXZONE1 links two different Tax Types (one for Normal Products and one for Educational Products) to two distinct Tax Codes. Tax Code ZONE1-TYPE1 will calculate the Tax at 5% and post it through to a special G/L Account. Tax Code ZONE1-TYPE2 will calculate the Tax at 1% and post it through to a different G/L Account. Any Tax Type linked to TAXZONE2 will result in a 5% Tax calculation defined in the Tax Code ZONE2-TYPE1. A distinct Tax Code was defined ONLY because this Tax Code links a G/L Account specifically defined to hold Tax Authority TAXZONE2 balances. Were this not desired, a single 5% Tax Code could have been use for both TAXZONE1 and TAXZONE2. The P/D Item record contains a tab called "Tax Types." This tab is used to associate an Item with a Tax Type and corresponding Tax Authority. TipThe same Tax Type may be taxed differently by different Tax Authorities. This is controlled on the Tax Selections screen, where Tax Authorities/Tax Types are linked to Tax Codes (which determine Tax Rates). The following screen shows the "Tax Types" tab on a sample Item master: ![]() Item Tax Types Assignments
By default, an Item is not taxed if no relationship has been created to link it to a Tax Type and Tax Authority. However, it may be desirable in some cases to intentionally indicate that an Item is not taxed for a specific Tax Authority. If so, you would set this up by creating an appropriate Tax Type/Tax Authority relationship on the Item master. You would then link this relationship to a Tax Selection record pointing to a Tax Code having a 0% Tax Rate. Again, this is optional and may or may not be desirable. Because we are charging Customers Tax that we must ultimately pay to
Tax Authorities, it is important to have a mechanism for making payments
to Tax Authorities. Sales Tax is a liability that must be settled. As we
saw in Sample Tax Code
Detail The following screen shows a sample Expense Category detail: ![]() Expense Categories for Tax
Notice how the "Expense" field for Expense Category TAXZONE1-TYPE1 is linked to a liability Account. When we Voucher our payment to the Tax Authority, we will use this Expense Category to clear the liability. TipAn alternate method for clearing Tax liability is to book the Sales Tax collected to a Revenue Account—and then offset it with an Expense Category linked to an expense Account. Let's create a Sales Order for a Customer Ship-To Address that taxes Educational Products at one rate and Normal Products at another. In addition, we will use a Tax Selection record that links the Freight Tax Type to a Tax Code, thereby causing Tax to be calculated on the freight charge. The following screen shows the Line Item Tax detail for the sample Sales Order will be using: ![]() Sales Order Line Showing Tax Detail
TipTo view Line Item Tax detail, simply click on the "Tax" hyperlink found on the Sales Order Item screen. While Tax is calculated at the Line Item level, we can see the Tax impact for an entire Sales Order from the "Line Items" tab, as shown below: ![]() Sales Order Line Items Showing Tax Breakdown
From the "Line Items" tab screen, click on the "Tax" hyperlink to see an overview of the Tax calculation for the entire Order. In this case, the total Tax resulted from the educational Item taxed at 1%, a normal Item taxed at 5%, and freight taxed at 5%. When the product is shipped and the corresponding Invoice is posted, the appropriate Tax Accounts will be reflected in the G/L. You will recall that in this scenario we are posting Sales Tax to a liability Account. And even though it is not necessary to do so, our example uses a different G/L Account for each different Tax Type/Tax Authority combination we are using. This varied approach enables us to better demonstrate how the Financial Reporting Engine (FRE) can be used as a Tax reporting tool. The following screen shows a summary of the G/L transactions recorded after we posted the Invoice corresponding to our initial Sales Order: ![]() Summarized G/L Transactions for Sales Tax on an
Invoice
Now that we have accrued the liability for the sales Tax, we must next pay the Tax Authority. While a Miscellaneous Check could be used to pay the sales Tax we have collected, a Voucher provides an additional level of control—and also give us the ability to define amounts specific to the different types of Tax being paid. A Miscellaneous Check may only be linked to a single Expense Category; whereas, a Voucher can have an unlimited number of distributions to different Expense Categories. The following screen shows a sample Miscellaneous Voucher Distribution: ![]() Voucher for Tax Payment
Miscellaneous Distributions on a Miscellaneous Voucher enable us to select the appropriate Expense Category for each type of Tax being paid on a single payment. You may recall that our scenario links an Expense Category to the same G/L Account used for accruing sales Tax liability. Paying taxes in this way enables us to clear the appropriate liability Account when we post Miscellaneous Vouchers. In the following screen you can see a summary of the G/L transactions which resulted from out posting of the Miscellaneous Voucher: ![]() G/L Postings After Voucher Posting
Posting the Voucher cleared the liability Accounts associated with the Expense Categories used on the Voucher. The A/P liability will subsequently be cleared when a Check paying the Voucher is posted. Just as we calculated sales Tax for our Customers, our Vendors will do the same for us. Tax on purchases appears on the Vendor's invoice—and should be recorded during the vouchering process. Again, when vouchering we can use Miscellaneous Distributions along with Expense Categories to record purchasing Tax. The following screen shows a sample Expense Category we have established to record Tax on purchases: ![]() Expense Category for Taxes on Purchased Items
We will use the Expense Category during a vouchering scenario. In our example, the Vendor is charging us Tax on one or more Items of Type 1. The following screen shows the Voucher for this purchase, as well as the Miscellaneous Distribution for Tax purposes: ![]() Miscellaneous Distribution of Voucher to Pay Tax
The Purchase Order we are vouchering is for a Vendor invoice totaling $220.00. Of this amount, $200.00 is for the product and $20.00 is for Tax. The Tax is accounted for using the Expense Category corresponding to the type of Tax being paid. Because Expense Categories are linked to G/L Accounts, the Tax amount will be posted to the appropriate Account. TipIf multiple types of Taxes are identified on a Vendor invoice, multiple Expense Categories pointing to different Tax Accounts may be used. The Tax functionality described in this section is new, as of xTuple ERP version 2.1 The upgrade to version 2.1 from an earlier versions of xTuple ERP should be seamless. However, it may be helpful to know how the changes impact the underlying data:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|||||