Alcoholic Beverages Excise Tax Real-Time Identification and Computation
Avior Alcoholic Beverages Determination (Avior AlcTax-D) provides automated identification and calculation of indirect taxes for transactions associated with distilled spirit, beer, wine, and other alcoholic beverages products. With tax complexity of ever-changing tax rules and rates, in-house beverage alcohol tax system is hard to maintain and can be easily replaced by its real-time determination engine with comprehensive support for all jurisdictions and tax procedures.
Overview
Excise and Sales & Use taxes are an important part of a beverage alcohol transaction. Any tax determination errors can impact sales margins, cause tax liabilities, and potentially jurisdictions penalties and fines. A more accurate and transparent tax determination engine will greatly benefit beverage alcohol suppliers, distributors, and traders. Sellers can clearly understand tax ramifications before closing a transaction, causing tax optimization, risk reduction, and lower costs.
Determination connects to any back-office accounting system, simplifying and automating the taxes necessary for any beverage alcohol transaction like invoices, sales and purchases orders. This has major impact on decreasing IT costs associated with continuous management of custom software and continuously changing jurisdictions tax rules and rates.
Tax analysts can stop spending time on monitoring, implementing, and managing support for new tax rules and jurisdictions. With on-going timely tax rules and rates updates, AlcTax Determination guarantees compliance accuracy, relieving tax departments from dealing with the complexity of changing rules and rates. Customer support team will spend less time processing customer inquiries, resulting in great costs reduction. AlcTax makes it effortless to clearly understand calculated tax amounts and the rules and rates that used into their determination. With thousands of tax rates and continued rules changes, this tax determination transparency is clearly provides benefits for IT, Tax Accounting, and customers.
Key Features
- Comprehensive Support for all major U.S. Jurisdictions - Produces signature-ready tax return from alcoholic beverages transaction data, with electronic or paper-based filing for all federal, state, county, and city jurisdictions, including all alcoholic beverages excise taxes and sales & use returns
- Update Automation - Periodic updates of tax rules, rates and forms, for all major U.S. jurisdictions
- System Integration - Data adapters for most popular back-office systems
- Customized Tax Rules - tax rules can be changed or customized by tax accountants, without software development or IT help
- Process Transparency - Clear visibility and notification of tax workflow cycle status, including tax return generation, review, approval, filing, acceptance, and amendment processes
- Schedule Query - Generate tax data reports for analysis, audit answers, or customer care
- Cloud-based Deployment - Use as service with our highly available and secure software application.
Benefits
By integrating AlcTax Determination to manage your alcoholic beverages tax filing processes, you’ll be able to:- Increase tax filing productivity, and eliminate manual data collection and tax calculation by automating the preparation and filing process
- Eliminate tax errors and reduce risk of penalties through automated data validation, comprehensive tax content, and timely content updates and implementation
- Greatly reduce development time and cost through built-in system integration, data extract tools, comprehensive jurisdiction support, and flexible workflow based architecture
- Ensure business agility by making it effortless to expand quickly to new regions, add new transaction types, or support new customer base
- Minimize IT costs by eliminating the need for IT development, maintenance, and support for tax reporting
Alcohol Tax Development
Identification and computation of excise taxes in real-time for financial transactions involving beverage alcohol products.
AlcTax Determination integrates with existing financial, billing, e-commerce, or point of sale system to automate the process of identifying and computing indirect taxes on alcoholic beverages transactions. It automates the process of completing and electronically filing alcohol returns and schedules. It’s an easy to use, off-the-shelf tax solution for alcohol suppliers, distributors, and traders, with extensive support for both volume-based and valuation taxes, including: excise and sales & use taxes.
Test Excise Tax Alcohol Request
Company : Company name User Id : Company user id or company code Invoice number : Invoice number Invoice Date : Invoice date Transaction number : Transaction number Product Category : Predefined Category to classify the SKU by alcohol type - Beer, Cider, Liquor, Wine Product UPC : Industry standard UPC of the selling unit Product SKU : Unique item code assigned exclusively for each product by the distributor Product Description : Detailed description of the SKU. Must contain brand name and attributes of the item Product Items : Items per selling unit Product UOM : Unit of measurement - gallon, liter, milliliter Ship to name : Specific banner name of the customer receiving shipment Ship to FEIN : Customer FEIN Ship to address : Ship to address of the customer receiving shipment Ship to city : City of the customer receiving shipment Ship to county : County of the customer receiving shipment Ship to state : State of the customer receiving shipment Ship to zip code : Zip code of the customer receiving shipment Ship to country : Country of the customer receiving shipment "US" Ship to class of trade : Retailer, Distributor, Consumer Ship to permit number : Customer license number Ship to tax number : Customer Tax identification Ship to account number : Customer account number issued by jurisdiction like state, county, or city Quantity : Total number of selling units Unit price : Dollar amount charged for a particular SKU to a customer. Taxable Volume : Taxable Volume Currency : USD
Test Excise Tax Alcohol Response
Result code : Success Jurisdiction : Jurisdiction type "state", "county", "city" Jurisdiction name : Jurisdiction name "TX" Jurisdiction tax rate : Jurisdiction tax rate "1.25" Jurisdiction tax amount : Jurisdiction tax amount "3.35"
Test Excise Tax Alcohol Response Error
Result code : "Error, Warning, Exception" Summary : "State unavailable or incorrect format" Details : "State must be two character state abbreviation" Refer to field : "ship_to_state" Severity : "Error, Warning, Exception"
REST JSON API V1.5
Test Excise Tax Alcohol POST Request
{ // transactions "company":"Alcohol Dist Inc.", "invoice_number":"141826", "invoice_date":"20150525", "line_items":[ { "transaction_number":"123", "product_category":"liquor", "product_upc":"", "product_sku":"", "product_description":"", "product_uom":"gallon", "product_items":"20", "ship_to_name":"Cash & Carry", "ship_to_fein":"123456789", "ship_to_address":"123 Palm Grove Ln", "ship_to_city":"Los Angeles", "ship_to_county":"Orange", "ship_to_state":"CA", "ship_to_zip":"90002", "ship_to_country":"USA", "ship_to_class_of_trade":"Wholesaler", "ship_to_permit_number":"LIC-960", "ship_to_tax_number":"123", "ship_to_account_number":"123", "quantity":"20", "unit_price":"3.99", "taxable":"3.99", "currency":"USD", } ] }
Test Excise Alcohol Tax Response
{ // transactions "company":"Alcohol Dist Inc." "invoice_number":"141826", "invoice_date":"20150525", "line_items":[ { "transaction_number":"123", "product_category":"liquor", "product_upc":"", "product_sku":"", "product_description":"", "product_uom":"gallon", "product_items":"20", "ship_to_name":"Cash & Carry", "ship_to_fein":"123456789", "ship_to_address":"123 Palm Grove Ln", "ship_to_city":"Los Angeles", "ship_to_county":"Orange", "ship_to_state":"CA", "ship_to_zip":"90002", "ship_to_country":"USA", "ship_to_class_of_trade":"Wholesaler", "ship_to_permit_number":"LIC-960", "ship_to_tax_number":"123", "ship_to_account_number":"123", "quantity":"20", "unit_price":"3.99", "taxable":"3.99", "currency":"USD", "result_code":"Success", "tax_results":[ { "jurisdiction":"state", "jur_name":"CA", "jur_tax_rate":"3.30", "jur_tax_amount":"30.55" } ] } ] }
Test Excise Alcohol Tax Error Messages
{ "result_code":"Error", "messages":[ { "summary":"State unavailable or incorrect format", "details":"State must be two character state abbreviation", "refer_to_field":"ship_to_state", "severity":"Error" } ] }
End Point
URL AND METHOD
Development:POST https://www.developer.aviordata.net/1.0/tax/alc/get
Production: POST https://www.tax.aviordata.net/1.0/tax/alc/get
LOGIN
Posthttps://www.developer.aviordata.net/1.0/tax/user/login.jsonHeaders: Accept:application/json Content-type: application/json Body: {"username":"avior", "password":"1234"} RESPONSE: {'session_name': 'SSESS15015b0cac82dbe973e0c259d028a34f', 'sessid': u'INa40aCVAbcBKvF1ODyPJXulhrvPa4-sqqKZOAdTnzo', 'token': u'u3FNNRkQRV_prmo5Cc3w3agfOyOhgWa0wyozltzwngE'}
REQUEST
Posthttps://www.developer.aviordata.net/1.0/tax/alc/getHeaders: Accept:application/json Content-type: application/json application/json cookie: SSESS15015b0cac82dbe973e0c259d028a34f=u'INa40aCVAbcBKvF1ODyPJXulhrvPa4- sqqKZOAdTnzo x-csrf-token: u3FNNRkQRV_prmo5Cc3w3agfOyOhgWa0wyozltzwngE Body: {"Transaction":{ //transactions ...}} RESPONSE: {"Transaction":{ //transactions ,"result_code":"Success", "tax_results":[ {...} ] }} or {"Transaction":{ //transactions ,"result_code":"Error", "messages":[ {...} ] }}
LOGOUT
posthttps://www.developer.aviordata.net/1.0/tax/user/logout.jsonheaders: Accept:application/json Content-type: application/json application/json cookie: SSESS15015b0cac82dbe973e0c259d028a34f=u'INa40aCVAbcBKvF1ODyPJXulhrvPa4- sqqKZOAdTnzo x-csrf-token: u3FNNRkQRV_prmo5Cc3w3agfOyOhgWa0wyozltzwngE response body: [true]
Client Sample
PHP
"123", "product_category" => "liquor", "product_upc" => "", "product_sku" => "", "product_description" => "", "product_uom" => "gallon", "product_items" => "20", "ship_to_name" => "Cash & Carry", "ship_to_fein" => "123456789", "ship_to_address" => "123 Palm Grove Ln", "ship_to_city" => "Los Angeles", "ship_to_county" => "Orange", "ship_to_state" => "CA", "ship_to_zip" => "90002", "ship_to_country" => "USA", "ship_to_class_of_trade" => "Wholesaler", "ship_to_permit_number" => "LIC-960", "ship_to_tax_number" => "123", "ship_to_account_number" => "123", "quantity" => "20", "unit_price" => "3.99", "taxable" => "3.99", "currency" => "USD", ); $ArrayOfLineItems = array($ArrayOfLineItem); $Transaction = array( "company" => "Alcohol Dist Inc.", "invoice_number" => "141826", "invoice_date" => "20150525", "line_items" => $ArrayOfLineItems ); $data = array("transaction" => $Transaction); $url = 'https://www.developer.aviordata.net/1.0/tax/'; //Initiate cURL. $ch = curl_init($url.'user/login.json'); curl_setopt($ch, CURLOPT_VERBOSE, true); // Will return the response, if false it print the response curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $jsonData = array( 'username' => 'avior', 'password' => '1234' ); //Encode the array into JSON. $jsonDataEncoded = json_encode($jsonData); //Tell cURL that we want to send a POST request. curl_setopt($ch, CURLOPT_POST, 1); //Attach our encoded JSON string to the POST fields. curl_setopt($ch, CURLOPT_POSTFIELDS, $jsonDataEncoded); //Set the content type to application/json curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json','accept:application/json','Connection: keep-alive')); //Execute the request $result = curl_exec($ch); $resp = json_decode($result, true); curl_setopt($ch, CURLOPT_URL, $url.'alc/get'); $DataEncoded = json_encode($data); curl_setopt($ch, CURLOPT_POSTFIELDS, $DataEncoded); $session_name = $resp['session_name']; $sessid = $resp['sessid']; curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json','accept:application/json','Connection: keep-alive','X-CSRFToken: '.$resp['token'],'Cookie: '.$session_name.'='.$sessid)); $result = curl_exec($ch); print_r($result); ?>
Client Sample
C#
ArrayOfLineItem = new { transaction_number = "123", product_category = "liquor", product_upc = "", product_sku = "", product_description = "", product_uom = "gallon", product_items = "20", ship_to_name = "Cash & Carry", ship_to_fein = "123456789", ship_to_address = "123 Palm Grove Ln", ship_to_city = "Los Angeles", ship_to_county = "Orange", ship_to_state = "CA", ship_to_zip = "90002", ship_to_country = "USA", ship_to_class_of_trade = "Wholesaler", ship_to_permit_number = "LIC-960", ship_to_tax_number = "123", ship_to_account_number = "123", quantity = "20", unit_price = "3.99", taxable = "3.99", currency = "USD", }; ArrayOfLineItems = new[] { ArrayOfLineItem }; Transaction = new { company = "Alcohol Dist Inc.", invoice_number = "141826", invoice_date = "20150525", line_items = ArrayOfLineItems }; data = new { transaction = Transaction }; // login request var login = new { username = "avior", password = "1234" }; var api_url = "https://www.developer.aviordata.net/1.0/tax/" var request = (HttpWebRequest)WebRequest.Create(api_url + "user/login.json"); request.ContentType = "application/json"; request.Accept = "application/json"; request.Method = "POST"; using (var streamWriter = new StreamWriter(request.GetRequestStream())) { string json = new JavaScriptSerializer().Serialize(login); streamWriter.Write(json); } // login response var response = (HttpWebResponse)request.GetResponse(); using (var streamReader = new StreamReader(response.GetResponseStream())) { var result = streamReader.ReadToEnd(); var jss = new JavaScriptSerializer(); var resp = jss.Deserialize>(result); } var token = resp["token"].ToString(); var session_name = resp["session_name"].ToString(); var sessid = resp["sessid"].ToString(); // tax request var request = (HttpWebRequest)WebRequest.Create(api_url + "alc/get"); request.ContentType = "application/json"; request.Method = "POST"; request.Headers["x-csrf-token"] = token; request.Headers["cookie"] = session_name + "=" + session_id; using (var streamWriter = new StreamWriter(request.GetRequestStream())) { string json = new JavaScriptSerializer().Serialize(data); streamWriter.Write(json); } // tax response var response = (HttpWebResponse)request.GetResponse(); using (var streamReader = new StreamReader(response.GetResponseStream())) { var result = streamReader.ReadToEnd(); var jss = new JavaScriptSerializer(); var resp = jss.Deserialize >(result); } var result_code = resp["transaction"]["line_items"][0]["result_code"].ToString(); if (result_code == "Success") { Console.WriteLine(result_code); } // logout var logout = new { }; var request = (HttpWebRequest)WebRequest.Create(api_url + "user/logout.json"); request.ContentType = "application/json"; request.Method = "POST"; request.Headers["x-csrf-token"] = token; request.Headers["cookie"] = session_name + "=" + session_id; using (var streamWriter = new StreamWriter(request.GetRequestStream())) { string json = new JavaScriptSerializer().Serialize(data); streamWriter.Write(json); }
Client Sample
Ruby
require 'net/http' require 'json' require 'uri' data = { "transaction" => { "company" => "Alcohol Dist Inc.", "invoice_number" => "141826", "invoice_date" => "20150525", "line_items" => [ { "transaction_number" => "123", "product_category" => "liquor", "product_upc" => "", "product_sku" => "", "product_description" => "", "product_uom" => "gallon", "product_items" => "20", "ship_to_name" => "Cash & Carry", "ship_to_fein" => "123456789", "ship_to_address" => "123 Palm Grove Ln", "ship_to_city" => "Los Angeles", "ship_to_county" => "Orange", "ship_to_state" => "CA", "ship_to_zip" => "90002", "ship_to_country" => "USA", "ship_to_class_of_trade" => "Wholesaler", "ship_to_permit_number" => "LIC-960", "ship_to_tax_number" => "123", "ship_to_account_number" => "123", "quantity" => "20", "unit_price" => "3.99", "taxable" => "3.99", "currency" => "USD", } ] } }.to_json login = { "username" => "avior", "password" => "1234" }.to_json logout = { }.to_json api_url = "https://www.developer.aviordata.net/1.0/tax/" # login request uri = URI.parse(api_url + "user/login.json") http = Net::HTTP.new(uri.host, uri.port) header = { 'Content-Type' => 'application/json', 'Accept' => 'application/json' }; request = Net::HTTP::Post.new( uri.request_uri, header ) request.body = json response = http.request(request) # login response resp = response.body puts(resp) rdata = JSON.parse(resp) token = rdata['token'] session_name = rdata['session_name'] sessid = rdata['sessid'] # tax request uri = URI.parse(api_url + "alc/get") http = Net::HTTP.new(uri.host, uri.port) header['x-csrf-token'] = token; header['cookie'] = cookie; request = Net::HTTP::Post.new( uri.request_uri, header ) request.body = json response = http.request(request) # tax response resp = response.body puts(resp) rdata = JSON.parse(resp) result_code = rdata["transaction"]["line_items"][0]["result_code"] if result_code == 'Success' puts 'result: '+result_code end # logout request uri = URI.parse(api_url + "user/logout.json") http = Net::HTTP.new(uri.host, uri.port) request = Net::HTTP::Post.new( uri.request_uri, header ) request.body = json response = http.request(request)