API Reference

Introduction

API Endpoint

https://api.taxjar.com/v2/

Sandbox API Endpoint

https://api.sandbox.taxjar.com/v2/

Welcome to the TaxJar Sales Tax API! You can use our API to get information on sales tax rates, categories or upload transactions.

We currently provide API clients for the following languages:

Before getting started, you’ll need to sign up for TaxJar and get an API key. If you have any questions or would like to request support for a new client language, feel free to contact us.

Authentication

Example Request With Authentication Headers

require "taxjar"
client = Taxjar::Client.new(api_key: "9e0cd62a22f451701f29c3bde214")
import taxjar
client = taxjar.Client(api_key='9e0cd62a22f451701f29c3bde214')
const Taxjar = require('taxjar');

const client = new Taxjar({
  apiKey: '9e0cd62a22f451701f29c3bde214'
});
require __DIR__ . '/vendor/autoload.php';
$client = TaxJar\Client::withApiKey("9e0cd62a22f451701f29c3bde214");
using Taxjar;
var client = new TaxjarApi("9e0cd62a22f451701f29c3bde214");
import com.taxjar.Taxjar;
import com.taxjar.exception.TaxjarException;

public class AuthenticationExample {

    public static void main(String[] args) {
        Taxjar client = new Taxjar("9e0cd62a22f451701f29c3bde214");
    }

}
package main

import "github.com/taxjar/taxjar-go"

func main() {
    client := taxjar.NewClient(taxjar.Config{
      APIKey: "9e0cd62a22f451701f29c3bde214",
    })
}
# Authorization headers must be passed for every request
$ curl "API_ENDPOINT" \
  -H "Authorization: Token token="9e0cd62a22f451701f29c3bde214""

or

$ curl "API_ENDPOINT" \
  -H "Authorization: Bearer 9e0cd62a22f451701f29c3bde214"

Make sure to replace 9e0cd62a22f451701f29c3bde214 with your API key.

TaxJar uses API keys to allow access to the API. If you’re new to TaxJar, you’ll need to sign up for an account to get your API key. Otherwise, log in and go to Account > API Access to generate a new API token.

TaxJar expects the API key to be included in all API requests to the server using a header like the following:

Authorization: Token token="9e0cd62a22f451701f29c3bde214"

or

Authorization: Bearer 9e0cd62a22f451701f29c3bde214

Billing

Each sales tax calculation or rate lookup request made to our API results in a “transaction”. These transactions will be counted toward your monthly plan limit. Overage fees are charged separately if you exceed your plan limit during busier months. You’ll always remain on the same plan until you decide to upgrade. You can check your API usage under “Transaction History” from Plans & Billing in the TaxJar app. Hover over the transaction counts for a breakdown of imported orders and calculations.

View our pricing to find a plan that works best for you. We also recommend our guide on avoiding unnecessary API calls to reduce your API usage and save money.

Countries

We currently support the following countries around the world. If you would like to request the addition of a new country, please email us at [email protected].

North America

   United States (US)
   Canada (CA)

Oceania

   Australia (AU)

European Union

   Austria (AT)
   Belgium (BE)
   Bulgaria (BG)
   Croatia (HR)
   Cyprus (CY)
   Czech Republic (CZ)
   Denmark (DK)
   Estonia (EE)
   Finland (FI)
   France (FR)
   Germany (DE)
   Greece (GR)
   Hungary (HU)
   Ireland (IE)
   Italy (IT)
   Latvia (LV)
   Lithuania (LT)
   Luxembourg (LU)
   Malta (MT)
   Netherlands (NL)
   Poland (PL)
   Portugal (PT)
   Romania (RO)
   Slovakia (SK)
   Slovenia (SI)
   Spain (ES)
   Sweden (SE)
   United Kingdom (GB)

Sales Tax API

TaxJar API endpoints provide detailed sales tax rates and calculations. They also support extended US-based reporting and filing capabilities for TaxJar users.

Run in Postman

Categories

The TaxJar API provides product-level tax rules for a subset of product categories. These categories are to be used for products that are either exempt from sales tax in some jurisdictions or are taxed at reduced rates. You need not pass in a product tax code for sales tax calculations on product that is fully taxable. Simply leave that parameter out.

We will be expanding support for additional, less common categories over time. If you would like to request the addition of a new product category, please email us at [email protected].

get List tax categories

Definition

client.categories
client.categories
client.categories();
$client->categories();
client.Categories();
client.categories();
client.Categories()
GET https://api.taxjar.com/v2/categories

Request Example

require "taxjar"
client = Taxjar::Client.new(api_key: "9e0cd62a22f451701f29c3bde214")

categories = client.categories
import taxjar
client = taxjar.Client(api_key='9e0cd62a22f451701f29c3bde214')

categories = client.categories()
const Taxjar = require('taxjar');

const client = new Taxjar({
  apiKey: '9e0cd62a22f451701f29c3bde214'
});

client.categories().then(res => {
  res.categories; // Array of categories
});
require __DIR__ . '/vendor/autoload.php';
$client = TaxJar\Client::withApiKey("9e0cd62a22f451701f29c3bde214");

$categories = $client->categories();
using Taxjar;
var client = new TaxjarApi("9e0cd62a22f451701f29c3bde214");

var categories = client.Categories();
import com.taxjar.Taxjar;
import com.taxjar.exception.TaxjarException;
import com.taxjar.model.categories.CategoryResponse;

public class CategoryExample {

    public static void main(String[] args) {
        Taxjar client = new Taxjar("9e0cd62a22f451701f29c3bde214");

        try {
            CategoryResponse res = client.categories();
        } catch (TaxjarException e) {
            e.printStackTrace();
        }
    }

}
package main

import (
    "fmt"

    "github.com/taxjar/taxjar-go"
)

func main() {
    client := taxjar.NewClient(taxjar.Config{
        APIKey: "9e0cd62a22f451701f29c3bde214",
    })

    res, err := client.Categories()
    if err != nil {
        fmt.Println(err)
    } else {
        fmt.Println(res.Categories)
    }
}
$ curl https://api.taxjar.com/v2/categories \
  -H "Authorization: Bearer 9e0cd62a22f451701f29c3bde214"

Response Example

{
  "categories": [
    {
      "name": "Installation Services",
      "product_tax_code": "10040",
      "description": "Installation services separately stated from sales of tangible personal property."
    },
    {
      "name": "General Services",
      "product_tax_code": "19000",
      "description": "Miscellaneous services which are not subject to a service-specific tax levy. This category will only treat services as taxable if the jurisdiction taxes services generally."
    },
    {
      "name": "Advertising Services",
      "product_tax_code": "19001",
      "description": "Services rendered for advertising which do not include the exchange of tangible personal property."
    },
    {
      "name": "Parking Services",
      "product_tax_code": "19002",
      "description": "Service of providing usage of a parking space."
    },
    {
      "name": "Admission Services",
      "product_tax_code": "19003",
      "description": "Admission charges associated with entry to an event."
    },
    {
      "name": "Training Services",
      "product_tax_code": "19004",
      "description": "Services provided to educate users on the proper use of a product."
    },
    {
      "name": "Professional Services",
      "product_tax_code": "19005",
      "description": "Professional services which are not subject to a service-specific tax levy."
    },
    {
      "name": "Dry Cleaning Services",
      "product_tax_code": "19006",
      "description": "Services provided in the cleaning of clothing and/or fabrics."
    },
    {
      "name": "Repair Services",
      "product_tax_code": "19007",
      "description": "Services provided to restore tangible personal property to working order or optimal functionality."
    },
    {
      "name": "Hairdressing Services",
      "product_tax_code": "19008",
      "description": "Services provided to cut and style human hair."
    },
    {
      "name": "Printing Services",
      "product_tax_code": "19009",
      "description": "Services provided to apply graphics and/or text to paper or other substrates which do not involve an exchange of tangible personal property."
    },
    {
      "name": "Clothing",
      "product_tax_code": "20010",
      "description": "All human wearing apparel suitable for general use"
    },
    {
      "name": "Clothing - Swimwear",
      "product_tax_code": "20041",
      "description": "Bathing suits and swim suits"
    },
    {
      "name": "Software as a Service",
      "product_tax_code": "30070",
      "description": "Pre-written software, delivered electronically, but access remotely."
    },
    {
      "name": "Digital Goods",
      "product_tax_code": "31000",
      "description": "Digital products transferred electronically, meaning obtained by the purchaser by means other than tangible storage media."
    },
    {
      "name": "Candy",
      "product_tax_code": "40010",
      "description": "Candy and similar items"
    },
    {
      "name": "Supplements",
      "product_tax_code": "40020",
      "description": "Non-food dietary supplements"
    },
    {
      "name": "Food & Groceries",
      "product_tax_code": "40030",
      "description": "Food for humans consumption, unprepared"
    },
    {
      "name": "Soft Drinks",
      "product_tax_code": "40050",
      "description": "Soft drinks, soda, and other similar beverages. Does not include fruit juices and water."
    },
    {
      "name": "Bottled Water",
      "product_tax_code": "40060",
      "description": "Bottled, drinkable water for human consumption."
    },
    {
      "name": "Prepared Foods",
      "product_tax_code": "41000",
      "description": "Foods intended for on-site consumption. Ex. Restaurant meals."
    },
    {
      "name": "Non-Prescription",
      "product_tax_code": "51010",
      "description": "Drugs for human use without a prescription"
    },
    {
      "name": "Prescription",
      "product_tax_code": "51020",
      "description": "Drugs for human use with a prescription"
    },
    {
      "name": "Books",
      "product_tax_code": "81100",
      "description": "Books, printed"
    },
    {
      "name": "Textbook",
      "product_tax_code": "81110",
      "description": "Textbooks, printed"
    },
    {
      "name": "Religious Books",
      "product_tax_code": "81120",
      "description": "Religious books and manuals, printed"
    },
    {
      "name": "Magazines & Subscriptions",
      "product_tax_code": "81300",
      "description": "Periodicals, printed, sold by subscription"
    },
    {
      "name": "Magazine",
      "product_tax_code": "81310",
      "description": "Periodicals, printed, sold individually"
    }
  ]
}
[
  #<Taxjar::Category:0x00000a @attrs={
    :name => "Digital Goods",
    :product_tax_code => "31000",
    :description => "Digital products transferred electronically."
  }>,
  #<Taxjar::Category:0x00000a @attrs={
    :name => "Clothing",
    :product_tax_code => "20010",
    :description => "All human wearing apparel suitable for general use"
  }>,
  #<Taxjar::Category:0x00000a @attrs={
    :name => "Non-Prescription",
    :product_tax_code => "51010",
    :description => "Drugs for human use without a prescription"
  }>
]
[
  <TaxJarCategory {
    'product_tax_code': '31000',
    'name': 'Digital Goods',
    'description': 'Digital products transferred electronically, meaning obtained by the purchaser by means other than tangible storage media.'
  }>,
  <TaxJarCategory {
    'product_tax_code': '20010',
    'name': 'Clothing',
    'description': 'All human wearing apparel suitable for general use'
  }>,
  <TaxJarCategory {
    'product_tax_code': '51010',
    'name': 'Non-Prescription',
    'description': 'Drugs for human use without a prescription'
  }>
]
taxjar.CategoriesResponse{
    Categories: []taxjar.Category{
        {
            Name:           "Digital Goods",
            ProductTaxCode: "31000",
            Description:    "Digital products transferred electronically, meaning obtained by the purchaser by means other than tangible storage media.",
        },
        {
            Name:           "Clothing",
            ProductTaxCode: "20010",
            Description:    "All human wearing apparel suitable for general use",
        },
        {
            Name:           "Non-Prescription",
            ProductTaxCode: "51010",
            Description:    "Drugs for human use without a prescription",
        },
    },
}

Lists all tax categories.

Request

GET https://api.taxjar.com/v2/categories

Response

Returns a categories JSON object with an array of product categories and corresponding tax codes. The following categories are currently supported:

Category Code Countries Description
Installation Services 10040 Installation services separately stated from sales of tangible personal property.
General Services 19000 Miscellaneous services which are not subject to a service-specific tax levy. This category will only treat services as taxable if the jurisdiction taxes services generally.
Advertising Services 19001 Services rendered for advertising which do not include the exchange of tangible personal property.
Parking Services 19002 Service of providing usage of a parking space.
Admission Services 19003 Admission charges associated with entry to an event.
Training Services 19004 Services provided to educate users on the proper use of a product.
Professional Services 19005 Professional services which are not subject to a service-specific tax levy.
Dry Cleaning Services 19006 Services provided in the cleaning of clothing and/or fabrics.
Repair Services 19007 Services provided to restore tangible personal property to working order or optimal functionality.
Hairdressing Services 19008 Services provided to cut and style human hair.
Printing Services 19009 Services provided to apply graphics and/or text to paper or other substrates which do not involve an exchange of tangible personal property.
Clothing 20010 All human wearing apparel suitable for general use.
Clothing - Swimwear 20041 Bathing suits and swim suits.
Software as a Service 30070 Pre-written software, delivered electronically, but access remotely.
Digital Goods 31000 Digital products transferred electronically, meaning obtained by the purchaser by means other than tangible storage media.
Candy 40010 Candy and similar items
Supplements 40020 Non-food dietary supplements.
Food & Groceries 40030 Food for humans consumption, unprepared.
Soft Drinks 40050 Soft drinks, soda, and other similar beverages. Does not include fruit juices and water.
Bottled Water 40060 Bottled, drinkable water for human consumption.
Prepared Foods 41000 Foods intended for on-site consumption. Ex. Restaurant meals.
Non-Prescription 51010 Drugs for human use without a prescription.
Prescription 51020 Drugs for human use with a prescription.
Books 81100 Books, printed.
Textbook 81110 Textbooks, printed.
Religious Books 81120 Religious books and manuals, printed.
Magazines & Subscriptions 81300 Periodicals, printed, sold by subscription.
Magazine 81310 Periodicals, printed, sold individually.
Software - Prewritten, electronic delivery 43230000A1200 Software - Prewritten & delivered electronically
Software - Prewritten, load and leave delivery 43230000A1300 Software - Prewritten & delivered by load and leave
Software - Prewritten, delivered by digital keycode printed on tangible media 43230000A1400 Software - Prewritten & delivered by digital keycode printed on tangible media
Software - Custom, tangible media 43230000A2100 Software - Custom & delivered on tangible media
Software - Custom, electronic delivery 43230000A2200 Software - Custom & delivered electronically
Software - Custom, load and leave delivery 43230000A2300 Software - Custom & delivered by load & leave
Electronic publications and music - Delivered electronically with permanent rights of usage 55111500A1210 Electronic publications and music - Delivered electronically with permanent rights of usage
Electronic publications and music - Delivered electronically with less than permanent rights of usage 55111500A1220 Electronic publications and music - Delivered electronically with less than permanent rights of usage
Electronic publications and music - Streamed 55111500A1500 Electronic publications and music - Streamed
Electronic software documentation or user manuals - Prewritten, electronic delivery 55111601A1200 Electronic software documentation or user manuals - For prewritten software & delivered electronically
Electronic software documentation or user manuals - Prewritten, load and leave delivery 55111601A1300 Electronic software documentation or user manuals - For prewritten software & delivered by load and leave
Electronic software documentation or user manuals - Custom, tangible media 55111601A2100 Electronic software documentation or user manuals - For custom software & delivered on tangible media
Electronic software documentation or user manuals - Custom, electronic delivery 55111601A2200 Electronic software documentation or user manuals - For custom software & delivered electronically
Electronic software documentation or user manuals - Custom, load and leave delivery 55111601A2300 Electronic software documentation or user manuals - For custom software & delivered by load and leave
Proprietary or licensed systems maintenance or support 81111805A0000 Proprietary or licensed systems maintenance or support
Cloud-based software as a service (SaaS) 81162000A0000 Cloud-based software as a service (SaaS)
Software - Prewritten, tangible media 43230000A1100 Software - Prewritten & delivered on tangible media
Electronic software documentation or user manuals - Prewritten, tangible media 55111601A1100 Electronic software documentation or user manuals - For prewritten software & delivered on tangible media
Co location service 81111814A0000 Co location service
Data center services 81112003A0000 Data center services
Disaster recovery services 81112004A0000 Disaster recovery services
Mainframe software applications design 81111501A0000 Mainframe software applications design
Personal computer PC application design 81111502A0000 Personal computer PC application design
Systems integration design 81111503A0000 Systems integration design
Application programming services 81111504A0000 Application programming services
Operating system programming services 81111505A0000 Operating system programming services
Client or server programming services 81111506A0000 Client or server programming services
ERP or database applications programming services 81111507A0000 ERP or database applications programming services
Application implementation services 81111508A0000 Application implementation services
Internet or intranet client application development services 81111509A0000 Internet or intranet client application development services
Internet or intranet server application development services 81111510A0000 Internet or intranet server application development services
System or application programming management service 81111511A0000 System or application programming management service
Computer graphics service 81111512A0000 Computer graphics service
Internet cloud storage service 81111513A0000 Internet cloud storage service
Computer programmers 81111600A0000 Computer programmers
Wide area network communications design 81111701A0000 Wide area network communications design
Local area network communications design 81111702A0000 Local area network communications design
Electronic data interchange EDI design 81111703A0000 Electronic data interchange EDI design
Database design 81111704A0000 Database design
Systems architecture 81111705A0000 Systems architecture
Network planning services 81111706A0000 Network planning services
Systems planning services 81111707A0000 Systems planning services
Demining geographical or geospatial information system GIS 81111709A0000 Demining geographical or geospatial information system GIS
Information management system for mine action IMSMA 81111710A0000 Information management system for mine action IMSMA
Computer or network or internet security 81111801A0000 Computer or network or internet security
Mainframe administration services 81111802A0000 Mainframe administration services
Local area network LAN maintenance or support 81111803A0000 Local area network LAN maintenance or support
Wide area network WAN maintenance or support 81111804A0000 Wide area network WAN maintenance or support
Database analysis service 81111806A0000 Database analysis service
System analysis service 81111808A0000 System analysis service
System installation service 81111809A0000 System installation service
Software coding service 81111810A0000 Software coding service
Technical support or help desk services 81111811A0000 Technical support or help desk services
Quality assurance services 81111819A0000 Quality assurance services
System usability services 81111820A0000 System usability services
Database information retrieval 81111901A0000 Database information retrieval
Online database information retrieval service 81111902A0000 Online database information retrieval service
Online data processing service 81112001A0000 Online data processing service
Data processing or preparation services 81112002A0000 Data processing or preparation services
Document scanning service 81112005A0000 Document scanning service
Data storage service 81112006A0000 Data storage service
Content or data standardization services 81112007A0000 Content or data standardization services
Content or data classification services 81112009A0000 Content or data classification services
Data conversion service 81112010A0000 Data conversion service
Software maintenance and support - Mandatory, prewritten, tangible media 81112200A1110 Software maintenance and support - Mandatory maintenance and support charges for prewritten software including items delivered on tangible media
Software maintenance and support - Optional, prewritten, tangible media (incl. updates/upgrades) 81112200A1121 Software maintenance and support - Optional maintenance and support charges for prewritten software including items delivered on tangible media (includes software updates/upgrades)
Software maintenance and support - Optional, prewritten, tangible media (support services only) 81112200A1122 Software maintenance and support - Optional maintenance and support charges for prewritten software including items delivered on tangible media (includes support services only - no updates/upgrades)
Software maintenance and support - Mandatory, prewritten, electronic delivery 81112200A1210 Software maintenance and support - Mandatory maintenance and support charges for prewritten software including items delivered electronically
Software maintenance and support - Optional, prewritten, electronic delivery (incl. updates/upgrades) 81112200A1221 Software maintenance and support - Optional maintenance and support charges for prewritten software including items delivered electronically (includes software updates/upgrades)
Software maintenance and support - Optional, prewritten, electronic delivery (support services only) 81112200A1222 Software maintenance and support - Optional maintenance and support charges for prewritten software including items delivered electronically (includes support services only - no updates/upgrades)
Software maintenance and support - Mandatory, prewritten, load and leave delivery 81112200A1310 Software maintenance and support - Mandatory maintenance and support charges for prewritten software including items delivered by load and leave
Software maintenance and support - Optional, prewritten, load and leave delivery (incl. updates/upgrades) 81112200A1321 Software maintenance and support - Optional maintenance and support charges for prewritten software including items delivered by load and leave (includes software updates/upgrades)
Software maintenance and support - Optional, prewritten, load and leave delivery (support services only) 81112200A1322 Software maintenance and support - Optional maintenance and support charges for prewritten software including items delivered by load and leave (includes support services only - no updates/upgrades)
Software maintenance and support - Mandatory, custom, tangible media 81112200A2110 Software maintenance and support - Mandatory maintenance and support charges for custom software including items delivered on tangible media
Software maintenance and support - Optional, custom, tangible media (incl. updates/upgrades) 81112200A2121 Software maintenance and support - Optional maintenance and support charges for custom software including items delivered on tangible media (includes software updates/upgrades)
Software maintenance and support - Optional, custom, tangible media (support services only) 81112200A2122 Software maintenance and support - Optional maintenance and support charges for custom software including items delivered on tangible media (includes support services only - no updates/upgrades)
Software maintenance and support - Mandatory, custom, electronic delivery 81112200A2210 Software maintenance and support - Mandatory maintenance and support charges for custom software including items delivered electronically
Software maintenance and support - Optional, custom, electronic delivery (incl. updates/upgrades) 81112200A2221 Software maintenance and support - Optional maintenance and support charges for custom software including items delivered electronically (includes software updates/upgrades)
Software maintenance and support - Optional, custom, electronic delivery (support services only) 81112200A2222 Software maintenance and support - Optional maintenance and support charges for custom software including items delivered electronically (includes support services only - no updates/upgrades)
Software maintenance and support - Mandatory, custom, load and leave delivery 81112200A2310 Software maintenance and support - Mandatory maintenance and support charges for custom software including items delivered by load and leave
Software maintenance and support - Optional, custom, load and leave delivery (incl. updates/upgrades) 81112200A2321 Software maintenance and support - Optional maintenance and support charges for custom software including items delivered by load and leave (includes software updates/upgrades)
Software maintenance and support - Optional, custom, load and leave delivery (support services only) 81112200A2322 Software maintenance and support - Optional maintenance and support charges for custom software including items delivered by load and leave (includes support services only - no updates/upgrades)
Cloud-based platform as a service (PaaS) 81162100A0000 Cloud-based platform as a service (PaaS) - Personal Use
Cloud-based infrastructure as a service (IaaS) 81162200A0000 Cloud-based infrastructure as a service (IaaS) - Personal Use
Hardware as a service (HaaS) 81161900A0000 Hardware as a service (HaaS)
Cloud-based business process as a service 81162300A0000 Cloud-based business process as a service
Cloud-based platform as a service (PaaS) - Business Use 81162100A9000 Cloud-based platform as a service (PaaS) - Business Use
Cloud-based infrastructure as a service (IaaS) - Business Use 81162200A9000 Cloud-based infrastructure as a service (IaaS) - Business Use
Cloud-based business process as a service - Business Use 81162300A9000 Cloud-based business process as a service - Business Use
Cloud-based software as a service (SaaS) - Business Use 81162000A9000 Cloud-based software as a service (SaaS) - Business Use
Gift Cards 14111803A0001 Gift Cards
Clothing - Lab coats 46181532A0000 Clothing - Lab coats
Clothing - Waterproof jacket or raincoat 46181543A0000 Clothing - Waterproof jacket or raincoat
Clothing - Waterproof cap 46181546A0000 Clothing - Waterproof cap
Clothing - Safety boots 46181604A0000 Clothing - Safety boots
Clothing - Safety shoes 46181605A0000 Clothing - Safety shoes
Clothing - Protective clogs 46181607A0000 Clothing - Protective clogs
Clothing - Protective sandals 46181608A0000 Clothing - Protective sandals
Clothing - Protective insole 46181609A0000 Clothing - Protective insole
Clothing - Insulated cold weather shoe 46181610A0000 Clothing - Insulated cold weather shoe
Clothing - Waterproof boot 46181611A0000 Clothing - Waterproof boot
Clothing - Military boot 46181612A0000 Clothing - Military boot
Clothing - Mountain climbing boot 46181613A0000 Clothing - Mountain climbing boot
Clothing - Poncho 53101806A0000 Clothing - Poncho
Clothing - Undershirts 53102301A0000 Clothing - Undershirts
Clothing - Slips 53102302A0000 Clothing - Slips
Clothing - Underpants 53102303A0000 Clothing - Underpants
Clothing - Brassieres 53102304A0000 Clothing - Brassieres
Clothing - Infant diapers 53102305A0000 Clothing - Infant diapers
Clothing - Adult diapers 53102306A0000 Clothing - Adult diapers
Clothing - Body shaping garments 53102307A0000 Clothing - Body shaping garments
Clothing - Diaper liners 53102308A0000 Clothing - Diaper liners
Clothing - Disposable youth training pants 53102311A0000 Clothing - Disposable youth training pants
Clothing - Stockings 53102401A0000 Clothing - Stockings
Clothing - Socks 53102402A0000 Clothing - Socks
Clothing - Panty hose 53102403A0000 Clothing - Panty hose
Clothing - Tights 53102404A0000 Clothing - Tights
Clothing - Belts or suspenders 53102501A0000 Clothing - Belts or suspenders
Clothing - Ties or scarves or mufflers 53102502A0000 Clothing - Ties or scarves or mufflers
Clothing - Hats 53102503A0000 Clothing - Hats
Clothing - Gloves or mittens 53102504A0000 Clothing - Gloves or mittens
Clothing - Armbands 53102508A0000 Clothing - Armbands
Clothing - Garters 53102509A0000 Clothing - Garters
Clothing - Bandannas 53102511A0000 Clothing - Bandannas
Clothing - Caps 53102516A0000 Clothing - Caps
Clothing - Bib 53102521A0000 Clothing - Bib
Clothing - Bath robes 53102606A0000 Clothing - Bath robes
Clothing - Infant swaddles or buntings or receiving blankets 53102608A0000 Clothing - Infant swaddles or buntings or receiving blankets
Clothing - Disposable work coat 53103201A0000 Clothing - Disposable work coat
Clothing - Shoelaces 53112002A0000 Clothing - Shoelaces
Clothing - Heel pads 53112003A0000 Clothing - Heel pads
Clothing - Slacks or trousers or shorts 53101500A0000 Clothing - Slacks or trousers or shorts
Clothing - Shirts 53101600A0000 Clothing - Shirts
Clothing - Sweaters 53101700A0000 Clothing - Sweaters
Clothing - Coats or jackets 53101800A0000 Clothing - Coats or jackets
Clothing - Suits 53101900A0000 Clothing - Suits
Clothing - Dresses or skirts or saris or kimonos 53102000A0000 Clothing - Dresses or skirts or saris or kimonos
Clothing - Overalls or coveralls 53102100A0000 Clothing - Overalls or coveralls
Clothing - Folkloric clothing 53102200A0000 Clothing - Folkloric clothing
Clothing - Pajamas or nightshirts or robes 53102600A0000 Clothing - Pajamas or nightshirts or robes
Clothing - Athletic wear 53102900A0000 Clothing - Athletic wear
Clothing - TShirts 53103000A0000 Clothing - TShirts
Clothing - Vest or waistcoats 53103100A0000 Clothing - Vest or waistcoats
Clothing - Boots 53111500A0000 Clothing - Boots
Clothing - Shoes 53111600A0000 Clothing - Shoes
Clothing - Slippers 53111700A0000 Clothing - Slippers
Clothing - Sandals 53111800A0000 Clothing - Sandals
Clothing - Athletic footwear 53111900A0000 Clothing - Athletic footwear
Clothing - Overshoes 53112000A0000 Clothing - Overshoes
Clothing - Swimwear 53102800A0000 Clothing - Swimwear
Clothing - Sweat bands 53102506A0000 Clothing - Sweat bands
Clothing - Tuxedo or Formalwear 53101801A0001 Clothing - Tuxedo or Formalwear
Clothing - Formal Dress 53101801A0002 Clothing - Formal Dress
Clothing - Prom Dress 53101801A0003 Clothing - Prom Dress
Clothing - Bridal Gown 53101801A0004 Clothing - Bridal Gown
Clothing - Protective aprons 46181501A0001 Clothing - Protective aprons
Clothing - Bullet proof vests 46181502A0001 Clothing - Bullet proof vests
Clothing - Protective coveralls 46181503A0001 Clothing - Protective coveralls
Clothing - Protective gloves 46181504A0001 Clothing - Protective gloves
Clothing - Protective knee pads 46181505A0001 Clothing - Protective knee pads
Clothing - Protective ponchos 46181506A0001 Clothing - Protective ponchos
Clothing - Safety vests 46181507A0001 Clothing - Safety vests
Clothing - Fire retardant apparel 46181508A0001 Clothing - Fire retardant apparel
Clothing - Hazardous material protective apparel 46181509A0001 Clothing - Hazardous material protective apparel
Clothing - Cleanroom apparel 46181512A0001 Clothing - Cleanroom apparel
Clothing - Elbow protectors 46181514A0001 Clothing - Elbow protectors
Clothing - Safety sleeves 46181516A0001 Clothing - Safety sleeves
Clothing - Insulated or flotation suits 46181517A0001 Clothing - Insulated or flotation suits
Clothing - Heat resistant clothing 46181518A0001 Clothing - Heat resistant clothing
Clothing - Leg protectors 46181520A0001 Clothing - Leg protectors
Clothing - Safety hoods 46181522A0001 Clothing - Safety hoods
Clothing - Protective shirts 46181526A0001 Clothing - Protective shirts
Clothing - Protective pants 46181527A0001 Clothing - Protective pants
Clothing - Protective frock 46181528A0001 Clothing - Protective frock
Clothing - Insulated clothing for cold environments 46181529A0001 Clothing - Insulated clothing for cold environments
Clothing - Protective finger cots 46181530A0001 Clothing - Protective finger cots
Clothing - Reflective apparel or accessories 46181531A0001 Clothing - Reflective apparel or accessories
Clothing - Protective coats 46181533A0001 Clothing - Protective coats
Clothing - Protective wristbands 46181534A0001 Clothing - Protective wristbands
Clothing - Protective socks or hosiery 46181535A0001 Clothing - Protective socks or hosiery
Clothing - Anti cut gloves 46181536A0001 Clothing - Anti cut gloves
Clothing - Insulated gloves 46181537A0001 Clothing - Insulated gloves
Clothing - Thermal gloves 46181538A0001 Clothing - Thermal gloves
Clothing - Anti vibratory gloves 46181539A0001 Clothing - Anti vibratory gloves
Clothing - Welder gloves 46181540A0001 Clothing - Welder gloves
Clothing - Chemical resistant gloves 46181541A0001 Clothing - Chemical resistant gloves
Clothing - Protective mittens 46181542A0001 Clothing - Protective mittens
Clothing - Waterproof trousers or pants 46181544A0001 Clothing - Waterproof trousers or pants
Clothing - Waterproof suit 46181545A0001 Clothing - Waterproof suit
Clothing - Waterproof cap cover 46181547A0001 Clothing - Waterproof cap cover
Clothing - Welder bib 46181548A0001 Clothing - Welder bib
Clothing - Neck gaitor 46181549A0001 Clothing - Neck gaitor
Clothing - Protective scarf 46181550A0001 Clothing - Protective scarf
Clothing - Protective mesh jacket 46181551A0001 Clothing - Protective mesh jacket
Clothing - Protective wear dispenser 46181553A0001 Clothing - Protective wear dispenser
Clothing - Cooling vest 46181554A0001 Clothing - Cooling vest
Clothing - Fire retardant footwear 46181601A0001 Clothing - Fire retardant footwear
Clothing - Hazardous material protective footwear 46181602A0001 Clothing - Hazardous material protective footwear
Clothing - Cleanroom footwear 46181603A0001 Clothing - Cleanroom footwear
Clothing - Footwear covers 46181606A0001 Clothing - Footwear covers
Clothing - Hard hats 46181701A0001 Clothing - Hard hats
Clothing - Facial shields 46181702A0001 Clothing - Facial shields
Clothing - Welding masks 46181703A0001 Clothing - Welding masks
Clothing - Safety helmets 46181704A0001 Clothing - Safety helmets
Clothing - Motorcycle helmets 46181705A0001 Clothing - Motorcycle helmets
Clothing - Helmet parts or accessories 46181706A0001 Clothing - Helmet parts or accessories
Clothing - Facial shields parts or accessories 46181707A0001 Clothing - Facial shields parts or accessories
Clothing - Protective hair net 46181708A0001 Clothing - Protective hair net
Clothing - Face protection kit 46181709A0001 Clothing - Face protection kit
Clothing - Protective hood 46181710A0001 Clothing - Protective hood
Clothing - Welders helmet 46181711A0001 Clothing - Welders helmet
Clothing - Safety glasses 46181802A0001 Clothing - Safety glasses
Clothing - Eye shields 46181803A0001 Clothing - Eye shields
Clothing - Goggles 46181804A0001 Clothing - Goggles
Clothing - Goggle protective covers 46181808A0001 Clothing - Goggle protective covers
Clothing - Eye shield garters 46181809A0001 Clothing - Eye shield garters
Clothing - Protective lens 46181811A0001 Clothing - Protective lens
Clothing - Baseball batting gloves 49211606A0001 Clothing - Baseball batting gloves
Clothing - Bowling gloves 49211606A0002 Clothing - Bowling gloves
Clothing - Boxing gloves 49171600A0000 Clothing - Boxing gloves
Clothing - Football receiver gloves 49211606A0004 Clothing - Football receiver gloves
Clothing - Swim goggles or swim fins 49141606A0000 Clothing - Swim goggles or swim fins
Clothing - Life vests or preservers 46161604A0000 Clothing - Life vests or preservers
Clothing - Ice Skates 49151602A0000 Clothing - Ice Skates
Clothing - Roller skates or roller blades 49221509A0000 Clothing - Roller skates or roller blades
Clothing - Shin guards 49161525A0001 Clothing - Shin guards
Clothing - Mouth guards 42152402A0001 Clothing - Mouth guards
Clothing - Shoulder pads for sports 46181506A0002 Clothing - Shoulder pads for sports
Clothing - Wetsuit 49141506A0000 Clothing - Wetsuit
Clothing - Golf gloves 49211606A0000 Clothing - Golf gloves
Clothing - Ballet or tap shoes 53111900A0001 Clothing - Ballet or tap shoes
Clothing - Cleated or spiked shoes 53111900A0002 Clothing - Cleated or spiked shoes
Clothing - Bowling shoes 53111900A0003 Clothing - Bowling shoes
Clothing - Golf shoes 53111900A0004 Clothing - Golf shoes
Clothing - Ski boots 53111900A0005 Clothing - Ski boots
Clothing - Athletic supporter 49161517A0001 Clothing - Athletic supporter
Clothing - Chevrons 53102518A0000 Clothing - Chevrons
Clothing - Military uniforms 53102701A0000 Clothing - Military uniforms
Clothing - Customs uniforms 53102702A0000 Clothing - Customs uniforms
Clothing - Police uniforms 53102703A0000 Clothing - Police uniforms
Clothing - Institutional food preparation or service attire 53102704A0000 Clothing - Institutional food preparation or service attire
Clothing - School uniforms 53102705A0000 Clothing - School uniforms
Clothing - Security uniforms 53102706A0000 Clothing - Security uniforms
Clothing - Doctors coat 53102707A0000 Clothing - Doctors coat
Clothing - Nurses uniforms 53102708A0000 Clothing - Nurses uniforms
Clothing - Ambulance officers uniforms 53102709A0000 Clothing - Ambulance officers uniforms
Clothing - Corporate uniforms 53102710A0000 Clothing - Corporate uniforms
Clothing - Salon smocks 53102711A0000 Clothing - Salon smocks
Clothing - Paramedic uniforms 53102712A0000 Clothing - Paramedic uniforms
Clothing - Ushers uniforms 53102713A0000 Clothing - Ushers uniforms
Clothing - Judicial robe 53102714A0000 Clothing - Judicial robe
Clothing - Prison officer uniform 53102715A0000 Clothing - Prison officer uniform
Clothing - Prisoner uniform 53102716A0000 Clothing - Prisoner uniform
Clothing - Firefighter uniform 53102718A0000 Clothing - Firefighter uniform
Clothing - Sport uniform 53102717A0000 Clothing - Sport uniform
Clothing - Costume 60141401A0000 Clothing - Costume
Clothing - Costume Mask 60122800A0000 Clothing - Costume Mask
Clothing - Handkerchiefs 53102512A0000 Clothing - Handkerchiefs
Clothing - Shower Cap 53131601A0000 Clothing - Shower Cap
Clothing - Gorgets 53102519A0000 Clothing - Gorgets
Clothing - Zippers 53141503A0000 Clothing - Zippers
Clothing - Buttons 53141505A0000 Clothing - Buttons
Clothing - Snaps 53141506A0000 Clothing - Snaps
Clothing - Clasps 53141507A0000 Clothing - Clasps
Clothing - Fabric for use in clothing 11160000A0000 Clothing - Fabric for use in clothing
Clothing - Yarn 11151700A0000 Clothing - Clothing - Yarn
Clothing - Fabric dye 60105810A0000 Clothing - Clothing - Fabric dye
Clothing - Sequins for use in clothing 60123900A0000 Clothing - Sequins for use in clothing
Clothing - Belt Buckle 53102501A0001 Clothing - Belt Buckle
Clothing - Shoulder boards or epaulettes 53102520A0000 Clothing - Shoulder boards or epaulettes
Clothing - Fur Coat or Jacket 53101800A0001 Clothing - Fur Coat or Jacket
Clothing - Fur Ear muffs or scarves 53102502A0001 Clothing - Fur Ear muffs or scarves
Clothing - Fur Gloves 53102503A0001 Clothing - Fur Gloves
Clothing - Fur Hat 53102504A0001 Clothing - Fur Hat
Clothing - Fur Vest 53103100A0001 Clothing - Fur Vest
Clothing - Fur Poncho or Cape 53101806A0001 Clothing - Fur Poncho or Cape
Clothing - Synthetic Fur Coat or Jacket 53101800A0002 Clothing - Synthetic Fur Coat or Jacket
Clothing - Synthetic Fur Ear muffs or scarves 53102502A0002 Clothing - Synthetic Fur Ear muffs or scarves
Clothing - Synthetic Fur Gloves 53102503A0002 Clothing - Synthetic Fur Gloves
Clothing - Synthetic Fur Hat 53102504A0002 Clothing - Synthetic Fur Hat
Clothing - Synthetic Fur Vest 53103100A0002 Clothing - Synthetic Fur Vest
Clothing - Synthetic Fur Poncho or Cape 53101806A0002 Clothing - Synthetic Fur Poncho or Cape
Electronic content bundle - Delivered electronically with permanent rights of usage and streamed 55111500A9210 Electronic content bundle - Delivered electronically with permanent rights of usage and streamed
Electronic content bundle - Delivered electronically with less than permanent rights of usage and streamed 55111500A9220 Electronic content bundle - Delivered electronically with less than permanent rights of usage and streamed
Food and Beverage - Food and Food Ingredients for Home Consumption 50000000A0000 Food and Beverage - Food and Food Ingredients for Home Consumption
Food and Beverage - Cooking Ingredients 50181700A0000 Food and Beverage - Cooking Ingredients
Food and Beverage - Cooking spices 50171500A0000 Food and Beverage - Cooking spices
Food and Beverage - Foods for Immediate Consumption 90100000A0001 Food and Beverage - Foods for Immediate Consumption
Food and Beverage - Meat and meat products 50110000A0000 Food and Beverage - Meat and meat products
Food and Beverage - Meat Sticks, Meat Jerky 50112000A0000 Food and Beverage - Meat Sticks, Meat Jerky
Food and Beverage - Fish and seafood 50121500A0000 Food and Beverage - Fish and seafood
Food and Beverage - Vegetables 50400000A0000 Food and Beverage - Vegetables
Food and Beverage - Fruit 50300000A0000 Food and Beverage - Fruit
Food and Beverage - Dried fruit, unsweetened 50320000A0000 Food and Beverage - Dried fruit, unsweetened
Food and Beverage - Nuts and seeds 50101716A0000 Food and Beverage - Nuts and seeds
Food and Beverage - Processed Nuts and Seeds 50101716A0001 Food and Beverage - Nuts and seeds that have been processed or treated by salting, spicing, smoking, roasting, or other means
Food and Beverage - Bread and Flour Products 50180000A0000 Food and Beverage - Bread and Flour Products
Food and Beverage - Jams and Jellies 50192401A0000 Food and Beverage - Jams and Jellies
Food and Beverage - Grains, Rice, Cereal 50221200A0000 Food and Beverage - Grains, Rice, Cereal
Food and Beverage - Eggs and egg products 50131600A0000 Food and Beverage - Eggs and egg products
Food and Beverage - Nut Butters 50480000A9000 Food and Beverage - Nut Butters
Food and Beverage - Butter, Margarine, Shortening and Cooking Oils 50151500A0000 Food and Beverage - Butter, Margarine, Shortening and Cooking Oils
Food and Beverage - Honey, Maple Syrup 50161509A0000 Food and Beverage - Honey, Maple Syrup
Food and Beverage - Cheese 50131800A0000 Food and Beverage - Cheese
Food and Beverage - Yogurt 50131800A0001 Food and Beverage - Yogurt
Food and Beverage - Ice Cream, packaged 50192303A0000 Food and Beverage - Ice Cream, packaged
Food and Beverage - Ice Cream, sold in container less than one pint 50192304A0000 Food and Beverage - Ice Cream, sold in container less than one pint
Food and Beverage - Cocoa and Cocoa products 50161511A0000 Food and Beverage - Cocoa and Cocoa products
Food and Beverage - Candy 50161800A0000 Food and Beverage - Candy
Food and Beverage - Candy containing flour as an ingredient 50161800A0001 Food and Beverage - Candy containing flour as an ingredient
Food and Beverage - Sugar and Sugar Substitutes 50161900A0000 Food and Beverage - Sugar and Sugar Substitutes
Food and Beverage - Snack Foods 50192100A0000 Food and Beverage - Snack Foods
Food and Beverage - Jello and pudding mixes 50192404A0000 Food and Beverage - Jello and pudding mixes
Food and Beverage - Baby foods and formulas 42231800A0000 Food and Beverage - Baby foods and formulas
Food and Beverage - Vitamins and Supplements 50501500A0000 Food and Beverage - Vitamins and Supplements - labeled with supplement facts
Food and Beverage - Vitamins and Supplements - labeled with nutritional facts 50501500A0001 Food and Beverage - Vitamins and Supplements - labeled with nutritional facts
Food and Beverage - Ice cubes 50202302A0000 Food and Beverage - Ice cubes
Bottled Water 50202301A0000 Bottled Water for human consumption, unflavored, non-carbonated. Does not include distilled water.
Bottled Water - Flavored 50202301A0001 Bottled Water for human consumption, containing natural or artificial sweeteners, non-carbonated.
Bottled Water - Carbonated - Flavored 50202301A0004 Bottled Water for human consumption, containing natural or artificial sweeteners, carbonated.
Bottled Water - Carbonated Naturally 50202301A0003 Bottled Water for human consumption, unflavored, carbonated naturally.
Bottled Water - Carbonated Artificially 50202301A0002 Bottled Water for human consumption, unflavored, carbonated artificially during bottling process.
Soft Drinks - Carbonated - No fruit or vegetable juice 50202306A0000 Carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and zero natural fruit or vegetable juice. This does not include flavored carbonated water.
Soft Drinks - Carbonated - 1-9% fruit juice 50202306A0001 Carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 1 - 9% natural fruit juice. This does not include flavored carbonated water.
Soft Drinks - Carbonated - 1 -9% vegetable juice 50202306A0002 Carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 1 - 9% natural vegetable juice. This does not include flavored carbonated water.
Soft Drinks - Carbonated - 10-24% fruit juice 50202306A0003 Carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 10 - 24% natural fruit juice. This does not include flavored carbonated water.
Soft Drinks - Carbonated - 10-24% vegetable juice 50202306A0004 Carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 10 - 24% natural vegetable juice. This does not include flavored carbonated water.
Soft Drinks - Carbonated - 25-50% fruit juice 50202306A0005 Carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 25 - 50% natural fruit juice. This does not include flavored carbonated water.
Soft Drinks - Carbonated - 25-50% vegetable juice 50202306A0006 Carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 25 - 50% natural vegetable juice. This does not flavored carbonated water.
Soft Drinks - Carbonated - 51-69% fruit juice 50202306A0007 Carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 51 - 69% natural fruit juice. This does not include flavored carbonated water.
Soft Drinks - Carbonated - 51-69% vegetable juice 50202306A0008 Carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 51 - 69% natural vegetable juice. This does not include flavored carbonated water.
Soft Drinks - Carbonated - 70-99% fruit juice 50202306A0009 Carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 70 - 99% natural fruit juice. This does not include flavored carbonated water.
Soft Drinks - Carbonated - 70-99% vegetable juice 50202306A0010 Carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 70 - 99% natural vegetable juice. This does not include flavored carbonated water.
Soft Drinks - Carbonated - 100% fruit or vegetable juice 50202306A0011 Carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 100% natural fruit or vegetable juice. This does not include flavored carbonated water.
Soft Drinks - Non-Carbonated - No fruit or vegetable juice 50202304A0001 Non-carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and zero natural fruit or vegetable juice. This does not include flavored water.
Soft Drinks - Non-Carbonated - 1-9% fruit juice 50202304A0002 Non-carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 1 - 9% natural fruit juice. This does not include flavored water.
Soft Drinks - Non-Carbonated - 1 -9% vegetable juice 50202304A0003 Non-carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 1 - 9% natural vegetable juice. This does not include flavored water.
Soft Drinks - Non-Carbonated - 10-24% fruit juice 50202304A0004 Non-carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 10 - 24% natural fruit juice. This does not include flavored water.
Soft Drinks - Non-Carbonated - 10-24% vegetable juice 50202304A0005 Non-carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 10 - 24% natural vegetable juice. This does not include flavored water.
Soft Drinks - Non-Carbonated - 25-50% fruit juice 50202304A0006 Non-carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 25 - 50% natural fruit juice. This does not include flavored water.
Soft Drinks - Non-Carbonated - 25-50% vegetable juice 50202304A0007 Non-carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 25 - 50% natural vegetable juice. This does not include flavored water.
Soft Drinks - Non-Carbonated - 51-69% fruit juice 50202304A0008 Non-carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 51 - 69% natural fruit juice. This does not include flavored water.
Soft Drinks - Non-Carbonated - 51-69% vegetable juice 50202304A0009 Non-carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 51 - 69% natural vegetable juice. This does not include flavored water.
Soft Drinks - Non-Carbonated - 70-99% fruit juice 50202304A0010 Non-carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 70 - 99% natural fruit juice. This does not include flavored water.
Soft Drinks - Non-Carbonated - 70-99% vegetable juice 50202304A0011 Non-carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 70 - 99% natural vegetable juice. This does not include flavored water.
Soft Drinks - Non-Carbonated - 100% fruit or vegetable juice 50202304A0000 Non-carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 100% natural fruit or vegetable juice. This does not include flavored water.
Food and Beverage - Milk and milk products 50131700A0000 Food and Beverage - Milk and milk products
Food and Beverage - Milk Substitutes 50151515A9000 Food and Beverage - Milk Substitutes
Food and Beverage - Coffee, coffee substitutes and tea 50201700A0000 Food and Beverage - Coffee, coffee substitutes and tea
Food and Beverage - Alcoholic beverages - Beer/Malt Beverages 50202201A0000 Food and Beverage - Alcoholic beverages - Beer/Malt Beverages
Food and Beverage - Wine 50202203A0000 Food and Beverage - Alcoholic beverages - Wine
Food and Beverage - Alcoholic beverages - Spirits 50202206A0000 Food and Beverage - Alcoholic beverages - Spirits
Food and Beverage - Non-Alcoholic Beer, Wine 50202300A0001 Food and Beverage - Non-Alcoholic Beer, Wine
Bottled coffee - containing milk or milk substitute 50201708A0002 Ready to drink coffee based beverage containing milk or milk substitute.
Bottled coffee - no milk - sweetened 50201708A0001 Ready to drink coffee based beverage not containing milk, containing natural or artificial sweetener.
Bottled coffee - no milk - unsweetened 50201708A0000 Ready to drink coffee based beverage containing neither milk nor natural or artificial sweeteners.
Bottled tea - carbonated - sweetened 50201712A0002 Ready to drink carbonated beverage containing tea with natural or artificial sweeteners.
Bottled tea - carbonated - unsweetened 50201712A0001 Ready to drink carbonated beverage containing tea and without any natural or artificial sweeteners.
Bottled tea - non-carbonated - sweetened 50201712A0003 Ready to drink non-carbonated beverage containing tea with natural or artificial sweeteners.
Bottled tea - non-carbonated - unsweetened 50201712A0000 Ready to drink non-carbonated beverage containing tea without natural or artificial sweeteners.
Energy Beverages - Carbonated - with Supplement Facts Label 50202309A0001 Carbonated beverages marketed as energy drinks, carrying a Supplement Facts Label, that contain a blend of energy enhancing vitamins, minerals, herbals, stimulants, etc.
Energy Beverages - Non-Carbonated - with Supplement Facts Label 50202309A0000 Non-carbonated beverages marketed as energy drinks, carrying a Supplement Facts Label, that contain a blend of energy enhancing vitamins, minerals, herbals, stimulants, etc.
Food and Beverage - Granola Bars, Cereal Bars, Energy Bars, Protein Bars containing flour 50221202A0001 Food and Beverage - Granola Bars, Cereal Bars, Energy Bars, Protein Bars containing flour
Food and Beverage - Granola Bars, Cereal Bars, Energy Bars, Protein Bars containing no flour 50221202A0002 Food and Beverage - Granola Bars, Cereal Bars, Energy Bars, Protein Bars containing no flour
Food/TPP Bundle - with Food 90% or more 50193400A0000 Food bundle or basket containing food staples combined with tangible personal property, with the food comprising less 90% or more of the overall value of the bundle.
Food/TPP Bundle - with Food 90% or more - Food is all Candy 50193400A0001 Food bundle or basket containing food staples combined with tangible personal property, with the food comprising 90% or more of the overall value of the bundle, where all food consists of candy (not containing flour).
Food/TPP Bundle - with Food between 50% and 75% 50193400A0002 Food bundle or basket containing food staples combined with tangible personal property, with the food comprising between 50% and 75% of the overall value of the bundle.
Food/TPP Bundle - with Food between 50% and 75% - Food is all Candy 50193400A0003 Food bundle or basket containing food staples combined with tangible personal property, with the food comprising between 50% and 75% of the overall value of the bundle, where all food consists of candy (not containing flour).
Food/TPP Bundle - with Food between 76% and 89% 50193400A0004 Food bundle or basket containing food staples combined with tangible personal property, with the food comprising between 76% and 89% of the overall value of the bundle.
Food/TPP Bundle - with Food between 76% and 89% - Food is all Candy 50193400A0005 Food bundle or basket containing food staples combined with tangible personal property, with the food comprising between 76% and 89% of the overall value of the bundle, where all food consists of candy (not containing flour).
Food/TPP Bundle - with Food less than 50% 50193400A0006 Food/TPP Bundle - with Food less than 50%
Nutritional Supplement/protein drinks, shakes - contains milk 50501703A0001 Ready to drink beverages, containing milk, formulated and labled for their nutritional value, such as increased caloric or protein intake.
Nutritional Supplement/protein drinks, shakes - contains no milk 50501703A0000 Ready to drink beverages, not containing milk, formulated and labled for their nutritional value, such as increased caloric or protein intake and containing natrual or artificial sweeteners.
Powdered Drink Mixes - to be mixed with milk 50202311A0001 Powdered mixes to be reconstituted into a drinkable beverage using milk or a milk substitute.
Powdered Drink Mixes - to be mixed with water 50202311A0000 Powdered mixes to be reconstituted into a drinkable beverage using water.
Protein Powder 50501703A0002 Nutritional supplement in powder form, dairy based or plant based, focused on increasing ones intake of protein for various benefits.

