www.emediasales.com: Magento Tax Plugin

Single State Edition:
$129.99 + $24.99/mo

Buy Now

50 State Edition:
$1199.99 + $39.99/mo

Buy Now

Magento Sales Tax Solution

This "software and data as a service" provides you with a "setup once and forget about it" tax calculation system for your online store.

The plugin is available for Magento Community v1.4+ and Enterprise Editions, and provides comprehensive tax calculations for your store including automatic determination of whether shipping or shipping/handling is taxed, and is automatically updated monthly while your subscription is current.

This unique service includes:

  • One year subscription to the single or 50 state edition of TDS Basic zip-based sales and use tax database
  • A Magento Tax extension for your store to calculate proper sales or use tax based on zip codes
  • Automatic tax rate database delivery to your Magento store monthly*
  • Additional year subscriptions for the tax database are currently $100/state for the Single State Edition or $500/year for the 50 State Edition

Upon purchase of this service you will immediately receive:

  • A welcome message from the eMediaSales Tax Delivery control panel to manage your tax subscription
  • Access to the extension zip file to install in your Magento Community or Magento Enterprise store
  • Instructions on installing and configuring the module
  • New: Now includes free installation! Just submit a request via our help desk!

Tax Rates are generally delivered to your store within 15 minutes of installation.


Help And Screen Instructions

While your Magento tax module will probably be pre-installed for you (if you choose to have us do it), here are the steps so you can understand the Magento tax module.

Magento Tax Module Installation

This extension for Magento is delivered as a zip file that can simply be placed in your Magento root installation folder and unzipped. It includes the directories ./app/etc/modules and ./app/code/community/EMS/Taxdata. After unzipping the extension into your Magento Installation, you may need to log out and log back in, and or flush system configuration caches for permissions and the module configuration to load.

magento-00-install-tax-plugin.jpg (Medium 450px )

Magento Installation & Permissions

  1. Unzip the distribution in your Magento root directory, so that the ./app/etc/modules/EMS_Taxdata.xml file lands within your app/etc/modules/ directory.
  2. Log into Magento as an administrator level account
  3. Disable or refresh your system cache
  4. Navigate to System -> Permissions -> Roles and select the Administrators Role
  5. Click Role Resources -> Set Role Access to Custom. This will show all role permissions - while we're not going to save this setting, you are simply going to inspect that the permission "System -> Configuration -> eMediaSales Taxdata Connector now exists.
  6. DO NOT SAVE - SIMPLY SET THE ROLE ACCESS BACK TO "ALL". THIS IS JUST A VISUAL INSPECTION STEP. If the role does not exist, flush all caches again.
  7. Log out of the Magento administration and log back in.
magento-01-configure-plugin.jpg (Medium 450px )

System Configuration / Enable eMediaSales Taxdata Settings

  1. Navigate to your System -> Configuration settings
  2. Just beneath the General Configuration section on the left menu, you should now see an eMediaSales::Taxdata Settings option.
  3. In the Taxdata Settings, Select "System Active"
  4. Configure the remainder of the settings as described below
  5. Click Save Config

Magento Tax Extension Settings

The following configuration options are available for the Tax Module for Magento Community and Magento Enterprise, and are available in the System Settings => eMediaSales => Taxdata Settings configuration section. This Magento Extension acts as a behavior override module, and ties into / extends the Tax Resource model, and rewrites the Calculation. It can be used in conjuntion with the provided Tax Rules, and will ONLY take effect when a particular rule is matched.

Therefore, unlike on other platforms, it CAN be used in conjunction with ANY OTHER TAX rules in your store, so long as they do not overlap. For example, you might have EU tax rules configured natively using Magento Tax Rules, and US tax rules handled through our module.


magento-01-configure-plugin.jpg (Medium 450px )

magento-01-configure-plugin.jpg (Medium 450px )

Store Wide Configuration - Tax Calculation Properties

These configuration options are global and will affect how the module in general is configured for tax collection. These settings will then be used by the state settings to determine overall tax for the state.


  1. System Active: Yes / No
  2. Tax Data API User ID: This is the API User Name found in our control panel.
  3. Tax Data API Password: This is the API Password found in our control panel.
  4. Shipping/Handling Basis: Shipping & Handling Combined or Separate. Some states will either always or never tax shipping. Others will ONLY tax shipping if it is combined with a handling fee or otherwise not the actual shipping cost. Based on this setting AND the tax rules of each state, the module will determine and calculate (or not calculate) tax on your shipping fees appropriately.
    • Combined Shipping & Handling: If you charge more than actual shipping cost or have a handling fee included in the shipping charge, chose "Shipping and Handling are combined".
    • Separate Shipping and Handling: If you charge a handling fee that is separated on the invoice as an individual handling fee line, or if you do not charge a handling fee and the shipping amount is actual cost, chose "Shipping and Handling are separate".

*Note: The API configuration parameters connect your site to our tax delivery control panel for initial site registration and ongoing tax rate database update deliveries.