Attributes

Parameter Type Description
product_tax_code string Tax code of the given product category.
name string Name of the given product category.
description string Description of the given product category.

Taxes

post Calculate sales tax for an order

Definition

client.tax_for_order
client.tax_for_order
client.taxForOrder();
$client->taxForOrder();
client.TaxForOrder();
client.taxForOrder();
client.TaxForOrder()
POST https://api.taxjar.com/v2/taxes

Request Example

require "taxjar"
client = Taxjar::Client.new(api_key: "9e0cd62a22f451701f29c3bde214")

order = client.tax_for_order({
  :from_country => 'US',
  :from_zip => '92093',
  :from_state => 'CA',
  :from_city => 'La Jolla',
  :from_street => '9500 Gilman Drive',
  :to_country => 'US',
  :to_zip => '90002',
  :to_state => 'CA',
  :to_city => 'Los Angeles',
  :to_street => '1335 E 103rd St',
  :amount => 15,
  :shipping => 1.5,
  :nexus_addresses => [
    {
      :id => 'Main Location',
      :country => 'US',
      :zip => '92093',
      :state => 'CA',
      :city => 'La Jolla',
      :street => '9500 Gilman Drive',
    }
  ],
  :line_items => [
    {
      :id => '1',
      :quantity => 1,
      :product_tax_code => '20010',
      :unit_price => 15,
      :discount => 0
    }
  ]
})
import taxjar
client = taxjar.Client(api_key='9e0cd62a22f451701f29c3bde214')

order = client.tax_for_order({
  'from_country': 'US',
  'from_zip': '92093',
  'from_state': 'CA',
  'from_city': 'La Jolla',
  'from_street': '9500 Gilman Drive',
  'to_country': 'US',
  'to_zip': '90002',
  'to_state': 'CA',
  'to_city': 'Los Angeles',
  'to_street': '1335 E 103rd St',
  'amount': 15,
  'shipping': 1.5,
  'nexus_addresses': [
    {
      'id': 'Main Location',
      'country': 'US',
      'zip': '92093',
      'state': 'CA',
      'city': 'La Jolla',
      'street': '9500 Gilman Drive'
    }
  ],
  'line_items': [
    {
      'id': '1',
      'quantity': 1,
      'product_tax_code': '20010',
      'unit_price': 15,
      'discount': 0
    }
  ]
})
const Taxjar = require('taxjar');

const client = new Taxjar({
  apiKey: '9e0cd62a22f451701f29c3bde214'
});

client.taxForOrder({
  from_country: 'US',
  from_zip: '92093',
  from_state: 'CA',
  from_city: 'La Jolla',
  from_street: '9500 Gilman Drive',
  to_country: 'US',
  to_zip: '90002',
  to_state: 'CA',
  to_city: 'Los Angeles',
  to_street: '1335 E 103rd St',
  amount: 15,
  shipping: 1.5,
  nexus_addresses: [
    {
      id: 'Main Location',
      country: 'US',
      zip: '92093',
      state: 'CA',
      city: 'La Jolla',
      street: '9500 Gilman Drive'
    }
  ],
  line_items: [
    {
      id: '1',
      quantity: 1,
      product_tax_code: '20010',
      unit_price: 15,
      discount: 0
    }
  ]
}).then(res => {
  res.tax; // Tax object
  res.tax.amount_to_collect; // Amount to collect
});
require __DIR__ . '/vendor/autoload.php';
$client = TaxJar\Client::withApiKey("9e0cd62a22f451701f29c3bde214");

$order_taxes = $client->taxForOrder([
  'from_country' => 'US',
  'from_zip' => '92093',
  'from_state' => 'CA',
  'from_city' => 'La Jolla',
  'from_street' => '9500 Gilman Drive',
  'to_country' => 'US',
  'to_zip' => '90002',
  'to_state' => 'CA',
  'to_city' => 'Los Angeles',
  'to_street' => '1335 E 103rd St',
  'amount' => 15,
  'shipping' => 1.5,
  'nexus_addresses' => [
    [
      'id' => 'Main Location',
      'country' => 'US',
      'zip' => '92093',
      'state' => 'CA',
      'city' => 'La Jolla',
      'street' => '9500 Gilman Drive',
    ]
  ],
  'line_items' => [
    [
      'id' => '1',
      'quantity' => 1,
      'product_tax_code' => '20010',
      'unit_price' => 15,
      'discount' => 0
    ]
  ]
]);
using Taxjar;
var client = new TaxjarApi("9e0cd62a22f451701f29c3bde214");

var rates = client.TaxForOrder(new {
  from_country = "US",
  from_zip = "92093",
  from_state = "CA",
  from_city = "La Jolla",
  from_street = "9500 Gilman Drive",
  to_country = "US",
  to_zip = "90002",
  to_state = "CA",
  to_city = "Los Angeles",
  to_street = "1335 E 103rd St",
  amount = 15,
  shipping = 1.5,
  nexus_addresses = new[] {
    new {
      id = "Main Location",
      country = "US",
      zip = "92093",
      state = "CA",
      city = "La Jolla",
      street = "9500 Gilman Drive",
    }
  },
  line_items = new[] {
    new {
      id = "1",
      quantity = 1,
      product_tax_code = "20010",
      unit_price = 15,
      discount = 0
    }
  }
});
import com.taxjar.Taxjar;
import com.taxjar.exception.TaxjarException;
import com.taxjar.model.taxes.TaxResponse;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class TaxExample {

    public static void main(String[] args) {
        Taxjar client = new Taxjar("9e0cd62a22f451701f29c3bde214");

        try {
            Map<String, Object> params = new HashMap<>();
            params.put("from_country", "US");
            params.put("from_zip", "92093");
            params.put("from_state", "CA");
            params.put("from_city", "La Jolla");
            params.put("from_street", "9500 Gilman Drive");
            params.put("to_country", "US");
            params.put("to_zip", "90002");
            params.put("to_state", "CA");
            params.put("to_city", "Los Angeles");
            params.put("to_street", "1335 E 103rd St");
            params.put("amount", 15);
            params.put("shipping", 1.5);

            List<Map> nexusAddresses = new ArrayList();
            Map<String, Object> nexusAddress = new HashMap<>();
            nexusAddress.put("country", "US");
            nexusAddress.put("zip", "92093");
            nexusAddress.put("state", "CA");
            nexusAddress.put("city", "La Jolla");
            nexusAddress.put("street", "9500 Gilman Drive");
            nexusAddresses.add(nexusAddress);

            List<Map> lineItems = new ArrayList();
            Map<String, Object> lineItem = new HashMap<>();
            lineItem.put("id", 1);
            lineItem.put("quantity", 1);
            lineItem.put("product_tax_code", "20010");
            lineItem.put("unit_price", 15);
            lineItem.put("discount", 0);
            lineItems.add(lineItem);

            params.put("nexus_addresses", nexusAddresses);
            params.put("line_items", lineItems);

            TaxResponse res = client.taxForOrder(params);
        } catch (TaxjarException e) {
            e.printStackTrace();
        }
    }

}
package main

import (
    "fmt"

    "github.com/taxjar/taxjar-go"
)

func main() {
    client := taxjar.NewClient(taxjar.Config{
        APIKey: "9e0cd62a22f451701f29c3bde214",
    })

    res, err := client.TaxForOrder(taxjar.TaxForOrderParams{
        FromCountry:    "US",
        FromZip:        "92093",
        FromState:      "CA",
        FromCity:       "La Jolla",
        FromStreet:     "9500 Gilman Drive",
        ToCountry:      "US",
        ToZip:          "90002",
        ToState:        "CA",
        ToCity:         "Los Angeles",
        ToStreet:       "1335 E 103rd St",
        Amount:         15,
        Shipping:       1.5,
        NexusAddresses: []taxjar.NexusAddress {
            {
                ID:      "Main Location",
                Country: "US",
                Zip:     "92093",
                State:   "CA",
                City:    "La Jolla",
                Street:  "9500 Gilman Drive",
            },
        },
        LineItems: []taxjar.TaxLineItem {
            {
                ID:             "1",
                Quantity:       1,
                ProductTaxCode: "20010",
                UnitPrice:      15,
                Discount:       0,
            },
        },
    })
    if err != nil {
        fmt.Println(err)
    } else {
        fmt.Println(res.Tax)
    }
}
$ curl https://api.taxjar.com/v2/taxes \
  -H "Authorization: Bearer 9e0cd62a22f451701f29c3bde214" \
  -H "Content-Type: application/json" \
  -d '{
    "from_country": "US",
    "from_zip": "92093",
    "from_state": "CA",
    "from_city": "La Jolla",
    "from_street": "9500 Gilman Drive",
    "to_country": "US",
    "to_zip": "90002",
    "to_state": "CA",
    "to_city": "Los Angeles",
    "to_street": "1335 E 103rd St",
    "amount": 15,
    "shipping": 1.5,
    "nexus_addresses": [
      {
        "id": "Main Location",
        "country": "US",
        "zip": "92093",
        "state": "CA",
        "city": "La Jolla",
        "street": "9500 Gilman Drive"
      }
    ],
    "line_items": [
      {
        "id": "1",
        "quantity": 1,
        "product_tax_code": "20010",
        "unit_price": 15,
        "discount": 0
      }
    ]
  }'

Request Scenario: Canada

require "taxjar"
client = Taxjar::Client.new(api_key: "9e0cd62a22f451701f29c3bde214")

order = client.tax_for_order({
  :from_country => 'CA',
  :from_zip => 'V6G 3E2',
  :from_state => 'BC',
  :from_city => 'Vancouver',
  :from_street => '845 Avison Way',
  :to_country => 'CA',
  :to_zip => 'M5V 2T6',
  :to_state => 'ON',
  :to_city => 'Toronto',
  :to_street => '301 Front St W',
  :amount => 15,
  :shipping => 1.5,
  :nexus_addresses => [
    {
      :id => 'Main Location',
      :country => 'CA',
      :zip => 'V6G 3E2',
      :state => 'BC',
      :city => 'Vancouver',
      :street => '845 Avison Way',
    }
  ],
  :line_items => [
    {
      :id => '1',
      :quantity => 1,
      :unit_price => 15,
      :discount => 0
    }
  ]
})
import taxjar
client = taxjar.Client(api_key='9e0cd62a22f451701f29c3bde214')

order = client.tax_for_order({
  'from_country': 'CA',
  'from_zip': 'V6G 3E2',
  'from_state': 'BC',
  'from_city': 'Vancouver',
  'from_street': '845 Avison Way',
  'to_country': 'CA',
  'to_zip': 'M5V 2T6',
  'to_state': 'ON',
  'to_city': 'Toronto',
  'to_street': '301 Front St W',
  'amount': 15,
  'shipping': 1.5,
  'nexus_addresses': [
    {
      'id': 'Main Location',
      'country': 'CA',
      'zip': 'V6G 3E2',
      'state': 'BC',
      'city': 'Vancouver',
      'street': '845 Avison Way'
    }
  ],
  'line_items': [
    {
      'id': '1',
      'quantity': 1,
      'unit_price': 15,
      'discount': 0
    }
  ]
})
const Taxjar = require('taxjar');

const client = new Taxjar({
  apiKey: '9e0cd62a22f451701f29c3bde214'
});

client.taxForOrder({
  from_country: 'CA',
  from_zip: 'V6G 3E2',
  from_state: 'BC',
  from_city: 'Vancouver',
  from_street: '845 Avison Way',
  to_country: 'CA',
  to_zip: 'M5V 2T6',
  to_state: 'ON',
  to_city: 'Toronto',
  to_street: '301 Front St W',
  amount: 15,
  shipping: 1.5,
  nexus_addresses: [
    {
      id: 'Main Location',
      country: 'CA',
      zip: 'V6G 3E2',
      state: 'BC',
      city: 'Vancouver',
      street: '845 Avison Way'
    }
  ],
  line_items: [
    {
      id: '1',
      quantity: 1,
      unit_price: 15,
      discount: 0
    }
  ]
}).then(res => {
  res.tax; // Tax object
  res.tax.amount_to_collect; // Amount to collect
});
require __DIR__ . '/vendor/autoload.php';
$client = TaxJar\Client::withApiKey("9e0cd62a22f451701f29c3bde214");

$order_taxes = $client->taxForOrder([
  'from_country' => 'CA',
  'from_zip' => 'V6G 3E2',
  'from_state' => 'BC',
  'from_city' => 'Vancouver',
  'from_street' => '845 Avison Way',
  'to_country' => 'CA',
  'to_zip' => 'M5V 2T6',
  'to_state' => 'ON',
  'to_city' => 'Toronto',
  'to_street' => '301 Front St W',
  'amount' => 15,
  'shipping' => 1.5,
  'nexus_addresses' => [
    [
      'id' => 'Main Location',
      'country' => 'CA',
      'zip' => 'V6G 3E2',
      'state' => 'BC',
      'city' => 'Vancouver',
      'street' => '845 Avison Way',
    ]
  ],
  'line_items' => [
    [
      'id' => '1',
      'quantity' => 1,
      'unit_price' => 15,
      'discount' => 0
    ]
  ]
]);
using Taxjar;
var client = new TaxjarApi("9e0cd62a22f451701f29c3bde214");

var rates = client.TaxForOrder(new {
  from_country = "CA",
  from_zip = "V6G 3E2",
  from_state = "BC",
  from_city = "Vancouver",
  from_street = "845 Avison Way",
  to_country = "CA",
  to_zip = "M5V 2T6",
  to_state = "ON",
  to_city = "Toronto",
  to_street = "301 Front St W",
  amount = 15,
  shipping = 1.5,
  nexus_addresses = new[] {
    new {
      id = "Main Location",
      country = "US",
      zip = "V6G 3E2",
      state = "BC",
      city = "Vancouver",
      street = "845 Avison Way",
    }
  },
  line_items = new[] {
    new {
      id = "1",
      quantity = 1,
      unit_price = 15,
      discount = 0
    }
  }
});
import com.taxjar.Taxjar;
import com.taxjar.exception.TaxjarException;
import com.taxjar.model.taxes.TaxResponse;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class CanadaTaxExample {

    public static void main(String[] args) {
        Taxjar client = new Taxjar("9e0cd62a22f451701f29c3bde214");

        try {
            Map<String, Object> params = new HashMap<>();
            params.put("from_country", "CA");
            params.put("from_zip", "V6G 3E2");
            params.put("from_state", "BC");
            params.put("from_city", "Vancouver");
            params.put("from_street", "845 Avison Way");
            params.put("to_country", "CA");
            params.put("to_zip", "M5V 2T6");
            params.put("to_state", "ON");
            params.put("to_city", "Toronto");
            params.put("to_street", "301 Front St W");
            params.put("amount", 15);
            params.put("shipping", 1.5);

            List<Map> nexusAddresses = new ArrayList();
            Map<String, Object> nexusAddress = new HashMap<>();
            nexusAddress.put("country", "US");
            nexusAddress.put("zip", "V6G 3E2");
            nexusAddress.put("state", "BC");
            nexusAddress.put("city", "Vancouver");
            nexusAddress.put("street", "845 Avison Way");
            nexusAddresses.add(nexusAddress);

            List<Map> lineItems = new ArrayList();
            Map<String, Object> lineItem = new HashMap<>();
            lineItem.put("id", 1);
            lineItem.put("quantity", 1);
            lineItem.put("unit_price", 15);
            lineItem.put("discount", 0);
            lineItems.add(lineItem);

            params.put("nexus_addresses", nexusAddresses);
            params.put("line_items", lineItems);

            TaxResponse res = client.taxForOrder(params);
        } catch (TaxjarException e) {
            e.printStackTrace();
        }
    }

}
package main

import (
    "fmt"

    "github.com/taxjar/taxjar-go"
)

func main() {
    client := taxjar.NewClient(taxjar.Config{
        APIKey: "9e0cd62a22f451701f29c3bde214",
    })

    res, err := client.TaxForOrder(taxjar.TaxForOrderParams{
        FromCountry:    "CA",
        FromZip:        "V6G 3E2",
        FromState:      "BC",
        FromCity:       "Vancouver",
        FromStreet:     "845 Avison Way",
        ToCountry:      "CA",
        ToZip:          "M5V 2T6",
        ToState:        "ON",
        ToCity:         "Toronto",
        ToStreet:       "301 Front St W",
        Amount:         15,
        Shipping:       1.5,
        NexusAddresses: []taxjar.NexusAddress{
            {
                ID:      "Main Location",
                Country: "US",
                Zip:     "V6G 3E2",
                State:   "BC",
                City:    "Vancouver",
                Street:  "845 Avison Way",
            },
        },
        LineItems: []taxjar.TaxLineItem{
            {
                ID:        "1",
                Quantity:  1,
                UnitPrice: 15,
                Discount:  0,
            },
        },
    })
    if err != nil {
        fmt.Println(err)
    } else {
        fmt.Println(res.Tax)
    }
}
$ curl https://api.taxjar.com/v2/taxes \
  -H "Authorization: Bearer 9e0cd62a22f451701f29c3bde214" \
  -H "Content-Type: application/json" \
  -d '{
    "from_country": "CA",
    "from_zip": "V6G 3E2",
    "from_state": "BC",
    "from_city": "Vancouver",
    "from_street": "845 Avison Way",
    "to_country": "CA",
    "to_zip": "M5V 2T6",
    "to_state": "ON",
    "to_city": "Toronto",
    "to_street": "301 Front St W",
    "amount": 15,
    "shipping": 1.5,
    "nexus_addresses": [
      {
        "id": "Main Location",
        "country": "CA",
        "zip": "V6G 3E2",
        "state": "BC",
        "city": "Vancouver",
        "street": "845 Avison Way"
      }
    ],
    "line_items": [
      {
        "id": "1",
        "quantity": 1,
        "unit_price": 15,
        "discount": 0
      }
    ]
  }'

Request Scenario: Australia

require "taxjar"
client = Taxjar::Client.new(api_key: "9e0cd62a22f451701f29c3bde214")

order = client.tax_for_order({
  :from_country => 'AU',
  :from_zip => 'NSW 2000',
  :from_city => 'Sydney',
  :from_street => '483 George St',
  :to_country => 'AU',
  :to_zip => 'VIC 3002',
  :to_city => 'Richmond',
  :to_street => 'Brunton Ave',
  :amount => 15,
  :shipping => 1.5,
  :nexus_addresses => [
    {
      :id => 'Main Location',
      :country => 'AU',
      :zip => 'NSW 2000',
      :city => 'Sydney',
      :street => '483 George St',
    }
  ],
  :line_items => [
    {
      :id => '1',
      :quantity => 1,
      :unit_price => 15,
      :discount => 0
    }
  ]
})
import taxjar
client = taxjar.Client(api_key='9e0cd62a22f451701f29c3bde214')

order = client.tax_for_order({
  'from_country': 'AU',
  'from_zip': 'NSW 2000',
  'from_city': 'Sydney',
  'from_street': '483 George St',
  'to_country': 'AU',
  'to_zip': 'VIC 3002',
  'to_city': 'Richmond',
  'to_street': 'Brunton Ave',
  'amount': 15,
  'shipping': 1.5,
  'nexus_addresses': [
    {
      'id': 'Main Location',
      'country': 'AU',
      'zip': 'NSW 2000',
      'city': 'Sydney',
      'street': '483 George St'
    }
  ],
  'line_items': [
    {
      'id': '1',
      'quantity': 1,
      'unit_price': 15,
      'discount': 0
    }
  ]
})
const Taxjar = require('taxjar');

const client = new Taxjar({
  apiKey: '9e0cd62a22f451701f29c3bde214'
});

client.taxForOrder({
  from_country: 'AU',
  from_zip: 'NSW 2000',
  from_city: 'Sydney',
  from_street: '483 George St',
  to_country: 'AU',
  to_zip: 'VIC 3002',
  to_city: 'Richmond',
  to_street: 'Brunton Ave',
  amount: 15,
  shipping: 1.5,
  nexus_addresses: [
    {
      id: 'Main Location',
      country: 'AU',
      zip: 'NSW 2000',
      city: 'Sydney',
      street: '483 George St'
    }
  ],
  line_items: [
    {
      id: '1',
      quantity: 1,
      unit_price: 15,
      discount: 0
    }
  ]
}).then(res => {
  res.tax; // Tax object
  res.tax.amount_to_collect; // Amount to collect
});
require __DIR__ . '/vendor/autoload.php';
$client = TaxJar\Client::withApiKey("9e0cd62a22f451701f29c3bde214");

$order_taxes = $client->taxForOrder([
  'from_country' => 'AU',
  'from_zip' => 'NSW 2000',
  'from_city' => 'Sydney',
  'from_street' => '483 George St',
  'to_country' => 'AU',
  'to_zip' => 'VIC 3002',
  'to_city' => 'Richmond',
  'to_street' => 'Brunton Ave',
  'amount' => 15,
  'shipping' => 1.5,
  'nexus_addresses' => [
    [
      'id' => 'Main Location',
      'country' => 'AU',
      'zip' => 'NSW 2000',
      'city' => 'Sydney',
      'street' => '483 George St',
    ]
  ],
  'line_items' => [
    [
      'id' => '1',
      'quantity' => 1,
      'unit_price' => 15,
      'discount' => 0
    ]
  ]
]);
using Taxjar;
var client = new TaxjarApi("9e0cd62a22f451701f29c3bde214");

var rates = client.TaxForOrder(new {
  from_country = "AU",
  from_zip = "NSW 2000",
  from_city = "Sydney",
  from_street = "483 George St",
  to_country = "AU",
  to_zip = "VIC 3002",
  to_city = "Richmond",
  to_street = "Brunton Ave",
  amount = 15,
  shipping = 1.5,
  nexus_addresses = new[] {
    new {
      id = "Main Location",
      country = "AU",
      zip = "NSW 2000",
      city = "Sydney",
      street = "483 George St",
    }
  },
  line_items = new[] {
    new {
      id = "1",
      quantity = 1,
      unit_price = 15,
      discount = 0
    }
  }
});
import com.taxjar.Taxjar;
import com.taxjar.exception.TaxjarException;
import com.taxjar.model.taxes.TaxResponse;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class AustraliaTaxExample {

    public static void main(String[] args) {
        Taxjar client = new Taxjar("9e0cd62a22f451701f29c3bde214");

        try {
            Map<String, Object> params = new HashMap<>();
            params.put("from_country", "AU");
            params.put("from_zip", "NSW 2000");
            params.put("from_city", "Sydney");
            params.put("from_street", "483 George St");
            params.put("to_country", "AU");
            params.put("to_zip", "VIC 3002");
            params.put("to_city", "Richmond");
            params.put("to_street", "Brunton Ave");
            params.put("amount", 15);
            params.put("shipping", 1.5);

            List<Map> nexusAddresses = new ArrayList();
            Map<String, Object> nexusAddress = new HashMap<>();
            nexusAddress.put("country", "AU");
            nexusAddress.put("zip", "NSW 2000");
            nexusAddress.put("city", "Sydney");
            nexusAddress.put("street", "483 George St");
            nexusAddresses.add(nexusAddress);

            List<Map> lineItems = new ArrayList();
            Map<String, Object> lineItem = new HashMap<>();
            lineItem.put("id", 1);
            lineItem.put("quantity", 1);
            lineItem.put("unit_price", 15);
            lineItem.put("discount", 0);
            lineItems.add(lineItem);

            params.put("nexus_addresses", nexusAddresses);
            params.put("line_items", lineItems);

            TaxResponse res = client.taxForOrder(params);
        } catch (TaxjarException e) {
            e.printStackTrace();
        }
    }

}
package main

import (
    "fmt"

    "github.com/taxjar/taxjar-go"
)

func main() {
    client := taxjar.NewClient(taxjar.Config{
        APIKey: "9e0cd62a22f451701f29c3bde214",
    })

    res, err := client.TaxForOrder(taxjar.TaxForOrderParams{
        FromCountry:    "AU",
        FromZip:        "NSW 2000",
        FromCity:       "Sydney",
        FromStreet:     "483 George St",
        ToCountry:      "AU",
        ToZip:          "VIC 3002",
        ToCity:         "Richmond",
        ToStreet:       "Brunton Ave",
        Amount:         15,
        Shipping:       1.5,
        NexusAddresses: []taxjar.NexusAddress{
            {
                ID:      "Main Location",
                Country: "AU",
                Zip:     "NSW 2000",
                City:    "Sydney",
                Street:  "483 George St",
            },
        },
        LineItem: []taxjar.TaxLineItem {
            {
                ID:        "1",
                Quantity:  1,
                UnitPrice: 15,
                Discount:  0,
            },
        },
    })
    if err != nil {
        fmt.Println(err)
    } else {
        fmt.Println(res.Tax)
    }
}
$ curl https://api.taxjar.com/v2/taxes \
  -H "Authorization: Bearer 9e0cd62a22f451701f29c3bde214" \
  -H "Content-Type: application/json" \
  -d '{
    "from_country": "AU",
    "from_zip": "NSW 2000",
    "from_city": "Sydney",
    "from_street": "483 George St",
    "to_country": "AU",
    "to_zip": "VIC 3002",
    "to_city": "Richmond",
    "to_street": "Brunton Ave",
    "amount": 15,
    "shipping": 1.5,
    "nexus_addresses": [
      {
        "id": "Main Location",
        "country": "AU",
        "zip": "NSW 2000",
        "city": "Sydney",
        "street": "483 George St"
      }
    ],
    "line_items": [
      {
        "id": "1",
        "quantity": 1,
        "unit_price": 15,
        "discount": 0
      }
    ]
  }'

Request Scenario: European Union

require "taxjar"
client = Taxjar::Client.new(api_key: "9e0cd62a22f451701f29c3bde214")

order = client.tax_for_order({
  :from_country => 'FR',
  :from_zip => '75008',
  :from_city => 'Paris',
  :from_street => '55 Rue du Faubourg Saint-Honoré',
  :to_country => 'FR',
  :to_zip => '13281',
  :to_city => 'Marseille',
  :to_street => 'Rue Fort du Sanctuaire',
  :amount => 15,
  :shipping => 1.5,
  :nexus_addresses => [
    {
      :id => 'Main Location',
      :country => 'FR',
      :zip => '75008',
      :city => 'Paris',
      :street => '55 Rue du Faubourg Saint-Honoré',
    }
  ],
  :line_items => [
    {
      :id => '1',
      :quantity => 1,
      :unit_price => 15,
      :discount => 0
    }
  ]
})
# coding=utf-8
import taxjar
client = taxjar.Client(api_key='9e0cd62a22f451701f29c3bde214')

order = client.tax_for_order({
  'from_country': 'FR',
  'from_zip': '75008',
  'from_city': 'Paris',
  'from_street': '55 Rue du Faubourg Saint-Honoré',
  'to_country': 'FR',
  'to_zip': '13281',
  'to_city': 'Marseille',
  'to_street': 'Rue Fort du Sanctuaire',
  'amount': 15,
  'shipping': 1.5,
  'nexus_addresses': [
    {
      'id': 'Main Location',
      'country': 'FR',
      'zip': '75008',
      'city': 'Paris',
      'street': '55 Rue du Faubourg Saint-Honoré'
    }
  ],
  'line_items': [
    {
      'id': '1',
      'quantity': 1,
      'unit_price': 15,
      'discount': 0
    }
  ]
})
const Taxjar = require('taxjar');

const client = new Taxjar({
  apiKey: '9e0cd62a22f451701f29c3bde214'
});

client.taxForOrder({
  from_country: 'FR',
  from_zip: '75008',
  from_city: 'Paris',
  from_street: '55 Rue du Faubourg Saint-Honoré',
  to_country: 'FR',
  to_zip: '13281',
  to_city: 'Marseille',
  to_street: 'Rue Fort du Sanctuaire',
  amount: 15,
  shipping: 1.5,
  nexus_addresses: [
    {
      id: 'Main Location',
      country: 'CA',
      zip: '75008',
      city: 'Paris',
      street: '55 Rue du Faubourg Saint-Honoré'
    }
  ],
  line_items: [
    {
      id: '1',
      quantity: 1,
      unit_price: 15,
      discount: 0
    }
  ]
}).then(res => {
  res.tax; // Tax object
  res.tax.amount_to_collect; // Amount to collect
});
require __DIR__ . '/vendor/autoload.php';
$client = TaxJar\Client::withApiKey("9e0cd62a22f451701f29c3bde214");

$order_taxes = $client->taxForOrder([
  'from_country' => 'FR',
  'from_zip' => '75008',
  'from_city' => 'Paris',
  'from_street' => '55 Rue du Faubourg Saint-Honoré',
  'to_country' => 'FR',
  'to_zip' => '13281',
  'to_city' => 'Marseille',
  'to_street' => 'Rue Fort du Sanctuaire',
  'amount' => 15,
  'shipping' => 1.5,
  'nexus_addresses' => [
    [
      'id' => 'Main Location',
      'country' => 'FR',
      'zip' => '75008',
      'city' => 'Paris',
      'street' => '55 Rue du Faubourg Saint-Honoré',
    ]
  ],
  'line_items' => [
    [
      'id' => '1',
      'quantity' => 1,
      'unit_price' => 15,
      'discount' => 0
    ]
  ]
]);
using Taxjar;
var client = new TaxjarApi("9e0cd62a22f451701f29c3bde214");

var rates = client.TaxForOrder(new {
  from_country = "FR",
  from_zip = "75008",
  from_city = "Paris",
  from_street = "55 Rue du Faubourg Saint-Honoré",
  to_country = "FR",
  to_zip = "13281",
  to_city = "Marseille",
  to_street = "Rue Fort du Sanctuaire",
  amount = 15,
  shipping = 1.5,
  nexus_addresses = new[] {
    new {
      id = "Main Location",
      country = "FR",
      zip = "75008",
      city = "Paris",
      street = "55 Rue du Faubourg Saint-Honoré",
    }
  },
  line_items = new[] {
    new {
      id = "1",
      quantity = 1,
      unit_price = 15,
      discount = 0
    }
  }
});
import com.taxjar.Taxjar;
import com.taxjar.exception.TaxjarException;
import com.taxjar.model.taxes.TaxResponse;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class EuropeanUnionTaxExample {

    public static void main(String[] args) {
        Taxjar client = new Taxjar("9e0cd62a22f451701f29c3bde214");

        try {
            Map<String, Object> params = new HashMap<>();
            params.put("from_country", "FR");
            params.put("from_zip", "75008");
            params.put("from_city", "Paris");
            params.put("from_street", "55 Rue du Faubourg Saint-Honoré");
            params.put("to_country", "FR");
            params.put("to_zip", "13281");
            params.put("to_city", "Marseille");
            params.put("to_street", "Rue Fort du Sanctuaire");
            params.put("amount", 15);
            params.put("shipping", 1.5);

            List<Map> nexusAddresses = new ArrayList();
            Map<String, Object> nexusAddress = new HashMap<>();
            nexusAddress.put("country", "FR");
            nexusAddress.put("zip", "75008");
            nexusAddress.put("city", "Paris");
            nexusAddress.put("street", "55 Rue du Faubourg Saint-Honoré");
            nexusAddresses.add(nexusAddress);

            List<Map> lineItems = new ArrayList();
            Map<String, Object> lineItem = new HashMap<>();
            lineItem.put("id", 1);
            lineItem.put("quantity", 1);
            lineItem.put("unit_price", 15);
            lineItem.put("discount", 0);
            lineItems.add(lineItem);

            params.put("nexus_addresses", nexusAddresses);
            params.put("line_items", lineItems);

            TaxResponse res = client.taxForOrder(params);
        } catch (TaxjarException e) {
            e.printStackTrace();
        }
    }

}
package main

import (
    "fmt"

    "github.com/taxjar/taxjar-go"
)

func main() {
    client := taxjar.NewClient(taxjar.Config{
        APIKey: "9e0cd62a22f451701f29c3bde214",
    })

    res, err := client.TaxForOrder(taxjar.TaxForOrderParams{
        FromCountry:    "FR",
        FromZip:        "75008",
        FromCity:       "Paris",
        FromStreet:     "55 Rue du Faubourg Saint-Honoré",
        ToCountry:      "FR",
        ToZip:          "13281",
        ToCity:         "Marseille",
        ToStreet:       "Rue Fort du Sanctuaire",
        Amount:         15,
        Shipping:       1.5,
        NexusAddresses: []taxjar.NexusAddress{
            {
                ID:      "Main Location",
                Country: "FR",
                Zip:     "75008",
                City:    "Paris",
                Street:  "55 Rue du Faubourg Saint-Honoré",
            },
        },
        LineItems: []taxjar.TaxLineItem{
            {
                ID:        "1",
                Quantity:  1,
                UnitPrice: 15,
                Discount:  0,
            },
        },
    })
    if err != nil {
        fmt.Println(err)
    } else {
        fmt.Println(res.Tax)
    }
}
$ curl https://api.taxjar.com/v2/taxes \
  -H "Authorization: Bearer 9e0cd62a22f451701f29c3bde214" \
  -H "Content-Type: application/json" \
  -d '{
    "from_country": "FR",
    "from_zip": "75008",
    "from_city": "Paris",
    "from_street": "55 Rue du Faubourg Saint-Honoré",
    "to_country": "FR",
    "to_zip": "13281",
    "to_city": "Marseille",
    "to_street": "Rue Fort du Sanctuaire",
    "amount": 15,
    "shipping": 1.5,
    "nexus_addresses": [
      {
        "id": "Main Location",
        "country": "FR",
        "zip": "75008",
        "city": "Paris",
        "street": "55 Rue du Faubourg Saint-Honoré"
      }
    ],
    "line_items": [
      {
        "id": "1",
        "quantity": 1,
        "unit_price": 15,
        "discount": 0
      }
    ]
  }'

Request Scenario: Origin-Based Sourcing Calculate sales tax for origin-based states such as Texas. In origin-based states, sales tax should be collected based on where you, the seller, are located. If shipping from out of state, destination-based sourcing may apply. Review our state guides to learn how to collect sales tax where you have nexus.

require "taxjar"
client = Taxjar::Client.new(api_key: "9e0cd62a22f451701f29c3bde214")

order = client.tax_for_order({
  :from_country => 'US',
  :from_zip => '78701',
  :from_state => 'TX',
  :from_city => 'Austin',
  :from_street => '1100 Congress Ave',
  :to_country => 'US',
  :to_zip => '77058',
  :to_state => 'TX',
  :to_city => 'Houston',
  :to_street => '1601 E NASA Pkwy',
  :amount => 15,
  :shipping => 1.5,
  :nexus_addresses => [
    {
      :id => 'Main Location',
      :country => 'US',
      :zip => '78701',
      :state => 'TX',
      :city => 'Austin',
      :street => '1100 Congress Ave',
    }
  ],
  :line_items => [
    {
      :id => '1',
      :quantity => 1,
      :unit_price => 15,
      :discount => 0
    }
  ]
})
import taxjar
client = taxjar.Client(api_key='9e0cd62a22f451701f29c3bde214')

order = client.tax_for_order({
  'from_country': 'US',
  'from_zip': '78701',
  'from_state': 'TX',
  'from_city': 'Austin',
  'from_street': '1100 Congress Ave',
  'to_country': 'US',
  'to_zip': '77058',
  'to_state': 'TX',
  'to_city': 'Houston',
  'to_street': '1601 E NASA Pkwy',
  'amount': 15,
  'shipping': 1.5,
  'nexus_addresses': [
    {
      'id': 'Main Location',
      'country': 'US',
      'zip': '78701',
      'state': 'TX',
      'city': 'Austin',
      'street': '1100 Congress Ave'
    }
  ],
  'line_items': [
    {
      'id': '1',
      'quantity': 1,
      'unit_price': 15,
      'discount': 0
    }
  ]
})
const Taxjar = require('taxjar');

const client = new Taxjar({
  apiKey: '9e0cd62a22f451701f29c3bde214'
});

client.taxForOrder({
  from_country: 'US',
  from_zip: '78701',
  from_state: 'TX',
  from_city: 'Austin',
  from_street: '1100 Congress Ave',
  to_country: 'US',
  to_zip: '77058',
  to_state: 'TX',
  to_city: 'Houston',
  to_street: '1601 E NASA Pkwy',
  amount: 15,
  shipping: 1.5,
  nexus_addresses: [
    {
      id: 'Main Location',
      country: 'US',
      zip: '78701',
      state: 'TX',
      city: 'Austin',
      street: '1100 Congress Ave'
    }
  ],
  line_items: [
    {
      id: '1',
      quantity: 1,
      unit_price: 15,
      discount: 0
    }
  ]
}).then(res => {
  res.tax; // Tax object
  res.tax.amount_to_collect; // Amount to collect
});
require __DIR__ . '/vendor/autoload.php';
$client = TaxJar\Client::withApiKey("9e0cd62a22f451701f29c3bde214");

$order_taxes = $client->taxForOrder([
  'from_country' => 'US',
  'from_zip' => '78701',
  'from_state' => 'TX',
  'from_city' => 'Austin',
  'from_street' => '1100 Congress Ave',
  'to_country' => 'US',
  'to_zip' => '77058',
  'to_state' => 'TX',
  'to_city' => 'Houston',
  'to_street' => '1601 E NASA Pkwy',
  'amount' => 15,
  'shipping' => 1.5,
  'nexus_addresses' => [
    [
      'id' => 'Main Location',
      'country' => 'US',
      'zip' => '78701',
      'state' => 'TX',
      'city' => 'Austin',
      'street' => '1100 Congress Ave',
    ]
  ],
  'line_items' => [
    [
      'id' => '1',
      'quantity' => 1,
      'unit_price' => 15,
      'discount' => 0
    ]
  ]
]);
using Taxjar;
var client = new TaxjarApi("9e0cd62a22f451701f29c3bde214");

var rates = client.TaxForOrder(new {
  from_country = "US",
  from_zip = "78701",
  from_state = "TX",
  from_city = "Austin",
  from_street = "1100 Congress Ave",
  to_country = "US",
  to_zip = "77058",
  to_state = "TX",
  to_city = "Houston",
  to_street = "1601 E NASA Pkwy",
  amount = 15,
  shipping = 1.5,
  nexus_addresses = new[] {
    new {
      id = "Main Location",
      country = "US",
      zip = "78701",
      state = "TX",
      city = "Austin",
      street = "1100 Congress Ave",
    }
  },
  line_items = new[] {
    new {
      id = "1",
      quantity = 1,
      unit_price = 15,
      discount = 0
    }
  }
});
import com.taxjar.Taxjar;
import com.taxjar.exception.TaxjarException;
import com.taxjar.model.taxes.TaxResponse;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class OriginBasedSourcingTaxExample {

    public static void main(String[] args) {
        Taxjar client = new Taxjar("9e0cd62a22f451701f29c3bde214");

        try {
            Map<String, Object> params = new HashMap<>();
            params.put("from_country", "US");
            params.put("from_zip", "78701");
            params.put("from_state", "TX");
            params.put("from_city", "Austin");
            params.put("from_street", "1100 Congress Ave");
            params.put("to_country", "US");
            params.put("to_zip", "77058");
            params.put("to_state", "TX");
            params.put("to_city", "Houston");
            params.put("to_street", "1601 E NASA Pkwy");
            params.put("amount", 15);
            params.put("shipping", 1.5);

            List<Map> nexusAddresses = new ArrayList();
            Map<String, Object> nexusAddress = new HashMap<>();
            nexusAddress.put("country", "US");
            nexusAddress.put("zip", "78701");
            nexusAddress.put("state", "TX");
            nexusAddress.put("city", "Austin");
            nexusAddress.put("street", "1100 Congress Ave");
            nexusAddresses.add(nexusAddress);

            List<Map> lineItems = new ArrayList();
            Map<String, Object> lineItem = new HashMap<>();
            lineItem.put("id", 1);
            lineItem.put("quantity", 1);
            lineItem.put("unit_price", 15);
            lineItem.put("discount", 0);
            lineItems.add(lineItem);

            params.put("nexus_addresses", nexusAddresses);
            params.put("line_items", lineItems);

            TaxResponse res = client.taxForOrder(params);
        } catch (TaxjarException e) {
            e.printStackTrace();
        }
    }

}
package main

import (
    "fmt"

    "github.com/taxjar/taxjar-go"
)

func main() {
    client := taxjar.NewClient(taxjar.Config{
        APIKey: "9e0cd62a22f451701f29c3bde214",
    })

    res, err := client.TaxForOrder(taxjar.TaxForOrderParams{
        FromCountry:    "US",
        FromZip:        "78701",
        FromState:      "TX",
        FromCity:       "Austin",
        FromStreet:     "1100 Congress Ave",
        ToCountry:      "US",
        ToZip:          "77058",
        ToState:        "TX",
        ToCity:         "Houston",
        ToStreet:       "1601 E NASA Pkwy",
        Amount:         15,
        Shipping:       1.5,
        NexusAddresses: []taxjar.NexusAddress{
            {
                ID:      "Main Location",
                Country: "US",
                Zip:     "78701",
                State:   "TX",
                City:    "Austin",
                Street:  "1100 Congress Ave",
            },
        },
        LineItems: []taxjar.TaxLineItem{
            {
                ID:        "1",
                Quantity:  1,
                UnitPrice: 15,
                Discount:  0,
            },
        },
    })
    if err != nil {
        fmt.Println(err)
    } else {
        fmt.Println(res.Tax)
    }
}
$ curl https://api.taxjar.com/v2/taxes \
  -H "Authorization: Bearer 9e0cd62a22f451701f29c3bde214" \
  -H "Content-Type: application/json" \
  -d '{
    "from_country": "US",
    "from_zip": "78701",
    "from_state": "TX",
    "from_city": "Austin",
    "from_street": "1100 Congress Ave",
    "to_country": "US",
    "to_zip": "77058",
    "to_state": "TX",
    "to_city": "Houston",
    "to_street": "1601 E NASA Pkwy",
    "amount": 15,
    "shipping": 1.5,
    "nexus_addresses": [
      {
        "id": "Main Location",
        "country": "US",
        "zip": "78701",
        "state": "TX",
        "city": "Austin",
        "street": "1100 Congress Ave"
      }
    ],
    "line_items": [
      {
        "id": "1",
        "quantity": 1,
        "unit_price": 15,
        "discount": 0
      }
    ]
  }'

Request Scenario: Shipping Exemptions If separately stated, shipping charges aren’t taxable in states such as California and Massachusetts. They are taxable if you include the charge as part of the price of the item.

require "taxjar"
client = Taxjar::Client.new(api_key: "9e0cd62a22f451701f29c3bde214")

order = client.tax_for_order({
  :from_country => 'US',
  :from_zip => '02110',
  :from_state => 'MA',
  :from_city => 'Boston',
  :from_street => '1 Central Wharf',
  :to_country => 'US',
  :to_zip => '01608',
  :to_state => 'MA',
  :to_city => 'Worcester',
  :to_street => '455 Main St',
  :amount => 15,
  :shipping => 1.5,
  :nexus_addresses => [
    {
      :id => 'Main Location',
      :country => 'US',
      :zip => '02110',
      :state => 'MA',
      :city => 'Boston',
      :street => '1 Central Wharf',
    }
  ],
  :line_items => [
    {
      :id => '1',
      :quantity => 1,
      :unit_price => 15,
      :discount => 0
    }
  ]
})
import taxjar
client = taxjar.Client(api_key='9e0cd62a22f451701f29c3bde214')

order = client.tax_for_order({
  'from_country': 'US',
  'from_zip': '02110',
  'from_state': 'MA',
  'from_city': 'Boston',
  'from_street': '1 Central Wharf',
  'to_country': 'US',
  'to_zip': '01608',
  'to_state': 'MA',
  'to_city': 'Worcester',
  'to_street': '455 Main St',
  'amount': 15,
  'shipping': 1.5,
  'nexus_addresses': [
    {
      'id': 'Main Location',
      'country': 'US',
      'zip': '02110',
      'state': 'MA',
      'city': 'Boston',
      'street': '1 Central Wharf'
    }
  ],
  'line_items': [
    {
      'id': '1',
      'quantity': 1,
      'unit_price': 15,
      'discount': 0
    }
  ]
})
const Taxjar = require('taxjar');

const client = new Taxjar({
  apiKey: '9e0cd62a22f451701f29c3bde214'
});

client.taxForOrder({
  from_country: 'US',
  from_zip: '02110',
  from_state: 'MA',
  from_city: 'Boston',
  from_street: '1 Central Wharf',
  to_country: 'US',
  to_zip: '01608',
  to_state: 'MA',
  to_city: 'Worcester',
  to_street: '455 Main St',
  amount: 15,
  shipping: 1.5,
  nexus_addresses: [
    {
      id: 'Main Location',
      country: 'US',
      zip: '02110',
      state: 'MA',
      city: 'Boston',
      street: '1 Central Wharf'
    }
  ],
  line_items: [
    {
      id: '1',
      quantity: 1,
      unit_price: 15,
      discount: 0
    }
  ]
}).then(res => {
  res.tax; // Tax object
  res.tax.amount_to_collect; // Amount to collect
});
require __DIR__ . '/vendor/autoload.php';
$client = TaxJar\Client::withApiKey("9e0cd62a22f451701f29c3bde214");

$order_taxes = $client->taxForOrder([
  'from_country' => 'US',
  'from_zip' => '02110',
  'from_state' => 'MA',
  'from_city' => 'Boston',
  'from_street' => '1 Central Wharf',
  'to_country' => 'US',
  'to_zip' => '01608',
  'to_state' => 'MA',
  'to_city' => 'Worcester',
  'to_street' => '455 Main St',
  'amount' => 15,
  'shipping' => 1.5,
  'nexus_addresses' => [
    [
      'id' => 'Main Location',
      'country' => 'US',
      'zip' => '02110',
      'state' => 'MA',
      'city' => 'Boston',
      'street' => '1 Central Wharf',
    ]
  ],
  'line_items' => [
    [
      'id' => '1',
      'quantity' => 1,
      'unit_price' => 15,
      'discount' => 0
    ]
  ]
]);
using Taxjar;
var client = new TaxjarApi("9e0cd62a22f451701f29c3bde214");