magento-01-configure-plugin.jpg (Medium 450px )Individual State Configuration

For each state select the tax calculation options. Note that this module obeys the standard Magento configuration settings that determine whether to use the billing or shipping state as the tax state.


  1. Next to each state, chose either: Do Not Tax, Collect Sales Tax, or Collect Use Tax
  2. Click Save Config at the very top of the screen after editing a state.

*Note: The Module will let you configure as many states as you wish, however, our tax rate delivery system will ONLY send the tax databases for states for which Tax Data Systems has licensed your account.

The module will show "Data Pending" until the rates are delivered to your store, or if you are not permitted to receive rates for the configured state.


Magento Tax Rules, Tax Zones and Tax Rates

In order for the module to intercept the tax calculations, you must install tax rates and zones for Shipping and Product taxes as described below. We are intentionally setting the rates to 0%, as this will be overridden by the extension at run time based on module configurations.

magento-04-tax-rates-1.jpg (Medium 450px )

magento-04-tax-rates-1.jpg (Medium 450px )

magento-04-tax-rates-2.jpg (Medium 450px )

Sales -> Tax -> Manage Tax Zones & Rates

  1. Add New Tax Rate - We'll use this to calculate product tax
    • Tax Identifier: EMSTDS_PROD
      - Country: United States
      - State: *
      - Zip/Post is Range: No
      - Zip/Post Code: *
      - Rate Percent: 0

  2. Add New Tax Rate - We'll use this to calculate shipping tax
    • Tax Identifier: EMSTDS_SHIP
      - Country: United States
      - State: *
      - Zip/Post is Range: No
      - Zip/Post Code: *
      - Rate Percent: 0

magento-02-tax-rules.jpg (Medium 450px )

magento-03-tax-rule-products.jpg (Medium 450px )

magento-03-tax-rule-shipping.jpg (Medium 450px )

Sales -> Tax -> Manage Tax Rules

  1. If you have a "US Tax Schedule", edit it, or add:
    - Name: US Tax Schedule
    - Customer Class: Retail Customer
    - Product Class: Taxable Goods
    - Tax Rate: EMSTDS_PROD
    - Priority: 0
    - Sort Order: 0

  2. Add New Tax Rule:
    - Name: US Tax Schedule Shipping
    - Customer Class: Retail Customer
    - Product Class: Shipping
    - Tax Rate: EMSTDS_SHIP
    - Priority: 0
    - Sort Order: 0

magento-05-shipping-tax-class.jpg (Medium 450px )

System -> Configuration -> Sales -> Tax -> Tax Classes

  1. Assign Tax Class for Shipping: Shipping

Frequently Asked Questions

  1. When are tax database updates delivered to my store?
    Generally speaking, we receive the full 50 state tax database from Tax Data Systems for the next month a few days before the end of each month. We upload these in advance, and our server processes them around 2AM Pacific time on the first day of the month. We then immediately begin distributing the tax database updates to all stores immediately. Your tax rate updates should be delivered within several hours.

  2. How reliable is a zip-code based sales tax database?
    While it is true that some counties and localities can span and cross zip codes, the practice of utilizing Zip based tax databases is quite common in ecommerce stores. A true street level locality validation would be a much more expensive solution. We have opted to intially implement TDS, Inc.'s "AS_basic" tax database as we are aware of many large merchants utilizing this exact database. Whether or not this potential margin for error is acceptable is purely up to you and your tax accountant. Please note that you are responible for final accurate reporting and payment of taxes to the tax jurisdictions regardless of what you collect, and neither eMediaSales or Tax Data Systems, Inc., guarantee that you will collect the precise amount of tax on every order.

  3. What happens when zip codes are added or deleted?
    TDS employs a staff of researchers who compile the databases based on public records, and they keep the database up to date monthly. When new or changed zip codes and tax rules take effect, these changes are included in the monthly updates.

  4. Does the module handle tax holidays?
    No. However, our delivery system will check your store periodically to determine if you require a tax database update. So if you had a state wide tax holiday you wanted to observe, you could remove the module temporarily and install the built-in Miva Merchant State Based Sales Tax module, and set your tax for the day to 0%. When your tax holiday is complete, simply put our module back in place, reconfigure the states for which you will collect tax, and enter in your API credentials. Our system will recognize that you need a tax update and send new rates to your store in as short as 15 minutes.

  5. May I change the state in which I will collect tax?
    If you have a single state edition, we will send at most one state at any time to your store. You may change which state you will collect tax but it must match our online control panel which will only permit one state selection at a time (unless, you have purchased multiple individual states). The long story short is, if you have one state database license your store will only receive rates for that one configured state at any time, but that one state CAN be changed, eliminating tax calculations for the original state.

  6. Can I collect for more than one but less than 50 states?
    Yes, we can enable any number of states in your control panel. Additional states are $100 per state for the database and $5.00/month for update deliveries, up to the price of the 50 state delivery service. Please contact us by email or phone for multi-state pricing.