var rates = client.TaxForOrder(new {
  from_country = "US",
  from_zip = "02110",
  from_state = "MA",
  from_city = "Boston",
  from_street = "1 Central Wharf",
  to_country = "US",
  to_zip = "01608",
  to_state = "MA",
  to_city = "Worcester",
  to_street = "455 Main St",
  amount = 15,
  shipping = 1.5,
  nexus_addresses = new[] {
    new {
      id = "Main Location",
      country = "US",
      zip = "02110",
      state = "MA",
      city = "Boston",
      street = "1 Central Wharf",
    }
  },
  line_items = new[] {
    new {
      id = "1",
      quantity = 1,
      unit_price = 15,
      discount = 0
    }
  }
});
import com.taxjar.Taxjar;
import com.taxjar.exception.TaxjarException;
import com.taxjar.model.taxes.TaxResponse;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class ShippingExemptionTaxExample {

    public static void main(String[] args) {
        Taxjar client = new Taxjar("9e0cd62a22f451701f29c3bde214");

        try {
            Map<String, Object> params = new HashMap<>();
            params.put("from_country", "US");
            params.put("from_zip", "02110");
            params.put("from_state", "MA");
            params.put("from_city", "Boston");
            params.put("from_street", "1 Central Wharf");
            params.put("to_country", "US");
            params.put("to_zip", "01608");
            params.put("to_state", "MA");
            params.put("to_city", "Worcester");
            params.put("to_street", "455 Main St");
            params.put("amount", 15);
            params.put("shipping", 1.5);

            List<Map> nexusAddresses = new ArrayList();
            Map<String, Object> nexusAddress = new HashMap<>();
            nexusAddress.put("country", "US");
            nexusAddress.put("zip", "02110");
            nexusAddress.put("state", "MA");
            nexusAddress.put("city", "Boston");
            nexusAddress.put("street", "1 Central Wharf");
            nexusAddresses.add(nexusAddress);

            List<Map> lineItems = new ArrayList();
            Map<String, Object> lineItem = new HashMap<>();
            lineItem.put("id", 1);
            lineItem.put("quantity", 1);
            lineItem.put("unit_price", 15);
            lineItem.put("discount", 0);
            lineItems.add(lineItem);

            params.put("nexus_addresses", nexusAddresses);
            params.put("line_items", lineItems);

            TaxResponse res = client.taxForOrder(params);
        } catch (TaxjarException e) {
            e.printStackTrace();
        }
    }

}
package main

import (
    "fmt"

    "github.com/taxjar/taxjar-go"
)

func main() {
    client := taxjar.NewClient(taxjar.Config{
        APIKey: "9e0cd62a22f451701f29c3bde214",
    })

    res, err := client.TaxForOrder(taxjar.TaxForOrderParams{
        FromCountry:    "US",
        FromZip:        "02110",
        FromState:      "MA",
        FromCity:       "Boston",
        FromStreet:     "1 Central Wharf",
        ToCountry:      "US",
        ToZip:          "01608",
        ToState:        "MA",
        ToCity:         "Worcester",
        ToStreet:       "455 Main St",
        Amount:         15,
        Shipping:       1.5,
        NexusAddresses: []taxjar.NexusAddress{
            {
                ID:      "Main Location",
                Country: "US",
                Zip:     "02110",
                State:   "MA",
                City:    "Boston",
                Street:  "1 Central Wharf",
            }
        },
        LineItems: []taxjar.TaxLineItem{
            {
                ID:        "1",
                Quantity:  1,
                UnitPrice: 15,
                Discount:  0,
            },
        },
    })
    if err != nil {
        fmt.Println(err)
    } else {
        fmt.Println(res.Tax)
    }
}
$ curl https://api.taxjar.com/v2/taxes \
  -H "Authorization: Bearer 9e0cd62a22f451701f29c3bde214" \
  -H "Content-Type: application/json" \
  -d '{
    "from_country": "US",
    "from_zip": "02110",
    "from_state": "MA",
    "from_city": "Boston",
    "from_street": "1 Central Wharf",
    "to_country": "US",
    "to_zip": "01608",
    "to_state": "MA",
    "to_city": "Worcester",
    "to_street": "455 Main St",
    "amount": 15,
    "shipping": 1.5,
    "nexus_addresses": [
      {
        "id": "Main Location",
        "country": "US",
        "zip": "02110",
        "state": "MA",
        "city": "Boston",
        "street": "1 Central Wharf"
      }
    ],
    "line_items": [
      {
        "id": "1",
        "quantity": 1,
        "unit_price": 15,
        "discount": 0
      }
    ]
  }'

Request Scenario: Clothing Exemptions Clothing items sold in New York under $110 are exempt from the state tax rate, but only exempt from county taxes in certain jurisdictions. We also handle clothing exemptions in states such as Pennsylvania and New Jersey.

require "taxjar"
client = Taxjar::Client.new(api_key: "9e0cd62a22f451701f29c3bde214")

order = client.tax_for_order({
  :from_country => 'US',
  :from_zip => '12054',
  :from_state => 'NY',
  :from_city => 'Delmar',
  :to_country => 'US',
  :to_zip => '10541',
  :to_state => 'NY',
  :to_city => 'Mahopac',
  :amount => 29.94,
  :shipping => 7.99,
  :line_items => [
    {
      :quantity => 1,
      :unit_price => 19.99,
      :product_tax_code => '20010'
    },
    {
      :quantity => 1,
      :unit_price => 9.95,
      :product_tax_code => '20010'
    }
  ]
})
import taxjar
client = taxjar.Client(api_key='9e0cd62a22f451701f29c3bde214')

order = client.tax_for_order({
  'from_country': 'US',
  'from_zip': '12044',
  'from_state': 'NY',
  'from_city': 'Delmar',
  'to_country': 'US',
  'to_zip': '10541',
  'to_state': 'NY',
  'to_city': 'Mahopac',
  'amount': 29.94,
  'shipping': 7.99,
  'line_items': [
    {
      'quantity': 1,
      'unit_price': 19.99,
      'product_tax_code': '20010'
    },
    {
      'quantity': 1,
      'unit_price': 9.95,
      'product_tax_code': '20010'
    }
  ]
})
const Taxjar = require('taxjar');

const client = new Taxjar({
  apiKey: '9e0cd62a22f451701f29c3bde214'
});

client.taxForOrder({
  from_country: 'US',
  from_zip: '12054',
  from_state: 'NY',
  from_city: 'Delmar',
  to_country: 'US',
  to_zip: '10541',
  to_state: 'NY',
  to_city: 'Mahopac',
  amount: 29.94,
  shipping: 7.99,
  line_items: [
    {
      quantity: 1,
      unit_price: 19.99,
      product_tax_code: '20010'
    },
    {
      quantity: 1,
      unit_price: 9.95,
      product_tax_code: '20010'
    }
  ]
}).then(res => {
  res.tax; // Tax object
  res.tax.amount_to_collect; // Amount to collect
});
require __DIR__ . '/vendor/autoload.php';
$client = TaxJar\Client::withApiKey("9e0cd62a22f451701f29c3bde214");

$order_taxes = $client->taxForOrder([
  'from_country' => 'US',
  'from_zip' => '12054',
  'from_state' => 'NY',
  'from_city' => 'Delmar',
  'to_country' => 'US',
  'to_zip' => '10541',
  'to_state' => 'NY',
  'to_city' => 'Mahopac',
  'amount' => 29.94,
  'shipping' => 7.99,
  'line_items' => [
    [
      'quantity' => 1,
      'unit_price' => 19.99,
      'product_tax_code' => '20010'
    ],
    [
      'quantity' => 1,
      'unit_price' => 9.95,
      'product_tax_code' => '20010'
    ]
  ]
]);
using Taxjar;
var client = new TaxjarApi("9e0cd62a22f451701f29c3bde214");

var rates = client.TaxForOrder(new {
  from_country = "US",
  from_zip = "12054",
  from_state = "NY",
  from_city = "Delmar",
  to_country = "US",
  to_zip = "10541",
  to_state = "NY",
  to_city = "Mahopac",
  amount = 29.94,
  shipping = 7.99,
  line_items = new[] {
    new {
      quantity = 1,
      unit_price = 19.99,
      product_tax_code = "20010"
    },
    new {
      quantity = 1,
      unit_price = 9.95,
      product_tax_code = "20010"
    }
  }
});
import com.taxjar.Taxjar;
import com.taxjar.exception.TaxjarException;
import com.taxjar.model.taxes.TaxResponse;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class ClothingExemptionTaxExample {

    public static void main(String[] args) {
        Taxjar client = new Taxjar("9e0cd62a22f451701f29c3bde214");

        try {
            Map<String, Object> params = new HashMap<>();
            params.put("from_country", "US");
            params.put("from_zip", "12054");
            params.put("from_state", "NY");
            params.put("from_city", "Delmar");
            params.put("to_country", "US");
            params.put("to_zip", "10541");
            params.put("to_state", "NY");
            params.put("to_city", "Mahopac");
            params.put("amount", 29.94);
            params.put("shipping", 7.99);

            List<Map> lineItems = new ArrayList();
            Map<String, Object> lineItem = new HashMap<>();
            lineItem.put("quantity", 1);
            lineItem.put("unit_price", 19.99);
            lineItem.put("product_tax_code", "20010");
            lineItems.add(lineItem);
            Map<String, Object> lineItem2 = new HashMap<>();
            lineItem.put("quantity", 1);
            lineItem.put("unit_price", 9.95);
            lineItem.put("product_tax_code", "20010");
            lineItems.add(lineItem2);

            params.put("line_items", lineItems);

            TaxResponse res = client.taxForOrder(params);
        } catch (TaxjarException e) {
            e.printStackTrace();
        }
    }

}
package main

import (
    "fmt"

    "github.com/taxjar/taxjar-go"
)

func main() {
    client := taxjar.NewClient(taxjar.Config{
        APIKey: "9e0cd62a22f451701f29c3bde214",
    })

    res, err := client.TaxForOrder(taxjar.TaxForOrderParams{
        FromCountry: "US",
        FromZip:     "12054",
        FromState:   "NY",
        FromCity:    "Delmar",
        ToCountry:   "US",
        ToZip:       "10541",
        ToState:     "NY",
        ToCity:      "Mahopac",
        Amount:      29.94,
        Shipping:    7.99,
        LineItems:   []taxjar.TaxLineItem{
            {
                Quantity:       1,
                UnitPrice:      19.99,
                ProductTaxCode: "20010",
            },
            {
                Quantity:       1,
                UnitPrice:      9.95,
                ProductTaxCode: "20010",
            },
        },
    })
    if err != nil {
        fmt.Println(err)
    } else {
        fmt.Println(res.Tax)
    }
}
$ curl https://api.taxjar.com/v2/taxes \
  -H "Authorization: Bearer 9e0cd62a22f451701f29c3bde214" \
  -H "Content-Type: application/json" \
  -d '{
    "from_city": "Delmar",
    "from_state": "NY",
    "from_zip": "12054",
    "from_country": "US",
    "to_city": "Mahopac",
    "to_state": "NY",
    "to_zip": "10541",
    "to_country": "US",
    "amount": 29.94,
    "shipping": 7.99,
    "line_items": [
      {
        "quantity": 1,
        "unit_price": 19.99,
        "product_tax_code": "20010"
      },
      {
        "quantity": 1,
        "unit_price": 9.95,
        "product_tax_code": "20010"
      }
    ]
  }'

Request Scenario: Food & Grocery Exemptions Food and grocery items are exempt from all sales tax in states such as California, New York, and Texas.

require "taxjar"
client = Taxjar::Client.new(api_key: "9e0cd62a22f451701f29c3bde214")

order = client.tax_for_order({
  :from_country => 'US',
  :from_zip => '94133',
  :from_state => 'CA',
  :from_city => 'San Francisco',
  :to_country => 'US',
  :to_zip => '90071',
  :to_state => 'CA',
  :to_city => 'Los Angeles',
  :amount => 29.94,
  :shipping => 7.99,
  :line_items => [
    {
      :quantity => 1,
      :unit_price => 19.99,
      :product_tax_code => '40030'
    },
    {
      :quantity => 1,
      :unit_price => 9.95,
      :product_tax_code => '40030'
    }
  ]
})
import taxjar
client = taxjar.Client(api_key='9e0cd62a22f451701f29c3bde214')

order = client.tax_for_order({
  'from_country': 'US',
  'from_zip': '94133',
  'from_state': 'CA',
  'from_city': 'San Francisco',
  'to_country': 'US',
  'to_zip': '90071',
  'to_state': 'CA',
  'to_city': 'Los Angeles',
  'amount': 29.94,
  'shipping': 7.99,
  'line_items': [
    {
      'quantity': 1,
      'unit_price': 19.99,
      'product_tax_code': '40030'
    },
    {
      'quantity': 1,
      'unit_price': 9.95,
      'product_tax_code': '40030'
    }
  ]
})
const Taxjar = require('taxjar');

const client = new Taxjar({
  apiKey: '9e0cd62a22f451701f29c3bde214'
});

client.taxForOrder({
  from_country: 'US',
  from_zip: '94133',
  from_state: 'CA',
  from_city: 'San Francisco',
  to_country: 'US',
  to_zip: '90071',
  to_state: 'CA',
  to_city: 'Los Angeles',
  amount: 29.94,
  shipping: 7.99,
  line_items: [
    {
      quantity: 1,
      unit_price: 19.99,
      product_tax_code: '40030'
    },
    {
      quantity: 1,
      unit_price: 9.95,
      product_tax_code: '40030'
    }
  ]
}).then(res => {
  res.tax; // Tax object
  res.tax.amount_to_collect; // Amount to collect
});
require __DIR__ . '/vendor/autoload.php';
$client = TaxJar\Client::withApiKey("9e0cd62a22f451701f29c3bde214");

$order_taxes = $client->taxForOrder([
  'from_country' => 'US',
  'from_zip' => '94133',
  'from_state' => 'CA',
  'from_city' => 'San Francisco',
  'to_country' => 'US',
  'to_zip' => '90071',
  'to_state' => 'CA',
  'to_city' => 'Los Angeles',
  'amount' => 29.94,
  'shipping' => 7.99,
  'line_items' => [
    [
      'quantity' => 1,
      'unit_price' => 19.99,
      'product_tax_code' => '40030'
    ],
    [
      'quantity' => 1,
      'unit_price' => 9.95,
      'product_tax_code' => '40030'
    ]
  ]
]);
using Taxjar;
var client = new TaxjarApi("9e0cd62a22f451701f29c3bde214");

var rates = client.TaxForOrder(new {
  from_country = "US",
  from_zip = "94133",
  from_state = "CA",
  from_city = "San Francisco",
  to_country = "US",
  to_zip = "90071",
  to_state = "CA",
  to_city = "Los Angeles",
  amount = 29.94,
  shipping = 7.99,
  line_items = new[] {
    new {
      quantity = 1,
      unit_price = 19.99,
      product_tax_code = "40030"
    },
    new {
      quantity = 1,
      unit_price = 9.95,
      product_tax_code = "40030"
    }
  }
});
import com.taxjar.Taxjar;
import com.taxjar.exception.TaxjarException;
import com.taxjar.model.taxes.TaxResponse;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class FoodGroceryExemptionTaxExample {

    public static void main(String[] args) {
        Taxjar client = new Taxjar("9e0cd62a22f451701f29c3bde214");

        try {
            Map<String, Object> params = new HashMap<>();
            params.put("from_country", "US");
            params.put("from_zip", "94133");
            params.put("from_state", "CA");
            params.put("from_city", "San Francisco");
            params.put("to_country", "US");
            params.put("to_zip", "90071");
            params.put("to_state", "CA");
            params.put("to_city", "Los Angeles");
            params.put("amount", 29.94);
            params.put("shipping", 7.99);

            List<Map> lineItems = new ArrayList();
            Map<String, Object> lineItem = new HashMap<>();
            lineItem.put("quantity", 1);
            lineItem.put("unit_price", 19.99);
            lineItem.put("product_tax_code", "20010");
            lineItems.add(lineItem);
            Map<String, Object> lineItem2 = new HashMap<>();
            lineItem.put("quantity", 1);
            lineItem.put("unit_price", 9.95);
            lineItem.put("product_tax_code", "20010");
            lineItems.add(lineItem2);

            params.put("line_items", lineItems);

            TaxResponse res = client.taxForOrder(params);
        } catch (TaxjarException e) {
            e.printStackTrace();
        }
    }

}
package main

import (
    "fmt"

    "github.com/taxjar/taxjar-go"
)

func main() {
    client := taxjar.NewClient(taxjar.Config{
        APIKey: "9e0cd62a22f451701f29c3bde214",
    })

    res, err := client.TaxForOrder(taxjar.TaxForOrderParams{
        FromCountry: "US",
        FromZip:     "94133",
        FromState:   "CA",
        FromCity:    "San Francisco",
        ToCountry:   "US",
        ToZip:       "90071",
        ToState:     "CA",
        ToCity:      "Los Angeles",
        Amount:      29.94,
        Shipping:    7.99,
        LineItems:   []taxjar.TaxLineItem{
            {
                Quantity:       1,
                UnitPrice:      19.99,
                ProductTaxCode: "40030",
            },
            {
                Quantity:       1,
                UnitPrice:      9.95,
                ProductTaxCode: "40030",
            },
        },
    })
    if err != nil {
        fmt.Println(err)
    } else {
        fmt.Println(res.Tax)
    }
}
$ curl https://api.taxjar.com/v2/taxes \
  -H "Authorization: Bearer 9e0cd62a22f451701f29c3bde214" \
  -H "Content-Type: application/json" \
  -d '{
    "from_city": "San Francisco",
    "from_state": "CA",
    "from_zip": "94133",
    "from_country": "US",
    "to_city": "Los Angeles",
    "to_state": "CA",
    "to_zip": "90071",
    "to_country": "US",
    "amount": 29.94,
    "shipping": 7.99,
    "line_items": [
      {
        "quantity": 1,
        "unit_price": 19.99,
        "product_tax_code": "40030"
      },
      {
        "quantity": 1,
        "unit_price": 9.95,
        "product_tax_code": "40030"
      }
    ]
  }'

Request Scenario: No Nexus For interstate transactions, nexus won’t trigger for the destination state unless you provide the destination state via nexus_addresses[] or have the destination state on file in your TaxJar account.

require "taxjar"
client = Taxjar::Client.new(api_key: "9e0cd62a22f451701f29c3bde214")

order = client.tax_for_order({
  :from_country => 'US',
  :from_zip => '33018',
  :from_state => 'FL',
  :from_city => 'Miami',
  :to_country => 'US',
  :to_zip => '97035',
  :to_state => 'OR',
  :to_city => 'Portland',
  :amount => 15,
  :shipping => 1.5
})
import taxjar
client = taxjar.Client(api_key='9e0cd62a22f451701f29c3bde214')

order = client.tax_for_order({
  'from_country': 'US',
  'from_zip': '33018',
  'from_state': 'FL',
  'from_city': 'Miami',
  'to_country': 'US',
  'to_zip': '97035',
  'to_state': 'OR',
  'to_city': 'Portland',
  'amount': 15,
  'shipping': 1.5
})
const Taxjar = require('taxjar');

const client = new Taxjar({
  apiKey: '9e0cd62a22f451701f29c3bde214'
});

client.taxForOrder({
  from_country: 'US',
  from_zip: '33018',
  from_state: 'FL',
  from_city: 'Miami',
  to_country: 'US',
  to_zip: '97035',
  to_state: 'OR',
  to_city: 'Portland',
  amount: 15,
  shipping: 1.5
}).then(res => {
  res.tax; // Tax object
  res.tax.amount_to_collect; // Amount to collect
});
require __DIR__ . '/vendor/autoload.php';
$client = TaxJar\Client::withApiKey("9e0cd62a22f451701f29c3bde214");

$order_taxes = $client->taxForOrder([
  'from_country' => 'US',
  'from_zip' => '33018',
  'from_state' => 'FL',
  'from_city' => 'Miami',
  'to_country' => 'US',
  'to_zip' => '97035',
  'to_state' => 'OR',
  'to_city' => 'Portland',
  'amount' => 15,
  'shipping' => 1.5
]);
using Taxjar;
var client = new TaxjarApi("9e0cd62a22f451701f29c3bde214");

var rates = client.TaxForOrder(new {
  from_country = "US",
  from_zip = "33018",
  from_state = "FL",
  from_city = "Miami",
  to_country = "US",
  to_zip = "97305",
  to_state = "OR",
  to_city = "Portland",
  amount = 15,
  shipping = 1.5
});
import com.taxjar.Taxjar;
import com.taxjar.exception.TaxjarException;
import com.taxjar.model.taxes.TaxResponse;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class NoNexusTaxExample {

    public static void main(String[] args) {
        Taxjar client = new Taxjar("9e0cd62a22f451701f29c3bde214");

        try {
            Map<String, Object> params = new HashMap<>();
            params.put("from_country", "US");
            params.put("from_zip", "33018");
            params.put("from_state", "FL");
            params.put("from_city", "Miami");
            params.put("to_country", "US");
            params.put("to_zip", "97305");
            params.put("to_state", "OR");
            params.put("to_city", "Portland");
            params.put("amount", 15);
            params.put("shipping", 1.5);

            TaxResponse res = client.taxForOrder(params);
        } catch (TaxjarException e) {
            e.printStackTrace();
        }
    }

}
package main

import (
    "fmt"

    "github.com/taxjar/taxjar-go"
)

func main() {
    client := taxjar.NewClient(taxjar.Config{
        APIKey: "9e0cd62a22f451701f29c3bde214",
    })

    res, err := client.TaxForOrder(taxjar.TaxForOrderParams{
        FromCountry: "US",
        FromZip:     "33018",
        FromState:   "FL",
        FromCity:    "Miami",
        ToCountry:   "US",
        ToZip:       "97305",
        ToState:     "OR",
        ToCity:      "Portland",
        Amount:      15,
        Shipping:    1.5,
    })
    if err != nil {
        fmt.Println(err)
    } else {
        fmt.Println(res.Tax)
    }
}
$ curl https://api.taxjar.com/v2/taxes \
  -H "Authorization: Bearer 9e0cd62a22f451701f29c3bde214" \
  -H "Content-Type: application/json" \
  -d '{
    "from_city": "Miami",
    "from_state": "FL",
    "from_zip": "33018",
    "from_country": "US",
    "to_city": "Portland",
    "to_state": "OR",
    "to_zip": "97035",
    "to_country": "US",
    "amount": 15,
    "shipping": 1.5
  }'

Response Example

{
  "tax": {
    "order_total_amount": 16.5,
    "shipping": 1.5,
    "taxable_amount": 15,
    "amount_to_collect": 1.35,
    "rate": 0.09,
    "has_nexus": true,
    "freight_taxable": false,
    "tax_source": "destination",
    "jurisdictions": {
      "country": "US",
      "state": "CA",
      "county": "LOS ANGELES",
      "city": "LOS ANGELES"
    },
    "breakdown": {
      "taxable_amount": 15,
      "tax_collectable": 1.35,
      "combined_tax_rate": 0.09,
      "state_taxable_amount": 15,
      "state_tax_rate": 0.0625,
      "state_tax_collectable": 0.94,
      "county_taxable_amount": 15,
      "county_tax_rate": 0.0025,
      "county_tax_collectable": 0.04,
      "city_taxable_amount": 0,
      "city_tax_rate": 0,
      "city_tax_collectable": 0,
      "special_district_taxable_amount": 15,
      "special_tax_rate": 0.025,
      "special_district_tax_collectable": 0.38,
      "line_items": [
        {
          "id": "1",
          "taxable_amount": 15,
          "tax_collectable": 1.35,
          "combined_tax_rate": 0.09,
          "state_taxable_amount": 15,
          "state_sales_tax_rate": 0.0625,
          "state_amount": 0.94,
          "county_taxable_amount": 15,
          "county_tax_rate": 0.0025,
          "county_amount": 0.04,
          "city_taxable_amount": 0,
          "city_tax_rate": 0,
          "city_amount": 0,
          "special_district_taxable_amount": 15,
          "special_tax_rate": 0.025,
          "special_district_amount": 0.38
        }
      ]
    }
  }
}
#<Taxjar::Tax:0x00000a @attrs={
  :order_total_amount => 16.5,
  :shipping => 1.5,
  :taxable_amount => 15.0,
  :amount_to_collect => 1.35,
  :rate => 0.09,
  :has_nexus => true,
  :freight_taxable => false,
  :tax_source => "destination",
  :jurisdictions => #<Taxjar::Jurisdictions:0x00000a @attrs={
    :country => 'US',
    :state => 'CA',
    :county => 'LOS ANGELES',
    :city => 'LOS ANGELES'
  }>,
  :breakdown => #<Taxjar::Breakdown:0x00000a @attrs={
    :taxable_amount => 15.0,
    :tax_collectable => 1.35,
    :combined_tax_rate => 0.09,
    :state_taxable_amount => 15.0,
    :state_tax_rate => 0.0625,
    :state_tax_collectable => 0.94,
    :county_taxable_amount => 15.0,
    :county_tax_rate => 0.0025,
    :county_tax_collectable => 0.04,
    :city_taxable_amount => 0.0,
    :city_tax_rate => 0.0,
    :city_tax_collectable => 0.0,
    :special_district_taxable_amount => 15.0,
    :special_tax_rate => 0.025,
    :special_district_tax_collectable => 0.38,
    :line_items => [
      #<Taxjar::BreakdownLineItem:0x00000a @attrs={
        :id => "1",
        :taxable_amount => 15.0,
        :tax_collectable => 1.35,
        :combined_tax_rate => 0.09,
        :state_taxable_amount => 15.0,
        :state_sales_tax_rate => 0.065,
        :state_amount => 0.94,
        :county_taxable_amount => 15.0,
        :county_tax_rate => 0.0025,
        :county_amount => 0.04,
        :city_taxable_amount => 0.0,
        :city_tax_rate => 0.0,
        :city_amount => 0.0,
        :special_district_taxable_amount => 15.0,
        :special_tax_rate => 0.025,
        :special_district_amount => 0.38
      }>
    ]
  }>
}>
<TaxJarTax {
  'breakdown': <TaxJarBreakdown {
    'special_district_taxable_amount': 15.0,
    'city_tax_rate': 0.0,
    'county_tax_collectable': 0.15,
    'county_taxable_amount': 15.0,
    'special_district_tax_collectable': 0.23,
    'line_items': [<TaxJarBreakdownLineItem {
      'special_district_taxable_amount': 15.0,
      'city_tax_rate': 0.0,
      'county_taxable_amount': 15.0,
      'special_district_amount': 0.23,
      'state_sales_tax_rate': 0.0625,
      'state_amount': 0.94,
      'city_taxable_amount': 0.0,
      'taxable_amount': 15.0,
      'special_tax_rate': 0.015,
      'state_taxable_amount': 15.0,
      'combined_tax_rate': 0.0875,
      'county_tax_rate': 0.01,
      'city_amount': 0.0,
      'county_amount': 0.15,
      'id': '1',
      'tax_collectable': 1.31
    }>],
    'taxable_amount': 15.0,
    'state_taxable_amount': 15.0,
    'combined_tax_rate': 0.0875,
    'state_tax_collectable': 0.94,
    'state_tax_rate': 0.0625,
    'city_tax_collectable': 0.0,
    'county_tax_rate': 0.01,
    'special_tax_rate': 0.015,
    'city_taxable_amount': 0.0,
    'tax_collectable': 1.31
  }>,
  'jurisdictions': <TaxJarJurisdictions {
    'country': 'US',
    'state': 'CA',
    'county': 'LOS ANGELES',
    'city': 'LOS ANGELES'
  }>,
  'has_nexus': True,
  'tax_source': 'destination',
  'shipping': 1.5,
  'taxable_amount': 15.0,
  'rate': 0.0875,
  'freight_taxable': False,
  'amount_to_collect': 1.31,
  'order_total_amount': 16.5
}>
taxjar.TaxForOrderResponse{
    Tax: taxjar.Tax{
        OrderTotalAmount: 16.5,
        Shipping:         1.5,
        TaxableAmount:    15,
        AmountToCollect:  1.35,
        Rate:             0.09,
        HasNexus:         true,
        FreightTaxable:   false,
        TaxSource:        "destination",
        Jurisdictions:    taxjar.Jurisdictions{
            Country: "US",
            State:   "CA",
            County:  "LOS ANGELES",
            City:    "LOS ANGELES",
        },
        Breakdown: taxjar.Breakdown{
            TaxableAmount:                 15,
            TaxCollectable:                1.35,
            CombinedTaxRate:               0.09,
            StateTaxableAmount:            15,
            StateTaxRate:                  0.0625,
            StateTaxCollectable:           0.94,
            CountyTaxableAmount:           15,
            CountyTaxRate:                 0.0025,
            CountyTaxCollectable:          0.04,
            CityTaxableAmount:             0,
            CityTaxRate:                   0,
            CityTaxCollectable:            0,
            SpecialDistrictTaxableAmount:  15,
            SpecialTaxRate:                0.025,
            SpecialDistrictTaxCollectable: 0.38,
            LineItems:                     []taxjar.LineItemBreakdown{
                {
                    ID:                           "1",
                    TaxableAmount:                15,
                    TaxCollectable:               1.35,
                    CombinedTaxRate:              0.09,
                    StateTaxableAmount:           15,
                    StateSalesTaxRate:            0.0625,
                    StateAmount:                  0.94,
                    CountyTaxableAmount:          15,
                    CountyTaxRate:                0.0025,
                    CountyAmount:                 0.04,
                    CityTaxableAmount:            0,
                    CityTaxRate:                  0,
                    CityAmount:                   0,
                    SpecialDistrictTaxableAmount: 15,
                    SpecialTaxRate:               0.025,
                    SpecialDistrictAmount:       0.38,
                },
            },
        },
    },
}

Response Scenario: Canada

{
  "tax": {
    "order_total_amount": 16.5,
    "shipping": 1.5,
    "taxable_amount": 16.5,
    "amount_to_collect": 2.15,
    "rate": 0.13,
    "has_nexus": true,
    "freight_taxable": true,
    "tax_source": "destination",
    "jurisdictions": {
      "country": "CA",
      "state": "ON",
      "city": "TORONTO"
    },
    "breakdown": {
      "combined_tax_rate": 0.13,
      "gst": 0.83,
      "gst_tax_rate": 0.05,
      "gst_taxable_amount": 16.5,
      "line_items": [
        {
          "combined_tax_rate": 0.13,
          "gst": 0.75,
          "gst_tax_rate": 0.05,
          "gst_taxable_amount": 15,
          "id": "1",
          "pst": 1.2,
          "pst_tax_rate": 0.08,
          "pst_taxable_amount": 15,
          "qst": 0,
          "qst_tax_rate": 0,
          "qst_taxable_amount": 0,
          "tax_collectable": 1.95,
          "taxable_amount": 15
        }
      ],
      "pst": 1.32,
      "pst_tax_rate": 0.08,
      "pst_taxable_amount": 16.5,
      "qst": 0,
      "qst_tax_rate": 0,
      "qst_taxable_amount": 0,
      "shipping": {
        "combined_tax_rate": 0.13,
        "gst": 0.08,
        "gst_tax_rate": 0.05,
        "gst_taxable_amount": 1.5,
        "pst": 0.12,
        "pst_tax_rate": 0.08,
        "pst_taxable_amount": 1.5,
        "qst": 0,
        "qst_tax_rate": 0,
        "qst_taxable_amount": 0,
        "tax_collectable": 0.2,
        "taxable_amount": 1.5
      },
      "tax_collectable": 2.15,
      "taxable_amount": 16.5
    }
  }
}
#<Taxjar::Tax:0x00000a @attrs={
  :order_total_amount => 16.5,
  :shipping => 1.5,
  :taxable_amount => 16.5,
  :amount_to_collect => 2.15,
  :rate => 0.13,
  :has_nexus => true,
  :freight_taxable => true,
  :tax_source => "destination",
  :jurisdictions => #<Taxjar::Jurisdictions:0x00000a @attrs={
    :country => 'CA',
    :state => 'ON',
    :city => 'TORONTO'
  }>,
  :breakdown => #<Taxjar::Breakdown:0x00000a @attrs={
    :taxable_amount => 16.5,
    :tax_collectable => 2.15,
    :combined_tax_rate => 0.13,
    :gst_taxable_amount => 16.5,
    :gst_tax_rate => 0.05,
    :gst => 0.83,
    :pst_taxable_amount => 16.5,
    :pst_tax_rate => 0.08,
    :pst => 1.32,
    :qst_taxable_amount => 0.0,
    :qst_tax_rate => 0.0,
    :qst => 0.0,
    :shipping => {
      :taxable_amount => 1.5,
      :tax_collectable => 0.2,
      :combined_tax_rate => 0.13,
      :gst_taxable_amount => 1.5,
      :gst_tax_rate => 0.05,
      :gst => 0.08,
      :pst_taxable_amount => 1.5,
      :pst_tax_rate => 0.08,
      :pst => 0.12,
      :qst_taxable_amount => 0.0,
      :qst_tax_rate => 0.0,
      :qst => 0.0
    },
    :line_items => [
      #<Taxjar::BreakdownLineItem:0x00000a @attrs={
        :id => "1",
        :taxable_amount => 15.0,
        :tax_collectable => 1.95,
        :combined_tax_rate => 0.13,
        :gst_taxable_amount => 15.0,
        :gst_tax_rate => 0.05,
        :gst => 0.75,
        :pst_taxable_amount => 15.0,
        :pst_tax_rate => 0.08,
        :pst => 1.2,
        :qst_taxable_amount => 0.0,
        :qst_tax_rate => 0.0,
        :qst => 0.0
      }>
    ]
  }>
}>
<TaxJarTax {
  'breakdown': <TaxJarBreakdown {
    'line_items': [
      <TaxJarBreakdownLineItem {
        'gst': 0.75,
        'pst_tax_rate': 0.08,
        'gst_tax_rate': 0.05,
        'taxable_amount': 15.0,
        'gst_taxable_amount': 15.0,
        'qst_taxable_amount': 0.0,
        'pst_taxable_amount': 15.0,
        'combined_tax_rate': 0.13,
        'qst': 0.0,
        'qst_tax_rate': 0.0,
        'id': '1',
        'pst': 1.2,
        'tax_collectable': 1.95
      }>
    ],
    'gst': 0.83,
    'pst_tax_rate': 0.08,
    'gst_tax_rate': 0.05,
    'shipping': {
      'gst': 0.08,
      'pst_tax_rate': 0.08,
      'gst_tax_rate': 0.05,
      'taxable_amount': 1.5,
      'gst_taxable_amount': 1.5,
      'qst_taxable_amount': 0.0,
      'pst_taxable_amount': 1.5,
      'combined_tax_rate': 0.13,
      'qst': 0.0,
      'qst_tax_rate': 0.0,
      'pst': 0.12,
      'tax_collectable': 0.2
    },
    'taxable_amount': 16.5,
    'gst_taxable_amount': 16.5,
    'qst_taxable_amount': 0.0,
    'pst_taxable_amount': 16.5,
    'combined_tax_rate': 0.13,
    'qst': 0.0,
    'qst_tax_rate': 0.0,
    'pst': 1.32,
    'tax_collectable': 2.15
  }>,
  'jurisdictions': <TaxJarJurisdictions {
    'country': 'CA',
    'state': 'ON',
    'city': 'TORONTO'
  }>,
  'has_nexus': True,
  'tax_source': 'destination',
  'shipping': 1.5,
  'taxable_amount': 16.5,
  'rate': 0.13,
  'freight_taxable': True,
  'amount_to_collect': 2.15,
  'order_total_amount': 16.5
}>
taxjar.TaxForOrderResponse{
    Tax: taxjar.Tax{
        OrderTotalAmount: 16.5,
        Shipping:         1.5,
        TaxableAmount:    16.5,
        AmountToCollect:  2.15,
        Rate:             0.13,
        HasNexus:         true,
        FreightTaxable:   true,
        TaxSource:        "destination",
        Jurisdictions: taxjar.Jurisdictions{
            Country: "CA",
            State:   "ON",
            City:    "TORONTO",
        },
        Breakdown: taxjar.Breakdown{
            TaxableAmount:    16.5,
            TaxCollectable:   2.15,
            CombinedTaxRate:  0.13,
            GSTTaxableAmount: 16.5,
            GSTTaxRate:       0.05,
            GST:              0.83,
            PSTTaxableAmount: 16.5,
            PSTTaxRate:       0.08,
            PST:              1.32,
            QSTTaxableAmount: 0.0,
            QSTTaxRate:       0.0,
            QST:              0.0,
            Shipping: taxjar.Shipping{
                TaxableAmount:    1.5,
                TaxCollectable:   0.2,
                CombinedTaxRate:  0.13,
                GSTTaxableAmount: 1.5,
                GSTTaxRate:       0.05,
                GST:              0.08,
                PSTTaxableAmount: 1.5,
                PSTTaxRate:       0.08,
                PST:              0.12,
                QSTTaxableAmount: 0.0,
                QSTTaxRate:       0.0,
                QST:              0.0,
            },
            LineItems: []taxjar.LineItemBreakdown{
                {
                    ID:               "1",
                    TaxableAmount:    15.0,
                    TaxCollectable:   1.95,
                    CombinedTaxRate:  0.13,
                    GSTTaxableAmount: 15.0,
                    GSTTaxRate:       0.05,
                    GST:              0.75,
                    PSTTaxableAmount: 15.0,
                    PSTTaxRate:       0.08,
                    PST:              1.2,
                    QSTTaxableAmount: 0.0,
                    QSTTaxRate:       0.0,
                    QST:              0.0,
                },
            },
        },
    },
}

Response Scenario: Australia

{
  "tax": {
    "order_total_amount": 16.5,
    "shipping": 1.5,
    "taxable_amount": 16.5,
    "amount_to_collect": 1.65,
    "rate": 0.1,
    "has_nexus": true,
    "freight_taxable": true,
    "tax_source": "destination",
    "jurisdictions": {
      "country": "AU"
    },
    "breakdown": {
      "combined_tax_rate": 0.1,
      "country_tax_collectable": 1.65,
      "country_tax_rate": 0.1,
      "country_taxable_amount": 16.5,
      "line_items": [
        {
          "combined_tax_rate": 0.1,
          "country_tax_collectable": 1.5,
          "country_tax_rate": 0.1,
          "country_taxable_amount": 15,
          "id": "1",
          "tax_collectable": 1.5,
          "taxable_amount": 15
        }
      ],
      "shipping": {
        "combined_tax_rate": 0.1,
        "country_tax_collectable": 0.15,
        "country_tax_rate": 0.1,
        "country_taxable_amount": 1.5,
        "tax_collectable": 0.15,
        "taxable_amount": 1.5
      },
      "tax_collectable": 1.65,
      "taxable_amount": 16.5
    }
  }
}
#<Taxjar::Tax:0x00000a @attrs={
  :order_total_amount => 16.5,
  :shipping => 1.5,
  :taxable_amount => 16.5,
  :amount_to_collect => 1.65,
  :rate => 0.1,
  :has_nexus => true,
  :freight_taxable => true,
  :tax_source => "destination",
  :jurisdictions => #<Taxjar::Jurisdictions:0x00000a @attrs={
    :country => 'AU'
  }>,
  :breakdown => #<Taxjar::Breakdown:0x00000a @attrs={
    :taxable_amount => 16.5,
    :tax_collectable => 1.65,
    :combined_tax_rate => 0.1,
    :country_taxable_amount => 16.5,
    :country_tax_rate => 0.1,
    :country_tax_collectable => 1.65,
    :shipping => {
      :taxable_amount => 1.5,
      :tax_collectable => 0.15,
      :combined_tax_rate => 0.1,
      :country_taxable_amount => 1.5,
      :country_tax_rate => 0.1,
      :country_tax_collectable => 0.15
    },
    :line_items => [
      #<Taxjar::BreakdownLineItem:0x00000a @attrs={
        :id => "1",
        :taxable_amount => 15.0,
        :tax_collectable => 1.5,
        :combined_tax_rate => 0.1,
        :country_taxable_amount => 15.0,
        :country_tax_rate => 0.1,
        :country_tax_collectable => 1.5
      }>
    ]
  }>
}>
<TaxJarTax {
  'breakdown': <TaxJarBreakdown {
    'line_items': [
      <TaxJarBreakdownLineItem {
        'country_tax_collectable': 1.5,
        'country_taxable_amount': 15.0,
        'taxable_amount': 15.0,
        'combined_tax_rate': 0.1,
        'id': '1',
        'country_tax_rate': 0.1,
        'tax_collectable': 1.5
      }>
    ],
    'country_tax_collectable': 1.65,
    'shipping': {
      'country_tax_collectable': 0.15,
      'country_tax_rate': 0.1,
      'taxable_amount': 1.5,
      'combined_tax_rate': 0.1,
      'country_taxable_amount': 1.5,
      'tax_collectable': 0.15
    },
    'country_tax_rate': 0.1,
    'taxable_amount': 16.5,
    'combined_tax_rate': 0.1,
    'country_taxable_amount': 16.5,
    'tax_collectable': 1.65
  >},
  'jurisdictions': <TaxJarJurisdictions {
    'country': 'AU'
  }>,
  'has_nexus': True,
  'tax_source': 'destination',
  'shipping': 1.5,
  'taxable_amount': 16.5,
  'rate': 0.1,
  'freight_taxable': True,
  'amount_to_collect': 1.65,
  'order_total_amount': 16.5
}>
taxjar.TaxForOrderResponse{
    Tax: taxjar.Tax{
        OrderTotalAmount: 16.5,
        Shipping:         1.5,
        TaxableAmount:    16.5,
        AmountToCollect:  1.65,
        Rate:             0.1,
        HasNexus:         true,
        FreightTaxable:   true,
        TaxSource:        "destination",
        Jurisdictions: taxjar.Jurisdictions{
            Country: "AU",
        },
        Breakdown: taxjar.Breakdown{
            TaxableAmount:         16.5,
            TaxCollectable:        1.65,
            CombinedTaxRate:       0.1,
            CountryTaxableAmount:  16.5,
            CountryTaxRate:        0.1,
            CountryTaxCollectable: 1.65,
            Shipping: taxjar.Shipping{
                TaxableAmount:         1.5,
                TaxCollectable:        0.15,
                CombinedTaxRate:       0.1,
                CountryTaxableAmount:  1.5,
                CountryTaxRate:        0.1,
                CountryTaxCollectable: 0.15,
            },
            LineItems: []taxjar.LineItemBreakdown{
                {
                    ID:                    "1",
                    TaxableAmount:         15.0,
                    TaxCollectable:        1.5,
                    CombinedTaxRate:       0.1,
                    CountryTaxableAmount:  15.0,
                    CountryTaxRate:        0.1,
                    CountryTaxCollectable: 1.5,
                },
            },
        },
    },
}

Response Scenario: European Union

{
  "tax": {
    "order_total_amount": 16.5,
    "shipping": 1.5,
    "taxable_amount": 16.5,
    "amount_to_collect": 3.3,
    "rate": 0.2,
    "has_nexus": true,
    "freight_taxable": true,
    "tax_source": "destination",
    "jurisdictions": {
      "country": "FR",
      "city": "MARSEILLE"
    },
    "breakdown": {
      "combined_tax_rate": 0.2,
      "country_tax_collectable": 3.3,
      "country_tax_rate": 0.2,
      "country_taxable_amount": 16.5,
      "line_items": [
        {
          "combined_tax_rate": 0.2,
          "country_tax_collectable": 3,
          "country_tax_rate": 0.2,
          "country_taxable_amount": 15,
          "id": "1",
          "tax_collectable": 3,
          "taxable_amount": 15
        }
      ],
      "shipping": {
        "combined_tax_rate": 0.2,
        "country_tax_collectable": 0.3,
        "country_tax_rate": 0.2,
        "country_taxable_amount": 1.5,
        "tax_collectable": 0.3,
        "taxable_amount": 1.5
      },
      "tax_collectable": 3.3,
      "taxable_amount": 16.5
    }
  }
}
#<Taxjar::Tax:0x00000a @attrs={
  :order_total_amount => 16.5,
  :shipping => 1.5,
  :taxable_amount => 16.5,
  :amount_to_collect => 3.3,
  :rate => 0.2,
  :has_nexus => true,
  :freight_taxable => true,
  :tax_source => "destination",
  :jurisdictions => #<Taxjar::Jurisdictions:0x00000a @attrs={
    :country => 'FR',
    :city => 'MARSEILLE'
  }>,
  :breakdown => #<Taxjar::Breakdown:0x00000a @attrs={
    :taxable_amount => 16.5,
    :tax_collectable => 3.3,
    :combined_tax_rate => 0.2,
    :country_taxable_amount => 16.5,
    :country_tax_rate => 0.2,
    :country_tax_collectable => 3.3,
    :shipping => {
      :taxable_amount => 1.5,
      :tax_collectable => 0.3,
      :combined_tax_rate => 0.2,
      :country_taxable_amount => 1.5,
      :country_tax_rate => 0.2,
      :country_tax_collectable => 0.3
    },
    :line_items => [
      #<Taxjar::BreakdownLineItem:0x00000a @attrs={
        :id => "1",
        :taxable_amount => 15.0,
        :tax_collectable => 3.0,
        :combined_tax_rate => 0.2,
        :country_taxable_amount => 15.0,
        :country_tax_rate => 0.2,
        :country_tax_collectable => 3.0
      }>
    ]
  }>
}>
<TaxJarTax {
  'breakdown': <TaxJarBreakdown {
    'line_items': [
      <TaxJarBreakdownLineItem {
        'country_tax_collectable': 3.0,
        'country_taxable_amount': 15.0,
        'taxable_amount': 15.0,
        'combined_tax_rate': 0.2,
        'id': '1',
        'country_tax_rate': 0.2,
        'tax_collectable': 3.0
      }>
    ],
    'country_tax_collectable': 3.3,
    'shipping': {
      'country_tax_collectable': 0.3,
      'country_tax_rate': 0.2,
      'taxable_amount': 1.5,
      'combined_tax_rate': 0.2,
      'country_taxable_amount': 1.5,
      'tax_collectable': 0.3
    },
    'country_tax_rate': 0.2,
    'taxable_amount': 16.5,
    'combined_tax_rate': 0.2,
    'country_taxable_amount': 16.5,
    'tax_collectable': 3.3
  }>,
  'jurisdictions': <TaxJarJurisdictions {
    'country': 'FR',
    'city': 'MARSEILLE'
  }>,
  'has_nexus': True,
  'tax_source': 'destination',
  'shipping': 1.5,
  'taxable_amount': 16.5,
  'rate': 0.2,
  'freight_taxable': True,
  'amount_to_collect': 3.3,
  'order_total_amount': 16.5
}>
taxjar.TaxForOrderResponse{
    Tax: taxjar.Tax{
        OrderTotalAmount: 16.5,
        Shipping:         1.5,
        TaxableAmount:    16.5,
        AmountToCollect:  3.3,
        Rate:             0.2,
        HasNexus:         true,
        FreightTaxable:   true,
        TaxSource:        "destination",
        Jurisdictions: taxjar.Jurisdictions{
            Country: "FR",
            City:    "MARSEILLE",
        },
        Breakdown: taxjar.Breakdown{
            TaxableAmount:         16.5,
            TaxCollectable:        3.3,
            CombinedTaxRate:       0.2,
            CountryTaxableAmount:  16.5,
            CountryTaxRate:        0.2,
            CountryTaxCollectable: 3.3,
            Shipping: taxjar.Shipping{
                TaxableAmount:         1.5,
                TaxCollectable:        0.3,
                CombinedTaxRate:       0.2,
                CountryTaxableAmount:  1.5,
                CountryTaxRate:        0.2,
                CountryTaxCollectable: 0.3,
            },
            LineItems: []taxjar.LineItemBreakdown{
                ID:                    "1",
                TaxableAmount:         15.0,
                TaxCollectable:        3.0,
                CombinedTaxRate:       0.2,
                CountryTaxableAmount:  15.0,
                CountryTaxRate:        0.2,
                CountryTaxCollectable: 3.0,
            },
        },
    },
}

Response Scenario: Origin-Based Sourcing

{
  "tax": {
    "order_total_amount": 16.5,
    "shipping": 1.5,
    "taxable_amount": 16.5,
    "amount_to_collect": 1.36,
    "rate": 0.0825,
    "has_nexus": true,
    "freight_taxable": true,
    "tax_source": "origin",
    "jurisdictions": {
      "country": "US",
      "state": "TX",
      "county": "TRAVIS",
      "city": "AUSTIN"
    },
    "breakdown": {
      "city_tax_collectable": 0.17,
      "city_tax_rate": 0.01,
      "city_taxable_amount": 16.5,
      "combined_tax_rate": 0.0825,
      "county_tax_collectable": 0,
      "county_tax_rate": 0,
      "county_taxable_amount": 0,
      "line_items": [
        {
          "city_amount": 0.15,
          "city_tax_rate": 0.01,
          "city_taxable_amount": 15,
          "combined_tax_rate": 0.0825,
          "county_amount": 0,
          "county_tax_rate": 0,
          "county_taxable_amount": 0,
          "id": "1",
          "special_district_amount": 0.15,
          "special_district_taxable_amount": 15,
          "special_tax_rate": 0.01,
          "state_amount": 0.94,
          "state_sales_tax_rate": 0.0625,
          "state_taxable_amount": 15,
          "tax_collectable": 1.24,
          "taxable_amount": 15
        }
      ],
      "shipping": {
        "city_amount": 0.02,
        "city_tax_rate": 0.01,
        "city_taxable_amount": 1.5,
        "combined_tax_rate": 0.0825,
        "county_amount": 0,
        "county_tax_rate": 0,
        "county_taxable_amount": 0,
        "special_district_amount": 0.02,
        "special_tax_rate": 0.01,
        "special_taxable_amount": 1.5,
        "state_amount": 0.09,
        "state_sales_tax_rate": 0.0625,
        "state_taxable_amount": 1.5,
        "tax_collectable": 0.12,
        "taxable_amount": 1.5
      },
      "special_district_tax_collectable": 0.17,
      "special_district_taxable_amount": 16.5,
      "special_tax_rate": 0.01,
      "state_tax_collectable": 1.03,
      "state_tax_rate": 0.0625,
      "state_taxable_amount": 16.5,
      "tax_collectable": 1.36,
      "taxable_amount": 16.5
    }
  }
}
#<Taxjar::Tax:0x00000a @attrs={
  :order_total_amount => 16.5,
  :shipping => 1.5,
  :taxable_amount => 16.5,
  :amount_to_collect => 1.36,
  :rate => 0.0825,
  :has_nexus => true,
  :freight_taxable => true,
  :tax_source => "origin",
  :jurisdictions => #<Taxjar::Jurisdictions:0x00000a @attrs={
    :country => 'US',
    :state => 'TX',
    :county => 'TRAVIS',
    :city => 'AUSTIN'
  }>,
  :breakdown => #<Taxjar::Breakdown:0x00000a @attrs={
    :taxable_amount => 16.5,
    :tax_collectable => 1.36,
    :combined_tax_rate => 0.0825,
    :state_taxable_amount => 16.5,
    :state_tax_rate => 0.0625,
    :state_tax_collectable => 1.03,
    :county_taxable_amount => 0.0,
    :county_tax_rate => 0.0,
    :county_tax_collectable => 0.0,
    :city_taxable_amount => 16.5,
    :city_tax_rate => 0.01,
    :city_tax_collectable => 0.17,
    :special_district_taxable_amount => 16.5,
    :special_tax_rate => 0.01,
    :special_district_tax_collectable => 0.17,
    :shipping => {
      :taxable_amount => 1.5,
      :tax_collectable => 0.12,
      :combined_tax_rate => 0.0825,
      :state_taxable_amount => 1.5,
      :state_sales_tax_rate => 0.0625,
      :state_amount => 0.09,
      :county_taxable_amount => 0.0,
      :county_tax_rate => 0.0,
      :county_amount => 0.0,
      :city_taxable_amount => 1.5,
      :city_tax_rate => 0.01,
      :city_amount => 0.02,
      :special_taxable_amount => 1.5,
      :special_tax_rate => 0.01,
      :special_district_amount => 0.02
    },
    :line_items => [
      #<Taxjar::BreakdownLineItem:0x00000a @attrs={
        :id => "1",
        :taxable_amount => 15.0,
        :tax_collectable => 1.24,
        :combined_tax_rate => 0.0825,
        :state_taxable_amount => 15.0,
        :state_sales_tax_rate => 0.0625,
        :state_amount => 0.94,
        :county_taxable_amount => 0.0,
        :county_tax_rate => 0.0,
        :county_amount => 0.0,
        :city_taxable_amount => 15.0,
        :city_tax_rate => 0.01,
        :city_amount => 0.15,
        :special_district_taxable_amount => 15.0,
        :special_tax_rate => 0.01,
        :special_district_amount => 0.15
      }>
    ]
  }>
}>
<TaxJarTax {
  'breakdown': <TaxJarBreakdown {
    'special_district_taxable_amount': 16.5,
    'city_tax_rate': 0.01,
    'county_tax_collectable': 0.0,
    'county_taxable_amount': 0.0,
    'special_district_tax_collectable': 0.17,
    'line_items': [
      <TaxJarBreakdownLineItem {
        'special_district_taxable_amount': 15.0,
        'city_tax_rate': 0.01,
        'county_taxable_amount': 0.0,
        'special_district_amount': 0.15,
        'state_sales_tax_rate': 0.0625,
        'state_amount': 0.94,
        'city_taxable_amount': 15.0,
        'taxable_amount': 15.0,
        'special_tax_rate': 0.01,
        'state_taxable_amount': 15.0,
        'combined_tax_rate': 0.0825,
        'county_tax_rate': 0.0,
        'city_amount': 0.15,
        'county_amount': 0.0,
        'id': '1',
        'tax_collectable': 1.24
      }>
    ],
    'shipping': {
      'city_tax_rate': 0.01,
      'county_taxable_amount': 0.0,
      'special_district_amount': 0.02,
      'state_sales_tax_rate': 0.0625,
      'state_amount': 0.09,
      'special_taxable_amount': 1.5,
      'city_amount': 0.02,
      'taxable_amount': 1.5,
      'state_taxable_amount': 1.5,
      'combined_tax_rate': 0.0825,
      'county_tax_rate': 0.0,
      'special_tax_rate': 0.01,
      'county_amount': 0.0,
      'city_taxable_amount': 1.5,
      'tax_collectable': 0.12
    },
    'taxable_amount': 16.5,
    'state_taxable_amount': 16.5,
    'combined_tax_rate': 0.0825,
    'state_tax_collectable': 1.03,
    'state_tax_rate': 0.0625,
    'city_tax_collectable': 0.17,
    'county_tax_rate': 0.0,
    'special_tax_rate': 0.01,
    'city_taxable_amount': 16.5,
    'tax_collectable': 1.36
  }>,
  'jurisdictions': <TaxJarJurisdictions {
    'country': 'US',
    'state': 'TX',
    'county': 'TRAVIS',
    'city': 'AUSTIN'
  }>,
  'has_nexus': True,
  'tax_source': 'origin',
  'shipping': 1.5,
  'taxable_amount': 16.5,
  'rate': 0.0825,
  'freight_taxable': True,
  'amount_to_collect': 1.36,
  'order_total_amount': 16.5
}>
taxjar.TaxForOrderResponse{
    Tax: taxjar.Tax{
        OrderTotalAmount: 16.5,
        Shipping:         1.5,
        TaxableAmount:    16.5,
        AmountToCollect:  1.36,
        Rate:             0.0825,
        HasNexus:         true,
        FreightTaxable:   true,
        TaxSource:        "origin",
        Jurisdictions: taxjar.Jurisdictions{
            Country: "US",
            State:   "TX",
            County:  "TRAVIS",
            City:    "AUSTIN",
        },
        Breakdown: taxjar.Breakdown{
            TaxableAmount:                 16.5,
            TaxCollectable:                1.36,
            CombinedTaxRate:               0.0825,
            StateTaxableAmount:            16.5,
            StateTaxRate:                  0.0625,
            StateTaxCollectable:           1.03,
            CountyTaxableAmount:           0.0,
            CountyTaxRate:                 0.0,
            CountyTaxCollectable:          0.0,
            CityTaxableAmount:             16.5,
            CityTaxRate:                   0.01,
            CityTaxCollectable:            0.17,
            SpecialDistrictTaxableAmount:  16.5,
            SpecialTaxRate:                0.01,
            SpecialDistrictTaxCollectable: 0.17,
            Shipping: taxjar.Shipping{
                TaxableAmount:         1.5,
                TaxCollectable:        0.12,
                CombinedTaxRate:       0.0825,
                StateTaxableAmount:    1.5,
                StateSalesTaxRate:     0.0625,
                StateAmount:           0.09,
                CountyTaxableAmount:   0.0,
                CountyTaxRate:         0.0,
                CountyAmount:          0.0,
                CityTaxableAmount:     1.5,
                CityTaxRate:           0.01,
                CityAmount:            0.02,
                SpecialTaxableAmount:  1.5,
                SpecialTaxRate:        0.01,
                SpecialDistrictAmount: 0.02,
            },
            LineItems: []taxjar.LineItemBreakdown{
                {
                    ID:                           "1",
                    TaxableAmount:                15.0,
                    TaxCollectable:               1.24,
                    CombinedTaxRate:              0.0825,
                    StateTaxableAmount:           15.0,
                    StateSalesTaxRate:            0.0625,
                    StateAmount:                  0.94,
                    CountyTaxableAmount:          0.0,
                    CountyTaxRate:                0.0,
                    CountyAmount:                 0.0,
                    CityTaxableAmount:            15.0,
                    CityTaxRate:                  0.01,
                    CityAmount:                   0.15,
                    SpecialDistrictTaxableAmount: 15.0,
                    SpecialTaxRate:               0.01,
                    SpecialDistrictAmount:        0.15,
                },
            },
        },
    },
}

Response Scenario: Shipping Exemptions

{
  "tax": {
    "order_total_amount": 16.5,
    "shipping": 1.5,
    "taxable_amount": 15,
    "amount_to_collect": 0.94,
    "rate": 0.0625,
    "has_nexus": true,
    "freight_taxable": false,
    "tax_source": "destination",
    "jurisdictions": {
      "country": "US",
      "state": "MA",
      "county": "WORCESTER",
      "city": "WORCESTER"
    },
    "breakdown": {
      "city_tax_collectable": 0,
      "city_tax_rate": 0,
      "city_taxable_amount": 0,
      "combined_tax_rate": 0.0625,
      "county_tax_collectable": 0,
      "county_tax_rate": 0,
      "county_taxable_amount": 0,
      "line_items": [
        {
          "city_amount": 0,
          "city_tax_rate": 0,
          "city_taxable_amount": 0,
          "combined_tax_rate": 0.0625,
          "county_amount": 0,
          "county_tax_rate": 0,
          "county_taxable_amount": 0,
          "id": "1",
          "special_district_amount": 0,
          "special_district_taxable_amount": 0,
          "special_tax_rate": 0,
          "state_amount": 0.94,
          "state_sales_tax_rate": 0.0625,
          "state_taxable_amount": 15,
          "tax_collectable": 0.94,
          "taxable_amount": 15
        }
      ],
      "special_district_tax_collectable": 0,
      "special_district_taxable_amount": 0,
      "special_tax_rate": 0,
      "state_tax_collectable": 0.94,
      "state_tax_rate": 0.0625,
      "state_taxable_amount": 15,
      "tax_collectable": 0.94,
      "taxable_amount": 15
    }
  }
}
#<Taxjar::Tax:0x00000a @attrs={
  :order_total_amount => 16.5,
  :shipping => 1.5,
  :taxable_amount => 15.0,
  :amount_to_collect => 0.94,
  :rate => 0.0625,
  :has_nexus => true,
  :freight_taxable => false,
  :tax_source => "destination",
  :jurisdictions => #<Taxjar::Jurisdictions:0x00000a @attrs={
    :country => 'US',
    :state => 'MA',
    :county => 'WORCESTER',
    :city => 'WORCESTER'
  }>,
  :breakdown => #<Taxjar::Breakdown:0x00000a @attrs={
    :taxable_amount => 15.0,
    :tax_collectable => 0.94,
    :combined_tax_rate => 0.0625,
    :state_taxable_amount => 15.0,
    :state_tax_rate => 0.0625,
    :state_tax_collectable => 0.94,
    :county_taxable_amount => 0.0,
    :county_tax_rate => 0.0,
    :county_tax_collectable => 0.0,
    :city_taxable_amount => 0.0,
    :city_tax_rate => 0.0,
    :city_tax_collectable => 0.0,
    :special_district_taxable_amount => 0.0,
    :special_tax_rate => 0.0,
    :special_district_tax_collectable => 0.0,
    :line_items => [
      #<Taxjar::BreakdownLineItem:0x00000a @attrs={
        :id => "1",
        :taxable_amount => 15.0,
        :tax_collectable => 0.94,
        :combined_tax_rate => 0.0625,
        :state_taxable_amount => 15.0,
        :state_sales_tax_rate => 0.0625,
        :state_amount => 0.94,
        :county_taxable_amount => 0.0,
        :county_tax_rate => 0.0,
        :county_amount => 0.0,
        :city_taxable_amount => 0.0,
        :city_tax_rate => 0.0,
        :city_amount => 0.0,
        :special_district_taxable_amount => 0.0,
        :special_tax_rate => 0.0,
        :special_district_amount => 0.0
      }>
    ]
  }>
}>
<TaxJarTax {
  'breakdown': <TaxJarBreakdown {
    'special_district_taxable_amount': 0.0,
    'city_tax_rate': 0.0,
    'county_tax_collectable': 0.0,
    'county_taxable_amount': 0.0,
    'special_district_tax_collectable': 0.0,
    'line_items': [
      <TaxJarBreakdownLineItem {
        'special_district_taxable_amount': 0.0,
        'city_tax_rate': 0.0,
        'county_taxable_amount': 0.0,
        'special_district_amount': 0.0,
        'state_sales_tax_rate': 0.0625,
        'state_amount': 0.94,
        'city_taxable_amount': 0.0,
        'taxable_amount': 15.0,
        'special_tax_rate': 0.0,
        'state_taxable_amount': 15.0,
        'combined_tax_rate': 0.0625,
        'county_tax_rate': 0.0,
        'city_amount': 0.0,
        'county_amount': 0.0,
        'id': '1',
        'tax_collectable': 0.94
      }>
    ],
    'taxable_amount': 15.0,
    'state_taxable_amount': 15.0,
    'combined_tax_rate': 0.0625,
    'state_tax_collectable': 0.94,
    'state_tax_rate': 0.0625,
    'city_tax_collectable': 0.0,
    'county_tax_rate': 0.0,
    'special_tax_rate': 0.0,
    'city_taxable_amount': 0.0,
    'tax_collectable': 0.94
  }>,
  'jurisdictions': <TaxJarJurisdictions {
    'country': 'US',
    'state': 'MA',
    'county': 'WORCESTER',
    'city': 'WORCESTER'
  }>,
  'has_nexus': True,
  'tax_source': 'destination',
  'shipping': 1.5,
  'taxable_amount': 15.0,
  'rate': 0.0625,
  'freight_taxable': False,
  'amount_to_collect': 0.94,
  'order_total_amount': 16.5
}>
taxjar.TaxForOrderResponse{
    Tax: taxjar.Tax{
        OrderTotalAmount: 16.5,
        Shipping:         1.5,
        TaxableAmount:    15.0,
        AmountToCollect:  0.94,
        Rate:             0.0625,
        HasNexus:         true,
        FreightTaxable:   false,
        TaxSource:        "destination",
        Jurisdictions: taxjar.Jurisdictions{
            Country: "US",
            State:   "MA",
            County:  "WORCESTER",
            City:    "WORCESTER",
        },
        Breakdown: taxjar.Breakdown{
            TaxableAmount:                 15.0,
            TaxCollectable:                0.94,
            CombinedTaxRate:               0.0625,
            StateTaxableAmount:            15.0,
            StateTaxRate:                  0.0625,
            StateTaxCollectable:           0.94,
            CountyTaxableAmount:           0.0,
            CountyTaxRate:                 0.0,
            CountyTaxCollectable:          0.0,
            CityTaxableAmount:             0.0,
            CityTaxRate:                   0.0,
            CityTaxCollectable:            0.0,
            SpecialDistrictTaxableAmount:  0.0,
            SpecialTaxRate:                0.0,
            SpecialDistrictTaxCollectable: 0.0,
            LineItems: []taxjar.LineItemBreakdown{
                {
                    ID:                           "1",
                    TaxableAmount:                15.0,
                    TaxCollectable:               0.94,
                    CombinedTaxRate:              0.0625,
                    StateTaxableAmount:           15.0,
                    StateSalesTaxRate:            0.0625,
                    StateAmount:                  0.94,
                    CountyTaxableAmount:          0.0,
                    CountyTaxRate:                0.0,
                    CountyAmount:                 0.0,
                    CityTaxableAmount:            0.0,
                    CityTaxRate:                  0.0,
                    CityAmount:                   0.0,
                    SpecialDistrictTaxableAmount: 0.0,
                    SpecialTaxRate:               0.0,
                    SpecialDistrictAmount:        0.0,
                },
            },
        },
    },
}

Response Scenario: Clothing Exemptions

{
  "tax": {
    "order_total_amount": 37.93,
    "shipping": 7.99,
    "taxable_amount": 37.93,
    "amount_to_collect": 1.98,
    "rate": 0.05218,
    "has_nexus": true,
    "freight_taxable": true,
    "tax_source": "destination",
    "jurisdictions": {
      "country": "US",
      "state": "NY",
      "county": "PUTNAM",
      "city": "MAHOPAC"
    },
    "breakdown": {
      "city_tax_collectable": 0,
      "city_tax_rate": 0,
      "city_taxable_amount": 0,
      "combined_tax_rate": 0.05218,
      "county_tax_collectable": 1.52,
      "county_tax_rate": 0.04,
      "county_taxable_amount": 37.93,
      "line_items": [
        {
          "city_amount": 0,
          "city_tax_rate": 0,
          "city_taxable_amount": 0,
          "combined_tax_rate": 0.04375,
          "county_amount": 0.8,
          "county_tax_rate": 0.04,
          "county_taxable_amount": 19.99,
          "id": "1",
          "special_district_amount": 0.07,
          "special_district_taxable_amount": 19.99,
          "special_tax_rate": 0.00375,
          "state_amount": 0,
          "state_sales_tax_rate": 0,
          "state_taxable_amount": 0,
          "tax_collectable": 0.87,
          "taxable_amount": 19.99
        },
        {
          "city_amount": 0,
          "city_tax_rate": 0,
          "city_taxable_amount": 0,
          "combined_tax_rate": 0.04375,
          "county_amount": 0.4,
          "county_tax_rate": 0.04,
          "county_taxable_amount": 9.95,
          "id": "2",
          "special_district_amount": 0.04,
          "special_district_taxable_amount": 9.95,
          "special_tax_rate": 0.00375,
          "state_amount": 0,
          "state_sales_tax_rate": 0,
          "state_taxable_amount": 0,
          "tax_collectable": 0.44,
          "taxable_amount": 9.95
        }
      ],
      "shipping": {
        "city_amount": 0,
        "city_tax_rate": 0,
        "city_taxable_amount": 0,
        "combined_tax_rate": 0.08375,
        "county_amount": 0.32,
        "county_tax_rate": 0.04,
        "county_taxable_amount": 7.99,
        "special_district_amount": 0.03,
        "special_tax_rate": 0.00375,
        "special_taxable_amount": 7.99,
        "state_amount": 0.32,
        "state_sales_tax_rate": 0.04,
        "state_taxable_amount": 7.99,
        "tax_collectable": 0.67,
        "taxable_amount": 7.99
      },
      "special_district_tax_collectable": 0.14,
      "special_district_taxable_amount": 37.93,
      "special_tax_rate": 0.00375,
      "state_tax_collectable": 0.32,
      "state_tax_rate": 0.04,
      "state_taxable_amount": 7.99,
      "tax_collectable": 1.98,
      "taxable_amount": 37.93
    }
  }
}
#<Taxjar::Tax:0x00000a @attrs={
  :order_total_amount => 37.93,
  :shipping => 7.99,
  :taxable_amount => 37.93,
  :amount_to_collect => 1.98,
  :rate => 0.05218,
  :has_nexus => true,
  :freight_taxable => true,
  :tax_source => "destination",
  :jurisdictions => #<Taxjar::Jurisdictions:0x00000a @attrs={
    :country => 'US',
    :state => 'NY',
    :county => 'PUTNAM',
    :city => 'MAHOPAC'
  }>,
  :breakdown => #<Taxjar::Breakdown:0x00000a @attrs={
    :taxable_amount => 37.93,
    :tax_collectable => 1.98,
    :combined_tax_rate => 0.05218,
    :state_taxable_amount => 7.99,
    :state_tax_rate => 0.04,
    :state_tax_collectable => 0.32,
    :county_taxable_amount => 37.93,
    :county_tax_rate => 0.04,
    :county_tax_collectable => 1.52,
    :city_taxable_amount => 0.0,
    :city_tax_rate => 0.0,
    :city_tax_collectable => 0.0,
    :special_district_taxable_amount => 37.93,
    :special_tax_rate => 0.00375,
    :special_district_tax_collectable => 0.14,
    :shipping => {
      :taxable_amount => 7.99,
      :tax_collectable => 0.67,
      :combined_tax_rate => 0.08375,
      :state_taxable_amount => 7.99,
      :state_sales_tax_rate => 0.04,
      :state_amount => 0.32,
      :county_taxable_amount => 7.99,
      :county_tax_rate => 0.04,
      :county_amount => 0.32,
      :city_taxable_amount => 0.0,
      :city_tax_rate => 0.0,
      :city_amount => 0.0,
      :special_taxable_amount => 7.99,
      :special_tax_rate => 0.00375,
      :special_district_amount => 0.03
    },
    :line_items => [
      #<Taxjar::BreakdownLineItem:0x00000a @attrs={
        :id => "1",
        :taxable_amount => 19.99,
        :tax_collectable => 0.87,
        :combined_tax_rate => 0.04375,
        :state_taxable_amount => 0.0,
        :state_sales_tax_rate => 0.0,
        :state_amount => 0.0,
        :county_taxable_amount => 19.99,
        :county_tax_rate => 0.04,
        :county_amount => 0.8,
        :city_taxable_amount => 0.0,
        :city_tax_rate => 0.0,
        :city_amount => 0.0,
        :special_district_taxable_amount => 19.99,
        :special_tax_rate => 0.00375,
        :special_district_amount => 0.07
      }>,
      #<Taxjar::BreakdownLineItem:0x00000a @attrs={
        :id => "2",
        :taxable_amount => 9.95,
        :tax_collectable => 0.44,
        :combined_tax_rate => 0.04375,
        :state_taxable_amount => 0.0,
        :state_sales_tax_rate => 0.0,
        :state_amount => 0.0,
        :county_taxable_amount => 9.95,
        :county_tax_rate => 0.04,
        :county_amount => 0.4,
        :city_taxable_amount => 0.0,
        :city_tax_rate => 0.0,
        :city_amount => 0.0,
        :special_district_taxable_amount => 9.95,
        :special_tax_rate => 0.00375,
        :special_district_amount => 0.04
      }>
    ]
  }>
}>
<TaxJarTax {
  'breakdown': <TaxJarBreakdown {
    'special_district_taxable_amount': 37.93,
    'city_tax_rate': 0.0,
    'county_tax_collectable': 1.52,
    'county_taxable_amount': 37.93,
    'special_district_tax_collectable': 0.14,
    'line_items': [
      <TaxJarBreakdownLineItem {
        'special_district_taxable_amount': 19.99,
        'city_tax_rate': 0.0,
        'county_taxable_amount': 19.99,
        'special_district_amount': 0.07,
        'state_sales_tax_rate': 0.0,
        'state_amount': 0.0,
        'city_taxable_amount': 0.0,
        'taxable_amount': 19.99,
        'special_tax_rate': 0.00375,
        'state_taxable_amount': 0.0,
        'combined_tax_rate': 0.04375,
        'county_tax_rate': 0.04,
        'city_amount': 0.0,
        'county_amount': 0.8,
        'id': '1',
        'tax_collectable': 0.87
      }>,
      <TaxJarBreakdownLineItem {
        'special_district_taxable_amount': 9.95,
        'city_tax_rate': 0.0,
        'county_taxable_amount': 9.95,
        'special_district_amount': 0.04,
        'state_sales_tax_rate': 0.0,
        'state_amount': 0.0,
        'city_taxable_amount': 0.0,
        'taxable_amount': 9.95,
        'special_tax_rate': 0.00375,
        'state_taxable_amount': 0.0,
        'combined_tax_rate': 0.04375,
        'county_tax_rate': 0.04,
        'city_amount': 0.0,
        'county_amount': 0.4,
        'id': '2',
        'tax_collectable': 0.44
      }>
    ],
    'shipping': {
      'city_tax_rate': 0.0,
      'county_taxable_amount': 7.99,
      'special_district_amount': 0.03,
      'state_sales_tax_rate': 0.04,
      'state_amount': 0.32,
      'special_taxable_amount': 7.99,
      'city_amount': 0.0,
      'taxable_amount': 7.99,
      'state_taxable_amount': 7.99,
      'combined_tax_rate': 0.08375,
      'county_tax_rate': 0.04,
      'special_tax_rate': 0.00375,
      'county_amount': 0.32,
      'city_taxable_amount': 0.0,
      'tax_collectable': 0.67
    },
    'taxable_amount': 37.93,
    'state_taxable_amount': 7.99,
    'combined_tax_rate': 0.05218,
    'state_tax_collectable': 0.32,
    'state_tax_rate': 0.04,
    'city_tax_collectable': 0.0,
    'county_tax_rate': 0.04,
    'special_tax_rate': 0.00375,
    'city_taxable_amount': 0.0,
    'tax_collectable': 1.98
  }>,
  'jurisdictions': <TaxJarJurisdictions {
    'country': 'US',
    'state': 'NY',
    'county': 'PUTNAM',
    'city': 'MAHOPAC'
  }>,
  'has_nexus': True,
  'tax_source': 'destination',
  'shipping': 7.99,
  'taxable_amount': 37.93,
  'rate': 0.05218,
  'freight_taxable': True,
  'amount_to_collect': 1.98,
  'order_total_amount': 37.93
}>
taxjar.TaxForOrderResponse{
    Tax: taxjar.Tax{
        OrderTotalAmount: 37.93,
        Shipping:         7.99,
        TaxableAmount:    37.93,
        AmountToCollect:  1.98,
        Rate:             0.05218,
        HasNexus:         true,
        FreightTaxable:   true,
        TaxSource:        "destination",
        Jurisdictions: taxjar.Jurisdictions{
            Country: "US",
            State:   "NY",
            County   "PUTNAM",
            City:    "MAHOPAC",
        },
        Breakdown: taxjar.Breakdown{
            TaxableAmount:                 37.93,
            TaxCollectable:                1.98,
            CombinedTaxRate:               0.05218,
            StateTaxableAmount:            7.99,
            StateTaxRate:                  0.04,
            StateTaxCollectable:           0.32,
            CountyTaxableAmount:           37.93,
            CountyTaxRate:                 0.04,
            CountyTaxCollectable:          1.52,
            CityTaxableAmount:             0.0,
            CityTaxRate:                   0.0,
            CityTaxCollectable:            0.0,
            SpecialDistrictTaxableAmount:  37.93,
            SpecialTaxRate:                0.00375,
            SpecialDistrictTaxCollectable: 0.14,
            Shipping: taxjar.Shipping{
                TaxableAmount:         7.99,
                TaxCollectable:        0.67,
                CombinedTaxRate:       0.08375,
                StateTaxableAmount:    7.99,
                StateSalesTaxRate:     0.04,
                StateAmount:           0.32,
                CountyTaxableAmount:   7.99,
                CountyTaxRate:         0.04,
                CountyAmount:          0.32,
                CityTaxableAmount:     0.0,
                CityTaxRate:           0.0,
                CityAmount:            0.0,
                SpecialTaxableAmount:  7.99,
                SpecialTaxRate:        0.00375,
                SpecialDistrictAmount: 0.03,
            },
            LineItems: []taxjar.LineItemBreakdown{
                {
                    ID:                           "1",
                    TaxableAmount:                19.99,
                    TaxCollectable:               0.87,
                    CombinedTaxRate:              0.04375,
                    StateTaxableAmount:           0.0,
                    StateSalesTaxRate:            0.0,
                    StateAmount:                  0.0,
                    CountyTaxableAmount:          19.99,
                    CountyTaxRate:                0.04,
                    CountyAmount:                 0.8,
                    CityTaxableAmount:            0.0,
                    CityTaxRate:                  0.0,
                    CityAmount:                   0.0,
                    SpecialDistrictTaxableAmount: 19.99,
                    SpecialTaxRate:               0.00375,
                    SpecialDistrictAmount:        0.07,
                },
                {
                    ID:                           "2",
                    TaxableAmount:                9.95,
                    TaxCollectable:               0.44,
                    CombinedTaxRate:              0.04375,
                    StateTaxableAmount:           0.0,
                    StateSalesTaxRate:            0.0,
                    StateAmount:                  0.0,
                    CountyTaxableAmount:          9.95,
                    CountyTaxRate:                0.04,
                    CountyAmount:                 0.4,
                    CityTaxableAmount:            0.0,
                    CityTaxRate:                  0.0,
                    CityAmount:                   0.0,
                    SpecialDistrictTaxableAmount: 9.95,
                    SpecialTaxRate:               0.00375,
                    SpecialDistrictAmount:        0.04,
                },
            },
        },
    },
}

Response Scenario: Food & Grocery Exemptions

{
  "tax": {
    "order_total_amount": 37.93,
    "shipping": 7.99,
    "taxable_amount": 0,
    "amount_to_collect": 0,
    "rate": 0,
    "has_nexus": true,
    "freight_taxable": false,
    "tax_source": "destination",
    "jurisdictions": {
      "country": "US",
      "state": "CA",
      "county": "LOS ANGELES",
      "city": "LOS ANGELES"
    },
    "breakdown": {
      "city_tax_collectable": 0,
      "city_tax_rate": 0,
      "city_taxable_amount": 0,
      "combined_tax_rate": 0,
      "county_tax_collectable": 0,
      "county_tax_rate": 0,
      "county_taxable_amount": 0,
      "line_items": [
        {
          "city_amount": 0,
          "city_tax_rate": 0,
          "city_taxable_amount": 0,
          "combined_tax_rate": 0,
          "county_amount": 0,
          "county_tax_rate": 0,
          "county_taxable_amount": 0,
          "id": "1",
          "special_district_amount": 0,
          "special_district_taxable_amount": 0,
          "special_tax_rate": 0,
          "state_amount": 0,
          "state_sales_tax_rate": 0,
          "state_taxable_amount": 0,
          "tax_collectable": 0,
          "taxable_amount": 0
        },
        {
          "city_amount": 0,
          "city_tax_rate": 0,
          "city_taxable_amount": 0,
          "combined_tax_rate": 0,
          "county_amount": 0,
          "county_tax_rate": 0,
          "county_taxable_amount": 0,
          "id": "2",
          "special_district_amount": 0,
          "special_district_taxable_amount": 0,
          "special_tax_rate": 0,
          "state_amount": 0,
          "state_sales_tax_rate": 0,
          "state_taxable_amount": 0,
          "tax_collectable": 0,
          "taxable_amount": 0
        }
      ],
      "special_district_tax_collectable": 0,
      "special_district_taxable_amount": 0,
      "special_tax_rate": 0,
      "state_tax_collectable": 0,
      "state_tax_rate": 0,
      "state_taxable_amount": 0,
      "tax_collectable": 0,
      "taxable_amount": 0
    }
  }
}
#<Taxjar::Tax:0x00000a @attrs={
  :order_total_amount => 37.93,
  :shipping => 7.99,
  :taxable_amount => 0.0,
  :amount_to_collect => 0.0,
  :rate => 0.0,
  :has_nexus => true,
  :freight_taxable => false,
  :tax_source => "destination",
  :jurisdictions => #<Taxjar::Jurisdictions:0x00000a @attrs={
    :country => 'US',
    :state => 'CA',
    :county => 'LOS ANGELES',
    :city => 'LOS ANGELES'
  }>,
  :breakdown => #<Taxjar::Breakdown:0x00000a @attrs={
    :taxable_amount => 0.0,
    :tax_collectable => 0.0,
    :combined_tax_rate => 0.0,
    :state_taxable_amount => 0.0,
    :state_tax_rate => 0.0,
    :state_tax_collectable => 0.0,
    :county_taxable_amount => 0.0,
    :county_tax_rate => 0.0,
    :county_tax_collectable => 0.0,
    :city_taxable_amount => 0.0,
    :city_tax_rate => 0.0,
    :city_tax_collectable => 0.0,
    :special_district_taxable_amount => 0.0,
    :special_tax_rate => 0.0,
    :special_district_tax_collectable => 0.0,
    :line_items => [
      #<Taxjar::BreakdownLineItem:0x00000a @attrs={
        :id => "1",
        :taxable_amount => 0.0,
        :tax_collectable => 0.0,
        :combined_tax_rate => 0.0,
        :state_taxable_amount => 0.0,
        :state_sales_tax_rate => 0.0,
        :state_amount => 0.0,
        :county_taxable_amount => 0.0,
        :county_tax_rate => 0.0,
        :county_amount => 0.0,
        :city_taxable_amount => 0.0,
        :city_tax_rate => 0.0,
        :city_amount => 0.0,
        :special_district_taxable_amount => 0.0,
        :special_tax_rate => 0.0,
        :special_district_amount => 0.0
      }>,
      #<Taxjar::BreakdownLineItem:0x00000a @attrs={
        :id => "2",
        :taxable_amount => 0.0,
        :tax_collectable => 0.0,
        :combined_tax_rate => 0.0,
        :state_taxable_amount => 0.0,
        :state_sales_tax_rate => 0.0,
        :state_amount => 0.0,
        :county_taxable_amount => 0.0,
        :county_tax_rate => 0.0,
        :county_amount => 0.0,
        :city_taxable_amount => 0.0,
        :city_tax_rate => 0.0,
        :city_amount => 0.0,
        :special_district_taxable_amount => 0.0,
        :special_tax_rate => 0.0,
        :special_district_amount => 0.0
      }>
    ]
  }>
}>
<TaxJarTax {
  'breakdown': <TaxJarBreakdown {
    'special_district_taxable_amount': 0.0,
    'city_tax_rate': 0.0,
    'county_tax_collectable': 0.0,
    'county_taxable_amount': 0.0,
    'special_district_tax_collectable': 0.0,
    'line_items': [
      <TaxJarBreakdownLineItem {
        'special_district_taxable_amount': 0.0,
        'city_tax_rate': 0.0,
        'county_taxable_amount': 0.0,
        'special_district_amount': 0.0,
        'state_sales_tax_rate': 0.0,
        'state_amount': 0.0,
        'city_taxable_amount': 0.0,
        'taxable_amount': 0.0,
        'special_tax_rate': 0.0,
        'state_taxable_amount': 0.0,
        'combined_tax_rate': 0.0,
        'county_tax_rate': 0.0,
        'city_amount': 0.0,
        'county_amount': 0.0,
        'id': '1',
        'tax_collectable': 0.0
      }>,
      <TaxJarBreakdownLineItem {
        'special_district_taxable_amount': 0.0,
        'city_tax_rate': 0.0,
        'county_taxable_amount': 0.0,
        'special_district_amount': 0.0,
        'state_sales_tax_rate': 0.0,
        'state_amount': 0.0,
        'city_taxable_amount': 0.0,
        'taxable_amount': 0.0,
        'special_tax_rate': 0.0,
        'state_taxable_amount': 0.0,
        'combined_tax_rate': 0.0,
        'county_tax_rate': 0.0,
        'city_amount': 0.0,
        'county_amount': 0.0,
        'id': '2',
        'tax_collectable': 0.0
      }>
    ],
    'taxable_amount': 0.0,
    'state_taxable_amount': 0.0,
    'combined_tax_rate': 0.0,
    'state_tax_collectable': 0.0,
    'state_tax_rate': 0.0,
    'city_tax_collectable': 0.0,
    'county_tax_rate': 0.0,
    'special_tax_rate': 0.0,
    'city_taxable_amount': 0.0,
    'tax_collectable': 0.0
  }>,
  'jurisdictions': <TaxJarJurisdictions {
    'country': 'US',
    'state': 'CA',
    'county': 'LOS ANGELES',
    'city': 'LOS ANGELES'
  }>,
  'has_nexus': True,
  'tax_source': 'destination',
  'shipping': 7.99,
  'taxable_amount': 0.0,
  'rate': 0.0,
  'freight_taxable': False,
  'amount_to_collect': 0.0,
  'order_total_amount': 37.93
}>
taxjar.TaxForOrderResponse{
    Tax: taxjar.Tax{
        OrderTotalAmount: 37.93,
        Shipping:         7.99,
        TaxableAmount:    0.0,
        AmountToCollect:  0.0,
        Rate:             0.0,
        HasNexus:         true,
        FreightTaxable:   false,
        TaxSource:        "destination",
        Jurisdictions: taxjar.Jurisdictions{
            Country: "US",
            State:   "CA",
            County:  "LOS ANGELES",
            City:    "LOS ANGELES",
        },
        Breakdown: taxjar.Breakdown{
            TaxableAmount:                 0.0,
            TaxCollectable:                0.0,
            CombinedTaxRate:               0.0,
            StateTaxableAmount:            0.0,
            StateTaxRate:                  0.0,
            StateTaxCollectable:           0.0,
            CountyTaxableAmount:           0.0,
            CountyTaxRate:                 0.0,
            CountyTaxCollectable:          0.0,
            CityTaxableAmount:             0.0,
            CityTaxRate:                   0.0,
            CityTaxCollectable:            0.0,
            SpecialDistrictTaxableAmount:  0.0,
            SpecialTaxRate:                0.0,
            SpecialDistrictTaxCollectable: 0.0,
            LineItems: []taxjar.LineItemBreakdown{
                {
                    ID:                           "1",
                    TaxableAmount:                0.0,
                    TaxCollectable:               0.0,
                    CombinedTaxRate:              0.0,
                    StateTaxableAmount:           0.0,
                    StateSalesTaxRate:            0.0,
                    StateAmount:                  0.0,
                    CountyTaxableAmount:          0.0,
                    CountyTaxRate:                0.0,
                    CountyAmount:                 0.0,
                    CityTaxableAmount:            0.0,
                    CityTaxRate:                  0.0,
                    CityAmount:                   0.0,
                    SpecialDistrictTaxableAmount: 0.0,
                    SpecialTaxRate:               0.0,
                    SpecialDistrictAmount:        0.0,
                },
                {
                    ID:                           "2",
                    TaxableAmount:                0.0,
                    TaxCollectable:               0.0,
                    CombinedTaxRate:              0.0,
                    StateTaxableAmount:           0.0,
                    StateSalesTaxRate:            0.0,
                    StateAmount:                  0.0,
                    CountyTaxableAmount:          0.0,
                    CountyTaxRate:                0.0,
                    CountyAmount:                 0.0,
                    CityTaxableAmount:            0.0,
                    CityTaxRate:                  0.0,
                    CityAmount:                   0.0,
                    SpecialDistrictTaxableAmount: 0.0,
                    SpecialTaxRate:               0.0,
                    SpecialDistrictAmount:        0.0,
                },
            },
        },
    },
}

Response Scenario: No Nexus

{
  "tax": {
    "amount_to_collect": 0,
    "freight_taxable": false,
    "has_nexus": false,
    "rate": 0,
    "tax_source": null,
    "taxable_amount": 0
  }
}
#<Taxjar::Tax:0x00000a @attrs={
  :taxable_amount => 0.0,
  :amount_to_collect => 0.0,
  :rate => 0.0,
  :has_nexus => false,
  :freight_taxable => false,
  :tax_source => nil
}>
<TaxJarTax {
  'has_nexus': False,
  'taxable_amount': 0.0,
  'rate': 0.0,
  'freight_taxable': False,
  'amount_to_collect': 0.0
}>
taxjar.TaxForOrderResponse{
    Tax: taxjar.Tax{
        TaxableAmount:   0.0,
        AmountToCollect: 0.0,
        Rate:            0.0,
        HasNexus:        false,
        FreightTaxable:  false,
        TaxSource:       "",
    },
}

Shows the sales tax that should be collected for a given order.

Request

POST https://api.taxjar.com/v2/taxes

Parameters

Parameter Type Required Description
from_country string optional Two-letter ISO country code of the country where the order shipped from. View Note
from_zip string optional Postal code where the order shipped from (5-Digit ZIP or ZIP+4).
from_state string optional Two-letter ISO state code where the order shipped from.
from_city string optional City where the order shipped from.
from_street string optional Street address where the order shipped from.
to_country string required Two-letter ISO country code of the country where the order shipped to.
to_zip string conditional Postal code where the order shipped to (5-Digit ZIP or ZIP+4).
to_state string conditional Two-letter ISO state code where the order shipped to.
to_city string optional City where the order shipped to.
to_street string optional Street address where the order shipped to. View Note
amount float optional Total amount of the order, excluding shipping. View Note
shipping float required Total amount of shipping for the order.
customer_id string optional Unique identifier of the given customer for exemptions.
exemption_type string optional Type of exemption for the order: wholesale, government, marketplace, other, or non_exempt. View Note
nexus_addresses[][id] string optional Unique identifier of the given nexus address. View Note
nexus_addresses[][country] string conditional Two-letter ISO country code for the nexus address.
nexus_addresses[][zip] string optional Postal code for the nexus address.
nexus_addresses[][state] string conditional Two-letter ISO state code for the nexus address.
nexus_addresses[][city] string optional City for the nexus address.
nexus_addresses[][street] string optional Street address for the nexus address.
line_items[][id] string optional Unique identifier of the given line item. View Note
line_items[][quantity] integer optional Quantity for the item.
line_items[][product_tax_code] string optional Product tax code for the item. If omitted, the item will remain fully taxable.
line_items[][unit_price] float optional Unit price for the item.
line_items[][discount] float optional Total discount (non-unit) for the item.

Notes

  • Either amount or line_items parameters are required to perform tax calculations.

  • The to_zip parameter is required when to_country is ‘US’.

  • The to_state parameter is required when to_country is 'US’ or 'CA’.

  • Either an address on file, nexus_addresses parameter, or from_ parameters are required to perform tax calculations.

Response

Returns a tax JSON object with sales tax for a given order. If available, returns a breakdown of rates by jurisdiction at the order, shipping, and line item level.

Attributes

Parameter Type Description
order_total_amount float Total amount of the order.
shipping float Total amount of shipping for the order.
taxable_amount float Amount of the order to be taxed.
amount_to_collect float Amount of sales tax to collect.
rate float Overall sales tax rate of the order (amount_to_collect ÷ taxable_amount).
has_nexus bool Whether or not you have nexus for the order based on an address on file, nexus_addresses parameter, or from_ parameters.
freight_taxable bool Freight taxability for the order.
tax_source string Origin-based or destination-based sales tax collection.
exemption_type string Type of exemption for the order: wholesale, government, marketplace, other, or non_exempt. If no customer_id or exemption_type is provided, no exemption_type is returned in the response.
jurisdictions object Jurisdiction names for the order.
breakdown object Breakdown of rates by jurisdiction for the order, shipping, and individual line items. If has_nexus is false or no line items are provided, no breakdown is returned in the response.

  United States Jurisdiction Attributes

Parameter Type Description
country string Two-letter ISO country code for given location.
state string Postal abbreviated state name for given location.
county string County name for given location.
city string City name for given location.

  Canada Jurisdiction Attributes

Parameter Type Description
country string Two-letter ISO country code for given location.
state string Postal abbreviated state name for given location.
city string City name for given location.

  Australia Jurisdiction Attributes

Parameter Type Description
country string Two-letter ISO country code for given location.

  European Union Jurisdiction Attributes

Parameter Type Description
country string Two-letter ISO country code for given location.
city string City name for given location.

  United States Breakdown Attributes

Parameter Type Description
taxable_amount float Total amount of the order to be taxed.
tax_collectable float Total amount of sales tax to collect.
combined_tax_rate float Overall sales tax rate of the breakdown which includes state, county, city and district tax for the order and shipping if applicable.
state_taxable_amount float Amount of the order to be taxed at the state tax rate.
state_tax_rate float State sales tax rate for given location.
state_tax_collectable float Amount of sales tax to collect for the state.
county_taxable_amount float Amount of the order to be taxed at the county tax rate.
county_tax_rate float County sales tax rate for given location.
county_tax_collectable float Amount of sales tax to collect for the county.
city_taxable_amount float Amount of the order to be taxed at the city tax rate.
city_tax_rate float City sales tax rate for given location.
city_tax_collectable float Amount of sales tax to collect for the city.
special_district_taxable_amount float Amount of the order to be taxed at the special district tax rate.
special_tax_rate float Special district sales tax rate for given location.
special_district_tax_collectable float Amount of sales tax to collect for the special district.
shipping object Breakdown of shipping rates if applicable.
line_items object Breakdown of rates by line item if applicable.

  Canada Breakdown Attributes

Parameter Type Description
gst_taxable_amount float Amount of the order to be taxed at the GST rate.
gst_tax_rate float Goods and services tax rate for given location.
gst float Amount of goods and services tax to collect for given location.
pst_taxable_amount float Amount of the order to be taxed at the PST rate.
pst_tax_rate float Provincial sales tax rate for given location.
pst float Amount of provincial sales tax to collect for given location.
qst_taxable_amount float Amount of the order to be taxed at the QST rate.
qst_tax_rate float Quebec sales tax rate for given location.
qst float Amount of Quebec sales tax to collect for given location.
shipping object Breakdown of shipping rates if applicable.
line_items object Breakdown of rates by line item if applicable.

  International Breakdown Attributes

Parameter Type Description
country_taxable_amount float Amount of the order to be taxed at the country tax rate.
country_tax_rate float Country sales tax rate for given location
country_tax_collectable float Amount of sales tax to collect for the country.
shipping object Breakdown of shipping rates if applicable.
line_items object Breakdown of rates by line item if applicable.

Transactions

Manage your transactions for automated sales tax reporting and filing in TaxJar. These endpoints only affect orders and refunds created specifically through the API, not transactions from other channels.

We currently support reporting and filing in the United States.

get List order transactions

Definition

client.list_orders
client.list_orders
client.listOrders();
$client->listOrders();
client.ListOrders();
client.listOrders();
client.ListOrders()
GET https://api.taxjar.com/v2/transactions/orders

Request Example

require "taxjar"
client = Taxjar::Client.new(api_key: "9e0cd62a22f451701f29c3bde214")

orders = client.list_orders({
  :from_transaction_date => '2015/05/01',
  :to_transaction_date => '2015/05/31'
})
import taxjar
client = taxjar.Client(api_key='9e0cd62a22f451701f29c3bde214')

orders = client.list_orders({
  'from_transaction_date': '2015/05/01',
  'to_transaction_date': '2015/05/31'
})
const Taxjar = require('taxjar');

const client = new Taxjar({
  apiKey: '9e0cd62a22f451701f29c3bde214'
});

client.listOrders({
  from_transaction_date: '2015/05/01',
  to_transaction_date: '2015/05/31'
}).then(res => {
  res.orders; // Array of orders
});
require __DIR__ . '/vendor/autoload.php';
$client = TaxJar\Client::withApiKey("9e0cd62a22f451701f29c3bde214");

$orders = $client->listOrders([
  'from_transaction_date' => '2015/05/01',
  'to_transaction_date' => '2015/05/31'
]);
using Taxjar;
var client = new TaxjarApi("9e0cd62a22f451701f29c3bde214");

var orders = client.ListOrders(new {
    from_transaction_date = "2015/05/01",
    to_transaction_date = "2015/05/31"
});
import com.taxjar.Taxjar;
import com.taxjar.exception.TaxjarException;
import com.taxjar.model.transactions.OrdersResponse;
import java.util.HashMap;
import java.util.Map;

public class ListOrdersExample {

    public static void main(String[] args) {
        Taxjar client = new Taxjar("9e0cd62a22f451701f29c3bde214");

        try {
            Map<String, String> params = new HashMap<>();
            params.put("from_transaction_date", "2015/05/01");
            params.put("to_transaction_date", "2015/05/31");
            OrdersResponse res = client.listOrders(params);
        } catch (TaxjarException e) {
            e.printStackTrace();
        }
    }

}
package main

import (
    "fmt"

    "github.com/taxjar/taxjar-go"
)

func main() {
    client := taxjar.NewClient(taxjar.Config{
        APIKey: "9e0cd62a22f451701f29c3bde214",
    })

    res, err := client.ListOrders(taxjar.ListOrdersParams{
        FromTransactionDate: "2015/05/01",
        ToTransactionDate:   "2015/05/31",
    })
    if err != nil {
        fmt.Println(err)
    } else {
        fmt.Println(res.Orders)
    }
}
$ curl -G https://api.taxjar.com/v2/transactions/orders \
  -H "Authorization: Bearer 9e0cd62a22f451701f29c3bde214" \
  -d from_transaction_date="2015/05/01" \
  -d to_transaction_date="2015/05/31"

Response Example

{
  "orders": [
    "123",
    "456"
  ]
}
["20", "21", "22"]
['20', '21', '22']
taxjar.ListOrdersResponse{
    Orders: []string{"20", "21", "22"}
}

Lists existing order transactions created through the API.

Request

GET https://api.taxjar.com/v2/transactions/orders

Parameters

Parameter Type Required Description
transaction_date date optional The date the transactions were originally recorded. View Note
from_transaction_date date optional Start date of a range for which the transactions were originally recorded.
to_transaction_date date optional End date of a range for which the transactions were originally recorded.
provider string optional Source of where the transactions were originally recorded. Defaults to “api”.

Notes

Use transaction_date to list transactions for a specific date. Otherwise, use from_transaction_date and to_transaction_date for a range of dates.

Response

Returns an orders JSON object with an array of order IDs created through the API.

get Show an order transaction

Definition

client.show_order
client.show_order
client.showOrder();
$client->showOrder();
client.ShowOrder();
client.showOrder();
client.ShowOrder()
GET https://api.taxjar.com/v2/transactions/orders/:transaction_id

Request Example

require "taxjar"
client = Taxjar::Client.new(api_key: "9e0cd62a22f451701f29c3bde214")

order = client.show_order('123')
import taxjar
client = taxjar.Client(api_key='9e0cd62a22f451701f29c3bde214')

order = client.show_order('123')
const Taxjar = require('taxjar');

const client = new Taxjar({
  apiKey: '9e0cd62a22f451701f29c3bde214'
});

client.showOrder('123').then(res => {
  res.order;
});
require __DIR__ . '/vendor/autoload.php';
$client = TaxJar\Client::withApiKey("9e0cd62a22f451701f29c3bde214");

$order = $client->showOrder('123');
using Taxjar;
var client = new TaxjarApi("9e0cd62a22f451701f29c3bde214");

var order = client.ShowOrder("123");
import com.taxjar.Taxjar;
import com.taxjar.exception.TaxjarException;
import com.taxjar.model.transactions.OrderResponse;

public class ShowOrderExample {

    public static void main(String[] args) {
        Taxjar client = new Taxjar("9e0cd62a22f451701f29c3bde214");

        try {
            OrderResponse res = client.showOrder("123");
        } catch (TaxjarException e) {
            e.printStackTrace();
        }
    }

}
package main

import (
    "fmt"

    "github.com/taxjar/taxjar-go"
)

func main() {
    client := taxjar.NewClient(taxjar.Config{
        APIKey: "9e0cd62a22f451701f29c3bde214",
    })

    res, err := client.ShowOrder("123")
    if err != nil {
        fmt.Println(err)
    } else {
        fmt.Println(res.Order)
    }
}
$ curl https://api.taxjar.com/v2/transactions/orders/123 \
  -H "Authorization: Bearer 9e0cd62a22f451701f29c3bde214"

Response Example

{
  "order": {
    "transaction_id": "123",
    "user_id": 10649,
    "transaction_date": "2015-05-14T00:00:00Z",
    "provider": "api",
    "to_country": "US",
    "to_zip": "90002",
    "to_state": "CA",
    "to_city": "LOS ANGELES",
    "to_street": "123 Palm Grove Ln",
    "amount": "17.0",
    "shipping": "2.0",
    "sales_tax": "0.95",
    "line_items": [
      {
        "id": "1",
        "quantity": 1,
        "product_identifier": "12-34243-0",
        "description": "Heavy Widget",
        "unit_price": "15.0",
        "discount": "0.0",
        "sales_tax": "0.95"
      }
    ]
  }
}
#<Taxjar::Order:0x00000a @attrs={
  :transaction_id => "123",
  :user_id => 11836,
  :transaction_date => "2015-05-14T00:00:00Z",
  :transaction_reference_id => nil,
  :provider => "api",
  :from_country => "US",
  :from_zip => 93107,
  :from_state => "CA",
  :from_city => "SANTA BARBARA",
  :from_street => "1281 State St",
  :to_country => "US",
  :to_zip => 90002,
  :to_state => "CA",
  :to_city => "LOS ANGELES",
  :to_street => "123 Palm Grove Ln",
  :amount => 17,
  :shipping => 2,
  :sales_tax => 0.95,
  :line_items => [
    {
      :id => "1",
      :quantity => 1,
      :product_identifier => "12-34243-0",
      :product_tax_code => nil,
      :description => "Heavy Widget",
      :unit_price => 15,
      :discount => 0,
      :sales_tax => 0.95
    }
  ]
}>
<TaxJarOrder {
  'from_state': 'CA',
  'line_items': [<TaxJarLineItem {
    'description': 'Heavy Widget',
    'unit_price': 15,
    'discount': 0,
    'product_identifier': '12-34243-0',
    'sales_tax': 0.95,
    'product_tax_code': None,
    'id': 1,
    'quantity': 1
  }>],
  'user_id': 1,
  'to_zip': '90002',
  'from_street': '1218 State St',
  'from_city': 'SANTA BARBARA',
  'from_zip': '93107',
  'to_country': 'US',
  'shipping': 2,
  'from_country': 'US',
  'to_city': 'LOS ANGELES',
  'to_street': '123 Palm Grove Ln',
  'transaction_date': '2016-03-10T00:00:00.000Z',
  'transaction_reference_id': None,
  'sales_tax': 0.95,
  'amount': 17,
  'transaction_id': '123',
  'to_state': 'CA',
  'provider': 'api'
}>
taxjar.ShowOrderResponse{
    Order: taxjar.Order{
        TransactionID:          "123",
        UserID:                 11836,
        TransactionDate:        "2015-05-14T00:00:00Z",
        TransactionReferenceID: "",
        Provider:               "api",
        FromCountry:            "US",
        FromZip:                "93107",
        FromState:              "CA",
        FromCity:               "SANTA BARBARA",
        FromStreet:             "1281 State St",
        ToCountry:              "US",
        ToZip:                  "90002",
        ToState:                "CA",
        ToCity:                 "LOS ANGELES",
        ToStreet:               "123 Palm Grove Ln",
        Amount:                 17,
        Shipping:               2,
        SalesTax:               0.95,
        LineItems: []taxjar.OrderLineItem{
            {
                ID:                "1",
                Quantity:          1,
                ProductIdentifier: "12-34243-0",
                Description:       "Heavy Widget",
                ProductTaxCode:    "",
                UnitPrice:         15,
                Discount:          0,
                SalesTax:          0.95,
            },
        },
    },
}

Shows an existing order transaction created through the API.

Request

GET https://api.taxjar.com/v2/transactions/orders/:transaction_id

Parameters

Parameter Type Required Description
transaction_id string required Unique identifier of the given order transaction.
provider string optional Source of where the transaction was originally recorded. Defaults to “api”.

Response

Returns an order JSON object with details of a given order transaction created through the API.

Attributes

Parameter Type Description
transaction_id string Unique identifier of the given order transaction.
user_id integer Unique identifier of the user who created the order transaction.
transaction_date datetime The date/time the transaction was originally recorded.
provider string Source of where the transaction was originally recorded.
exemption_type string Type of exemption for the order: wholesale, government, marketplace, other, non_exempt, or null. View Note
from_country string Two-letter ISO country code of the country where the order shipped from.
from_zip string Postal code where the order shipped from (5-Digit ZIP or ZIP+4).
from_state string Two-letter ISO state code where the order shipped from.
from_city string City where the order shipped from.
from_street string Street address where the order shipped from.
to_country string Two-letter ISO country code of the country where the order shipped to.
to_zip string Postal code where the order shipped to (5-Digit ZIP or ZIP+4).
to_state string Two-letter ISO state code where the order shipped to.
to_city string City where the order shipped to.
to_street string Street address where the order shipped to.
amount float Total amount of the order with shipping, excluding sales tax.
shipping float Total amount of shipping for the order.
sales_tax float Total amount of sales tax collected for the order.
line_items[][id] string Unique identifier of the given line item.
line_items[][quantity] integer Quantity for the item.
line_items[][product_identifier] string Product identifier for the item.
line_items[][description] string Description of the line item (up to 255 characters).
line_items[][product_tax_code] string Product tax code for the item.
line_items[][unit_price] float Unit price for the item in dollars.
line_items[][discount] float Total discount (non-unit) for the item in dollars.
line_items[][sales_tax] float Total sales tax collected (non-unit) for the item in dollars.

post Create an order transaction

Definition

client.create_order
client.create_order
client.createOrder();
$client->createOrder();
client.CreateOrder();
client.createOrder();
client.CreateOrder()
POST https://api.taxjar.com/v2/transactions/orders

Request Example

require "taxjar"
client = Taxjar::Client.new(api_key: "9e0cd62a22f451701f29c3bde214")

order = client.create_order({
  :transaction_id => '123',
  :transaction_date => '2015/05/14',
  :to_country => 'US',
  :to_zip => '90002',
  :to_state => 'CA',
  :to_city => 'Los Angeles',
  :to_street => '123 Palm Grove Ln',
  :amount => 16.5,
  :shipping => 1.5,
  :sales_tax => 0.95,
  :line_items => [
    {
      :quantity => 1,
      :product_identifier => '12-34243-9',
      :description => 'Fuzzy Widget',
      :unit_price => 15,
      :sales_tax => 0.95
    }
  ]
})
import taxjar
client = taxjar.Client(api_key='9e0cd62a22f451701f29c3bde214')

order = client.create_order({
  'transaction_id': '123',
  'transaction_date': '2015/05/14',
  'to_country': 'US',
  'to_zip': '90002',
  'to_state': 'CA',
  'to_city': 'Los Angeles',
  'to_street': '123 Palm Grove Ln',
  'amount': 16.5,
  'shipping': 1.5,
  'sales_tax': 0.95,
  'line_items': [
    {
      'quantity': 1,
      'product_identifier': '12-34243-9',
      'description': 'Fuzzy Widget',
      'unit_price': 15,
      'sales_tax': 0.95
    }
  ]
})
const Taxjar = require('taxjar');

const client = new Taxjar({
  apiKey: '9e0cd62a22f451701f29c3bde214'
});

client.createOrder({
  transaction_id: '123',
  transaction_date: '2015/05/14',
  to_country: 'US',
  to_zip: '90002',
  to_state: 'CA',
  to_city: 'Los Angeles',
  to_street: '123 Palm Grove Ln',
  amount: 16.5,
  shipping: 1.5,
  sales_tax: 0.95,
  line_items: [
    {
      quantity: 1,
      product_identifier: '12-34243-9',
      description: 'Fuzzy Widget',
      unit_price: 15,
      sales_tax: 0.95
    }
  ]
}).then(res => {
  res.order; // Order object
});
require __DIR__ . '/vendor/autoload.php';
$client = TaxJar\Client::withApiKey("9e0cd62a22f451701f29c3bde214");

$order = $client->createOrder([
  'transaction_id' => '123',
  'transaction_date' => '2015/05/14',
  'to_country' => 'US',
  'to_zip' => '90002',
  'to_state' => 'CA',
  'to_city' => 'Los Angeles',
  'to_street' => '123 Palm Grove Ln',
  'amount' => 16.5,
  'shipping' => 1.5,
  'sales_tax' => 0.95,
  'line_items' => [
    [
      'quantity' => 1,
      'product_identifier' => '12-34243-9',
      'description' => 'Fuzzy Widget',
      'unit_price' => 15,
      'sales_tax' => 0.95
    ]
  ]
]);
using Taxjar;
var client = new TaxjarApi("9e0cd62a22f451701f29c3bde214");

var order = client.CreateOrder(new {
  transaction_id = "123",
  transaction_date = "2015/05/04",
  to_country = "US",
  to_state = "CA",
  to_zip = "90002",
  to_city = "Los Angeles",
  to_street = "123 Palm Grove Ln",
  amount = 16.5,
  shipping = 1.5,
  sales_tax = 0.95,
  line_items = new[] {
    new {
      quantity = 1,
      product_identifier = "12-34243-0",
      description = "Heavy Widget",
      unit_price = 15,
      sales_tax = 0.95
    }
  }
});
import com.taxjar.Taxjar;
import com.taxjar.exception.TaxjarException;
import com.taxjar.model.transactions.OrderResponse;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class CreateOrderExample {

    public static void main(String[] args) {
        Taxjar client = new Taxjar("9e0cd62a22f451701f29c3bde214");

        try {
            Map<String, Object> params = new HashMap<>();
            params.put("transaction_id", "123");
            params.put("transaction_date", "2015/05/04");
            params.put("to_country", "US");
            params.put("to_zip", "90002");
            params.put("to_city", "Los Angeles");
            params.put("to_street", "123 Palm Grove Ln");
            params.put("amount", 16.5);
            params.put("shipping", 1.5);
            params.put("sales_tax", 0.95);

            List<Map> lineItems = new ArrayList();
            Map<String, Object> lineItem = new HashMap<>();
            lineItem.put("quantity", 1);
            lineItem.put("product_identifier", "12-34243-0");
            lineItem.put("description", "Heavy Widget");
            lineItem.put("unit_price", 15);
            lineItem.put("sales_tax", 0.95);
            lineItems.add(lineItem);

            params.put("line_items", lineItems);

            OrderResponse res = client.createOrder(params);
        } catch (TaxjarException e) {
            e.printStackTrace();
        }
    }

}
package main

import (
    "fmt"

    "github.com/taxjar/taxjar-go"
)

func main() {
    client := taxjar.NewClient(taxjar.Config{
        APIKey: "9e0cd62a22f451701f29c3bde214",
    })

    res, err := client.CreateOrder(taxjar.CreateOrderParams{
        TransactionID:   "123",
        TransactionDate: "2015/05/14",
        ToCountry:       "US",
        ToZip:           "90002",
        ToState:         "CA",
        ToCity:          "Los Angeles",
        ToStreet:        "123 Palm Grove Ln",
        Amount:          16.5,
        Shipping:        1.5,
        SalesTax:        0.95,
        LineItems: []taxjar.OrderLineItem{
            {
                Quantity:          1,
                ProductIdentifier: "12-34243-9",
                Description:       "Fuzzy Widget",
                UnitPrice:         15,
                SalesTax:          0.95,
            },
        },
    })
    if err != nil {
        fmt.Println(err)
    } else {
        fmt.Println(res.Order)
    }
}
$ curl https://api.taxjar.com/v2/transactions/orders \
  -H "Authorization: Bearer 9e0cd62a22f451701f29c3bde214" \
  -H "Content-Type: application/json" \
  -d '{
    "transaction_id": "123",
    "transaction_date": "2015/05/14",
    "to_street": "123 Palm Grove Ln",
    "to_city": "Los Angeles",
    "to_state": "CA",
    "to_zip": "90002",
    "to_country": "US",
    "amount": 16.5,
    "shipping": 1.5,
    "sales_tax": 0.95,
    "line_items": [
      {
        "quantity": 1,
        "product_identifier": "12-34234-9",
        "description": "Fuzzy Widget",
        "unit_price": 15,
        "sales_tax": 0.95
      }
    ]
  }'

Response Example

{
  "order": {
    "transaction_id": "123",
    "user_id": 10649,
    "transaction_date": "2015-05-14T00:00:00Z",
    "provider": "api",
    "to_country": "US",
    "to_zip": "90002",
    "to_state": "CA",
    "to_city": "LOS ANGELES",
    "to_street": "123 Palm Grove Ln",
    "amount": "16.5",
    "shipping": "1.5",
    "sales_tax": "0.95",
    "line_items": [
      {
        "id": "1",
        "quantity": 1,
        "product_identifier": "12-34243-9",
        "description": "Fuzzy Widget",
        "unit_price": "15.0",
        "discount": "0.0",
        "sales_tax": "0.95"
      }
    ]
  }
}
#<Taxjar::Order:0x00000a @attrs={
  :transaction_id => 20,
  :user_id => 11836,
  :transaction_date => "2015-05-14T00:00:00Z",
  :transaction_reference_id => nil,
  :provider => "api",
  :from_country => "US",
  :from_zip => 93101,
  :from_state => "CA",
  :from_city => "SANTA BARBARA",
  :from_street => "1218 State St",
  :to_country => "US",
  :to_zip => 90002,
  :to_state => "CA",
  :to_city => "LOS ANGELES",
  :to_street => "123 Palm Grove Ln",
  :amount => 16.5,
  :shipping => 1.5,
  :sales_tax => 0.95,
  :line_items => [
    {
      :id => "1",
      :quantity => 1,
      :product_identifier => "12-34243-9",
      :product_tax_code => nil,
      :description => "Fuzzy Widget",
      :unit_price => 15,
      :discount => 0,
      :sales_tax => 0.95
    }
  ]
}>
<TaxJarOrder {
  'from_state': 'CA',
  'line_items': [<TaxJarLineItem {
    'description': 'Fuzzy Widget',
    'unit_price': 15,
    'discount': 0,
    'product_identifier': '12-34243-9',
    'sales_tax': 0.95,
    'product_tax_code': None,
    'id': 1,
    'quantity': 1
  }>],
  'user_id': 11836,
  'to_zip': '90002',
  'from_street': '1218 State St',
  'from_city': 'SANTA BARBARA',
  'from_zip': '93101',
  'to_country': 'US',
  'shipping': 1.5,
  'from_country': 'US',
  'to_city': 'LOS ANGELES',
  'to_street': '123 Palm Grove Ln',
  'transaction_date': '2015-05-14T00:00:00Z',
  'transaction_reference_id': None,
  'sales_tax': 0.95,
  'amount': 16.5,
  'transaction_id': '20',
  'to_state': 'CA',
  'provider': 'api'
}>
taxjar.CreateOrderResponse{
    Order: taxjar.Order{
        TransactionID:          "20",
        UserID:                 11836,
        TransactionDate:        "2015-05-14T00:00:00Z",
        TransactionReferenceID: "",
        Provider:               "api",
        FromCountry:            "US",
        FromZip:                "93101",
        FromState:              "CA",
        FromCity:               "SANTA BARBARA",
        FromStreet:             "1218 State St",
        ToCountry:              "US",
        ToZip:                  "90002",
        ToState:                "CA",
        ToCity:                 "LOS ANGELES",
        ToStreet:               "123 Palm Grove Ln",
        Amount:                 16.5,
        Shipping:               1.5,
        SalesTax:               0.95,
        LineItems: []taxjar.OrderLineItem{
            {
                ID:                "1",
                Quantity:          1,
                ProductIdentifier: "12-34243-9",
                Description:       "Fuzzy Widget",
                UnitPrice:         15,
                Discount:          0,
                SalesTax:          0.95,
            },
        },
    },
}

Creates a new order transaction.

Request

POST https://api.taxjar.com/v2/transactions/orders

Parameters

Parameter Type Required Description
transaction_id string required Unique identifier of the given order transaction. View Note
transaction_date datetime required The date/time the transaction was originally recorded. View Note
provider string optional Source of where the transaction was originally recorded. Defaults to “api”. View Note
from_country string optional Two-letter ISO country code of the country where the order shipped from. View Note
from_zip string optional Postal code where the order shipped from (5-Digit ZIP or ZIP+4).
from_state string optional Two-letter ISO state code where the order shipped from.
from_city string optional City where the order shipped from.
from_street string optional Street address where the order shipped from.
to_country string required Two-letter ISO country code of the country where the order shipped to.
to_zip string required Postal code where the order shipped to (5-Digit ZIP or ZIP+4).
to_state string required Two-letter ISO state code where the order shipped to.
to_city string optional City where the order shipped to.
to_street string optional Street address where the order shipped to.
amount float required Total amount of the order with shipping, excluding sales tax in dollars.
shipping float required Total amount of shipping for the order in dollars.
sales_tax float required Total amount of sales tax collected for the order in dollars.
customer_id string optional Unique identifier of the given customer for exemptions.
exemption_type string optional Type of exemption for the order: wholesale, government, marketplace, other, or non_exempt. View Note
line_items[][id] string optional Unique identifier of the given line item.
line_items[][quantity] integer optional Quantity for the item.
line_items[][product_identifier] string optional Product identifier for the item.
line_items[][description] string optional Description of the line item (up to 255 characters).
line_items[][product_tax_code] string optional Product tax code for the item. If omitted, the item will remain fully taxable.
line_items[][unit_price] float optional Unit price for the item in dollars.
line_items[][discount] float optional Total discount (non-unit) for the item in dollars.
line_items[][sales_tax] float conditional Total sales tax collected (non-unit) for the item in dollars.

Notes

  • Either an address on file or from_ parameters are required to create order transactions.

  • The transaction_id should only include alphanumeric characters, underscores, and dashes.

  • The transaction_date may be a date ‘2015-05-25’, an ISO UTC date/time '2015-05-25T13:05:45’, or an ISO date/time with zone offset '2015-05-25T13:05:45-05:00’.

  • We recommend passing positive values for monetary amounts when creating or updating order transactions. Values will be signed automatically regardless of what you send in. Do not update existing orders with negative amounts to indicate a refund. Instead, create a refund transaction.

Response

Returns an order JSON object with details of the new order transaction.

Attributes

Parameter Type Description
transaction_id string Unique identifier of the given order transaction.
user_id integer Unique identifier of the user who created the order transaction.
transaction_date datetime The date/time the transaction was originally recorded.
provider string Source of where the transaction was originally recorded.
exemption_type string Type of exemption for the order: wholesale, government, marketplace, other, non_exempt, or null. View Note
from_country string Two-letter ISO country code of the country where the order shipped from.
from_zip string Postal code where the order shipped from (5-Digit ZIP or ZIP+4).
from_state string Two-letter ISO state code where the order shipped from.
from_city string City where the order shipped from.
from_street string Street address where the order shipped from.
to_country string Two-letter ISO country code of the country where the order shipped to.
to_zip string Postal code where the order shipped to (5-Digit ZIP or ZIP+4).
to_state string Two-letter ISO state code where the order shipped to.
to_city string City where the order shipped to.
to_street string Street address where the order shipped to.
amount float Total amount of the order with shipping, excluding sales tax.
shipping float Total amount of shipping for the order.
sales_tax float Total amount of sales tax collected for the order.
line_items[][id] string Unique identifier of the given line item.
line_items[][quantity] integer Quantity for the item.
line_items[][product_identifier] string Product identifier for the item.
line_items[][description] string Description of the line item (up to 255 characters).
line_items[][product_tax_code] string Product tax code for the item.
line_items[][unit_price] float Unit price for the item in dollars.
line_items[][discount] float Total discount (non-unit) for the item in dollars.
line_items[][sales_tax] float Total sales tax collected (non-unit) for the item in dollars.

put Update an order transaction

Definition

client.update_order
client.update_order
client.updateOrder();
$client->updateOrder();
client.UpdateOrder();
client.updateOrder();
client.UpdateOrder()
PUT https://api.taxjar.com/v2/transactions/orders/:transaction_id

Request Example

require "taxjar"
client = Taxjar::Client.new(api_key: "9e0cd62a22f451701f29c3bde214")

order = client.update_order({
  :transaction_id => '123',
  :amount => 17,
  :shipping => 2,
  :line_items => [
    {
      :quantity => 1,
      :product_identifier => '12-34243-0',
      :description => 'Heavy Widget',
      :unit_price => 15,
      :discount => 0,
      :sales_tax => 0.95
    }
  ]
})
import taxjar
client = taxjar.Client(api_key='9e0cd62a22f451701f29c3bde214')

order = client.update_order('123', {
  'transaction_id': '123',
  'amount': 17,
  'shipping': 2,
  'line_items': [
    {
      'quantity': 1,
      'product_identifier': '12-34243-0',
      'description': 'Heavy Widget',
      'unit_price': 15,
      'discount': 0,
      'sales_tax': 0.95
    }
  ]
})
const Taxjar = require('taxjar');

const client = new Taxjar({
  apiKey: '9e0cd62a22f451701f29c3bde214'
});

client.updateOrder({
  transaction_id: '123',
  amount: 17,
  shipping: 2,
  line_items: [
    {
      quantity: 1,
      product_identifier: '12-34243-0',
      description: 'Heavy Widget',
      unit_price: 15,
      discount: 0,
      sales_tax: 0.95
    }
  ]
}).then(res => {
  res.order; // Order object
});
require __DIR__ . '/vendor/autoload.php';
$client = TaxJar\Client::withApiKey("9e0cd62a22f451701f29c3bde214");

$order = $client->updateOrder([
  'transaction_id' => '123',
  'amount' => 17,
  'shipping' => 2,
  'line_items' => [
    [
      'quantity' => 1,
      'product_identifier' => '12-34243-0',
      'description' => 'Heavy Widget',
      'unit_price' => 15,
      'discount' => 0,
      'sales_tax' => 0.95
    ]
  ]
]);
using Taxjar;
var client = new TaxjarApi("9e0cd62a22f451701f29c3bde214");

var order = client.UpdateOrder(new
{
  transaction_id = "123",
  amount = 17,
  shipping = 2,
  line_items = new[] {
    new {
      quantity = 1,
      product_identifier = "12-34243-0",
      description = "Heavy Widget",
      unit_price = 15,
      discount = 0,
      sales_tax = 0.95
    }
  }
});
import com.taxjar.Taxjar;
import com.taxjar.exception.TaxjarException;
import com.taxjar.model.transactions.OrderResponse;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class UpdateOrderExample {

    public static void main(String[] args) {
        Taxjar client = new Taxjar("9e0cd62a22f451701f29c3bde214");

        try {
            Map<String, Object> params = new HashMap<>();
            params.put("transaction_id", "123");
            params.put("amount", 17);
            params.put("shipping", 2);

            List<Map> lineItems = new ArrayList();
            Map<String, Object> lineItem = new HashMap<>();
            lineItem.put("quantity", 1);
            lineItem.put("product_identifier", "12-34243-0");
            lineItem.put("description", "Heavy Widget");
            lineItem.put("unit_price", 15);
            lineItem.put("discount", 0);
            lineItem.put("sales_tax", 0.95);
            lineItems.add(lineItem);

            params.put("line_items", lineItems);

            OrderResponse res = client.updateOrder("123", params);
        } catch (TaxjarException e) {
            e.printStackTrace();
        }
    }

}
package main

import (
    "fmt"

    "github.com/taxjar/taxjar-go"
)

func main() {
    client := taxjar.NewClient(taxjar.Config{
        APIKey: "9e0cd62a22f451701f29c3bde214",
    })

    res, err := client.UpdateOrder(taxjar.UpdateOrderParams{
        TransactionID: "123",
        Amount:        17,
        Shipping:      2,
        LineItems: []taxjar.OrderLineItem{
            {
                Quantity:          1,
                ProductIdentifier: "12-34243-0",
                Description:       "Heavy Widget",
                UnitPrice:         15,
                Discount:          0,
                SalesTax:          0.95,
            },
        },
    })
    if err != nil {
        fmt.Println(err)
    } else {
        fmt.Println(res.Order)
    }
}
$ curl https://api.taxjar.com/v2/transactions/orders/123 \
  -H "Authorization: Bearer 9e0cd62a22f451701f29c3bde214" \
  -H "Content-Type: application/json" \
  -d '{
    "transaction_id": "123",
    "amount": 17,
    "shipping": 2,
    "line_items": [
      {
        "quantity": 1,
        "product_identifier": "12-34234-0",
        "unit_price": 15,
        "discount": 0,
        "sales_tax": 0.95
      }
    ]
  }' \
  -X PUT

Response Example

{
  "order": {
    "transaction_id": "123",
    "user_id": 10649,
    "transaction_date": "2015-05-14T00:00:00Z",
    "provider": "api",
    "to_country": "US",
    "to_zip": "90002",
    "to_state": "CA",
    "to_city": "LOS ANGELES",
    "to_street": "123 Palm Grove Ln",
    "amount": "17.0",
    "shipping": "2.0",
    "sales_tax": "0.95",
    "line_items": [
      {
        "id": "1",
        "quantity": 1,
        "product_identifier": "12-34243-0",
        "description": "Heavy Widget",
        "unit_price": "15.0",
        "discount": "0.0",
        "sales_tax": "0.95"
      }
    ]
  }
}
#<Taxjar::Order:0x00000a @attrs={
  :transaction_id => "123",
  :user_id => 11836,
  :transaction_date => "2015-05-14T00:00:00Z",
  :transaction_reference_id => nil,
  :provider => 'api',
  :from_country => "US",
  :from_zip => 93101,
  :from_state => "CA",
  :from_city => "SANTA BARBARA",
  :from_street => "1218 State St",
  :to_country => "US",
  :to_zip => 90002,
  :to_state => "CA",
  :to_city => "LOS ANGELES",
  :to_street => "123 Palm Grove Ln",
  :amount => 17.0,
  :shipping => 2.0,
  :sales_tax => 0.95,
  :line_items => [
    {
      :id => "1",
      :quantity => 1,
      :product_identifier => "12-34243-0",
      :product_tax_code => nil,
      :description => "Heavy Widget",
      :unit_price => 15,
      :discount => 0,
      :sales_tax => 0.95
    }
  ]
}>
<TaxJarOrder {
  'from_state': 'CA',
  'line_items': [<TaxJarLineItem {
    'description': 'Heavy Widget',
    'unit_price': 15,
    'discount': 0,
    'product_identifier': '12-34243-0',
    'sales_tax': 0.95,
    'product_tax_code': None,
    'id': 0,
    'quantity': 1
  }>,
  'user_id': 11836,
  'to_zip': '90002',
  'from_street': '1218 State St',
  'from_city': 'SANTA BARBARA',
  'from_zip': '93101',
  'to_country': 'US',
  'shipping': 2,
  'from_country': 'US',
  'to_city': 'LOS ANGELES',
  'to_street': '123 Palm Grove Ln',
  'transaction_date': '2015-05-14T00:00:00Z',
  'transaction_reference_id': None,
  'sales_tax': 0.95,
  'amount': 17,
  'transaction_id': '123',
  'to_state': 'CA',
  'provider': 'api'
}>
taxjar.UpdateOrderResponse{
    Order: taxjar.Order{
        TransactionID:          "123",
        UserID:                 11836,
        TransactionDate:        "2015-05-14T00:00:00Z",
        TransactionReferenceID: "",
        Provider:               "api",
        FromCountry:            "US",
        FromZip:                "93101",
        FromState:              "CA",
        FromCity:               "SANTA BARBARA",
        FromStreet:             "1218 State St",
        ToCountry:              "US",
        ToZip:                  "90002",
        ToState:                "CA",
        ToCity:                 "LOS ANGELES",
        ToStreet:               "123 Palm Grove Ln",
        Amount:                 17.0,
        Shipping:               2.0,
        SalesTax:               0.95,
        LineItems: []taxjar.OrderLineItem{
            {
                ID:                "1",
                Quantity:          1,
                ProductIdentifier: "12-34243-0",
                Description:       "Heavy Widget",
                UnitPrice:         15,
                Discount:          0,
                SalesTax:          0.95,
            },
        },
    },
}

Updates an existing order transaction created through the API.

Request

PUT https://api.taxjar.com/v2/transactions/orders/:transaction_id

Parameters

Parameter Type Required Description
transaction_id string required Unique identifier of the given order transaction.
transaction_date datetime optional The date/time the transaction was originally recorded. View Note
from_country string optional Two-letter ISO country code of the country where the order shipped from. View Note
from_zip string optional Postal code where the order shipped from (5-Digit ZIP or ZIP+4).
from_state string optional Two-letter ISO state code where the order shipped from.
from_city string optional City where the order shipped from.
from_street string optional Street address where the order shipped from.
to_country string optional Two-letter ISO country code of the country where the order shipped to.
to_zip string optional Postal code where the order shipped to (5-Digit ZIP or ZIP+4).
to_state string optional Two-letter ISO state code where the order shipped to.
to_city string optional City where the order shipped to.
to_street string optional Street address where the order shipped to.
amount float optional Total amount of the order with shipping, excluding sales tax in dollars.
shipping float optional Total amount of shipping for the order in dollars.
sales_tax float optional Total amount of sales tax collected for the order in dollars.
customer_id string optional Unique identifier of the given customer for exemptions.
exemption_type string optional Type of exemption for the order: wholesale, government, marketplace, other, or non_exempt. View Note
line_items[][id] string optional Unique identifier of the given line item.
line_items[][quantity] integer optional Quantity for the item.
line_items[][product_identifier] string optional Product identifier for the item.
line_items[][description] string optional Description of the line item (up to 255 characters).
line_items[][product_tax_code] string optional Product tax code for the item. If omitted, the item will remain fully taxable.
line_items[][unit_price] float optional Unit price for the item in dollars.
line_items[][discount] float optional Total discount (non-unit) for the item in dollars.
line_items[][sales_tax] float optional Total sales tax collected (non-unit) for the item in dollars.

Notes

  • Either an address on file or from_ parameters are required to update order transactions.

  • The transaction_date may be a date '2015-05-25’, an ISO UTC date/time '2015-05-25T13:05:45’, or an ISO date/time with zone offset '2015-05-25T13:05:45-05:00’.

Response

Returns an order JSON object with details of the updated order transaction.

Attributes

Parameter Type Description
transaction_id string Unique identifier of the given order transaction.
user_id integer Unique identifier of the user who created the order transaction.
transaction_date datetime The date/time the transaction was originally recorded.
provider string Source of where the transaction was originally recorded.
exemption_type string Type of exemption for the order: wholesale, government, marketplace, other, non_exempt, or null. View Note
from_country string Two-letter ISO country code of the country where the order shipped from.
from_zip string Postal code where the order shipped from (5-Digit ZIP or ZIP+4).
from_state string Two-letter ISO state code where the order shipped from.
from_city string City where the order shipped from.
from_street string Street address where the order shipped from.
to_country string Two-letter ISO country code of the country where the order shipped to.
to_zip string Postal code where the order shipped to (5-Digit ZIP or ZIP+4).
to_state string Two-letter ISO state code where the order shipped to.
to_city string City where the order shipped to.
to_street string Street address where the order shipped to.
amount float Total amount of the order with shipping, excluding sales tax.
shipping float Total amount of shipping for the order.
sales_tax float Total amount of sales tax collected for the order.
line_items[][id] string Unique identifier of the given line item.
line_items[][quantity] integer Quantity for the item.
line_items[][product_identifier] string Product identifier for the item.
line_items[][description] string Description of the line item (up to 255 characters).
line_items[][product_tax_code] string Product tax code for the item.
line_items[][unit_price] float Unit price for the item in dollars.
line_items[][discount] float Total discount (non-unit) for the item in dollars.
line_items[][sales_tax] float Total sales tax collected (non-unit) for the item in dollars.

delete Delete an order transaction

Definition

client.delete_order
client.delete_order
client.deleteOrder();
$client->deleteOrder();
client.DeleteOrder();
client.deleteOrder();
client.DeleteOrder()
DELETE https://api.taxjar.com/v2/transactions/orders/:transaction_id

Request Example

require "taxjar"
client = Taxjar::Client.new(api_key: "9e0cd62a22f451701f29c3bde214")

client.delete_order('123')
import taxjar
client = taxjar.Client(api_key='9e0cd62a22f451701f29c3bde214')

client.delete_order('123')
const Taxjar = require('taxjar');

const client = new Taxjar({
  apiKey: '9e0cd62a22f451701f29c3bde214'
});

client.deleteOrder('123').then(res => {
  res.order; // Order object
});
require __DIR__ . '/vendor/autoload.php';
$client = TaxJar\Client::withApiKey("9e0cd62a22f451701f29c3bde214");

$client->deleteOrder('123');
using Taxjar;
var client = new TaxjarApi("9e0cd62a22f451701f29c3bde214");

var order = client.DeleteOrder("123");
import com.taxjar.Taxjar;
import com.taxjar.exception.TaxjarException;
import com.taxjar.model.transactions.OrderResponse;

public class DeleteOrderExample {

    public static void main(String[] args) {
        Taxjar client = new Taxjar("9e0cd62a22f451701f29c3bde214");

        try {
            OrderResponse res = client.deleteOrder("123");
        } catch (TaxjarException e) {
            e.printStackTrace();
        }
    }

}
package main

import (
    "fmt"

    "github.com/taxjar/taxjar-go"
)

func main() {
    client := taxjar.NewClient(taxjar.Config{
        APIKey: "9e0cd62a22f451701f29c3bde214",
    })

    res, err := client.DeleteOrder("123")
    if err != nil {
        fmt.Println(err)
    } else {
        fmt.Println(res.Order)
    }
}
$ curl https://api.taxjar.com/v2/transactions/orders/123 \
  -H "Authorization: Bearer 9e0cd62a22f451701f29c3bde214" \
  -X DELETE

Response Example

{
  "order": {
    "transaction_id": "123",
    "user_id": 10649,
    "transaction_date": null,
    "transaction_reference_id": null,
    "provider": "api",
    "from_country": null,
    "from_zip": null,
    "from_state": null,
    "from_city": null,
    "from_street": null,
    "to_country": null,
    "to_zip": null,
    "to_state": null,
    "to_city": null,
    "to_street": null,
    "amount": null,
    "shipping": null,
    "sales_tax": null,
    "line_items": []
  }
}
#<Taxjar::Order:0x00000a @attrs={
  :transaction_id => "123",
  :user_id => 10649,
  :transaction_date => nil,
  :transaction_reference_id => nil,
  :provider => "api",
  :from_country => nil,
  :from_zip => nil,
  :from_state => nil,
  :from_city => nil,
  :from_street => nil,
  :to_country => nil,
  :to_zip => nil,
  :to_state => nil,
  :to_city => nil,
  :to_street => nil,
  :amount => nil,
  :shipping => nil,
  :sales_tax => nil,
  :line_items => []
}>
<TaxJarOrder {
  'from_state': None,
  'line_items': [],
  'user_id': 10649,
  'to_zip': None,
  'from_street': None,
  'from_city': None,
  'from_zip': None,
  'to_country': None,
  'shipping': None,
  'from_country': None,
  'to_city': None,
  'to_street': None,
  'transaction_date': None,
  'transaction_reference_id': None,
  'sales_tax': None,
  'amount': None,
  'transaction_id': '123',
  'to_state': None,
  'provider': 'api'
}>
taxjar.DeleteOrderResponse{
    Order: taxjar.Order{
        TransactionID:          "123",
        UserID:                 10649,
        TransactionDate:        "",
        TransactionReferenceID: "",
        Provider:               "api",
        FromCountry:            "",
        FromZip:                "",
        FromState:              "",
        FromCity:               "",
        FromStreet:             "",
        ToCountry:              "",
        ToZip:                  "",
        ToState:                "",
        ToCity:                 "",
        ToStreet:               "",
        Amount:                 0,
        Shipping:               0,
        SalesTax:               0,
        LineItems: []taxjar.OrderLineItem{},
    },
}

Deletes an existing order transaction created through the API.

Request

DELETE https://api.taxjar.com/v2/transactions/orders/:transaction_id

Parameters

Parameter Type Required Description
transaction_id string required Unique identifier of the given order transaction.
provider string optional Source of where the transaction was originally recorded. Defaults to “api”.

Response

Returns an order JSON object with the deleted order transaction identifiers.

Attributes

Parameter Type Description
transaction_id string Unique identifier of the given order transaction.
user_id integer Unique identifier of the user who created the order transaction.
provider string Source of where the transaction was originally recorded.

get List refund transactions

Definition

client.list_refunds
client.list_refunds
client.listRefunds();
$client->listRefunds();
client.ListRefunds();
client.listRefunds();
client.ListRefunds()
GET https://api.taxjar.com/v2/transactions/refunds

Request Example

require "taxjar"
client = Taxjar::Client.new(api_key: "9e0cd62a22f451701f29c3bde214")

refunds = client.list_refunds({
  :from_transaction_date => '2015/05/01',
  :to_transaction_date => '2015/05/31'
})
import taxjar
client = taxjar.Client(api_key='9e0cd62a22f451701f29c3bde214')

refunds = client.list_refunds({
  'from_transaction_date': '2015/05/01',
  'to_transaction_date': '2015/05/31'
})
const Taxjar = require('taxjar');

const client = new Taxjar({
  apiKey: '9e0cd62a22f451701f29c3bde214'
});

client.listRefunds({
  from_transaction_date: '2015/05/01',
  to_transaction_date: '2015/05/31'
}).then(res => {
  res.refunds; // Array of refunds
});
require __DIR__ . '/vendor/autoload.php';
$client = TaxJar\Client::withApiKey("9e0cd62a22f451701f29c3bde214");

$refunds = $client->listRefunds([
  'from_transaction_date' => '2015/05/01',
  'to_transaction_date' => '2015/05/31'
]);
using Taxjar;
var client = new TaxjarApi("9e0cd62a22f451701f29c3bde214");

var refunds = client.ListRefunds(new
{
  from_transaction_date = "2015/05/01",
  to_transaction_date = "2015/05/31"
});
import com.taxjar.Taxjar;
import com.taxjar.exception.TaxjarException;
import com.taxjar.model.transactions.RefundsResponse;
import java.util.HashMap;
import java.util.Map;

public class ListRefundsExample {

    public static void main(String[] args) {
        Taxjar client = new Taxjar("9e0cd62a22f451701f29c3bde214");

        try {
            Map<String, String> params = new HashMap<>();
            params.put("from_transaction_date", "2015/05/01");
            params.put("to_transaction_date", "2015/05/31");
            RefundsResponse res = client.listRefunds(params);
        } catch (TaxjarException e) {
            e.printStackTrace();
        }
    }

}
package main

import (
    "fmt"

    "github.com/taxjar/taxjar-go"
)

func main() {
    client := taxjar.NewClient(taxjar.Config{
        APIKey: "9e0cd62a22f451701f29c3bde214",
    })

    res, err := client.ListRefunds(taxjar.ListRefundsParams{
        FromTransactionDate: "2015/05/01",
        ToTransactionDate:   "2015/05/31",
    })
    if err != nil {
        fmt.Println(err)
    } else {
        fmt.Println(res.Refunds)
    }
}
$ curl -G https://api.taxjar.com/v2/transactions/refunds \
  -H "Authorization: Bearer 9e0cd62a22f451701f29c3bde214" \
  -d from_transaction_date="2015/05/01" \
  -d to_transaction_date="2015/05/31"

Response Example

{
  "refunds": [
    "321",
    "654"
  ]
}
["203", "204", "205"]
['203', '204', '205']
taxjar.ListRefundsResponse{
    Refunds: []string{"203", "204", "205"},
}

Lists existing refund transactions created through the API.

Request

GET https://api.taxjar.com/v2/transactions/refunds

Parameters

Parameter Type Required Description
transaction_date date optional The date the transactions were originally recorded. View Note
from_transaction_date date optional The start date of a range for which the transactions were originally recorded.
to_transaction_date date optional The end date of a range for which the transactions were originally recorded.
provider string optional Source of where the transactions were originally recorded. Defaults to “api”.

Notes

Use transaction_date to list transactions for a specific date. Otherwise, use from_transaction_date and to_transaction_date for a range of dates.

Response

Returns a refunds JSON object with an array of refund IDs created through the API.

get Show a refund transaction

Definition

client.show_refund
client.show_refund
client.showRefund();
$client->showRefund();
client.ShowRefund();
client.showRefund();
client.ShowRefund()
GET https://api.taxjar.com/v2/transactions/refunds/:transaction_id

Request Example

require "taxjar"
client = Taxjar::Client.new(api_key: "9e0cd62a22f451701f29c3bde214")

refund = client.show_refund('321')
import taxjar
client = taxjar.Client(api_key='9e0cd62a22f451701f29c3bde214')

refund = client.show_refund('321')
const Taxjar = require('taxjar');

const client = new Taxjar({
  apiKey: '9e0cd62a22f451701f29c3bde214'
});

client.showRefund('321').then(res => {
  res.refund;
});
require __DIR__ . '/vendor/autoload.php';
$client = TaxJar\Client::withApiKey("9e0cd62a22f451701f29c3bde214");

$refund = $client->showRefund('321');
using Taxjar;
var client = new TaxjarApi("9e0cd62a22f451701f29c3bde214");

var refund = client.ShowRefund("321");
import com.taxjar.Taxjar;
import com.taxjar.exception.TaxjarException;
import com.taxjar.model.transactions.RefundResponse;

public class ShowRefundExample {

    public static void main(String[] args) {
        Taxjar client = new Taxjar("9e0cd62a22f451701f29c3bde214");

        try {
            RefundResponse res = client.showRefund("321");
        } catch (TaxjarException e) {
            e.printStackTrace();
        }
    }

}
package main

import (
    "fmt"

    "github.com/taxjar/taxjar-go"
)

func main() {
    client := taxjar.NewClient(taxjar.Config{
        APIKey: "9e0cd62a22f451701f29c3bde214",
    })

    res, err := client.ShowRefund("321")
    if err != nil {
        fmt.Println(err)
    } else {
        fmt.Println(res.Refund)
    }
}
$ curl https://api.taxjar.com/v2/transactions/refunds/321 \
  -H "Authorization: Bearer 9e0cd62a22f451701f29c3bde214"

Response Example

{
  "refund": {
    "transaction_id": "321",
    "user_id": 10649,
    "transaction_date": "2015-05-14T00:00:00Z",
    "transaction_reference_id": "123",
    "provider": "api",
    "to_country": "US",
    "to_zip": "90002",
    "to_state": "CA",
    "to_city": "LOS ANGELES",
    "to_street": "123 Palm Grove Ln",
    "amount": "-17.0",
    "shipping": "-2.0",
    "sales_tax": "-0.95",
    "line_items": [
      {
        "id": "1",
        "quantity": 1,
        "product_identifier": "12-34243-0",
        "description": "Heavy Widget",
        "unit_price": "-15.0",
        "discount": "0.0",
        "sales_tax": "-0.95"
      }
    ]
  }
}
#<Taxjar::Refund:0x00000a @attrs={
  :transaction_id => "321",
  :user_id => 11836,
  :transaction_date => "2015-06-14T00:00:00Z",
  :transaction_reference_id => "123",
  :provider => "api",
  :from_country => "US",
  :from_zip => 93107,
  :from_state => "CA",
  :from_city => "SANTA BARBARA",
  :from_street => "1218 State St",
  :to_country => "US",
  :to_zip => 90002,
  :to_state => "CA",
  :to_city => "LOS ANGELES",
  :to_street => "123 Palm Grove Ln",
  :amount => -17.0,
  :shipping => -2.0,
  :sales_tax => -0.95,
  :line_items => [
    {
      :id => "1",
      :quantity => 1,
      :product_identifier => "12-34243-0",
      :product_tax_code => nil,
      :description => "Heavy Widget",
      :unit_price => -15,
      :discount => 0,
      :sales_tax => -0.95
    }
  ]
}>
<TaxJarRefund {
  'from_state': 'CA',
  'line_items': [<TaxJarLineItem {
    'description': 'Heavy Widget',
    'unit_price': -15,
    'discount': 0,
    'product_identifier': '12-34243-0',
    'sales_tax': -0.95,
    'product_tax_code': None,
    'id': 0,
    'quantity': 1
  }>],
  'user_id': 11836,
  'to_zip': '90002',
  'from_street': '1218 State St',
  'from_city': 'SANTA BARBARA',
  'from_zip': 93107,
  'to_country': 'US',
  'shipping': -2,
  'from_country': 'US',
  'to_city': 'LOS ANGELES',
  'to_street': '123 Palm Grove Ln',
  'transaction_date': '2015-06-14T00:00:00Z',
  'transaction_reference_id': '123',
  'sales_tax': -0.95,
  'amount': -17,
  'transaction_id': '321',
  'to_state': 'CA',
  'provider': 'api'
}>
taxjar.ShowRefundResponse{
    Refund: taxjar.Refund{
        TransactionID:          "321",
        UserID:                 11836,
        TransactionDate:        "2015-06-14T00:00:00Z",
        TransactionReferenceID: "123",
        Provider:               "api",
        FromCountry:            "US",
        FromZip:                "93107",
        FromState:              "CA",
        FromCity:               "SANTA BARBARA",
        FromStreet:             "1218 State St",
        ToCountry:              "US",
        ToZip:                  "90002",
        ToState:                "CA",
        ToCity:                 "LOS ANGELES",
        ToStreet:               "123 Palm Grove Ln",
        Amount:                 -17.0,
        Shipping:               -2.0,
        SalesTax:               -0.95,
        LineItems: []taxjar.RefundLineItem{
            {
                ID:                "1",
                Quantity:          1,
                ProductIdentifier: "12-34243-0",
                ProductTaxCode:    "",
                Description:       "Heavy Widget",
                UnitPrice:         -15,
                Discount:          0,
                SalesTax:          -0.95,
            },
        },
    },
}

Shows an existing refund transaction created through the API.

Request

GET https://api.taxjar.com/v2/transactions/refunds/:transaction_id

Parameters

Parameter Type Required Description
transaction_id string required Unique identifier of the given refund transaction.
provider string optional Source of where the transaction was originally recorded. Defaults to “api”.

Response

Returns a refund JSON object with details of a given refund transaction created through the API.

Attributes

Parameter Type Description
transaction_id string Unique identifier of the given refund transaction.
user_id integer Unique identifier of the user who created the refund transaction.
transaction_date datetime The date/time the transaction was originally recorded.
provider string Source of where the transaction was originally recorded.
exemption_type string Type of exemption for the order: wholesale, government, marketplace, other, non_exempt, or null. View Note
from_country string Two-letter ISO country code of the country where the order shipped from.
from_zip string Postal code where the order shipped from (5-Digit ZIP or ZIP+4).
from_state string Two-letter ISO state code where the order shipped from.
from_city string City where the order shipped from.
from_street string Street address where the order shipped from.
to_country string Two-letter ISO country code of the country where the order shipped to.
to_zip string Postal code where the order shipped to (5-Digit ZIP or ZIP+4).
to_state string Two-letter ISO state code where the order shipped to.
to_city string City where the order shipped to.
to_street string Street address where the order shipped to.
amount float Total amount of the refunded order with shipping, excluding sales tax.
shipping float Total amount of shipping for the refunded order.
sales_tax float Total amount of sales tax collected for the refunded order.
line_items[][id] string Unique identifier of the given line item.
line_items[][quantity] integer Quantity for the item.
line_items[][product_identifier] string Product identifier for the item.
line_items[][description] string Description of the line item (up to 255 characters).
line_items[][product_tax_code] string Product tax code for the item.
line_items[][unit_price] float Unit price for the item in dollars.
line_items[][discount] float Total discount (non-unit) for the item in dollars.
line_items[][sales_tax] float Total sales tax collected (non-unit) for the item in dollars.

post Create a refund transaction

Definition

client.create_refund
client.create_refund
client.createRefund();
$client->createRefund();
client.CreateRefund();
client.createRefund();
client.CreateRefund()
POST https://api.taxjar.com/v2/transactions/refunds

Request Example

require "taxjar"
client = Taxjar::Client.new(api_key: "9e0cd62a22f451701f29c3bde214")

order = client.create_refund({
  :transaction_id => '123',
  :transaction_date => '2015/05/14',
  :transaction_reference_id => '123',
  :to_country => 'US',
  :to_zip => '90002',
  :to_state => 'CA',
  :to_city => 'Los Angeles',
  :to_street => '123 Palm Grove Ln',
  :amount => -16.5,
  :shipping => -1.5,
  :sales_tax => -0.95,
  :line_items => [
    {
      :quantity => 1,
      :product_identifier => '12-34243-9',
      :description => 'Fuzzy Widget',
      :unit_price => -15,
      :sales_tax => -0.95
    }
  ]
})
import taxjar
client = taxjar.Client(api_key='9e0cd62a22f451701f29c3bde214')

refund = client.create_refund({
  'transaction_id': '321',
  'transaction_date': '2016-05-14',
  'transaction_reference_id': '123',
  'from_state': 'CA',
  'from_city': 'Santa Barbara',
  'from_street': '1218 State St',
  'from_country': 'US',
  'from_zip': '93101',
  'to_country': 'US',
  'to_state': 'CA',
  'to_city': 'Los Angeles',
  'to_street': '123 Palm Grove Ln',
  'to_zip': '90002',
  'amount': -16.5,
  'shipping': -1.5,
  'sales_tax': -0.95,
  'line_items': [
    {
      'quantity': 1,
      'product_identifier': '12-34243-9',
      'description': 'Fuzzy Widget',
      'unit_price': -15,
      'sales_tax': -0.95
    }
  ]
})
const Taxjar = require('taxjar');

const client = new Taxjar({
  apiKey: '9e0cd62a22f451701f29c3bde214'
});

client.createRefund({
  transaction_id: '123',
  transaction_date: '2015/05/14',
  transaction_reference_id: '123',
  to_country: 'US',
  to_zip: '90002',
  to_state: 'CA',
  to_city: 'Los Angeles',
  to_street: '123 Palm Grove Ln',
  amount: -16.5,
  shipping: -1.5,
  sales_tax: -0.95,
  line_items: [
    {
      quantity: 1,
      product_identifier: '12-34243-9',
      description: 'Fuzzy Widget',
      unit_price: -15,
      sales_tax: -0.95
    }
  ]
}).then(res => {
  res.refund; // Refund object
});
require __DIR__ . '/vendor/autoload.php';
$client = TaxJar\Client::withApiKey("9e0cd62a22f451701f29c3bde214");

$refund = $client->createRefund([
  'transaction_id' => '321',
  'transaction_date' => '2015/05/14',
  'transaction_reference_id' => '123',
  'to_country' => 'US',
  'to_zip' => '90002',
  'to_state' => 'CA',
  'to_city' => 'Los Angeles',
  'to_street' => '123 Palm Grove Ln',
  'amount' => -16.5,
  'shipping' => -1.5,
  'sales_tax' => -0.95,
  'line_items' => [
    [
      'quantity' => 1,
      'product_identifier' => '12-34243-9',
      'description' => 'Fuzzy Widget',
      'unit_price' => -15,
      'sales_tax' => -0.95
    ]
  ]
]);
using Taxjar;
var client = new TaxjarApi("9e0cd62a22f451701f29c3bde214");

var refund = client.CreateRefund(new
{
  transaction_id = "321",
  transaction_date = "2015/05/04",
  transaction_reference_id = "123",
  to_country = "US",
  to_zip = "90002",
  to_city = "Los Angeles",
  to_street = "123 Palm Grove Ln",
  amount = -16.5,
  shipping = -1.5,
  sales_tax = -0.95,
  line_items = new[] {
    new {
      quantity = 1,
      product_identifier = "12-34243-0",
      description = "Heavy Widget",
      unit_price = -15,
      sales_tax = -0.95
    }
  }
});
import com.taxjar.Taxjar;
import com.taxjar.exception.TaxjarException;
import com.taxjar.model.transactions.RefundResponse;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class CreateRefundExample {

    public static void main(String[] args) {
        Taxjar client = new Taxjar("9e0cd62a22f451701f29c3bde214");

        try {
            Map<String, Object> params = new HashMap<>();
            params.put("transaction_id", "321");
            params.put("transaction_date", "2015/05/04");
            params.put("to_country", "US");
            params.put("to_zip", "90002");
            params.put("to_city", "Los Angeles");
            params.put("to_street", "123 Palm Grove Ln");
            params.put("amount", -16.5);
            params.put("shipping", -1.5);
            params.put("sales_tax", -0.95);

            List<Map> lineItems = new ArrayList();
            Map<String, Object> lineItem = new HashMap<>();
            lineItem.put("quantity", 1);
            lineItem.put("product_identifier", "12-34243-0");
            lineItem.put("description", "Heavy Widget");
            lineItem.put("unit_price", -15);
            lineItem.put("sales_tax", -0.95);
            lineItems.add(lineItem);

            params.put("line_items", lineItems);

            RefundResponse res = client.createRefund(params);
        } catch (TaxjarException e) {
            e.printStackTrace();
        }
    }

}
package main

import (
    "fmt"

    "github.com/taxjar/taxjar-go"
)

func main() {
    client := taxjar.NewClient(taxjar.Config{
        APIKey: "9e0cd62a22f451701f29c3bde214",
    })

    res, err := client.CreateRefund(taxjar.CreateRefundParams{
        TransactionID:          "123",
        TransactionDate:        "2015/05/14",
        TransactionReferenceID: "123",
        ToCountry:              "US",
        ToZip:                  "90002",
        ToState:                "CA",
        ToCity:                 "Los Angeles",
        ToStreet:               "123 Palm Grove Ln",
        Amount:                 -16.5,
        Shipping:               -1.5,
        SalesTax:               -0.95,
        LineItems: []taxjar.RefundLineItem{
            {
                Quantity:          1,
                ProductIdentifier: "12-34243-9",
                Description:       "Fuzzy Widget",
                UnitPrice:         -15,
                SalesTax:          -0.95,
            },
        },
    })
    if err != nil {
        fmt.Println(err)
    } else {
        fmt.Println(res.Refund)
    }
}
$ curl https://api.taxjar.com/v2/transactions/refunds \
  -H "Authorization: Bearer 9e0cd62a22f451701f29c3bde214" \
  -H "Content-Type: application/json" \
  -d '{
    "transaction_id": "123",
    "transaction_date": "2015/05/14",
    "transaction_reference_id": "123",
    "to_street": "123 Palm Grove Ln",
    "to_city": "Los Angeles",
    "to_state": "CA",
    "to_zip": "90002",
    "to_country": "US",
    "amount": -16.5,
    "shipping": -1.5,
    "sales_tax": -0.95,
    "line_items": [
      {
        "quantity": 1,
        "product_identifier": "12-34234-9",
        "description": "Fuzzy Widget",
        "unit_price": -15,
        "sales_tax": -0.95
      }
    ]
  }'

Response Example

{
  "refund": {
    "transaction_id": "321",
    "user_id": 10649,
    "transaction_date": "2015-05-14T00:00:00Z",
    "transaction_reference_id": "123",
    "provider": "api",
    "to_country": "US",
    "to_zip": "90002",
    "to_state": "CA",
    "to_city": "LOS ANGELES",
    "to_street": "123 Palm Grove Ln",
    "amount": "-16.5",
    "shipping": "-1.5",
    "sales_tax": "-0.95",
    "line_items": [
      {
        "id": "1",
        "quantity": 1,
        "product_identifier": "12-34243-9",
        "description": "Fuzzy Widget",
        "unit_price": "-15.0",
        "discount": "0.0",
        "sales_tax": "-0.95"
      }
    ]
  }
}
#<Taxjar::Refund:0x00000a @attrs={
  :transaction_id => "321",
  :user_id => 11836,
  :transaction_date => "2015-06-14T00:00:00Z",
  :transaction_reference_id => "123",
  :provider => "api",
  :from_country => "US",
  :from_zip => 93107,
  :from_state => "CA",
  :from_city => "SANTA BARBARA",
  :from_street => "1218 State St",
  :to_country => "US",
  :to_zip => 90002,
  :to_state => "CA",
  :to_city => "LOS ANGELES",
  :to_street => "123 Palm Grove Ln",
  :amount => -16.5,
  :shipping => -1.5,
  :sales_tax => -0.95,
  :line_items => [
    {
      :id => "1",
      :quantity => 1,
      :product_identifier => "12-34243-0",
      :product_tax_code => nil,
      :description => "Heavy Widget",
      :unit_price => -15,
      :discount => 0,
      :sales_tax => -0.95
    }
  ]
}>
<TaxJarRefund {
  'from_state': 'CA',
  'line_items': [<TaxJarLineItem {
    'description': 'Heavy Widget',
    'unit_price': -15,
    'discount': 0,
    'product_identifier': '12-34243-0',
    'sales_tax': -0.95,
    'product_tax_code': None,
    'id': 0,
    'quantity': 1
  }>],
  'user_id': 11836,
  'to_zip': '90002',
  'from_street': '1218 State St',
  'from_city': 'SANTA BARBARA',
  'from_zip': 93107,
  'to_country': 'US',
  'shipping': -1.5,
  'from_country': 'US',
  'to_city': 'LOS ANGELES',
  'to_street': '123 Palm Grove Ln',
  'transaction_date': '2015-06-14T00:00:00Z',
  'transaction_reference_id': '123',
  'sales_tax': -0.95,
  'amount': -16.5,
  'transaction_id': '321',
  'to_state': 'CA',
  'provider': 'api'
}>
taxjar.CreateRefundResponse{
    Refund: taxjar.Refund{
        TransactionID:          "321",
        UserID:                 11836,
        TransactionDate:        "2015-06-14T00:00:00Z",
        TransactionReferenceID: "123",
        Provider:               "api",
        FromCountry:            "US",
        FromZip:                "93107",
        FromState:              "CA",
        FromCity:               "SANTA BARBARA",
        FromStreet:             "1218 State St",
        ToCountry:              "US",
        ToZip:                  "90002",
        ToState:                "CA",
        ToCity:                 "LOS ANGELES",
        ToStreet:               "123 Palm Grove Ln",
        Amount:                 -16.5,
        Shipping:               -1.5,
        SalesTax:               -0.95,
        LineItems: []taxjar.RefundLineItem{
            {
                ID:                "1",
                Quantity:          1,
                ProductIdentifier: "12-34243-0",
                ProductTaxCode:    "",
                Description:       "Heavy Widget",
                UnitPrice:         -15,
                Discount:          0,
                SalesTax:          -0.95,
            },
        },
    },
}

Creates a new refund transaction.

Request

POST https://api.taxjar.com/v2/transactions/refunds

Parameters

Parameter Type Required Description
transaction_id string required Unique identifier of the given refund transaction. View Note
transaction_reference_id string required Unique identifier of the corresponding order transaction for the refund.
transaction_date datetime required The date/time the transaction was originally recorded. View Note
provider string optional Source of where the transaction was originally recorded. Defaults to “api”. View Note
from_country string optional Two-letter ISO country code of the country where the order shipped from. View Note
from_zip string optional Postal code where the order shipped from (5-Digit ZIP or ZIP+4).
from_state string optional Two-letter ISO state code where the order shipped from.
from_city string optional City where the order shipped from.
from_street string optional Street address where the order shipped from.
to_country string required Two-letter ISO country code of the country where the order shipped to.
to_zip string required Postal code where the order shipped to (5-Digit ZIP or ZIP+4).
to_state string required Two-letter ISO state code where the order shipped to.
to_city string optional City where the order shipped to.
to_street string optional Street address where the order shipped to.
amount float required Total amount of the refunded order with shipping, excluding sales tax in dollars.
shipping float required Total amount of shipping for the refunded order in dollars.
sales_tax float required Total amount of sales tax collected for the refunded order in dollars.
customer_id string optional Unique identifier of the given customer for exemptions.
exemption_type string optional Type of exemption for the order: wholesale, government, marketplace, other, or non_exempt. View Note
line_items[][id] string optional Unique identifier of the given line item.
line_items[][quantity] integer optional Quantity for the item.
line_items[][product_identifier] string optional Product identifier for the item.
line_items[][description] string optional Description of the line item (up to 255 characters).
line_items[][product_tax_code] string optional Product tax code for the item. If omitted, the item will remain fully taxable.
line_items[][unit_price] float optional Unit price for the item in dollars.
line_items[][discount] float optional Total discount (non-unit) for the item in dollars.
line_items[][sales_tax] float conditional Total sales tax collected (non-unit) for the item in dollars.

Notes

  • Either an address on file or from_ parameters are required to create refund transactions.

  • The transaction_id should only include alphanumeric characters, underscores, and dashes.

  • The transaction_date may be a date '2015-05-25’, an ISO UTC date/time '2015-05-25T13:05:45’, or an ISO date/time with zone offset '2015-05-25T13:05:45-05:00’.

  • We recommend passing negative values for monetary amounts when creating or updating refund transactions. Values will be signed automatically regardless of what you send in.

Response

Returns a refund JSON object with details of the new refund transaction.

Attributes

Parameter Type Description
transaction_id string Unique identifier of the given refund transaction.
user_id integer Unique identifier of the user who created the refund transaction.
transaction_date datetime The date/time the transaction was originally recorded.
provider string Source of where the transaction was originally recorded.
exemption_type string Type of exemption for the order: wholesale, government, marketplace, other, non_exempt, or null. View Note
from_country string Two-letter ISO country code of the country where the order shipped from.
from_zip string Postal code where the order shipped from (5-Digit ZIP or ZIP+4).
from_state string Two-letter ISO state code where the order shipped from.
from_city string City where the order shipped from.
from_street string Street address where the order shipped from.
to_country string Two-letter ISO country code of the country where the order shipped to.
to_zip string Postal code where the order shipped to (5-Digit ZIP or ZIP+4).
to_state string Two-letter ISO state code where the order shipped to.
to_city string City where the order shipped to.
to_street string Street address where the order shipped to.
amount float Total amount of the refunded order with shipping, excluding sales tax.
shipping float Total amount of shipping for the refunded order.
sales_tax float Total amount of sales tax collected for the refunded order.
line_items[][id] string Unique identifier of the given line item.
line_items[][quantity] integer Quantity for the item.
line_items[][product_identifier] string Product identifier for the item.
line_items[][description] string Description of the line item (up to 255 characters).
line_items[][product_tax_code] string Product tax code for the item.
line_items[][unit_price] float Unit price for the item in dollars.
line_items[][discount] float Total discount (non-unit) for the item in dollars.
line_items[][sales_tax] float Total sales tax collected (non-unit) for the item in dollars.

put Update a refund transaction

Definition

client.update_refund
client.update_refund
client.updateRefund();
$client->updateRefund();
client.UpdateRefund();
client.updateRefund();
client.UpdateRefund()
PUT https://api.taxjar.com/v2/transactions/refunds/:transaction_id

Request Example

require "taxjar"
client = Taxjar::Client.new(api_key: "9e0cd62a22f451701f29c3bde214")

refund = client.update_refund({
  :transaction_id => '321',
  :amount => -17,
  :shipping => -2,
  :sales_tax =>